summary refs log tree commit diff
path: root/po/fr.po
diff options
context:
space:
mode:
Diffstat (limited to 'po/fr.po')
-rw-r--r--po/fr.po8748
1 files changed, 4786 insertions, 3962 deletions
diff --git a/po/fr.po b/po/fr.po
index fc004019a3..7f3ace8888 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -59,6 +59,7 @@
 #   shallow          |  superficiel
 #   shell            |  interpréteur de commandes
 #   sparse           |  clairsemé
+#   split (index)    |  index scindé
 #   stash            |  remisage
 #   to stash         |  remiser
 #   tag              |  étiquette
@@ -77,8 +78,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2022-01-17 08:34+0800\n"
-"PO-Revision-Date: 2022-01-12 21:11+0100\n"
+"POT-Creation-Date: 2022-04-13 14:52+0800\n"
+"PO-Revision-Date: 2022-04-13 21:17+0200\n"
 "Last-Translator: Cédric Malard <c.malard-git@valdun.net>\n"
 "Language-Team: Jean-Noël Avila <jn.avila@free.fr>\n"
 "Language: fr\n"
@@ -88,216 +89,215 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n<=1 ?0 : 1;\n"
 "X-Generator: Poedit 3.0.1\n"
 
-#: add-interactive.c:380
+#: add-interactive.c:382
 #, c-format
 msgid "Huh (%s)?"
 msgstr "Hein (%s) ?"
 
-#: add-interactive.c:533 add-interactive.c:834 reset.c:65 sequencer.c:3509
-#: sequencer.c:3974 sequencer.c:4136 builtin/rebase.c:1233
-#: builtin/rebase.c:1642
+#: add-interactive.c:535 add-interactive.c:836 reset.c:136 sequencer.c:3505
+#: sequencer.c:3970 sequencer.c:4127 builtin/rebase.c:1261
+#: builtin/rebase.c:1671
 msgid "could not read index"
 msgstr "impossible de lire l'index"
 
-#: add-interactive.c:588 git-add--interactive.perl:269
+#: add-interactive.c:590 git-add--interactive.perl:269
 #: git-add--interactive.perl:294
 msgid "binary"
 msgstr "binaire"
 
-#: add-interactive.c:646 git-add--interactive.perl:278
+#: add-interactive.c:648 git-add--interactive.perl:278
 #: git-add--interactive.perl:332
 msgid "nothing"
 msgstr "rien"
 
-#: add-interactive.c:647 git-add--interactive.perl:314
+#: add-interactive.c:649 git-add--interactive.perl:314
 #: git-add--interactive.perl:329
 msgid "unchanged"
 msgstr "inchangé"
 
-#: add-interactive.c:684 git-add--interactive.perl:641
+#: add-interactive.c:686 git-add--interactive.perl:641
 msgid "Update"
 msgstr "Mise à jour"
 
-#: add-interactive.c:701 add-interactive.c:889
+#: add-interactive.c:703 add-interactive.c:891
 #, c-format
 msgid "could not stage '%s'"
 msgstr "impossible d'indexer '%s'"
 
-#: add-interactive.c:707 add-interactive.c:896 reset.c:89 sequencer.c:3713
+#: add-interactive.c:709 add-interactive.c:898 reset.c:160 sequencer.c:3709
 msgid "could not write index"
 msgstr "impossible d'écrire l'index"
 
-#: add-interactive.c:710 git-add--interactive.perl:626
+#: add-interactive.c:712 git-add--interactive.perl:626
 #, c-format, perl-format
 msgid "updated %d path\n"
 msgid_plural "updated %d paths\n"
 msgstr[0] "%d chemin mis à jour\n"
 msgstr[1] "%d chemins mis à jour\n"
 
-#: add-interactive.c:728 git-add--interactive.perl:676
+#: add-interactive.c:730 git-add--interactive.perl:676
 #, c-format, perl-format
 msgid "note: %s is untracked now.\n"
 msgstr "note : %s n'est plus suivi à présent.\n"
 
-#: add-interactive.c:733 apply.c:4151 builtin/checkout.c:306
+#: add-interactive.c:735 apply.c:4133 builtin/checkout.c:311
 #: builtin/reset.c:167
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "échec de make_cache_entry pour le chemin '%s'"
 
-#: add-interactive.c:763 git-add--interactive.perl:653
+#: add-interactive.c:765 git-add--interactive.perl:653
 msgid "Revert"
 msgstr "Inverser"
 
-#: add-interactive.c:779
+#: add-interactive.c:781
 msgid "Could not parse HEAD^{tree}"
 msgstr "Impossible d'analyser HEAD^{tree}"
 
-#: add-interactive.c:817 git-add--interactive.perl:629
+#: add-interactive.c:819 git-add--interactive.perl:629
 #, c-format, perl-format
 msgid "reverted %d path\n"
 msgid_plural "reverted %d paths\n"
 msgstr[0] "%d chemin inversé\n"
 msgstr[1] "%d chemins inversés\n"
 
-#: add-interactive.c:868 git-add--interactive.perl:693
+#: add-interactive.c:870 git-add--interactive.perl:693
 #, c-format
 msgid "No untracked files.\n"
 msgstr "Aucun Fichier non suivi.\n"
 
-#: add-interactive.c:872 git-add--interactive.perl:687
+#: add-interactive.c:874 git-add--interactive.perl:687
 msgid "Add untracked"
 msgstr "Ajouter un fichier non-suivi"
 
-#: add-interactive.c:899 git-add--interactive.perl:623
+#: add-interactive.c:901 git-add--interactive.perl:623
 #, c-format, perl-format
 msgid "added %d path\n"
 msgid_plural "added %d paths\n"
 msgstr[0] "%d chemin ajouté\n"
 msgstr[1] "%d chemins ajoutés\n"
 
-#: add-interactive.c:929
+#: add-interactive.c:931
 #, c-format
 msgid "ignoring unmerged: %s"
 msgstr "fichier non-fusionné ignoré : %s"
 
-#: add-interactive.c:941 add-patch.c:1752 git-add--interactive.perl:1371
+#: add-interactive.c:943 add-patch.c:1758 git-add--interactive.perl:1371
 #, c-format
 msgid "Only binary files changed.\n"
 msgstr "Seuls des fichiers binaires ont changé.\n"
 
-#: add-interactive.c:943 add-patch.c:1750 git-add--interactive.perl:1373
+#: add-interactive.c:945 add-patch.c:1756 git-add--interactive.perl:1373
 #, c-format
 msgid "No changes.\n"
 msgstr "Aucune modification.\n"
 
-#: add-interactive.c:947 git-add--interactive.perl:1381
+#: add-interactive.c:949 git-add--interactive.perl:1381
 msgid "Patch update"
 msgstr "Mise à jour par patch"
 
-#: add-interactive.c:986 git-add--interactive.perl:1794
+#: add-interactive.c:988 git-add--interactive.perl:1794
 msgid "Review diff"
 msgstr "Réviser la différence"
 
-#: add-interactive.c:1014
+#: add-interactive.c:1016
 msgid "show paths with changes"
 msgstr "afficher les chemins comprenant des modifications"
 
-#: add-interactive.c:1016
+#: add-interactive.c:1018
 msgid "add working tree state to the staged set of changes"
 msgstr ""
 "ajouter l'état de l'arbre de travail à l'ensemble des modifications indexées"
 
-#: add-interactive.c:1018
+#: add-interactive.c:1020
 msgid "revert staged set of changes back to the HEAD version"
 msgstr "retourner l'ensemble de modifications indexées à la version HEAD"
 
-#: add-interactive.c:1020
+#: add-interactive.c:1022
 msgid "pick hunks and update selectively"
 msgstr "sélection et mise à jour individuelle des sections"
 
-#: add-interactive.c:1022
+#: add-interactive.c:1024
 msgid "view diff between HEAD and index"
 msgstr "visualiser les diffs entre HEAD et l'index"
 
-#: add-interactive.c:1024
+#: add-interactive.c:1026
 msgid "add contents of untracked files to the staged set of changes"
 msgstr ""
 "ajouter le contenu des fichiers non-suivis à l'ensemble des modifications "
 "indexées"
 
-#: add-interactive.c:1032 add-interactive.c:1081
+#: add-interactive.c:1034 add-interactive.c:1083
 msgid "Prompt help:"
 msgstr "Aide :"
 
-#: add-interactive.c:1034
+#: add-interactive.c:1036
 msgid "select a single item"
 msgstr "sélectionner un seul élément"
 
-#: add-interactive.c:1036
+#: add-interactive.c:1038
 msgid "select a range of items"
 msgstr "sélectionner une plage d'éléments"
 
-#: add-interactive.c:1038
+#: add-interactive.c:1040
 msgid "select multiple ranges"
 msgstr "sélectionner plusieurs plages"
 
-#: add-interactive.c:1040 add-interactive.c:1085
+#: add-interactive.c:1042 add-interactive.c:1087
 msgid "select item based on unique prefix"
 msgstr "sélectionner un élément basé sur une préfixe unique"
 
-#: add-interactive.c:1042
+#: add-interactive.c:1044
 msgid "unselect specified items"
 msgstr "désélectionner les éléments spécifiés"
 
-#: add-interactive.c:1044
+#: add-interactive.c:1046
 msgid "choose all items"
 msgstr "choisir tous les éléments"
 
-#: add-interactive.c:1046
+#: add-interactive.c:1048
 msgid "(empty) finish selecting"
 msgstr "(vide) arrêter de sélectionner"
 
-#: add-interactive.c:1083
+#: add-interactive.c:1085
 msgid "select a numbered item"
 msgstr "sélectionner un élément par son numéro"
 
-#: add-interactive.c:1087
+#: add-interactive.c:1089
 msgid "(empty) select nothing"
 msgstr "(vide) ne rien sélectionner"
 
-#: add-interactive.c:1095 builtin/clean.c:839 git-add--interactive.perl:1898
+#: add-interactive.c:1097 builtin/clean.c:839 git-add--interactive.perl:1898
 msgid "*** Commands ***"
 msgstr "*** Commandes ***"
 
-#: add-interactive.c:1096 builtin/clean.c:840 git-add--interactive.perl:1895
+#: add-interactive.c:1098 builtin/clean.c:840 git-add--interactive.perl:1895
 msgid "What now"
 msgstr "Et maintenant"
 
-#: add-interactive.c:1148 git-add--interactive.perl:213
+#: add-interactive.c:1150 git-add--interactive.perl:213
 msgid "staged"
 msgstr "indexé"
 
-#: add-interactive.c:1148 git-add--interactive.perl:213
+#: add-interactive.c:1150 git-add--interactive.perl:213
 msgid "unstaged"
 msgstr "non-indexé"
 
-#: add-interactive.c:1148 apply.c:5020 apply.c:5023 builtin/am.c:2367
-#: builtin/am.c:2370 builtin/bugreport.c:107 builtin/clone.c:128
-#: builtin/fetch.c:153 builtin/merge.c:287 builtin/pull.c:194
-#: builtin/submodule--helper.c:404 builtin/submodule--helper.c:1858
-#: builtin/submodule--helper.c:1861 builtin/submodule--helper.c:2504
-#: builtin/submodule--helper.c:2507 builtin/submodule--helper.c:2574
-#: builtin/submodule--helper.c:2579 builtin/submodule--helper.c:2812
+#: add-interactive.c:1150 apply.c:5002 apply.c:5005 builtin/am.c:2370
+#: builtin/am.c:2373 builtin/bugreport.c:107 builtin/clone.c:132
+#: builtin/fetch.c:154 builtin/merge.c:287 builtin/pull.c:194
+#: builtin/submodule--helper.c:412 builtin/submodule--helper.c:1872
+#: builtin/submodule--helper.c:1875 builtin/submodule--helper.c:2709
+#: builtin/submodule--helper.c:2712 builtin/submodule--helper.c:2891
 #: git-add--interactive.perl:213
 msgid "path"
 msgstr "chemin"
 
-#: add-interactive.c:1155
+#: add-interactive.c:1157
 msgid "could not refresh index"
 msgstr "impossible de rafraîchir l'index"
 
-#: add-interactive.c:1169 builtin/clean.c:804 git-add--interactive.perl:1805
+#: add-interactive.c:1171 builtin/clean.c:804 git-add--interactive.perl:1805
 #, c-format
 msgid "Bye.\n"
 msgstr "Au revoir.\n"
@@ -556,15 +556,15 @@ msgstr ""
 #, c-format, perl-format
 msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
-"Appliquer le changement de mode dans l'index et l'arbre de travail [y,n,q,a,d"
-"%s,?] ? "
+"Appliquer le changement de mode dans l'index et l'arbre de travail [y,n,q,a,"
+"d%s,?] ? "
 
 #: add-patch.c:172 add-patch.c:217 git-add--interactive.perl:1470
 #, c-format, perl-format
 msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
-"Appliquer la suppression dans l'index et l'arbre de travail [y,n,q,a,d"
-"%s,?] ? "
+"Appliquer la suppression dans l'index et l'arbre de travail [y,n,q,a,"
+"d%s,?] ? "
 
 #: add-patch.c:173 add-patch.c:218 git-add--interactive.perl:1471
 #, c-format, perl-format
@@ -616,24 +616,24 @@ msgstr "impossible d'analyser l'entête de section '%.*s'"
 msgid "could not parse colored hunk header '%.*s'"
 msgstr "impossible d'analyser l'entête coloré de section '%.*s'"
 
-#: add-patch.c:420
+#: add-patch.c:431
 msgid "could not parse diff"
 msgstr "impossible d'analyser la diff"
 
-#: add-patch.c:439
+#: add-patch.c:450
 msgid "could not parse colored diff"
 msgstr "impossible d'analyser la diff colorée"
 
-#: add-patch.c:453
+#: add-patch.c:464
 #, c-format
 msgid "failed to run '%s'"
 msgstr "échec pour lancer '%s'"
 
-#: add-patch.c:612
+#: add-patch.c:618
 msgid "mismatched output from interactive.diffFilter"
 msgstr "sortie sans correspondance depuis interactive.diffFilter"
 
-#: add-patch.c:613
+#: add-patch.c:619
 msgid ""
 "Your filter must maintain a one-to-one correspondence\n"
 "between its input and output lines."
@@ -641,7 +641,7 @@ msgstr ""
 "Votre filtre doit maintenir une correspondance un-pour-un\n"
 "entre les lignes en entrée et en sortie."
 
-#: add-patch.c:791
+#: add-patch.c:797
 #, c-format
 msgid ""
 "expected context line #%d in\n"
@@ -650,7 +650,7 @@ msgstr ""
 "ligne de contexte attendue #%d dans\n"
 "%.*s"
 
-#: add-patch.c:806
+#: add-patch.c:812
 #, c-format
 msgid ""
 "hunks do not overlap:\n"
@@ -663,12 +663,12 @@ msgstr ""
 "\tne se termine pas par :\n"
 "%.*s"
 
-#: add-patch.c:1082 git-add--interactive.perl:1115
+#: add-patch.c:1088 git-add--interactive.perl:1115
 msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
 msgstr ""
 "Mode d'édition manuelle de section -- voir ci-dessous pour un guide rapide.\n"
 
-#: add-patch.c:1086
+#: add-patch.c:1092
 #, c-format
 msgid ""
 "---\n"
@@ -682,7 +682,7 @@ msgstr ""
 "Les lignes commençant par %c seront éliminées.\n"
 
 #. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: add-patch.c:1100 git-add--interactive.perl:1129
+#: add-patch.c:1106 git-add--interactive.perl:1129
 msgid ""
 "If it does not apply cleanly, you will be given an opportunity to\n"
 "edit again.  If all lines of the hunk are removed, then the edit is\n"
@@ -692,11 +692,11 @@ msgstr ""
 "l'éditer à nouveau. Si toutes les lignes de la section sont supprimées,\n"
 "alors l'édition sera abandonnée et la section conservée.\n"
 
-#: add-patch.c:1133
+#: add-patch.c:1139
 msgid "could not parse hunk header"
 msgstr "impossible d'analyser l'entête de section"
 
-#: add-patch.c:1178
+#: add-patch.c:1184
 msgid "'git apply --cached' failed"
 msgstr "'git apply --cached' a échoué"
 
@@ -712,26 +712,26 @@ msgstr "'git apply --cached' a échoué"
 #. Consider translating (saying "no" discards!) as
 #. (saying "n" for "no" discards!) if the translation
 #. of the word "no" does not start with n.
-#: add-patch.c:1247 git-add--interactive.perl:1244
+#: add-patch.c:1253 git-add--interactive.perl:1244
 msgid ""
 "Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
 msgstr ""
 "Votre section éditée ne s'applique pas. L'éditer à nouveau (\"no\" "
 "l'élimine !) [y|n] ? "
 
-#: add-patch.c:1290
+#: add-patch.c:1296
 msgid "The selected hunks do not apply to the index!"
 msgstr "Les sections sélectionnées ne s'applique pas à l'index !"
 
-#: add-patch.c:1291 git-add--interactive.perl:1348
+#: add-patch.c:1297 git-add--interactive.perl:1348
 msgid "Apply them to the worktree anyway? "
 msgstr "Les appliquer quand même à l'arbre de travail ? "
 
-#: add-patch.c:1298 git-add--interactive.perl:1351
+#: add-patch.c:1304 git-add--interactive.perl:1351
 msgid "Nothing was applied.\n"
 msgstr "Rien n'a été appliqué.\n"
 
-#: add-patch.c:1355
+#: add-patch.c:1361
 msgid ""
 "j - leave this hunk undecided, see next undecided hunk\n"
 "J - leave this hunk undecided, see next hunk\n"
@@ -753,73 +753,73 @@ msgstr ""
 "e - éditer manuellement la section actuelle\n"
 "? - afficher l'aide\n"
 
-#: add-patch.c:1517 add-patch.c:1527
+#: add-patch.c:1523 add-patch.c:1533
 msgid "No previous hunk"
 msgstr "Pas de section précédente"
 
-#: add-patch.c:1522 add-patch.c:1532
+#: add-patch.c:1528 add-patch.c:1538
 msgid "No next hunk"
 msgstr "Pas de section suivante"
 
-#: add-patch.c:1538
+#: add-patch.c:1544
 msgid "No other hunks to goto"
 msgstr "Aucune autre section à atteindre"
 
-#: add-patch.c:1549 git-add--interactive.perl:1608
+#: add-patch.c:1555 git-add--interactive.perl:1608
 msgid "go to which hunk (<ret> to see more)? "
 msgstr "aller à quelle section (<ret> pour voir plus) ? "
 
-#: add-patch.c:1550 git-add--interactive.perl:1610
+#: add-patch.c:1556 git-add--interactive.perl:1610
 msgid "go to which hunk? "
 msgstr "aller à quelle section ? "
 
-#: add-patch.c:1561
+#: add-patch.c:1567
 #, c-format
 msgid "Invalid number: '%s'"
 msgstr "Numéro invalide : '%s'"
 
-#: add-patch.c:1566
+#: add-patch.c:1572
 #, c-format
 msgid "Sorry, only %d hunk available."
 msgid_plural "Sorry, only %d hunks available."
 msgstr[0] "Désolé, %d seule section disponible."
 msgstr[1] "Désolé, Seulement %d sections disponibles."
 
-#: add-patch.c:1575
+#: add-patch.c:1581
 msgid "No other hunks to search"
 msgstr "Aucune autre section à rechercher"
 
-#: add-patch.c:1581 git-add--interactive.perl:1663
+#: add-patch.c:1587 git-add--interactive.perl:1663
 msgid "search for regex? "
 msgstr "rechercher la regex ? "
 
-#: add-patch.c:1596
+#: add-patch.c:1602
 #, c-format
 msgid "Malformed search regexp %s: %s"
 msgstr "Regex de recherche malformée %s : %s"
 
-#: add-patch.c:1613
+#: add-patch.c:1619
 msgid "No hunk matches the given pattern"
 msgstr "Aucune section ne correspond au motif donné"
 
-#: add-patch.c:1620
+#: add-patch.c:1626
 msgid "Sorry, cannot split this hunk"
 msgstr "Désolé, impossible de découper cette section"
 
-#: add-patch.c:1624
+#: add-patch.c:1630
 #, c-format
 msgid "Split into %d hunks."
 msgstr "Découpée en %d sections."
 
-#: add-patch.c:1628
+#: add-patch.c:1634
 msgid "Sorry, cannot edit this hunk"
 msgstr "Désolé, impossible d'éditer cette section"
 
-#: add-patch.c:1680
+#: add-patch.c:1686
 msgid "'git apply' failed"
 msgstr "'git apply' a échoué"
 
-#: advice.c:78
+#: advice.c:81
 #, c-format
 msgid ""
 "\n"
@@ -828,37 +828,37 @@ msgstr ""
 "\n"
 "Désactivez ce message avec \"git config advice.%s false\""
 
-#: advice.c:94
+#: advice.c:97
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr "%sastuce: %.*s%s\n"
 
-#: advice.c:178
+#: advice.c:181
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr "Impossible de picorer car vous avez des fichiers non fusionnés."
 
-#: advice.c:180
+#: advice.c:183
 msgid "Committing is not possible because you have unmerged files."
 msgstr "Impossible de valider car vous avez des fichiers non fusionnés."
 
-#: advice.c:182
+#: advice.c:185
 msgid "Merging is not possible because you have unmerged files."
 msgstr "Impossible de fusionner car vous avez des fichiers non fusionnés."
 
-#: advice.c:184
+#: advice.c:187
 msgid "Pulling is not possible because you have unmerged files."
 msgstr "Impossible de tirer car vous avez des fichiers non fusionnés."
 
-#: advice.c:186
+#: advice.c:189
 msgid "Reverting is not possible because you have unmerged files."
 msgstr "Impossible d'annuler car vous avez des fichiers non fusionnés."
 
-#: advice.c:188
+#: advice.c:191
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr "%s n'est pas possible car vous avez des fichiers non fusionnés."
 
-#: advice.c:196
+#: advice.c:199
 msgid ""
 "Fix them up in the work tree, and then use 'git add/rm <file>'\n"
 "as appropriate to mark resolution and make a commit."
@@ -866,27 +866,27 @@ msgstr ""
 "Corrigez-les puis lancez 'git add/rm <fichier>'\n"
 "si nécessaire pour marquer la résolution et valider."
 
-#: advice.c:204
+#: advice.c:207
 msgid "Exiting because of an unresolved conflict."
 msgstr "Abandon à cause de conflit non résolu."
 
-#: advice.c:209 builtin/merge.c:1382
+#: advice.c:212 builtin/merge.c:1388
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe)."
 
-#: advice.c:211
+#: advice.c:214
 msgid "Please, commit your changes before merging."
 msgstr "Veuillez valider vos changements avant de fusionner."
 
-#: advice.c:212
+#: advice.c:215
 msgid "Exiting because of unfinished merge."
 msgstr "Abandon à cause d'une fusion non terminée."
 
-#: advice.c:217
+#: advice.c:220
 msgid "Not possible to fast-forward, aborting."
 msgstr "Pas possible d'avancer rapidement, abandon."
 
-#: advice.c:227
+#: advice.c:230
 #, c-format
 msgid ""
 "The following paths and/or pathspecs matched paths that exist\n"
@@ -898,7 +898,7 @@ msgstr ""
 "qui existent hors de votre définition d'extraction clairsemée, et ne seront\n"
 "donc pas mis à jour dans l'index :\n"
 
-#: advice.c:234
+#: advice.c:237
 msgid ""
 "If you intend to update such entries, try one of the following:\n"
 "* Use the --sparse option.\n"
@@ -908,7 +908,7 @@ msgstr ""
 "* d'utiliser l'option --sparse,\n"
 "* de désactiver ou modifier les règles de choix clairsemé."
 
-#: advice.c:242
+#: advice.c:245
 #, c-format
 msgid ""
 "Note: switching to '%s'.\n"
@@ -971,87 +971,90 @@ msgstr "option d'espace non reconnue '%s'"
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "option d'ignorance d'espace non reconnue '%s'"
 
-#: apply.c:136 archive.c:584 range-diff.c:559 revision.c:2303 revision.c:2307
-#: revision.c:2316 revision.c:2321 revision.c:2527 revision.c:2870
-#: revision.c:2874 revision.c:2880 revision.c:2883 revision.c:2885
-#: builtin/add.c:510 builtin/add.c:512 builtin/add.c:529 builtin/add.c:541
-#: builtin/branch.c:727 builtin/checkout.c:467 builtin/checkout.c:470
-#: builtin/checkout.c:1644 builtin/checkout.c:1754 builtin/checkout.c:1757
-#: builtin/clone.c:906 builtin/commit.c:358 builtin/commit.c:361
-#: builtin/commit.c:1196 builtin/describe.c:593 builtin/diff-tree.c:155
-#: builtin/difftool.c:733 builtin/fast-export.c:1245 builtin/fetch.c:2038
-#: builtin/fetch.c:2043 builtin/index-pack.c:1852 builtin/init-db.c:560
-#: builtin/log.c:1946 builtin/log.c:1948 builtin/ls-files.c:778
-#: builtin/merge.c:1403 builtin/merge.c:1405 builtin/pack-objects.c:4073
-#: builtin/push.c:592 builtin/push.c:630 builtin/push.c:636 builtin/push.c:641
-#: builtin/rebase.c:1193 builtin/rebase.c:1195 builtin/rebase.c:1199
-#: builtin/repack.c:684 builtin/repack.c:715 builtin/reset.c:426
-#: builtin/reset.c:462 builtin/rev-list.c:541 builtin/show-branch.c:710
-#: builtin/stash.c:1707 builtin/stash.c:1710 builtin/submodule--helper.c:1316
-#: builtin/submodule--helper.c:2975 builtin/tag.c:526 builtin/tag.c:572
-#: builtin/worktree.c:702
+#: apply.c:138 archive.c:584 parse-options.c:1122 range-diff.c:555
+#: revision.c:2314 revision.c:2318 revision.c:2327 revision.c:2332
+#: revision.c:2560 revision.c:2895 revision.c:2899 revision.c:2907
+#: revision.c:2910 revision.c:2912 builtin/add.c:507 builtin/add.c:509
+#: builtin/add.c:515 builtin/add.c:527 builtin/branch.c:755
+#: builtin/checkout.c:472 builtin/checkout.c:475 builtin/checkout.c:1663
+#: builtin/checkout.c:1773 builtin/checkout.c:1776 builtin/clone.c:921
+#: builtin/commit.c:359 builtin/commit.c:362 builtin/commit.c:1200
+#: builtin/commit.c:1256 builtin/commit.c:1273 builtin/describe.c:593
+#: builtin/diff-tree.c:155 builtin/difftool.c:733 builtin/fast-export.c:1245
+#: builtin/fetch.c:2141 builtin/fetch.c:2162 builtin/fetch.c:2167
+#: builtin/help.c:602 builtin/index-pack.c:1858 builtin/init-db.c:560
+#: builtin/log.c:1968 builtin/log.c:1970 builtin/ls-files.c:778
+#: builtin/merge-base.c:163 builtin/merge-base.c:169 builtin/merge.c:1409
+#: builtin/merge.c:1411 builtin/pack-objects.c:4098 builtin/push.c:592
+#: builtin/push.c:630 builtin/push.c:636 builtin/push.c:641
+#: builtin/rebase.c:1221 builtin/rebase.c:1223 builtin/rebase.c:1227
+#: builtin/repack.c:688 builtin/repack.c:719 builtin/reset.c:433
+#: builtin/reset.c:469 builtin/rev-list.c:537 builtin/show-branch.c:711
+#: builtin/stash.c:1696 builtin/stash.c:1699 builtin/submodule--helper.c:1328
+#: builtin/submodule--helper.c:3054 builtin/tag.c:527 builtin/tag.c:573
+#: builtin/worktree.c:779
 #, c-format
 msgid "options '%s' and '%s' cannot be used together"
 msgstr "les options '%s' et '%s' ne peuvent pas être utilisées ensemble"
 
-#: apply.c:139 apply.c:150 apply.c:153
+#: apply.c:141 apply.c:152 apply.c:155
 #, c-format
 msgid "'%s' outside a repository"
 msgstr "'%s' hors d'un dépôt"
 
-#: apply.c:800
+#: apply.c:807
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "Impossible de préparer la regexp d'horodatage %s"
 
-#: apply.c:809
+#: apply.c:816
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec a retourné %d pour l'entrée : %s"
 
-#: apply.c:883
+#: apply.c:890
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "nom de fichier du patch introuvable à la ligne %d"
 
-#: apply.c:921
+#: apply.c:928
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - /dev/null attendu, %s trouvé à la "
 "ligne %d"
 
-#: apply.c:927
+#: apply.c:934
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - nouveau nom de fichier inconsistant "
 "à la ligne %d"
 
-#: apply.c:928
+#: apply.c:935
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - ancien nom de fichier inconsistant "
 "à la ligne %d"
 
-#: apply.c:933
+#: apply.c:940
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - /dev/null attendu à la ligne %d"
 
-#: apply.c:962
+#: apply.c:969
 #, c-format
 msgid "invalid mode on line %d: %s"
 msgstr "mode invalide dans la ligne %d : %s"
 
-#: apply.c:1281
+#: apply.c:1288
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr "lignes d'entête inconsistantes %d et %d"
 
-#: apply.c:1371
+#: apply.c:1378
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -1066,93 +1069,93 @@ msgstr[1] ""
 "information de nom de fichier manquante dans l'en-tête de git diff lors de "
 "la suppression de %d composants de préfixe de chemin (ligne %d)"
 
-#: apply.c:1384
+#: apply.c:1391
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr ""
 "information de nom de fichier manquante dans l'en-tête de git diff (ligne %d)"
 
-#: apply.c:1480
+#: apply.c:1487
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "recomptage : ligne inattendue : %.*s"
 
-#: apply.c:1549
+#: apply.c:1556
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "fragment de patch sans en-tête à la ligne %d : %.*s"
 
-#: apply.c:1752
+#: apply.c:1759
 msgid "new file depends on old contents"
 msgstr "le nouveau fichier dépend de contenus anciens"
 
-#: apply.c:1754
+#: apply.c:1761
 msgid "deleted file still has contents"
 msgstr "le fichier supprimé a encore du contenu"
 
-#: apply.c:1788
+#: apply.c:1795
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "patch corrompu à la ligne %d"
 
-#: apply.c:1825
+#: apply.c:1832
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "le nouveau fichier %s dépend de contenus anciens"
 
-#: apply.c:1827
+#: apply.c:1834
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "le fichier supprimé %s a encore du contenu"
 
-#: apply.c:1830
+#: apply.c:1837
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** attention : le fichier %s devient vide mais n'est pas supprimé"
 
-#: apply.c:1978
+#: apply.c:1985
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "patch binaire corrompu à la ligne %d : %.*s"
 
-#: apply.c:2015
+#: apply.c:2022
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "patch binaire non reconnu à la ligne %d"
 
-#: apply.c:2177
+#: apply.c:2184
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "patch totalement incompréhensible à la ligne %d"
 
-#: apply.c:2263
+#: apply.c:2270
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "lecture du lien symbolique %s impossible"
 
-#: apply.c:2267
+#: apply.c:2274
 #, c-format
 msgid "unable to open or read %s"
 msgstr "ouverture ou lecture de %s impossible"
 
-#: apply.c:2936
+#: apply.c:2943
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "début de ligne invalide : '%c'"
 
-#: apply.c:3057
+#: apply.c:3064
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] "La section n°%d a réussi à la ligne %d (offset %d ligne)."
 msgstr[1] "La section n°%d a réussi à la ligne %d (offset %d lignes)."
 
-#: apply.c:3069
+#: apply.c:3076
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "Contexte réduit à (%ld/%ld) pour appliquer le fragment à la ligne %d"
 
-#: apply.c:3075
+#: apply.c:3082
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -1161,464 +1164,464 @@ msgstr ""
 "pendant la recherche de :\n"
 "%.*s"
 
-#: apply.c:3097
+#: apply.c:3104
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "données de patch binaire manquantes pour '%s'"
 
-#: apply.c:3105
+#: apply.c:3112
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 "impossible d'appliquer l'inverse d'un patch binaire à '%s' sans la section "
 "inverse"
 
-#: apply.c:3152
+#: apply.c:3159
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 "impossible d'appliquer un patch binaire à '%s' sans la ligne complète d'index"
 
-#: apply.c:3163
+#: apply.c:3170
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
 "le patch s'applique à '%s' (%s), ce qui ne correspond pas au contenu actuel."
 
-#: apply.c:3171
+#: apply.c:3178
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
 msgstr "le patch s'applique à un '%s' vide mais ce n'est pas vide"
 
-#: apply.c:3189
+#: apply.c:3196
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "l'image postérieure nécessaire %s pour '%s' ne peut pas être lue"
 
-#: apply.c:3202
+#: apply.c:3209
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "le patch binaire ne s'applique par correctement à '%s'"
 
-#: apply.c:3209
+#: apply.c:3216
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 "le patch binaire sur '%s' crée un résultat incorrect (%s attendu, mais %s "
 "trouvé)"
 
-#: apply.c:3230
+#: apply.c:3237
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "le patch a échoué : %s:%ld"
 
-#: apply.c:3353
+#: apply.c:3360
 #, c-format
 msgid "cannot checkout %s"
 msgstr "extraction de %s impossible"
 
-#: apply.c:3405 apply.c:3416 apply.c:3462 midx.c:104 pack-revindex.c:214
-#: setup.c:309
+#: apply.c:3412 apply.c:3423 apply.c:3469 midx.c:105 pack-revindex.c:214
+#: setup.c:310
 #, c-format
 msgid "failed to read %s"
 msgstr "échec de la lecture de %s"
 
-#: apply.c:3413
+#: apply.c:3420
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "lecture depuis '%s' au-delà d'un lien symbolique"
 
-#: apply.c:3442 apply.c:3711
+#: apply.c:3449 apply.c:3721
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "le chemin %s a été renommé/supprimé"
 
-#: apply.c:3549 apply.c:3726
+#: apply.c:3559 apply.c:3736
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s : n'existe pas dans l'index"
 
-#: apply.c:3558 apply.c:3734 apply.c:3978
+#: apply.c:3568 apply.c:3744 apply.c:3960
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s : ne correspond pas à l'index"
 
-#: apply.c:3595
+#: apply.c:3605
 msgid "repository lacks the necessary blob to perform 3-way merge."
 msgstr ""
 "le dépôt n'a pas les blobs nécessaires pour effectuer une fusion à 3 points."
 
-#: apply.c:3598
+#: apply.c:3608
 #, c-format
 msgid "Performing three-way merge...\n"
 msgstr "Application d'une fusion à 3 points…\n"
 
-#: apply.c:3614 apply.c:3618
+#: apply.c:3624 apply.c:3628
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr "impossible de lire le contenu actuel de '%s'"
 
-#: apply.c:3630
+#: apply.c:3640
 #, c-format
 msgid "Failed to perform three-way merge...\n"
 msgstr "Échec de l'application de la fusion à 3 points…\n"
 
-#: apply.c:3644
+#: apply.c:3654
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr "Patch %s appliqué avec des conflits.\n"
 
-#: apply.c:3649
+#: apply.c:3659
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr "Patch %s appliqué proprement.\n"
 
-#: apply.c:3666
+#: apply.c:3676
 #, c-format
 msgid "Falling back to direct application...\n"
 msgstr "Retour à une application directe…\n"
 
-#: apply.c:3678
+#: apply.c:3688
 msgid "removal patch leaves file contents"
 msgstr "le patch de suppression laisse un contenu dans le fichier"
 
-#: apply.c:3751
+#: apply.c:3761
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s : type erroné"
 
-#: apply.c:3753
+#: apply.c:3763
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s est de type %o, mais %o attendu"
 
-#: apply.c:3918 apply.c:3920 read-cache.c:889 read-cache.c:918
-#: read-cache.c:1381
+#: apply.c:3900 apply.c:3902 read-cache.c:903 read-cache.c:932
+#: read-cache.c:1399
 #, c-format
 msgid "invalid path '%s'"
 msgstr "chemin invalide '%s'"
 
-#: apply.c:3976
+#: apply.c:3958
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s : existe déjà dans l'index"
 
-#: apply.c:3980
+#: apply.c:3962
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s : existe déjà dans la copie de travail"
 
-#: apply.c:4000
+#: apply.c:3982
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr "le nouveau mode (%o) de %s ne correspond pas à l'ancien mode (%o)"
 
-#: apply.c:4005
+#: apply.c:3987
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr ""
 "le nouveau mode (%o) de %s ne correspond pas à l'ancien mode (%o) de %s"
 
-#: apply.c:4025
+#: apply.c:4007
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "le fichier affecté '%s' est au-delà d'un lien symbolique"
 
-#: apply.c:4029
+#: apply.c:4011
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s : le patch ne s'applique pas"
 
-#: apply.c:4044
+#: apply.c:4026
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Vérification du patch %s..."
 
-#: apply.c:4136
+#: apply.c:4118
 #, c-format
 msgid "sha1 information is lacking or useless for submodule %s"
 msgstr ""
 "l'information sha1 est manquante ou inutilisable pour le sous-module %s"
 
-#: apply.c:4143
+#: apply.c:4125
 #, c-format
 msgid "mode change for %s, which is not in current HEAD"
 msgstr "le mode change pour %s, qui n'est pas dans la HEAD actuelle"
 
-#: apply.c:4146
+#: apply.c:4128
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "l'information de sha1 est manquante ou inutilisable (%s)."
 
-#: apply.c:4155
+#: apply.c:4137
 #, c-format
 msgid "could not add %s to temporary index"
 msgstr "impossible d'ajouter %s à l'index temporaire"
 
-#: apply.c:4165
+#: apply.c:4147
 #, c-format
 msgid "could not write temporary index to %s"
 msgstr "impossible d'écrire l'index temporaire dans %s"
 
-#: apply.c:4303
+#: apply.c:4285
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "suppression de %s dans l'index impossible"
 
-#: apply.c:4337
+#: apply.c:4319
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "patch corrompu pour le sous-module %s"
 
-#: apply.c:4343
+#: apply.c:4325
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "stat du fichier nouvellement créé '%s' impossible"
 
-#: apply.c:4351
+#: apply.c:4333
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr ""
 "création du magasin de stockage pour le fichier nouvellement créé %s "
 "impossible"
 
-#: apply.c:4357 apply.c:4502
+#: apply.c:4339 apply.c:4484
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "ajout de l'élément de cache %s impossible"
 
-#: apply.c:4400 builtin/bisect--helper.c:540 builtin/gc.c:2258
+#: apply.c:4382 builtin/bisect--helper.c:540 builtin/gc.c:2258
 #: builtin/gc.c:2293
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "échec de l'écriture dans '%s'"
 
-#: apply.c:4404
+#: apply.c:4386
 #, c-format
 msgid "closing file '%s'"
 msgstr "fermeture du fichier '%s'"
 
-#: apply.c:4474
+#: apply.c:4456
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "écriture du fichier '%s' mode %o impossible"
 
-#: apply.c:4572
+#: apply.c:4554
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Patch %s appliqué proprement."
 
-#: apply.c:4580
+#: apply.c:4562
 msgid "internal error"
 msgstr "erreur interne"
 
-#: apply.c:4583
+#: apply.c:4565
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "Application du patch %%s avec %d rejet..."
 msgstr[1] "Application du patch %%s avec %d rejets..."
 
-#: apply.c:4594
+#: apply.c:4576
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "troncature du nom de fichier .rej en %.*s.rej"
 
-#: apply.c:4602
+#: apply.c:4584
 #, c-format
 msgid "cannot open %s"
 msgstr "impossible d'ouvrir %s"
 
-#: apply.c:4616
+#: apply.c:4598
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Section n°%d appliquée proprement."
 
-#: apply.c:4620
+#: apply.c:4602
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Section n°%d rejetée."
 
-#: apply.c:4749
+#: apply.c:4731
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "Chemin '%s' non traité."
 
-#: apply.c:4758
+#: apply.c:4740
 msgid "No valid patches in input (allow with \"--allow-empty\")"
 msgstr "Pas de rustine valide sur l'entrée (permis avec \"--allow-empty\")"
 
-#: apply.c:4779
+#: apply.c:4761
 msgid "unable to read index file"
 msgstr "lecture du fichier d'index impossible"
 
-#: apply.c:4936
+#: apply.c:4918
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "ouverture impossible du patch '%s' :%s"
 
-#: apply.c:4963
+#: apply.c:4945
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "%d erreur d'espace ignorée"
 msgstr[1] "%d erreurs d'espace ignorées"
 
-#: apply.c:4969 apply.c:4984
+#: apply.c:4951 apply.c:4966
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] "%d ligne a ajouté des erreurs d'espace."
 msgstr[1] "%d lignes ont ajouté des erreurs d'espace."
 
-#: apply.c:4977
+#: apply.c:4959
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] "%d ligne ajoutée après correction des erreurs d'espace."
 msgstr[1] "%d lignes ajoutées après correction des erreurs d'espace."
 
-#: apply.c:4993 builtin/add.c:704 builtin/mv.c:338 builtin/rm.c:430
+#: apply.c:4975 builtin/add.c:690 builtin/mv.c:338 builtin/rm.c:430
 msgid "Unable to write new index file"
 msgstr "Impossible d'écrire le nouveau fichier d'index"
 
-#: apply.c:5021
+#: apply.c:5003
 msgid "don't apply changes matching the given path"
 msgstr "ne pas appliquer les modifications qui correspondent au chemin donné"
 
-#: apply.c:5024
+#: apply.c:5006
 msgid "apply changes matching the given path"
 msgstr "appliquer les modifications qui correspondent au chemin donné"
 
-#: apply.c:5026 builtin/am.c:2376
+#: apply.c:5008 builtin/am.c:2379
 msgid "num"
 msgstr "num"
 
-#: apply.c:5027
+#: apply.c:5009
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "supprimer <num> barres obliques des chemins traditionnels de diff"
 
-#: apply.c:5030
+#: apply.c:5012
 msgid "ignore additions made by the patch"
 msgstr "ignorer les additions réalisées par le patch"
 
-#: apply.c:5032
+#: apply.c:5014
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr "au lieu d'appliquer le patch, afficher le diffstat de l'entrée"
 
-#: apply.c:5036
+#: apply.c:5018
 msgid "show number of added and deleted lines in decimal notation"
 msgstr ""
 "afficher le nombre de lignes ajoutées et supprimées en notation décimale"
 
-#: apply.c:5038
+#: apply.c:5020
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "au lieu d'appliquer le patch, afficher un résumé de l'entrée"
 
-#: apply.c:5040
+#: apply.c:5022
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "au lieu d'appliquer le patch, voir si le patch est applicable"
 
-#: apply.c:5042
+#: apply.c:5024
 msgid "make sure the patch is applicable to the current index"
 msgstr "s'assurer que le patch est applicable sur l'index actuel"
 
-#: apply.c:5044
+#: apply.c:5026
 msgid "mark new files with `git add --intent-to-add`"
 msgstr "marquer les nouveaux fichiers `git add --intent-to-add`"
 
-#: apply.c:5046
+#: apply.c:5028
 msgid "apply a patch without touching the working tree"
 msgstr "appliquer les patch sans toucher à la copie de travail"
 
-#: apply.c:5048
+#: apply.c:5030
 msgid "accept a patch that touches outside the working area"
 msgstr "accepter un patch qui touche hors de la copie de travail"
 
-#: apply.c:5051
+#: apply.c:5033
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "appliquer aussi le patch (à utiliser avec --stat/--summary/--check)"
 
-#: apply.c:5053
+#: apply.c:5035
 msgid "attempt three-way merge, fall back on normal patch if that fails"
 msgstr ""
 "tenter une fusion à 3 points, revenir à un rustinage normal en cas d'échec"
 
-#: apply.c:5055
+#: apply.c:5037
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 "construire un index temporaire fondé sur l'information de l'index embarqué"
 
-#: apply.c:5058 builtin/checkout-index.c:196
+#: apply.c:5040 builtin/checkout-index.c:230
 msgid "paths are separated with NUL character"
 msgstr "les chemins sont séparés par un caractère NUL"
 
-#: apply.c:5060
+#: apply.c:5042
 msgid "ensure at least <n> lines of context match"
 msgstr "s'assurer d'au moins <n> lignes de correspondance de contexte"
 
-#: apply.c:5061 builtin/am.c:2352 builtin/am.c:2355
+#: apply.c:5043 builtin/am.c:2355 builtin/am.c:2358
 #: builtin/interpret-trailers.c:98 builtin/interpret-trailers.c:100
-#: builtin/interpret-trailers.c:102 builtin/pack-objects.c:3960
-#: builtin/rebase.c:1051
+#: builtin/interpret-trailers.c:102 builtin/pack-objects.c:3983
+#: builtin/rebase.c:1079
 msgid "action"
 msgstr "action"
 
-#: apply.c:5062
+#: apply.c:5044
 msgid "detect new or modified lines that have whitespace errors"
 msgstr ""
 "détecter des lignes nouvelles ou modifiées qui contiennent des erreurs "
 "d'espace"
 
-#: apply.c:5065 apply.c:5068
+#: apply.c:5047 apply.c:5050
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignorer des modifications d'espace lors de la recherche de contexte"
 
-#: apply.c:5071
+#: apply.c:5053
 msgid "apply the patch in reverse"
 msgstr "appliquer le patch en sens inverse"
 
-#: apply.c:5073
+#: apply.c:5055
 msgid "don't expect at least one line of context"
 msgstr "ne pas s'attendre à au moins une ligne de contexte"
 
-#: apply.c:5075
+#: apply.c:5057
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "laisser les sections rejetées dans les fichiers *.rej correspondants"
 
-#: apply.c:5077
+#: apply.c:5059
 msgid "allow overlapping hunks"
 msgstr "accepter les recouvrements de sections"
 
-#: apply.c:5080
+#: apply.c:5062
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 "tolérer des erreurs de détection de retours chariot manquants en fin de "
 "fichier"
 
-#: apply.c:5083
+#: apply.c:5065
 msgid "do not trust the line counts in the hunk headers"
 msgstr "ne pas se fier au compte de lignes dans les en-têtes de section"
 
-#: apply.c:5085 builtin/am.c:2364
+#: apply.c:5067 builtin/am.c:2367
 msgid "root"
 msgstr "racine"
 
-#: apply.c:5086
+#: apply.c:5068
 msgid "prepend <root> to all filenames"
 msgstr "préfixer tous les noms de fichier avec <root>"
 
-#: apply.c:5089
+#: apply.c:5071
 msgid "don't return error for empty patches"
 msgstr "ne pas renvoyer d'erreur pour les rustines vides"
 
-#: archive-tar.c:125 archive-zip.c:345
+#: archive-tar.c:125 archive-zip.c:346
 #, c-format
 msgid "cannot stream blob %s"
 msgstr "impossible de transmettre le blob %s en flux"
 
-#: archive-tar.c:265 archive-zip.c:358
+#: archive-tar.c:265 archive-zip.c:359
 #, c-format
 msgid "unsupported file mode: 0%o (SHA1: %s)"
 msgstr "mode de fichier non supporté :0%o (SHA1: %s)"
@@ -1637,22 +1640,22 @@ msgstr "impossible de rediriger un descripteur"
 msgid "'%s' filter reported error"
 msgstr "le filtre '%s' a retourné une erreur"
 
-#: archive-zip.c:318
+#: archive-zip.c:319
 #, c-format
 msgid "path is not valid UTF-8: %s"
 msgstr "le chemin n'est pas codé en UTF-8 valide : %s"
 
-#: archive-zip.c:322
+#: archive-zip.c:323
 #, c-format
 msgid "path too long (%d chars, SHA1: %s): %s"
 msgstr "le chemin est trop long (%d caractères, SHA1 : %s) : %s"
 
-#: archive-zip.c:469 builtin/pack-objects.c:365 builtin/pack-objects.c:368
+#: archive-zip.c:470 builtin/pack-objects.c:363 builtin/pack-objects.c:366
 #, c-format
 msgid "deflate error (%d)"
 msgstr "erreur de compression (%d)"
 
-#: archive-zip.c:603
+#: archive-zip.c:604
 #, c-format
 msgid "timestamp too large for this system: %<PRIuMAX>"
 msgstr "l'horodatage est trop grand pour ce système : %<PRIuMAX>"
@@ -1661,10 +1664,6 @@ msgstr "l'horodatage est trop grand pour ce système : %<PRIuMAX>"
 msgid "git archive [<options>] <tree-ish> [<path>...]"
 msgstr "git archive [<options>] <arbre ou apparenté> [<chemin>...]"
 
-#: archive.c:15
-msgid "git archive --list"
-msgstr "git archive --list"
-
 #: archive.c:16
 msgid ""
 "git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> [<path>...]"
@@ -1677,12 +1676,12 @@ msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <dépôt> [--exec <commande>] --list"
 
 #: archive.c:188 archive.c:341 builtin/gc.c:497 builtin/notes.c:238
-#: builtin/tag.c:578
+#: builtin/tag.c:579
 #, c-format
 msgid "cannot read '%s'"
 msgstr "impossible de lire '%s'"
 
-#: archive.c:426 builtin/add.c:215 builtin/add.c:671 builtin/rm.c:334
+#: archive.c:426 builtin/add.c:214 builtin/add.c:657 builtin/rm.c:334
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "le chemin '%s' ne correspond à aucun fichier"
@@ -1724,7 +1723,7 @@ msgstr "fmt"
 msgid "archive format"
 msgstr "format d'archive"
 
-#: archive.c:552 builtin/log.c:1790
+#: archive.c:552 builtin/log.c:1809
 msgid "prefix"
 msgstr "préfixe"
 
@@ -1732,12 +1731,12 @@ msgstr "préfixe"
 msgid "prepend prefix to each pathname in the archive"
 msgstr "préfixer chaque chemin de fichier dans l'archive"
 
-#: archive.c:554 archive.c:557 builtin/blame.c:880 builtin/blame.c:884
-#: builtin/blame.c:885 builtin/commit-tree.c:115 builtin/config.c:135
+#: archive.c:554 archive.c:557 builtin/blame.c:881 builtin/blame.c:885
+#: builtin/blame.c:886 builtin/commit-tree.c:115 builtin/config.c:135
 #: builtin/fast-export.c:1181 builtin/fast-export.c:1183
-#: builtin/fast-export.c:1187 builtin/grep.c:935 builtin/hash-object.c:103
+#: builtin/fast-export.c:1187 builtin/grep.c:936 builtin/hash-object.c:104
 #: builtin/ls-files.c:654 builtin/ls-files.c:657 builtin/notes.c:410
-#: builtin/notes.c:576 builtin/read-tree.c:115 parse-options.h:190
+#: builtin/notes.c:576 builtin/read-tree.c:115 parse-options.h:195
 msgid "file"
 msgstr "fichier"
 
@@ -1765,8 +1764,8 @@ msgstr "régler le niveau de compression"
 msgid "list supported archive formats"
 msgstr "afficher les formats d'archive supportés"
 
-#: archive.c:568 builtin/archive.c:89 builtin/clone.c:118 builtin/clone.c:121
-#: builtin/submodule--helper.c:1870 builtin/submodule--helper.c:2513
+#: archive.c:568 builtin/archive.c:89 builtin/clone.c:122 builtin/clone.c:125
+#: builtin/submodule--helper.c:1884 builtin/submodule--helper.c:2718
 msgid "repo"
 msgstr "dépôt"
 
@@ -1787,11 +1786,12 @@ msgstr "chemin vers la commande distante git-upload-archive"
 msgid "Unexpected option --remote"
 msgstr "Option --remote inattendue"
 
-#: archive.c:580 fetch-pack.c:300 revision.c:2887 builtin/add.c:544
-#: builtin/add.c:576 builtin/checkout.c:1763 builtin/commit.c:370
-#: builtin/fast-export.c:1230 builtin/index-pack.c:1848 builtin/log.c:2115
-#: builtin/reset.c:435 builtin/reset.c:493 builtin/rm.c:281
-#: builtin/stash.c:1719 builtin/worktree.c:508 http-fetch.c:144
+#: archive.c:580 fetch-pack.c:300 revision.c:2914 builtin/add.c:530
+#: builtin/add.c:562 builtin/checkout.c:1782 builtin/clone.c:1099
+#: builtin/clone.c:1102 builtin/commit.c:371 builtin/fast-export.c:1230
+#: builtin/index-pack.c:1854 builtin/log.c:2140 builtin/reset.c:442
+#: builtin/reset.c:500 builtin/rm.c:281 builtin/stash.c:1708
+#: builtin/worktree.c:580 builtin/worktree.c:781 http-fetch.c:144
 #: http-fetch.c:153
 #, c-format
 msgid "the option '%s' requires '%s'"
@@ -1811,17 +1811,17 @@ msgstr "Format d'archive inconnu '%s'"
 msgid "Argument not supported for format '%s': -%d"
 msgstr "Argument non supporté pour le format '%s' : -%d"
 
-#: attr.c:203
+#: attr.c:202
 #, c-format
 msgid "%.*s is not a valid attribute name"
 msgstr "%.*s n'est pas un nom valide d'attribut"
 
-#: attr.c:364
+#: attr.c:363
 #, c-format
 msgid "%s not allowed: %s:%d"
 msgstr "%s non permis : %s : %d"
 
-#: attr.c:404
+#: attr.c:403
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -1839,12 +1839,12 @@ msgstr "Contenu mal cité dans le fichier '%s' : %s"
 msgid "We cannot bisect more!\n"
 msgstr "Impossible de pousser la bissection plus loin !\n"
 
-#: bisect.c:764
+#: bisect.c:765
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr "%s n'est pas un nom de commit valide"
 
-#: bisect.c:789
+#: bisect.c:790
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -1853,7 +1853,7 @@ msgstr ""
 "La base de fusion %s est mauvaise.\n"
 "Cela signifie que le bogue été corrigé entre %s et [%s].\n"
 
-#: bisect.c:794
+#: bisect.c:795
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -1862,7 +1862,7 @@ msgstr ""
 "La base de fusion %s est nouvelle.\n"
 "La propriété a changé entre %s et [%s].\n"
 
-#: bisect.c:799
+#: bisect.c:800
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -1871,7 +1871,7 @@ msgstr ""
 "La base de fusion %s est %s.\n"
 "Ceci signifie que le premier commit '%s' est entre %s et [%s].\n"
 
-#: bisect.c:807
+#: bisect.c:808
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -1882,7 +1882,7 @@ msgstr ""
 "git bisect ne peut pas fonctionner correctement dans ce cas.\n"
 "Peut-être les révisions %s et %s ne sont-elles pas les bonnes ?\n"
 
-#: bisect.c:820
+#: bisect.c:821
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -1894,36 +1894,36 @@ msgstr ""
 "et %s.\n"
 "On continue tout de même."
 
-#: bisect.c:859
+#: bisect.c:860
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "Bissection : une base de fusion doit être testée\n"
 
-#: bisect.c:909
+#: bisect.c:910
 #, c-format
 msgid "a %s revision is needed"
 msgstr "une révision %s est nécessaire"
 
-#: bisect.c:939
+#: bisect.c:940
 #, c-format
 msgid "could not create file '%s'"
 msgstr "impossible de créer le fichier '%s'"
 
-#: bisect.c:985 builtin/merge.c:155
+#: bisect.c:986 builtin/merge.c:155
 #, c-format
 msgid "could not read file '%s'"
 msgstr "impossible de lire le fichier '%s'"
 
-#: bisect.c:1025
+#: bisect.c:1026
 msgid "reading bisect refs failed"
 msgstr "impossible de lire les références de bissection"
 
-#: bisect.c:1055
+#: bisect.c:1056
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s était à la fois %s et %s\n"
 
-#: bisect.c:1064
+#: bisect.c:1065
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -1932,7 +1932,7 @@ msgstr ""
 "Aucun commit testable n'a été trouvé\n"
 "Peut-être avez-vous démarré avec un mauvais arguement de chemin ?\n"
 
-#: bisect.c:1093
+#: bisect.c:1094
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -1942,54 +1942,54 @@ msgstr[1] "(à peu près %d étapes)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1099
+#: bisect.c:1100
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
 msgstr[0] "Bissection : %d révision à tester après ceci %s\n"
 msgstr[1] "Bissection : %d révisions à tester après ceci %s\n"
 
-#: blame.c:2776
+#: blame.c:2773
 msgid "--contents and --reverse do not blend well."
 msgstr "--contents et --reverse ne font pas bon ménage."
 
-#: blame.c:2790
+#: blame.c:2787
 msgid "cannot use --contents with final commit object name"
 msgstr "on ne peut pas utiliser --contents avec un nom d'objet commit final"
 
-#: blame.c:2811
+#: blame.c:2808
 msgid "--reverse and --first-parent together require specified latest commit"
 msgstr ""
 "--reverse et --first-parent ensemble nécessitent la spécification d'un "
 "dernier commit"
 
-#: blame.c:2820 bundle.c:224 midx.c:1042 ref-filter.c:2370 remote.c:2158
-#: sequencer.c:2352 sequencer.c:4899 submodule.c:883 builtin/commit.c:1114
-#: builtin/log.c:429 builtin/log.c:1036 builtin/log.c:1644 builtin/log.c:2071
-#: builtin/log.c:2362 builtin/merge.c:431 builtin/pack-objects.c:3373
-#: builtin/pack-objects.c:3775 builtin/pack-objects.c:3790
+#: blame.c:2817 bundle.c:231 midx.c:1058 ref-filter.c:2371 remote.c:2157
+#: sequencer.c:2348 sequencer.c:4872 submodule.c:913 builtin/commit.c:1118
+#: builtin/log.c:437 builtin/log.c:1055 builtin/log.c:1663 builtin/log.c:2096
+#: builtin/log.c:2387 builtin/merge.c:431 builtin/pack-objects.c:3381
+#: builtin/pack-objects.c:3781 builtin/pack-objects.c:3796
 #: builtin/shortlog.c:255
 msgid "revision walk setup failed"
 msgstr "échec de la préparation du parcours des révisions"
 
-#: blame.c:2838
+#: blame.c:2835
 msgid ""
 "--reverse --first-parent together require range along first-parent chain"
 msgstr ""
 "--reverse --first-parent ensemble nécessitent une portée avec la chaîne de "
 "premier parent"
 
-#: blame.c:2849
+#: blame.c:2846
 #, c-format
 msgid "no such path %s in %s"
 msgstr "pas de chemin %s dans %s"
 
-#: blame.c:2860
+#: blame.c:2857
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "impossible de lire le blob %s  pour le chemin %s"
 
-#: branch.c:77
+#: branch.c:93
 msgid ""
 "cannot inherit upstream tracking configuration of multiple refs when "
 "rebasing is requested"
@@ -1997,31 +1997,31 @@ msgstr ""
 "impossible d'hériter la configuration de suivi de référence amont depuis "
 "plusieurs références quand un rebasage est demandé"
 
-#: branch.c:88
+#: branch.c:104
 #, c-format
 msgid "not setting branch '%s' as its own upstream"
 msgstr "la branche %s ne peut pas être sa propre branche amont"
 
-#: branch.c:144
+#: branch.c:160
 #, c-format
 msgid "branch '%s' set up to track '%s' by rebasing."
 msgstr "la branche '%s' est paramétrée pour suivre '%s' en rebasant."
 
-#: branch.c:145
+#: branch.c:161
 #, c-format
 msgid "branch '%s' set up to track '%s'."
 msgstr "la branche '%s' est paramétrée pour suivre '%s'."
 
-#: branch.c:148
+#: branch.c:164
 #, c-format
 msgid "branch '%s' set up to track:"
 msgstr "la branche '%s' est paramétrée pour suivre :"
 
-#: branch.c:160
+#: branch.c:176
 msgid "unable to write upstream branch configuration"
 msgstr "échec de l'écriture de la configuration de branche amont"
 
-#: branch.c:162
+#: branch.c:178
 msgid ""
 "\n"
 "After fixing the error cause you may try to fix up\n"
@@ -2031,52 +2031,90 @@ msgstr ""
 "Après correction de la cause de l'erreur, vous pouvez essayer\n"
 "de corriger l'information de suivi distant en invoquant :"
 
-#: branch.c:203
+#: branch.c:219
 #, c-format
 msgid "asked to inherit tracking from '%s', but no remote is set"
 msgstr "héritage de suivi depuis '%s' demandé, mais pas de distant configuré"
 
-#: branch.c:209
+#: branch.c:225
 #, c-format
 msgid "asked to inherit tracking from '%s', but no merge configuration is set"
 msgstr ""
 "héritage de suivi depuis '%s' demandé, mais pas de configuration de fusion "
 "renseignée"
 
-#: branch.c:252
+#: branch.c:277
+#, c-format
+msgid "not tracking: ambiguous information for ref '%s'"
+msgstr "pas de suivi : information ambiguë pour la référence '%s'"
+
+#. TRANSLATORS: This is a line listing a remote with duplicate
+#. refspecs in the advice message below. For RTL languages you'll
+#. probably want to swap the "%s" and leading "  " space around.
+#.
+#. TRANSLATORS: This is line item of ambiguous object output
+#. from describe_ambiguous_object() above. For RTL languages
+#. you'll probably want to swap the "%s" and leading " " space
+#. around.
+#.
+#: branch.c:289 object-name.c:464
+#, c-format
+msgid "  %s\n"
+msgstr "  %s\n"
+
+#. TRANSLATORS: The second argument is a \n-delimited list of
+#. duplicate refspecs, composed above.
+#.
+#: branch.c:295
 #, c-format
-msgid "not tracking: ambiguous information for ref %s"
-msgstr "pas de suivi : information ambiguë pour la référence %s"
+msgid ""
+"There are multiple remotes whose fetch refspecs map to the remote\n"
+"tracking ref '%s':\n"
+"%s\n"
+"This is typically a configuration error.\n"
+"\n"
+"To support setting up tracking branches, ensure that\n"
+"different remotes' fetch refspecs map into different\n"
+"tracking namespaces."
+msgstr ""
+"Il y a plusieurs distants dont les spécificateurs de référence de\n"
+"récupération correspondent à la référence de suivi '%s' :\n"
+"%s\n"
+"C'est typiquement une erreur de configuration.\n"
+"\n"
+"Pour gérer le réglage des branches de suivi, assurez-vous\n"
+"que des réfspecs de récupération de distants différents\n"
+"correspondent à des espaces de nommage de suivi différents."
 
-#: branch.c:287
+#: branch.c:344
 #, c-format
 msgid "'%s' is not a valid branch name"
 msgstr "'%s' n'est pas un nom de branche valide"
 
-#: branch.c:307
+#: branch.c:364
 #, c-format
 msgid "a branch named '%s' already exists"
 msgstr "Une branche nommée '%s' existe déjà"
 
-#: branch.c:313
+#: branch.c:370
 #, c-format
 msgid "cannot force update the branch '%s' checked out at '%s'"
 msgstr ""
 "impossible de forcer la mise à jour de la branche '%s' extraite dans '%s'"
 
-#: branch.c:336
+#: branch.c:393
 #, c-format
 msgid "cannot set up tracking information; starting point '%s' is not a branch"
 msgstr ""
 "Impossible de configurer le suivi de branche ; le point de départ '%s' n'est "
 "pas une branche"
 
-#: branch.c:338
+#: branch.c:395
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr "la branche amont demandée '%s' n'existe pas"
 
-#: branch.c:340
+#: branch.c:397
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -2096,126 +2134,145 @@ msgstr ""
 "sa jumelle distante, vous pouvez utiliser \"git push -u\"\n"
 "pour paramétrer le suivi distant en même temps que vous poussez."
 
-#: branch.c:384 builtin/replace.c:321 builtin/replace.c:377
+#: branch.c:445 builtin/replace.c:321 builtin/replace.c:377
 #: builtin/replace.c:423 builtin/replace.c:453
 #, c-format
 msgid "not a valid object name: '%s'"
 msgstr "nom d'objet invalide : '%s'"
 
-#: branch.c:404
+#: branch.c:465
 #, c-format
 msgid "ambiguous object name: '%s'"
 msgstr "Nom d'objet ambigu : '%s'"
 
-#: branch.c:409
+#: branch.c:470
 #, c-format
 msgid "not a valid branch point: '%s'"
 msgstr "point d'embranchement invalide : '%s'"
 
-#: branch.c:469
+#: branch.c:658
+#, c-format
+msgid "submodule '%s': unable to find submodule"
+msgstr "sous-module '%s' : impossible de trouver le sous-module"
+
+#: branch.c:661
+#, c-format
+msgid ""
+"You may try updating the submodules using 'git checkout %s && git submodule "
+"update --init'"
+msgstr ""
+"Vous pouvez essayer de mettre à jour les sous-modules en utilisant 'git "
+"checkout %s && git submodule update --init'"
+
+#: branch.c:672 branch.c:698
+#, c-format
+msgid "submodule '%s': cannot create branch '%s'"
+msgstr "sous-module '%s' : impossible de créer la branche '%s'"
+
+#: branch.c:730
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "'%s' est déjà extrait dans '%s'"
 
-#: branch.c:494
+#: branch.c:755
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr "la HEAD de la copie de travail %s n'est pas mise à jour"
 
-#: bundle.c:44
+#: bundle.c:45
 #, c-format
 msgid "unrecognized bundle hash algorithm: %s"
 msgstr "algorithme d'empreinte du colis inconnu : %s"
 
-#: bundle.c:48
+#: bundle.c:53
 #, c-format
 msgid "unknown capability '%s'"
 msgstr "capacité inconnue '%s'"
 
-#: bundle.c:74
+#: bundle.c:79
 #, c-format
 msgid "'%s' does not look like a v2 or v3 bundle file"
 msgstr "'%s' ne semble pas être un fichier colis v2 our v3"
 
-#: bundle.c:113
+#: bundle.c:118
 #, c-format
 msgid "unrecognized header: %s%s (%d)"
 msgstr "en-tête non reconnu : %s%s (%d)"
 
-#: bundle.c:140 rerere.c:464 rerere.c:674 sequencer.c:2620 sequencer.c:3406
-#: builtin/commit.c:862
+#: bundle.c:145 rerere.c:464 rerere.c:675 sequencer.c:2616 sequencer.c:3402
+#: builtin/commit.c:865
 #, c-format
 msgid "could not open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: bundle.c:198
+#: bundle.c:203
 msgid "Repository lacks these prerequisite commits:"
 msgstr "Le dépôt ne dispose pas des commits prérequis suivants :"
 
-#: bundle.c:201
+#: bundle.c:206
 msgid "need a repository to verify a bundle"
 msgstr "la vérification d'un colis requiert un dépôt"
 
-#: bundle.c:257
+#: bundle.c:264
 #, c-format
 msgid "The bundle contains this ref:"
-msgid_plural "The bundle contains these %d refs:"
-msgstr[0] "Le colis contient cette référence :"
-msgstr[1] "Le colis contient ces %d références :"
+msgid_plural "The bundle contains these %<PRIuMAX> refs:"
+msgstr[0] "Le colis contient cette référence :"
+msgstr[1] "Le colis contient ces %<PRIuMAX> références :"
 
-#: bundle.c:264
+#: bundle.c:272
 msgid "The bundle records a complete history."
 msgstr "Le colis enregistre l'historique complet."
 
-#: bundle.c:266
+#: bundle.c:274
 #, c-format
 msgid "The bundle requires this ref:"
-msgid_plural "The bundle requires these %d refs:"
-msgstr[0] "Le colis exige cette référence :"
-msgstr[1] "Le colis exige ces %d références :"
+msgid_plural "The bundle requires these %<PRIuMAX> refs:"
+msgstr[0] "Le colis exige cette référence :"
+msgstr[1] "Le colis exige ces %<PRIuMAX> références :"
 
-#: bundle.c:333
+#: bundle.c:350
 msgid "unable to dup bundle descriptor"
 msgstr "impossible de dupliquer le descripteur de liasse"
 
-#: bundle.c:340
+#: bundle.c:357
 msgid "Could not spawn pack-objects"
 msgstr "Impossible de créer des objets groupés"
 
-#: bundle.c:351
+#: bundle.c:368
 msgid "pack-objects died"
 msgstr "les objets groupés ont disparu"
 
-#: bundle.c:400
+#: bundle.c:417
 #, c-format
 msgid "ref '%s' is excluded by the rev-list options"
 msgstr "la référence '%s' est exclue par les options de rev-list"
 
-#: bundle.c:504
+#: bundle.c:533 builtin/log.c:211 builtin/log.c:1975 builtin/shortlog.c:400
+#, c-format
+msgid "unrecognized argument: %s"
+msgstr "argument non reconnu : %s"
+
+#: bundle.c:548
 #, c-format
 msgid "unsupported bundle version %d"
 msgstr "version de colis non supportée %d"
 
-#: bundle.c:506
+#: bundle.c:550
 #, c-format
 msgid "cannot write bundle version %d with algorithm %s"
 msgstr "impossible d'écrire une version de colis %d avec l'algorithme %s"
 
-#: bundle.c:524 builtin/log.c:210 builtin/log.c:1953 builtin/shortlog.c:399
-#, c-format
-msgid "unrecognized argument: %s"
-msgstr "argument non reconnu : %s"
-
-#: bundle.c:553
+#: bundle.c:600
 msgid "Refusing to create empty bundle."
 msgstr "Refus de créer un colis vide."
 
-#: bundle.c:563
+#: bundle.c:610
 #, c-format
 msgid "cannot create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: bundle.c:588
+#: bundle.c:639
 msgid "index-pack died"
 msgstr "l'index de groupe a disparu"
 
@@ -2243,7 +2300,7 @@ msgstr "la section finale a un id non nul %<PRIx32>"
 msgid "invalid color value: %.*s"
 msgstr "valeur invalide de couleur : %.*s"
 
-#: commit-graph.c:204 midx.c:51
+#: commit-graph.c:204 midx.c:52
 msgid "invalid hash version"
 msgstr "version d'empreinte invalide"
 
@@ -2274,218 +2331,221 @@ msgstr ""
 msgid "commit-graph file is too small to hold %u chunks"
 msgstr "le graphe de commit est trop petit pour contenir %u sections"
 
-#: commit-graph.c:482
+#: commit-graph.c:485
 msgid "commit-graph has no base graphs chunk"
 msgstr "le graphe de commit n'a pas de section de graphes de base"
 
-#: commit-graph.c:492
+#: commit-graph.c:495
 msgid "commit-graph chain does not match"
 msgstr "la chaîne de graphe de commit ne correspond pas"
 
-#: commit-graph.c:540
+#: commit-graph.c:543
 #, c-format
 msgid "invalid commit-graph chain: line '%s' not a hash"
 msgstr ""
 "chaîne de graphe de commit invalide : la ligne '%s' n'est pas une empreinte"
 
-#: commit-graph.c:564
+#: commit-graph.c:567
 msgid "unable to find all commit-graph files"
 msgstr "impossible de trouver tous les fichiers du graphe de commit"
 
-#: commit-graph.c:749 commit-graph.c:786
+#: commit-graph.c:752 commit-graph.c:789
 msgid "invalid commit position. commit-graph is likely corrupt"
 msgstr ""
 "position de commit invalide. Le graphe de commit est vraisemblablement "
 "corrompu"
 
-#: commit-graph.c:770
+#: commit-graph.c:773
 #, c-format
 msgid "could not find commit %s"
 msgstr "impossible de trouver le commit %s"
 
-#: commit-graph.c:803
+#: commit-graph.c:806
 msgid "commit-graph requires overflow generation data but has none"
 msgstr ""
 "le graphe de commits requiert des données de génération de débordement mais "
 "n'en contient pas"
 
-#: commit-graph.c:1108 builtin/am.c:1369
+#: commit-graph.c:1111 builtin/am.c:1370 builtin/checkout.c:775
+#: builtin/clone.c:705
 #, c-format
 msgid "unable to parse commit %s"
 msgstr "impossible d'analyser le commit %s"
 
-#: commit-graph.c:1370 builtin/pack-objects.c:3070
+#: commit-graph.c:1373 builtin/pack-objects.c:3078
 #, c-format
 msgid "unable to get type of object %s"
 msgstr "impossible d'obtenir le type de l'objet %s"
 
-#: commit-graph.c:1401
+#: commit-graph.c:1404
 msgid "Loading known commits in commit graph"
 msgstr "Lecture des commits connus dans un graphe de commit"
 
-#: commit-graph.c:1418
+#: commit-graph.c:1421
 msgid "Expanding reachable commits in commit graph"
 msgstr "Expansion des commits joignables dans un graphe de commit"
 
-#: commit-graph.c:1438
+#: commit-graph.c:1441
 msgid "Clearing commit marks in commit graph"
 msgstr "Suppression les marques de commit dans le graphe de commits"
 
-#: commit-graph.c:1457
+#: commit-graph.c:1460
 msgid "Computing commit graph topological levels"
 msgstr "Calcul des niveaux topologiques du graphe de commits"
 
-#: commit-graph.c:1510
+#: commit-graph.c:1513
 msgid "Computing commit graph generation numbers"
 msgstr "Calcul des chiffres de génération du graphe de commits"
 
-#: commit-graph.c:1591
+#: commit-graph.c:1598
 msgid "Computing commit changed paths Bloom filters"
 msgstr "Calcul des filtres Bloom des chemins modifiés du commit"
 
-#: commit-graph.c:1668
+#: commit-graph.c:1675
 msgid "Collecting referenced commits"
 msgstr "Collecte des commits référencés"
 
-#: commit-graph.c:1693
+#: commit-graph.c:1701
 #, c-format
-msgid "Finding commits for commit graph in %d pack"
-msgid_plural "Finding commits for commit graph in %d packs"
-msgstr[0] "Recherche de commits pour un graphe de commits dans %d paquet"
-msgstr[1] "Recherche de commits pour un graphe de commits dans %d paquets"
+msgid "Finding commits for commit graph in %<PRIuMAX> pack"
+msgid_plural "Finding commits for commit graph in %<PRIuMAX> packs"
+msgstr[0] ""
+"Recherche de commits pour un graphe de commits dans %<PRIuMAX> paquet"
+msgstr[1] ""
+"Recherche de commits pour un graphe de commits dans %<PRIuMAX> paquets"
 
-#: commit-graph.c:1706
+#: commit-graph.c:1714
 #, c-format
 msgid "error adding pack %s"
 msgstr "erreur à l'ajout du packet %s"
 
-#: commit-graph.c:1710
+#: commit-graph.c:1718
 #, c-format
 msgid "error opening index for %s"
 msgstr "erreur à l'ouverture de l'index pour %s"
 
-#: commit-graph.c:1747
+#: commit-graph.c:1756
 msgid "Finding commits for commit graph among packed objects"
 msgstr ""
 "Recherche de commits pour un graphe de commits parmi les objets empaquetés"
 
-#: commit-graph.c:1765
+#: commit-graph.c:1774
 msgid "Finding extra edges in commit graph"
 msgstr "Recherche d'arêtes supplémentaires dans un graphe de commits"
 
-#: commit-graph.c:1814
+#: commit-graph.c:1823
 msgid "failed to write correct number of base graph ids"
 msgstr "échec à l'écriture le nombre correct d'id de base de fusion"
 
-#: commit-graph.c:1845 midx.c:1149
+#: commit-graph.c:1854 midx.c:1168 builtin/sparse-checkout.c:475
 #, c-format
 msgid "unable to create leading directories of %s"
 msgstr "impossible de créer les répertoires de premier niveau de %s"
 
-#: commit-graph.c:1858
+#: commit-graph.c:1868
 msgid "unable to create temporary graph layer"
 msgstr "impossible de créer une couche de graphe temporaire"
 
-#: commit-graph.c:1863
+#: commit-graph.c:1873
 #, c-format
 msgid "unable to adjust shared permissions for '%s'"
 msgstr "impossible de régler les droits partagés pour '%s'"
 
-#: commit-graph.c:1920
+#: commit-graph.c:1930
 #, c-format
 msgid "Writing out commit graph in %d pass"
 msgid_plural "Writing out commit graph in %d passes"
 msgstr[0] "Écriture le graphe de commits en %d passe"
 msgstr[1] "Écriture le graphe de commits en %d passes"
 
-#: commit-graph.c:1956
+#: commit-graph.c:1967
 msgid "unable to open commit-graph chain file"
 msgstr "impossible d'ouvrir le fichier de graphe de commit"
 
-#: commit-graph.c:1972
+#: commit-graph.c:1983
 msgid "failed to rename base commit-graph file"
 msgstr "échec du renommage du fichier de graphe de commits"
 
-#: commit-graph.c:1992
+#: commit-graph.c:2004
 msgid "failed to rename temporary commit-graph file"
 msgstr "impossible de renommer le fichier temporaire de graphe de commits"
 
-#: commit-graph.c:2125
+#: commit-graph.c:2137
 msgid "Scanning merged commits"
 msgstr "Analyse des commits de fusion"
 
-#: commit-graph.c:2169
+#: commit-graph.c:2181
 msgid "Merging commit-graph"
 msgstr "Fusion du graphe de commits"
 
-#: commit-graph.c:2277
+#: commit-graph.c:2289
 msgid "attempting to write a commit-graph, but 'core.commitGraph' is disabled"
 msgstr ""
 "essai d'écriture de graphe de commits, mais 'core.commitGraph' est désactivé"
 
-#: commit-graph.c:2384
+#: commit-graph.c:2396
 msgid "too many commits to write graph"
 msgstr "trop de commits pour écrire un graphe"
 
-#: commit-graph.c:2482
+#: commit-graph.c:2494
 msgid "the commit-graph file has incorrect checksum and is likely corrupt"
 msgstr ""
 "le graphe de commit a une somme de contrôle incorrecte et est "
 "vraisemblablement corrompu"
 
-#: commit-graph.c:2492
+#: commit-graph.c:2504
 #, c-format
 msgid "commit-graph has incorrect OID order: %s then %s"
 msgstr "le graphe de commit a un ordre d'OID incorrect : %s puis %s"
 
-#: commit-graph.c:2502 commit-graph.c:2517
+#: commit-graph.c:2514 commit-graph.c:2529
 #, c-format
 msgid "commit-graph has incorrect fanout value: fanout[%d] = %u != %u"
 msgstr ""
 "le graphe de commit a une valeur de dispersion incorrecte : dispersion[%d] = "
 "%u != %u"
 
-#: commit-graph.c:2509
+#: commit-graph.c:2521
 #, c-format
 msgid "failed to parse commit %s from commit-graph"
 msgstr "échec de l'analyse le commit %s depuis le graphe de commits"
 
-#: commit-graph.c:2527
+#: commit-graph.c:2539
 msgid "Verifying commits in commit graph"
 msgstr "Verification des commits dans le graphe de commits"
 
-#: commit-graph.c:2542
+#: commit-graph.c:2554
 #, c-format
 msgid "failed to parse commit %s from object database for commit-graph"
 msgstr ""
 "échec de l'analyse du commit %s depuis la base de données d'objets pour le "
 "graphe de commit"
 
-#: commit-graph.c:2549
+#: commit-graph.c:2561
 #, c-format
 msgid "root tree OID for commit %s in commit-graph is %s != %s"
 msgstr ""
 "l'OID de l'arbre racine pour le commit %s dans le graphe de commit est %s != "
 "%s"
 
-#: commit-graph.c:2559
+#: commit-graph.c:2571
 #, c-format
 msgid "commit-graph parent list for commit %s is too long"
 msgstr ""
 "la liste des parents du graphe de commit pour le commit %s est trop longue"
 
-#: commit-graph.c:2568
+#: commit-graph.c:2580
 #, c-format
 msgid "commit-graph parent for %s is %s != %s"
 msgstr "le parent du graphe de commit pour %s est %s != %s"
 
-#: commit-graph.c:2582
+#: commit-graph.c:2594
 #, c-format
 msgid "commit-graph parent list for commit %s terminates early"
 msgstr ""
 "la liste de parents du graphe de commit pour le commit %s se termine trop tôt"
 
-#: commit-graph.c:2587
+#: commit-graph.c:2599
 #, c-format
 msgid ""
 "commit-graph has generation number zero for commit %s, but non-zero elsewhere"
@@ -2493,7 +2553,7 @@ msgstr ""
 "le graphe de commit a un numéro de génération nul pour le commit %s, mais "
 "non-nul ailleurs"
 
-#: commit-graph.c:2591
+#: commit-graph.c:2603
 #, c-format
 msgid ""
 "commit-graph has non-zero generation number for commit %s, but zero elsewhere"
@@ -2501,32 +2561,32 @@ msgstr ""
 "le graphe de commit a un numéro de génération non-nul pour le commit %s, "
 "mais nul ailleurs"
 
-#: commit-graph.c:2608
+#: commit-graph.c:2620
 #, c-format
 msgid "commit-graph generation for commit %s is %<PRIuMAX> < %<PRIuMAX>"
 msgstr ""
 "la génération du graphe de commit pour le commit %s est %<PRIuMAX> < "
 "%<PRIuMAX>"
 
-#: commit-graph.c:2614
+#: commit-graph.c:2626
 #, c-format
 msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
 msgstr ""
 "la date de validation pour le commit %s dans le graphe de commit est "
 "%<PRIuMAX> != %<PRIuMAX>"
 
-#: commit.c:53 sequencer.c:3109 builtin/am.c:399 builtin/am.c:444
-#: builtin/am.c:449 builtin/am.c:1448 builtin/am.c:2123 builtin/replace.c:456
+#: commit.c:54 sequencer.c:3105 builtin/am.c:400 builtin/am.c:445
+#: builtin/am.c:450 builtin/am.c:1449 builtin/am.c:2124 builtin/replace.c:456
 #, c-format
 msgid "could not parse %s"
 msgstr "impossible d'analyser %s"
 
-#: commit.c:55
+#: commit.c:56
 #, c-format
 msgid "%s %s is not a commit!"
 msgstr "%s %s n'est pas un commit !"
 
-#: commit.c:196
+#: commit.c:197
 msgid ""
 "Support for <GIT_DIR>/info/grafts is deprecated\n"
 "and will be removed in a future Git version.\n"
@@ -2546,27 +2606,27 @@ msgstr ""
 "Supprimez ce message en lançant\n"
 "\"git config advice.graftFileDeprecated false\""
 
-#: commit.c:1241
+#: commit.c:1252
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr "La validation %s a une signature GPG non fiable, prétendument par %s."
 
-#: commit.c:1245
+#: commit.c:1256
 #, c-format
 msgid "Commit %s has a bad GPG signature allegedly by %s."
 msgstr "La validation %s a une mauvaise signature GPG prétendument par %s."
 
-#: commit.c:1248
+#: commit.c:1259
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "La validation %s n'a pas de signature GPG."
 
-#: commit.c:1251
+#: commit.c:1262
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr "La validation %s a une signature GPG correcte par %s\n"
 
-#: commit.c:1505
+#: commit.c:1516
 msgid ""
 "Warning: commit message did not conform to UTF-8.\n"
 "You may want to amend it after fixing the message, or set the config\n"
@@ -2582,7 +2642,17 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "plus de mémoire"
 
-#: config.c:125
+#: compat/terminal.c:167
+msgid "cannot resume in the background, please use 'fg' to resume"
+msgstr ""
+"impossible de reprendre en arrière plan, veuillez utiliser 'fg' pour "
+"reprendre"
+
+#: compat/terminal.c:168
+msgid "cannot restore terminal settings"
+msgstr "impossible de restaurer les réglages du terminal"
+
+#: config.c:143
 #, c-format
 msgid ""
 "exceeded maximum include depth (%d) while including\n"
@@ -2597,350 +2667,377 @@ msgstr ""
 "\t%s\n"
 "possibilité d'inclusions multiples."
 
-#: config.c:141
+#: config.c:159
 #, c-format
 msgid "could not expand include path '%s'"
 msgstr "expansion impossible du chemin d'inclusion '%s'"
 
-#: config.c:152
+#: config.c:170
 msgid "relative config includes must come from files"
 msgstr "les inclusions de configuration relatives doivent venir de fichiers"
 
-#: config.c:201
+#: config.c:219
 msgid "relative config include conditionals must come from files"
 msgstr ""
 "les conditions d'inclusion de configuration relative doivent venir de "
 "fichiers"
 
-#: config.c:398
+#: config.c:364
+msgid ""
+"remote URLs cannot be configured in file directly or indirectly included by "
+"includeIf.hasconfig:remote.*.url"
+msgstr ""
+"les URL distantes ne peuvent pas être configurées dans un fichier "
+"directement ou indirectement inclus par includeIf.hasconfig:remote.*.url"
+
+#: config.c:508
 #, c-format
 msgid "invalid config format: %s"
 msgstr "format de config invalide : %s"
 
-#: config.c:402
+#: config.c:512
 #, c-format
 msgid "missing environment variable name for configuration '%.*s'"
 msgstr "nom de variable d'environnement manquant pour le configuration '%.*s'"
 
-#: config.c:407
+#: config.c:517
 #, c-format
 msgid "missing environment variable '%s' for configuration '%.*s'"
 msgstr "variable d'environnement '%s' manquante pour le configuration '%.*s'"
 
-#: config.c:443
+#: config.c:553
 #, c-format
 msgid "key does not contain a section: %s"
 msgstr "la clé ne contient pas de section: %s"
 
-#: config.c:448
+#: config.c:558
 #, c-format
 msgid "key does not contain variable name: %s"
 msgstr "la clé ne contient pas de nom de variable : %s"
 
-#: config.c:470 sequencer.c:2806
+#: config.c:580 sequencer.c:2802
 #, c-format
 msgid "invalid key: %s"
 msgstr "clé invalide : %s"
 
-#: config.c:475
+#: config.c:585
 #, c-format
 msgid "invalid key (newline): %s"
 msgstr "clé invalide (retour chariot) : %s"
 
-#: config.c:495
+#: config.c:605
 msgid "empty config key"
 msgstr "clé de configuration vide"
 
-#: config.c:513 config.c:525
+#: config.c:623 config.c:635
 #, c-format
 msgid "bogus config parameter: %s"
 msgstr "paramètre de configuration mal formé: %s"
 
-#: config.c:539 config.c:556 config.c:563 config.c:572
+#: config.c:649 config.c:666 config.c:673 config.c:682
 #, c-format
 msgid "bogus format in %s"
 msgstr "formatage mal formé dans %s"
 
-#: config.c:606
+#: config.c:716
 #, c-format
 msgid "bogus count in %s"
 msgstr "compte faux dans %s"
 
-#: config.c:610
+#: config.c:720
 #, c-format
 msgid "too many entries in %s"
 msgstr "trop d'entrées dans %s"
 
-#: config.c:620
+#: config.c:730
 #, c-format
 msgid "missing config key %s"
 msgstr "clé de configuration %s manquante"
 
-#: config.c:628
+#: config.c:738
 #, c-format
 msgid "missing config value %s"
 msgstr "valeur de config manquante %s"
 
-#: config.c:979
+#: config.c:1089
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr "ligne %d de config incorrecte dans le blob %s"
 
-#: config.c:983
+#: config.c:1093
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr "ligne %d de config incorrecte dans le fichier %s"
 
-#: config.c:987
+#: config.c:1097
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr "ligne %d de config incorrecte dans l'entrée standard"
 
-#: config.c:991
+#: config.c:1101
 #, c-format
 msgid "bad config line %d in submodule-blob %s"
 msgstr "ligne %d de config incorrecte dans le blob de sous-module %s"
 
-#: config.c:995
+#: config.c:1105
 #, c-format
 msgid "bad config line %d in command line %s"
 msgstr "ligne %d de config incorrecte dans la ligne de commande %s"
 
-#: config.c:999
+#: config.c:1109
 #, c-format
 msgid "bad config line %d in %s"
 msgstr "ligne %d de config incorrecte dans %s"
 
-#: config.c:1136
+#: config.c:1246
 msgid "out of range"
 msgstr "hors plage"
 
-#: config.c:1136
+#: config.c:1246
 msgid "invalid unit"
 msgstr "unité invalide"
 
-#: config.c:1137
+#: config.c:1247
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr "valeur numérique de configuration invalide '%s' pour '%s' : %s"
 
-#: config.c:1147
+#: config.c:1257
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
 msgstr ""
 "valeur numérique de configuration incorrecte '%s' pour '%s' dans le blob "
 "%s : %s"
 
-#: config.c:1150
+#: config.c:1260
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in file %s: %s"
 msgstr ""
 "valeur numérique de configuration incorrecte '%s' pour '%s' dans le fichier "
 "%s : %s"
 
-#: config.c:1153
+#: config.c:1263
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
 "valeur numérique de configuration incorrecte '%s' pour '%s' dans l'entrée "
 "standard : %s"
 
-#: config.c:1156
+#: config.c:1266
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 msgstr ""
 "valeur numérique de configuration incorrecte '%s' pour '%s' dans le blob de "
 "sous-module %s : %s"
 
-#: config.c:1159
+#: config.c:1269
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr ""
 "valeur numérique de configuration incorrecte '%s' pour '%s' dans la ligne de "
 "commande %s : %s"
 
-#: config.c:1162
+#: config.c:1272
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr ""
 "valeur numérique de configuration incorrecte '%s' pour '%s' dans %s : %s"
 
-#: config.c:1241
+#: config.c:1368
+#, c-format
+msgid "invalid value for variable %s"
+msgstr "valeur invalide pour la variable %s"
+
+#: config.c:1389
+#, c-format
+msgid "ignoring unknown core.fsync component '%s'"
+msgstr "ignore le composant core.fsync inconne '%s'"
+
+#: config.c:1425
 #, c-format
 msgid "bad boolean config value '%s' for '%s'"
 msgstr "valeur booléenne de configuration invalide '%s' pour '%s'"
 
-#: config.c:1259
+#: config.c:1443
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr "impossible d'étendre le répertoire utilisateur dans : '%s'"
 
-#: config.c:1268
+#: config.c:1452
 #, c-format
 msgid "'%s' for '%s' is not a valid timestamp"
 msgstr "'%s' pour '%s' n'est pas un horodatage valide"
 
-#: config.c:1361
+#: config.c:1545
 #, c-format
 msgid "abbrev length out of range: %d"
 msgstr "longueur d'abbrev hors plage : %d"
 
-#: config.c:1375 config.c:1386
+#: config.c:1559 config.c:1570
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "niveau de compression zlib incorrect %d"
 
-#: config.c:1476
+#: config.c:1660
 msgid "core.commentChar should only be one character"
 msgstr "core.commentChar ne devrait être qu'un unique caractère"
 
-#: config.c:1509
+#: config.c:1692
+#, c-format
+msgid "ignoring unknown core.fsyncMethod value '%s'"
+msgstr "valeur inconnue '%s' de core.fsyncMethod"
+
+#: config.c:1698
+msgid "core.fsyncObjectFiles is deprecated; use core.fsync instead"
+msgstr "core.fsyncObjectFiles est obsolète ; utilisez core.fsync à la place"
+
+#: config.c:1714
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr "mode invalide pour la création d'objet : %s"
 
-#: config.c:1584
+#: config.c:1800
 #, c-format
 msgid "malformed value for %s"
 msgstr "valeur mal formée pour %s"
 
-#: config.c:1610
+#: config.c:1826
 #, c-format
 msgid "malformed value for %s: %s"
 msgstr "valeur mal formée pour %s : %s"
 
-#: config.c:1611
+#: config.c:1827
 msgid "must be one of nothing, matching, simple, upstream or current"
 msgstr "doit être parmi nothing, matching, simple, upstream ou current"
 
-#: config.c:1672 builtin/pack-objects.c:4053
+#: config.c:1888 builtin/pack-objects.c:4078
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "niveau de compression du paquet %d"
 
-#: config.c:1795
+#: config.c:2014
 #, c-format
 msgid "unable to load config blob object '%s'"
 msgstr "impossible de charger l'objet blob de config '%s'"
 
-#: config.c:1798
+#: config.c:2017
 #, c-format
 msgid "reference '%s' does not point to a blob"
 msgstr "la référence '%s' ne pointe pas sur un blob"
 
-#: config.c:1816
+#: config.c:2035
 #, c-format
 msgid "unable to resolve config blob '%s'"
 msgstr "impossible de résoudre le blob de config '%s'"
 
-#: config.c:1861
+#: config.c:2080
 #, c-format
 msgid "failed to parse %s"
 msgstr "échec de l'analyse de %s"
 
-#: config.c:1917
+#: config.c:2136
 msgid "unable to parse command-line config"
 msgstr "lecture de la configuration de ligne de commande impossible"
 
-#: config.c:2285
+#: config.c:2512
 msgid "unknown error occurred while reading the configuration files"
 msgstr "erreur inconnue pendant la lecture des fichiers de configuration"
 
-#: config.c:2459
+#: config.c:2686
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s invalide : '%s'"
 
-#: config.c:2504
+#: config.c:2731
 #, c-format
 msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
 msgstr ""
 "la valeur '%d' de splitIndex.maxPercentChange devrait se situer entre 0 et "
 "100"
 
-#: config.c:2550
+#: config.c:2763
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr ""
 "impossible d'analyser '%s' depuis le configuration en ligne de commande"
 
-#: config.c:2552
+#: config.c:2765
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr ""
 "variable de configuration '%s' incorrecte dans le fichier '%s' à la ligne %d"
 
-#: config.c:2637
+#: config.c:2850
 #, c-format
 msgid "invalid section name '%s'"
 msgstr "nom de section invalide '%s'"
 
-#: config.c:2669
+#: config.c:2882
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s a des valeurs multiples"
 
-#: config.c:2698
+#: config.c:2911
 #, c-format
 msgid "failed to write new configuration file %s"
 msgstr "impossible d'écrire le fichier de configuration %s"
 
-#: config.c:2950 config.c:3277
+#: config.c:3177 config.c:3518
 #, c-format
 msgid "could not lock config file %s"
 msgstr "impossible de verrouiller le fichier de configuration %s"
 
-#: config.c:2961
+#: config.c:3188
 #, c-format
 msgid "opening %s"
 msgstr "ouverture de %s"
 
-#: config.c:2998 builtin/config.c:361
+#: config.c:3225 builtin/config.c:361
 #, c-format
 msgid "invalid pattern: %s"
 msgstr "motif invalide : %s"
 
-#: config.c:3023
+#: config.c:3250
 #, c-format
 msgid "invalid config file %s"
 msgstr "fichier de configuration invalide %s"
 
-#: config.c:3036 config.c:3290
+#: config.c:3263 config.c:3531
 #, c-format
 msgid "fstat on %s failed"
 msgstr "échec de fstat sur %s"
 
-#: config.c:3047
+#: config.c:3274
 #, c-format
 msgid "unable to mmap '%s'%s"
 msgstr "impossible de réaliser un mmap de '%s'%s"
 
-#: config.c:3057 config.c:3295
+#: config.c:3284 config.c:3536
 #, c-format
 msgid "chmod on %s failed"
 msgstr "échec de chmod sur %s"
 
-#: config.c:3142 config.c:3392
+#: config.c:3369 config.c:3633
 #, c-format
 msgid "could not write config file %s"
 msgstr "impossible d'écrire le fichier de configuration %s"
 
-#: config.c:3176
+#: config.c:3403
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "impossible de régler '%s' à '%s'"
 
-#: config.c:3178 builtin/remote.c:662 builtin/remote.c:860 builtin/remote.c:868
+#: config.c:3405 builtin/remote.c:666 builtin/remote.c:885 builtin/remote.c:893
 #, c-format
 msgid "could not unset '%s'"
 msgstr "impossible de désinitialiser '%s'"
 
-#: config.c:3268
+#: config.c:3509
 #, c-format
 msgid "invalid section name: %s"
 msgstr "nom de section invalide : %s"
 
-#: config.c:3435
+#: config.c:3676
 #, c-format
 msgid "missing value for '%s'"
 msgstr "valeur manquante pour '%s'"
@@ -3282,68 +3379,68 @@ msgid "refusing to work with credential missing protocol field"
 msgstr ""
 "refus de travailler avec un champ protocol manquant dans l'identification"
 
-#: credential.c:395
+#: credential.c:396
 #, c-format
 msgid "url contains a newline in its %s component: %s"
 msgstr "l'url contient un retour chariot dans composant %s : %s"
 
-#: credential.c:439
+#: credential.c:440
 #, c-format
 msgid "url has no scheme: %s"
 msgstr "l'url n'a pas de schéma : %s"
 
-#: credential.c:512
+#: credential.c:513
 #, c-format
 msgid "credential url cannot be parsed: %s"
 msgstr "impossible d'analyser l'url d'identification : %s"
 
-#: date.c:138
+#: date.c:139
 msgid "in the future"
 msgstr "dans le futur"
 
-#: date.c:144
+#: date.c:145
 #, c-format
 msgid "%<PRIuMAX> second ago"
 msgid_plural "%<PRIuMAX> seconds ago"
 msgstr[0] "il y a %<PRIuMAX> seconde"
 msgstr[1] "il y a %<PRIuMAX> secondes"
 
-#: date.c:151
+#: date.c:152
 #, c-format
 msgid "%<PRIuMAX> minute ago"
 msgid_plural "%<PRIuMAX> minutes ago"
 msgstr[0] "il y a %<PRIuMAX> minute"
 msgstr[1] "il y a %<PRIuMAX> minutes"
 
-#: date.c:158
+#: date.c:159
 #, c-format
 msgid "%<PRIuMAX> hour ago"
 msgid_plural "%<PRIuMAX> hours ago"
 msgstr[0] "il y a %<PRIuMAX> heure"
 msgstr[1] "il y a %<PRIuMAX> heures"
 
-#: date.c:165
+#: date.c:166
 #, c-format
 msgid "%<PRIuMAX> day ago"
 msgid_plural "%<PRIuMAX> days ago"
 msgstr[0] "il y a %<PRIuMAX> jour"
 msgstr[1] "il y a %<PRIuMAX> jours"
 
-#: date.c:171
+#: date.c:172
 #, c-format
 msgid "%<PRIuMAX> week ago"
 msgid_plural "%<PRIuMAX> weeks ago"
 msgstr[0] "il y a %<PRIuMAX> semaine"
 msgstr[1] "il y a %<PRIuMAX> semaines"
 
-#: date.c:178
+#: date.c:179
 #, c-format
 msgid "%<PRIuMAX> month ago"
 msgid_plural "%<PRIuMAX> months ago"
 msgstr[0] "il y a %<PRIuMAX> mois"
 msgstr[1] "il y a %<PRIuMAX> mois"
 
-#: date.c:189
+#: date.c:190
 #, c-format
 msgid "%<PRIuMAX> year"
 msgid_plural "%<PRIuMAX> years"
@@ -3351,14 +3448,14 @@ msgstr[0] "%<PRIuMAX> an"
 msgstr[1] "%<PRIuMAX> ans"
 
 #. TRANSLATORS: "%s" is "<n> years"
-#: date.c:192
+#: date.c:193
 #, c-format
 msgid "%s, %<PRIuMAX> month ago"
 msgid_plural "%s, %<PRIuMAX> months ago"
 msgstr[0] "il y a %s et %<PRIuMAX> mois"
 msgstr[1] "il y a %s et %<PRIuMAX> mois"
 
-#: date.c:197 date.c:202
+#: date.c:198 date.c:203
 #, c-format
 msgid "%<PRIuMAX> year ago"
 msgid_plural "%<PRIuMAX> years ago"
@@ -3391,10 +3488,14 @@ msgstr ""
 msgid "Marked %d islands, done.\n"
 msgstr "Marquage de %d îlots, fait.\n"
 
-#: diff-merges.c:70
+#: diff-merges.c:81 gpg-interface.c:719 gpg-interface.c:734 ls-refs.c:37
+#: parallel-checkout.c:42 sequencer.c:2805 setup.c:563 builtin/am.c:203
+#: builtin/am.c:2243 builtin/am.c:2287 builtin/blame.c:724 builtin/blame.c:742
+#: builtin/fetch.c:792 builtin/pack-objects.c:3515 builtin/pull.c:45
+#: builtin/pull.c:47 builtin/pull.c:321
 #, c-format
-msgid "unknown value for --diff-merges: %s"
-msgstr "valeur inconnue pour --diff-merges : %s"
+msgid "invalid value for '%s': '%s'"
+msgstr "valeur invalide pour '%s' : '%s'"
 
 #: diff-lib.c:561
 msgid "--merge-base does not work with ranges"
@@ -3428,18 +3529,18 @@ msgstr ""
 "Pas un dépôt git. Utilisez --no-index pour comparer deux chemins hors d'un "
 "arbre de travail"
 
-#: diff.c:158
+#: diff.c:159
 #, c-format
 msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
 msgstr ""
 "  Impossible d'analyser le pourcentage de modification de dirstat '%s'\n"
 
-#: diff.c:163
+#: diff.c:164
 #, c-format
 msgid "  Unknown dirstat parameter '%s'\n"
 msgstr "  Paramètre dirstat inconnu '%s'\n"
 
-#: diff.c:299
+#: diff.c:300
 msgid ""
 "color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
 "'dimmed-zebra', 'plain'"
@@ -3447,7 +3548,7 @@ msgstr ""
 "le paramètre de couleur de déplacement doit être parmi 'no', 'default', "
 "'blocks', 'zebra', 'dimmed-zebra' ou 'plain'"
 
-#: diff.c:327
+#: diff.c:328
 #, c-format
 msgid ""
 "unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
@@ -3457,7 +3558,7 @@ msgstr ""
 "space-change', 'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-"
 "change'"
 
-#: diff.c:335
+#: diff.c:336
 msgid ""
 "color-moved-ws: allow-indentation-change cannot be combined with other "
 "whitespace modes"
@@ -3465,13 +3566,13 @@ msgstr ""
 "color-moved-ws : allow-indentation-change ne peut pas être combiné avec "
 "d'autres modes d'espace"
 
-#: diff.c:412
+#: diff.c:413
 #, c-format
 msgid "Unknown value for 'diff.submodule' config variable: '%s'"
 msgstr ""
 "Valeur inconnue pour la variable de configuration 'diff.submodule' : '%s'"
 
-#: diff.c:472
+#: diff.c:473
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
@@ -3480,30 +3581,30 @@ msgstr ""
 "Erreurs dans la variable de configuration 'diff.dirstat' :\n"
 "%s"
 
-#: diff.c:4237
+#: diff.c:4282
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "l'application de diff externe a disparu, arrêt à %s"
 
-#: diff.c:4589
+#: diff.c:4677 parse-options.c:1114
 #, c-format
 msgid "options '%s', '%s', '%s', and '%s' cannot be used together"
 msgstr ""
 "les options '%s', '%s', '%s' et '%s' ne peuvent pas être utilisées ensemble"
 
-#: diff.c:4593 builtin/difftool.c:736 builtin/log.c:1982 builtin/worktree.c:506
+#: diff.c:4681 parse-options.c:1118 builtin/worktree.c:578
 #, c-format
 msgid "options '%s', '%s', and '%s' cannot be used together"
 msgstr "les options '%s', '%s' et '%s' ne peuvent pas être utilisées ensemble"
 
-#: diff.c:4597
+#: diff.c:4685
 #, c-format
 msgid "options '%s' and '%s' cannot be used together, use '%s' with '%s'"
 msgstr ""
 "les options '%s' et '%s' ne peuvent pas être utilisées ensemble, utilisez "
 "'%s' avec '%s'"
 
-#: diff.c:4601
+#: diff.c:4689
 #, c-format
 msgid ""
 "options '%s' and '%s' cannot be used together, use '%s' with '%s' and '%s'"
@@ -3511,22 +3612,22 @@ msgstr ""
 "les options '%s' et '%s' ne peuvent pas être utilisées ensemble, utilisez "
 "'%s' avec '%s' et '%s'"
 
-#: diff.c:4681
+#: diff.c:4769
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow a besoin d'une spécification de chemin unique"
 
-#: diff.c:4729
+#: diff.c:4823
 #, c-format
 msgid "invalid --stat value: %s"
 msgstr "valeur invalide de --stat : %s"
 
-#: diff.c:4734 diff.c:4739 diff.c:4744 diff.c:4749 diff.c:5277
+#: diff.c:4828 diff.c:4833 diff.c:4838 diff.c:4843 diff.c:5319
 #: parse-options.c:217 parse-options.c:221
 #, c-format
 msgid "%s expects a numerical value"
 msgstr "%s attend une valeur numérique"
 
-#: diff.c:4766
+#: diff.c:4860
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -3535,42 +3636,42 @@ msgstr ""
 "Impossible d'analyser le paramètre de l'option --dirstat/-X :\n"
 "%s"
 
-#: diff.c:4851
+#: diff.c:4893
 #, c-format
 msgid "unknown change class '%c' in --diff-filter=%s"
 msgstr "classe de modification inconnue '%c' dans --diff-filter=%s"
 
-#: diff.c:4875
+#: diff.c:4917
 #, c-format
 msgid "unknown value after ws-error-highlight=%.*s"
 msgstr "valeur inconnue après ws-error-highlight=%.*s"
 
-#: diff.c:4889
+#: diff.c:4931
 #, c-format
 msgid "unable to resolve '%s'"
 msgstr "impossible de résoudre '%s'"
 
-#: diff.c:4939 diff.c:4945
+#: diff.c:4981 diff.c:4987
 #, c-format
 msgid "%s expects <n>/<m> form"
 msgstr "forme <n>/<m> attendue par %s"
 
-#: diff.c:4957
+#: diff.c:4999
 #, c-format
 msgid "%s expects a character, got '%s'"
 msgstr "caractère attendu par %s, '%s' trouvé"
 
-#: diff.c:4978
+#: diff.c:5020
 #, c-format
 msgid "bad --color-moved argument: %s"
 msgstr "mauvais argument --color-moved : %s"
 
-#: diff.c:4997
+#: diff.c:5039
 #, c-format
 msgid "invalid mode '%s' in --color-moved-ws"
 msgstr "mode invalide '%s' dans --color-moved-ws"
 
-#: diff.c:5037
+#: diff.c:5079
 msgid ""
 "option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
 "\"histogram\""
@@ -3578,160 +3679,160 @@ msgstr ""
 "l'option diff-algorithm accept \"myers\", \"minimal\", \"patience\" et "
 "\"histogram\""
 
-#: diff.c:5073 diff.c:5093
+#: diff.c:5115 diff.c:5135
 #, c-format
 msgid "invalid argument to %s"
 msgstr "argument invalide pour %s"
 
-#: diff.c:5197
+#: diff.c:5239
 #, c-format
 msgid "invalid regex given to -I: '%s'"
 msgstr "regex invalide fournie à -I : '%s'"
 
-#: diff.c:5246
+#: diff.c:5288
 #, c-format
 msgid "failed to parse --submodule option parameter: '%s'"
 msgstr "échec de l'analyse du paramètre de l'option --submodule : '%s'"
 
-#: diff.c:5302
+#: diff.c:5344
 #, c-format
 msgid "bad --word-diff argument: %s"
 msgstr "mauvais argument pour --word-diff : %s"
 
-#: diff.c:5338
+#: diff.c:5380
 msgid "Diff output format options"
 msgstr "Options de format de sortie de diff"
 
-#: diff.c:5340 diff.c:5346
+#: diff.c:5382 diff.c:5388
 msgid "generate patch"
 msgstr "générer la rustine"
 
-#: diff.c:5343 builtin/log.c:179
+#: diff.c:5385 builtin/log.c:180
 msgid "suppress diff output"
 msgstr "supprimer la sortie des différences"
 
-#: diff.c:5348 diff.c:5462 diff.c:5469
+#: diff.c:5390 diff.c:5504 diff.c:5511
 msgid "<n>"
 msgstr "<n>"
 
-#: diff.c:5349 diff.c:5352
+#: diff.c:5391 diff.c:5394
 msgid "generate diffs with <n> lines context"
 msgstr "générer les diffs avec <n> lignes de contexte"
 
-#: diff.c:5354
+#: diff.c:5396
 msgid "generate the diff in raw format"
 msgstr "générer le diff en format brut"
 
-#: diff.c:5357
+#: diff.c:5399
 msgid "synonym for '-p --raw'"
 msgstr "synonyme de '-p --raw'"
 
-#: diff.c:5361
+#: diff.c:5403
 msgid "synonym for '-p --stat'"
 msgstr "synonyme de '-p --stat'"
 
-#: diff.c:5365
+#: diff.c:5407
 msgid "machine friendly --stat"
 msgstr "--stat pour traitement automatique"
 
-#: diff.c:5368
+#: diff.c:5410
 msgid "output only the last line of --stat"
 msgstr "afficher seulement la dernière ligne de --stat"
 
-#: diff.c:5370 diff.c:5378
+#: diff.c:5412 diff.c:5420
 msgid "<param1,param2>..."
 msgstr "<param1,param2>..."
 
-#: diff.c:5371
+#: diff.c:5413
 msgid ""
 "output the distribution of relative amount of changes for each sub-directory"
 msgstr ""
 "afficher la distribution des quantités de modifications relatives pour "
 "chaque sous-répertoire"
 
-#: diff.c:5375
+#: diff.c:5417
 msgid "synonym for --dirstat=cumulative"
 msgstr "synonyme pour --dirstat=cumulative"
 
-#: diff.c:5379
+#: diff.c:5421
 msgid "synonym for --dirstat=files,param1,param2..."
 msgstr "synonyme pour --dirstat=files,param1,param2..."
 
-#: diff.c:5383
+#: diff.c:5425
 msgid "warn if changes introduce conflict markers or whitespace errors"
 msgstr ""
 "avertir si les modifications introduisent des marqueurs de conflit ou des "
 "erreurs d'espace"
 
-#: diff.c:5386
+#: diff.c:5428
 msgid "condensed summary such as creations, renames and mode changes"
 msgstr ""
 "résumé succinct tel que les créations, les renommages et les modifications "
 "de mode"
 
-#: diff.c:5389
+#: diff.c:5431
 msgid "show only names of changed files"
 msgstr "n'afficher que les noms de fichiers modifiés"
 
-#: diff.c:5392
+#: diff.c:5434
 msgid "show only names and status of changed files"
 msgstr "n'afficher que les noms et les status des fichiers modifiés"
 
-#: diff.c:5394
+#: diff.c:5436
 msgid "<width>[,<name-width>[,<count>]]"
 msgstr "<largeur>[,<largeur-de-nom>[,<compte>]]"
 
-#: diff.c:5395
+#: diff.c:5437
 msgid "generate diffstat"
 msgstr "générer un diffstat"
 
-#: diff.c:5397 diff.c:5400 diff.c:5403
+#: diff.c:5439 diff.c:5442 diff.c:5445
 msgid "<width>"
 msgstr "<largeur>"
 
-#: diff.c:5398
+#: diff.c:5440
 msgid "generate diffstat with a given width"
 msgstr "générer un diffstat avec la largeur indiquée"
 
-#: diff.c:5401
+#: diff.c:5443
 msgid "generate diffstat with a given name width"
 msgstr "génerer un diffstat avec la largeur de nom indiquée"
 
-#: diff.c:5404
+#: diff.c:5446
 msgid "generate diffstat with a given graph width"
 msgstr "génerer un diffstat avec la largeur de graphe indiquée"
 
-#: diff.c:5406
+#: diff.c:5448
 msgid "<count>"
 msgstr "<compte>"
 
-#: diff.c:5407
+#: diff.c:5449
 msgid "generate diffstat with limited lines"
 msgstr "générer un diffstat avec des lignes limitées"
 
-#: diff.c:5410
+#: diff.c:5452
 msgid "generate compact summary in diffstat"
 msgstr "générer une résumé compact dans le diffstat"
 
-#: diff.c:5413
+#: diff.c:5455
 msgid "output a binary diff that can be applied"
 msgstr "produire un diff binaire qui peut être appliqué"
 
-#: diff.c:5416
+#: diff.c:5458
 msgid "show full pre- and post-image object names on the \"index\" lines"
 msgstr ""
 "afficher les noms complets des objets pre- et post-image sur les lignes "
 "\"index\""
 
-#: diff.c:5418
+#: diff.c:5460
 msgid "show colored diff"
 msgstr "afficher un diff coloré"
 
-#: diff.c:5419
+#: diff.c:5461
 msgid "<kind>"
 msgstr "<sorte>"
 
-#: diff.c:5420
+#: diff.c:5462
 msgid ""
 "highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
 "diff"
@@ -3739,7 +3840,7 @@ msgstr ""
 "surligner les erreurs d'espace dans les lignes 'contexte', 'ancien', "
 "'nouveau' dans le diff"
 
-#: diff.c:5423
+#: diff.c:5465
 msgid ""
 "do not munge pathnames and use NULs as output field terminators in --raw or "
 "--numstat"
@@ -3747,93 +3848,93 @@ msgstr ""
 "ne pas compresser les chemins et utiliser des NULs comme terminateurs de "
 "champs dans --raw ou --numstat"
 
-#: diff.c:5426 diff.c:5429 diff.c:5432 diff.c:5541
+#: diff.c:5468 diff.c:5471 diff.c:5474 diff.c:5583
 msgid "<prefix>"
 msgstr "<préfixe>"
 
-#: diff.c:5427
+#: diff.c:5469
 msgid "show the given source prefix instead of \"a/\""
 msgstr "afficher le préfixe de source indiqué au lieu de \"a/\""
 
-#: diff.c:5430
+#: diff.c:5472
 msgid "show the given destination prefix instead of \"b/\""
 msgstr "afficher le préfixe de destination indiqué au lieu de \"b/\""
 
-#: diff.c:5433
+#: diff.c:5475
 msgid "prepend an additional prefix to every line of output"
 msgstr "préfixer toutes les lignes en sortie avec la chaîne indiquée"
 
-#: diff.c:5436
+#: diff.c:5478
 msgid "do not show any source or destination prefix"
 msgstr "n'afficher aucun préfixe, ni de source, ni de destination"
 
-#: diff.c:5439
+#: diff.c:5481
 msgid "show context between diff hunks up to the specified number of lines"
 msgstr ""
 "afficher le contexte entre les sections à concurrence du nombre de ligne "
 "indiqué"
 
-#: diff.c:5443 diff.c:5448 diff.c:5453
+#: diff.c:5485 diff.c:5490 diff.c:5495
 msgid "<char>"
 msgstr "<caractère>"
 
-#: diff.c:5444
+#: diff.c:5486
 msgid "specify the character to indicate a new line instead of '+'"
 msgstr "spécifier le caractère pour indiquer une nouvelle ligne au lieu de '+'"
 
-#: diff.c:5449
+#: diff.c:5491
 msgid "specify the character to indicate an old line instead of '-'"
 msgstr "spécifier le caractère pour indiquer une ancienne ligne au lieu de '-'"
 
-#: diff.c:5454
+#: diff.c:5496
 msgid "specify the character to indicate a context instead of ' '"
 msgstr ""
 "spécifier le caractère pour indiquer une ligne de contexte au lieu de ' '"
 
-#: diff.c:5457
+#: diff.c:5499
 msgid "Diff rename options"
 msgstr "Options de renommage de diff"
 
-#: diff.c:5458
+#: diff.c:5500
 msgid "<n>[/<m>]"
 msgstr "<n>[/<m>]"
 
-#: diff.c:5459
+#: diff.c:5501
 msgid "break complete rewrite changes into pairs of delete and create"
 msgstr ""
 "casser les modifications d'une réécrire complète en paires de suppression et "
 "création"
 
-#: diff.c:5463
+#: diff.c:5505
 msgid "detect renames"
 msgstr "détecter les renommages"
 
-#: diff.c:5467
+#: diff.c:5509
 msgid "omit the preimage for deletes"
 msgstr "supprimer la pré-image pour les suppressions"
 
-#: diff.c:5470
+#: diff.c:5512
 msgid "detect copies"
 msgstr "détecter les copies"
 
-#: diff.c:5474
+#: diff.c:5516
 msgid "use unmodified files as source to find copies"
 msgstr ""
 "utiliser les fichiers non-modifiés comme sources pour trouver des copies"
 
-#: diff.c:5476
+#: diff.c:5518
 msgid "disable rename detection"
 msgstr "désactiver la détection de renommage"
 
-#: diff.c:5479
+#: diff.c:5521
 msgid "use empty blobs as rename source"
 msgstr "utiliser des blobs vides comme source de renommage"
 
-#: diff.c:5481
+#: diff.c:5523
 msgid "continue listing the history of a file beyond renames"
 msgstr "continuer à afficher l'historique d'un fichier au delà des renommages"
 
-#: diff.c:5484
+#: diff.c:5526
 msgid ""
 "prevent rename/copy detection if the number of rename/copy targets exceeds "
 "given limit"
@@ -3841,165 +3942,165 @@ msgstr ""
 "empêcher la détection de renommage/copie si le nombre de cibles de renommage/"
 "copie excède la limite indiquée"
 
-#: diff.c:5486
+#: diff.c:5528
 msgid "Diff algorithm options"
 msgstr "Options de l'algorithme de diff"
 
-#: diff.c:5488
+#: diff.c:5530
 msgid "produce the smallest possible diff"
 msgstr "produire le diff le plus petit possible"
 
-#: diff.c:5491
+#: diff.c:5533
 msgid "ignore whitespace when comparing lines"
 msgstr "ignorer les espaces lors de la comparaison de ligne"
 
-#: diff.c:5494
+#: diff.c:5536
 msgid "ignore changes in amount of whitespace"
 msgstr "ignorer des modifications du nombre d'espaces"
 
-#: diff.c:5497
+#: diff.c:5539
 msgid "ignore changes in whitespace at EOL"
 msgstr "ignorer des modifications d'espace en fin de ligne"
 
-#: diff.c:5500
+#: diff.c:5542
 msgid "ignore carrier-return at the end of line"
 msgstr "ignore le retour chariot en fin de ligne"
 
-#: diff.c:5503
+#: diff.c:5545
 msgid "ignore changes whose lines are all blank"
 msgstr "ignorer les modifications dont les lignes sont vides"
 
-#: diff.c:5505 diff.c:5527 diff.c:5530 diff.c:5575
+#: diff.c:5547 diff.c:5569 diff.c:5572 diff.c:5617
 msgid "<regex>"
 msgstr "<regex>"
 
-#: diff.c:5506
+#: diff.c:5548
 msgid "ignore changes whose all lines match <regex>"
 msgstr "ignorer les modifications dont les lignes correspondent à <regex>"
 
-#: diff.c:5509
+#: diff.c:5551
 msgid "heuristic to shift diff hunk boundaries for easy reading"
 msgstr ""
 "heuristique qui déplace les limites de sections de diff pour faciliter la "
 "lecture"
 
-#: diff.c:5512
+#: diff.c:5554
 msgid "generate diff using the \"patience diff\" algorithm"
 msgstr "générer un diff en utilisant l'algorithme de différence \"patience\""
 
-#: diff.c:5516
+#: diff.c:5558
 msgid "generate diff using the \"histogram diff\" algorithm"
 msgstr ""
 "générer un diff en utilisant l'algorithme de différence \"histogramme\""
 
-#: diff.c:5518
+#: diff.c:5560
 msgid "<algorithm>"
 msgstr "<algorithme>"
 
-#: diff.c:5519
+#: diff.c:5561
 msgid "choose a diff algorithm"
 msgstr "choisir un algorithme de différence"
 
-#: diff.c:5521
+#: diff.c:5563
 msgid "<text>"
 msgstr "<texte>"
 
-#: diff.c:5522
+#: diff.c:5564
 msgid "generate diff using the \"anchored diff\" algorithm"
 msgstr "générer un diff en utilisant l'algorithme de différence \"ancré\""
 
-#: diff.c:5524 diff.c:5533 diff.c:5536
+#: diff.c:5566 diff.c:5575 diff.c:5578
 msgid "<mode>"
 msgstr "<mode>"
 
-#: diff.c:5525
+#: diff.c:5567
 msgid "show word diff, using <mode> to delimit changed words"
 msgstr ""
 "afficher des différences par mot, en utilisant <mode> pour délimiter les "
 "mots modifiés"
 
-#: diff.c:5528
+#: diff.c:5570
 msgid "use <regex> to decide what a word is"
 msgstr "utiliser <regex> pour décider ce qu'est un mot"
 
-#: diff.c:5531
+#: diff.c:5573
 msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
 msgstr "équivalent à --word-diff=color --word-diff-regex=<regex>"
 
-#: diff.c:5534
+#: diff.c:5576
 msgid "moved lines of code are colored differently"
 msgstr "les lignes déplacées sont colorées différemment"
 
-#: diff.c:5537
+#: diff.c:5579
 msgid "how white spaces are ignored in --color-moved"
 msgstr "comment les espaces sont ignorés dans --color-moved"
 
-#: diff.c:5540
+#: diff.c:5582
 msgid "Other diff options"
 msgstr "Autres options diff"
 
-#: diff.c:5542
+#: diff.c:5584
 msgid "when run from subdir, exclude changes outside and show relative paths"
 msgstr ""
 "lancé depuis un sous-répertoire, exclure les modifications en dehors et "
 "afficher les chemins relatifs"
 
-#: diff.c:5546
+#: diff.c:5588
 msgid "treat all files as text"
 msgstr "traiter les fichiers comme texte"
 
-#: diff.c:5548
+#: diff.c:5590
 msgid "swap two inputs, reverse the diff"
 msgstr "échanger les entrées, inverser le diff"
 
-#: diff.c:5550
+#: diff.c:5592
 msgid "exit with 1 if there were differences, 0 otherwise"
 msgstr "sortir un code d'erreur 1 s'il y avait de différences, 0 sinon"
 
-#: diff.c:5552
+#: diff.c:5594
 msgid "disable all output of the program"
 msgstr "désactiver tous les affichages du programme"
 
-#: diff.c:5554
+#: diff.c:5596
 msgid "allow an external diff helper to be executed"
 msgstr "autoriser l'exécution d'un assistant externe de diff"
 
-#: diff.c:5556
+#: diff.c:5598
 msgid "run external text conversion filters when comparing binary files"
 msgstr ""
 "lancer les filtres externes de conversion en texte lors de la comparaison de "
 "fichiers binaires"
 
-#: diff.c:5558
+#: diff.c:5600
 msgid "<when>"
 msgstr "<quand>"
 
-#: diff.c:5559
+#: diff.c:5601
 msgid "ignore changes to submodules in the diff generation"
 msgstr ""
 "ignorer les modifications dans les sous-modules lors de la génération de diff"
 
-#: diff.c:5562
+#: diff.c:5604
 msgid "<format>"
 msgstr "<format>"
 
-#: diff.c:5563
+#: diff.c:5605
 msgid "specify how differences in submodules are shown"
 msgstr "spécifier comment les différences dans les sous-modules sont affichées"
 
-#: diff.c:5567
+#: diff.c:5609
 msgid "hide 'git add -N' entries from the index"
 msgstr "masquer les entrées 'git add -N' de l'index"
 
-#: diff.c:5570
+#: diff.c:5612
 msgid "treat 'git add -N' entries as real in the index"
 msgstr "traiter les entrées 'git add -N' comme réelles dans l'index"
 
-#: diff.c:5572
+#: diff.c:5614
 msgid "<string>"
 msgstr "<chaîne>"
 
-#: diff.c:5573
+#: diff.c:5615
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "string"
@@ -4007,7 +4108,7 @@ msgstr ""
 "rechercher les différences qui modifient le nombre d'occurrences de la "
 "chaîne spécifiée"
 
-#: diff.c:5576
+#: diff.c:5618
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "regex"
@@ -4015,38 +4116,38 @@ msgstr ""
 "rechercher les différences qui modifient le nombre d'occurrences de la regex "
 "spécifiée"
 
-#: diff.c:5579
+#: diff.c:5621
 msgid "show all changes in the changeset with -S or -G"
 msgstr ""
 "afficher toutes les modifications dans l'ensemble de modifications avec -S "
 "ou -G"
 
-#: diff.c:5582
+#: diff.c:5624
 msgid "treat <string> in -S as extended POSIX regular expression"
 msgstr ""
 "traiter <chaîne> dans -S comme une expression rationnelle POSIX étendue"
 
-#: diff.c:5585
+#: diff.c:5627
 msgid "control the order in which files appear in the output"
 msgstr "contrôler l'ordre dans lequel les fichiers apparaissent dans la sortie"
 
-#: diff.c:5586 diff.c:5589
+#: diff.c:5628 diff.c:5631
 msgid "<path>"
 msgstr "<chemin>"
 
-#: diff.c:5587
+#: diff.c:5629
 msgid "show the change in the specified path first"
 msgstr "afficher la modification dans le chemin spécifié en premier"
 
-#: diff.c:5590
+#: diff.c:5632
 msgid "skip the output to the specified path"
 msgstr "sauter la sortie pour le chemin spécifié"
 
-#: diff.c:5592
+#: diff.c:5634
 msgid "<object-id>"
 msgstr "<id-objet>"
 
-#: diff.c:5593
+#: diff.c:5635
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "object"
@@ -4054,35 +4155,35 @@ msgstr ""
 "rechercher les différences qui modifient le nombre d'occurrences de l'objet "
 "indiqué"
 
-#: diff.c:5595
+#: diff.c:5637
 msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
 msgstr "[(A|C|D|M|R|T|U|X|B)...[*]]"
 
-#: diff.c:5596
+#: diff.c:5638
 msgid "select files by diff type"
 msgstr "sélectionner les fichiers par types de diff"
 
-#: diff.c:5598
+#: diff.c:5640
 msgid "<file>"
 msgstr "<fichier>"
 
-#: diff.c:5599
-msgid "Output to a specific file"
-msgstr "Sortie vers un fichier spécifié"
+#: diff.c:5641
+msgid "output to a specific file"
+msgstr "sortie vers un fichier spécifique"
 
-#: diff.c:6257
+#: diff.c:6321
 msgid "exhaustive rename detection was skipped due to too many files."
 msgstr ""
 "détection exhaustive de renommage annulée à cause d'un trop grand nombre de "
 "fichiers."
 
-#: diff.c:6260
+#: diff.c:6324
 msgid "only found copies from modified paths due to too many files."
 msgstr ""
 "recherche uniquement des copies par modification de chemin à cause d'un trop "
 "grand nombre de fichiers."
 
-#: diff.c:6263
+#: diff.c:6327
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -4136,20 +4237,20 @@ msgstr "désactivation de la correspondance de motif de cone"
 msgid "cannot use %s as an exclude file"
 msgstr "impossible d'utiliser %s comme fichier d'exclusion"
 
-#: dir.c:2418
+#: dir.c:2419
 #, c-format
 msgid "could not open directory '%s'"
 msgstr "impossible d'ouvrir le répertoire '%s'"
 
-#: dir.c:2720
+#: dir.c:2721
 msgid "failed to get kernel name and information"
 msgstr "echec de l'obtention d'information de kernel"
 
-#: dir.c:2844
+#: dir.c:2846
 msgid "untracked cache is disabled on this system or location"
 msgstr "le cache non suivi est désactivé sur ce système ou sur cet endroit"
 
-#: dir.c:3112
+#: dir.c:3119
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -4157,17 +4258,17 @@ msgstr ""
 "Aucun nom de répertoire n'a pu être deviné\n"
 "Veuillez spécifier un répertoire dans la ligne de commande"
 
-#: dir.c:3800
+#: dir.c:3807
 #, c-format
 msgid "index file corrupt in repo %s"
 msgstr "fichier d'index corrompu dans le dépôt %s"
 
-#: dir.c:3847 dir.c:3852
+#: dir.c:3854 dir.c:3859
 #, c-format
 msgid "could not create directories for %s"
 msgstr "impossible de créer les répertoires pour %s"
 
-#: dir.c:3881
+#: dir.c:3888
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr "impossible de migrer le répertoire git de '%s' vers '%s'"
@@ -4188,7 +4289,7 @@ msgstr "Filtrage du contenu"
 msgid "could not stat file '%s'"
 msgstr "impossible de stat le fichier '%s'"
 
-#: environment.c:145
+#: environment.c:147
 #, c-format
 msgid "bad git namespace path \"%s\""
 msgstr "espaces de nom de Git \"%s\""
@@ -4220,247 +4321,274 @@ msgstr "git fetch-pack : ACK/NACK attendu, '%s' reçu"
 msgid "unable to write to remote"
 msgstr "impossible d'écrire sur un distant"
 
-#: fetch-pack.c:395 fetch-pack.c:1439
+#: fetch-pack.c:397 fetch-pack.c:1460
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "ligne de superficiel invalide : %s"
 
-#: fetch-pack.c:401 fetch-pack.c:1445
+#: fetch-pack.c:403 fetch-pack.c:1466
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "ligne de fin de superficiel invalide : %s"
 
-#: fetch-pack.c:403 fetch-pack.c:1447
+#: fetch-pack.c:405 fetch-pack.c:1468
 #, c-format
 msgid "object not found: %s"
 msgstr "objet non trouvé : %s"
 
-#: fetch-pack.c:406 fetch-pack.c:1450
+#: fetch-pack.c:408 fetch-pack.c:1471
 #, c-format
 msgid "error in object: %s"
 msgstr "erreur dans l'objet : %s"
 
-#: fetch-pack.c:408 fetch-pack.c:1452
+#: fetch-pack.c:410 fetch-pack.c:1473
 #, c-format
 msgid "no shallow found: %s"
 msgstr "pas de superficiel trouvé : %s"
 
-#: fetch-pack.c:411 fetch-pack.c:1456
+#: fetch-pack.c:413 fetch-pack.c:1477
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "superficiel/non superficiel attendu, %s trouvé"
 
-#: fetch-pack.c:451
+#: fetch-pack.c:453
 #, c-format
 msgid "got %s %d %s"
 msgstr "réponse %s %d %s"
 
-#: fetch-pack.c:468
+#: fetch-pack.c:470
 #, c-format
 msgid "invalid commit %s"
 msgstr "commit invalide %s"
 
-#: fetch-pack.c:499
+#: fetch-pack.c:501
 msgid "giving up"
 msgstr "abandon"
 
-#: fetch-pack.c:512 progress.c:339
+#: fetch-pack.c:514 progress.h:25
 msgid "done"
 msgstr "fait"
 
-#: fetch-pack.c:524
+#: fetch-pack.c:526
 #, c-format
 msgid "got %s (%d) %s"
 msgstr "%s trouvé (%d) %s"
 
-#: fetch-pack.c:560
+#: fetch-pack.c:562
 #, c-format
 msgid "Marking %s as complete"
 msgstr "Marquage de %s comme terminé"
 
-#: fetch-pack.c:775
+#: fetch-pack.c:784
 #, c-format
 msgid "already have %s (%s)"
 msgstr "%s déjà possédé (%s)"
 
-#: fetch-pack.c:861
+#: fetch-pack.c:870
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr "fetch-pack : impossible de dupliquer le démultiplexeur latéral"
 
-#: fetch-pack.c:869
+#: fetch-pack.c:878
 msgid "protocol error: bad pack header"
 msgstr "erreur de protocole : mauvais entête de paquet"
 
-#: fetch-pack.c:965
+#: fetch-pack.c:974
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack : impossible de dupliquer %s"
 
-#: fetch-pack.c:971
+#: fetch-pack.c:980
 msgid "fetch-pack: invalid index-pack output"
 msgstr "fetch-pack : sortie d'index de pack invalide"
 
-#: fetch-pack.c:988
+#: fetch-pack.c:997
 #, c-format
 msgid "%s failed"
 msgstr "échec de %s"
 
-#: fetch-pack.c:990
+#: fetch-pack.c:999
 msgid "error in sideband demultiplexer"
 msgstr "erreur dans le démultiplexer latéral"
 
-#: fetch-pack.c:1035
+#: fetch-pack.c:1048
 #, c-format
 msgid "Server version is %.*s"
 msgstr "La version du serveur est %.*s"
 
-#: fetch-pack.c:1043 fetch-pack.c:1049 fetch-pack.c:1052 fetch-pack.c:1058
-#: fetch-pack.c:1062 fetch-pack.c:1066 fetch-pack.c:1070 fetch-pack.c:1074
-#: fetch-pack.c:1078 fetch-pack.c:1082 fetch-pack.c:1086 fetch-pack.c:1090
-#: fetch-pack.c:1096 fetch-pack.c:1102 fetch-pack.c:1107 fetch-pack.c:1112
+#: fetch-pack.c:1056 fetch-pack.c:1062 fetch-pack.c:1065 fetch-pack.c:1071
+#: fetch-pack.c:1075 fetch-pack.c:1079 fetch-pack.c:1083 fetch-pack.c:1087
+#: fetch-pack.c:1091 fetch-pack.c:1095 fetch-pack.c:1099 fetch-pack.c:1103
+#: fetch-pack.c:1109 fetch-pack.c:1115 fetch-pack.c:1120 fetch-pack.c:1125
 #, c-format
 msgid "Server supports %s"
 msgstr "Le serveur supporte %s"
 
-#: fetch-pack.c:1045
+#: fetch-pack.c:1058
 msgid "Server does not support shallow clients"
 msgstr "Le serveur ne supporte les clients superficiels"
 
-#: fetch-pack.c:1105
+#: fetch-pack.c:1118
 msgid "Server does not support --shallow-since"
 msgstr "Le receveur ne gère pas --shallow-since"
 
-#: fetch-pack.c:1110
+#: fetch-pack.c:1123
 msgid "Server does not support --shallow-exclude"
 msgstr "Le receveur ne gère pas --shallow-exclude"
 
-#: fetch-pack.c:1114
+#: fetch-pack.c:1127
 msgid "Server does not support --deepen"
 msgstr "Le receveur ne gère pas --deepen"
 
-#: fetch-pack.c:1116
+#: fetch-pack.c:1129
 msgid "Server does not support this repository's object format"
 msgstr "Le serveur ne supporte pas ce format d'objets de ce dépôt"
 
-#: fetch-pack.c:1129
+#: fetch-pack.c:1142
 msgid "no common commits"
 msgstr "pas de commit commun"
 
-#: fetch-pack.c:1138 fetch-pack.c:1485 builtin/clone.c:1130
+#: fetch-pack.c:1151 fetch-pack.c:1506 builtin/clone.c:1166
 msgid "source repository is shallow, reject to clone."
 msgstr "le dépôt source est superficiel, clonage rejeté."
 
-#: fetch-pack.c:1144 fetch-pack.c:1681
+#: fetch-pack.c:1157 fetch-pack.c:1705
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack : échec de le récupération."
 
-#: fetch-pack.c:1258
+#: fetch-pack.c:1271
 #, c-format
 msgid "mismatched algorithms: client %s; server %s"
 msgstr "non-correspondance des algorithmes : client %s ; serveur %s"
 
-#: fetch-pack.c:1262
+#: fetch-pack.c:1275
 #, c-format
 msgid "the server does not support algorithm '%s'"
 msgstr "le serveur ne supporte pas l'algorithme '%s'"
 
-#: fetch-pack.c:1295
+#: fetch-pack.c:1308
 msgid "Server does not support shallow requests"
 msgstr "Le serveur ne supporte pas les requêtes superficielles"
 
-#: fetch-pack.c:1302
+#: fetch-pack.c:1315
 msgid "Server supports filter"
 msgstr "Le serveur supporte filter"
 
-#: fetch-pack.c:1345 fetch-pack.c:2063
+#: fetch-pack.c:1358 fetch-pack.c:2087
 msgid "unable to write request to remote"
 msgstr "impossible d'écrire la requête sur le distant"
 
-#: fetch-pack.c:1363
+#: fetch-pack.c:1376
 #, c-format
 msgid "error reading section header '%s'"
 msgstr "erreur à la lecture de l'entête de section '%s'"
 
-#: fetch-pack.c:1369
+#: fetch-pack.c:1382
 #, c-format
 msgid "expected '%s', received '%s'"
 msgstr "'%s' attendu, '%s' reçu"
 
-#: fetch-pack.c:1403
+#: fetch-pack.c:1416
 #, c-format
 msgid "unexpected acknowledgment line: '%s'"
 msgstr "ligne d'acquittement inattendue : '%s'"
 
-#: fetch-pack.c:1408
+#: fetch-pack.c:1421
 #, c-format
 msgid "error processing acks: %d"
 msgstr "erreur lors du traitement des acquittements : %d"
 
-#: fetch-pack.c:1418
-msgid "expected packfile to be sent after 'ready'"
-msgstr "fichier paquet attendu à envoyer après 'ready'"
+#. TRANSLATORS: The parameter will be 'ready', a protocol
+#. keyword.
+#.
+#: fetch-pack.c:1435
+#, c-format
+msgid "expected packfile to be sent after '%s'"
+msgstr "fichier paquet attendu à envoyer après '%s'"
 
-#: fetch-pack.c:1420
-msgid "expected no other sections to be sent after no 'ready'"
-msgstr "aucune autre section attendue à envoyer après absence de 'ready'"
+#. TRANSLATORS: The parameter will be 'ready', a protocol
+#. keyword.
+#.
+#: fetch-pack.c:1441
+#, c-format
+msgid "expected no other sections to be sent after no '%s'"
+msgstr "aucune autre section attendue à envoyer après absence de '%s'"
 
-#: fetch-pack.c:1461
+#: fetch-pack.c:1482
 #, c-format
 msgid "error processing shallow info: %d"
 msgstr "erreur lors du traitement de l'information de superficialité : %d"
 
-#: fetch-pack.c:1510
+#: fetch-pack.c:1531
 #, c-format
 msgid "expected wanted-ref, got '%s'"
 msgstr "wanted-ref attendu, '%s' trouvé"
 
-#: fetch-pack.c:1515
+#: fetch-pack.c:1536
 #, c-format
 msgid "unexpected wanted-ref: '%s'"
 msgstr "wanted-ref inattendu : '%s'"
 
-#: fetch-pack.c:1520
+#: fetch-pack.c:1541
 #, c-format
 msgid "error processing wanted refs: %d"
 msgstr "erreur lors du traitement des références voulues : %d"
 
-#: fetch-pack.c:1550
+#: fetch-pack.c:1571
 msgid "git fetch-pack: expected response end packet"
 msgstr "git fetch-pack : paquet de fin de réponse attendu"
 
-#: fetch-pack.c:1959
+#: fetch-pack.c:1983
 msgid "no matching remote head"
 msgstr "pas de HEAD distante correspondante"
 
-#: fetch-pack.c:1982 builtin/clone.c:581
+#: fetch-pack.c:2006 builtin/clone.c:587
 msgid "remote did not send all necessary objects"
 msgstr "le serveur distant n'a pas envoyé tous les objets nécessaires"
 
-#: fetch-pack.c:2085
+#: fetch-pack.c:2109
 msgid "unexpected 'ready' from remote"
 msgstr "'ready' inattendu depuis le distant"
 
-#: fetch-pack.c:2108
+#: fetch-pack.c:2132
 #, c-format
 msgid "no such remote ref %s"
 msgstr "référence distante inconnue %s"
 
-#: fetch-pack.c:2111
+#: fetch-pack.c:2135
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr "Le serveur n'autorise pas de requête pour l'objet %s non annoncé"
 
-#: gpg-interface.c:329 gpg-interface.c:457 gpg-interface.c:974
-#: gpg-interface.c:990
+#: fsmonitor-ipc.c:119
+#, c-format
+msgid "fsmonitor_ipc__send_query: invalid path '%s'"
+msgstr "fsmonitor_ipc__send_query : chemin invalide '%s'"
+
+#: fsmonitor-ipc.c:125
+#, c-format
+msgid "fsmonitor_ipc__send_query: unspecified error on '%s'"
+msgstr "fsmonitor_ipc__send_query : erreur non spécifiée sur '%s'"
+
+#: fsmonitor-ipc.c:155
+msgid "fsmonitor--daemon is not running"
+msgstr "fsmonitor--daemon n'est pas en cours d'exécution"
+
+#: fsmonitor-ipc.c:164
+#, c-format
+msgid "could not send '%s' command to fsmonitor--daemon"
+msgstr "impossible de lancer la commmand '%s' à fsmonitor--daemon"
+
+#: gpg-interface.c:329 gpg-interface.c:456 gpg-interface.c:995
+#: gpg-interface.c:1011
 msgid "could not create temporary file"
 msgstr "impossible de créer un fichier temporaire"
 
-#: gpg-interface.c:332 gpg-interface.c:460
+#: gpg-interface.c:332 gpg-interface.c:459
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr "impossible d'écrire la signature détachée dans '%s'"
 
-#: gpg-interface.c:451
+#: gpg-interface.c:450
 msgid ""
 "gpg.ssh.allowedSignersFile needs to be configured and exist for ssh "
 "signature verification"
@@ -4468,7 +4596,7 @@ msgstr ""
 "gpg.ssh.allowedSignersFile doit exister et être configuré pour la "
 "vérification de signature ssh"
 
-#: gpg-interface.c:480
+#: gpg-interface.c:479
 msgid ""
 "ssh-keygen -Y find-principals/verify is needed for ssh signature "
 "verification (available in openssh version 8.2p1+)"
@@ -4476,56 +4604,56 @@ msgstr ""
 "ssh-keygen -Y -find-principals/verify est nécessaire pour la vérification de "
 "signature ssh (disponible depuis openssh version 8.2p1+)"
 
-#: gpg-interface.c:536
+#: gpg-interface.c:550
 #, c-format
 msgid "ssh signing revocation file configured but not found: %s"
 msgstr "fichier de révocation de signature ssh configuré mais non trouvé : %s"
 
-#: gpg-interface.c:624
+#: gpg-interface.c:638
 #, c-format
 msgid "bad/incompatible signature '%s'"
 msgstr "signature incompatible ou mauvaise '%s'"
 
-#: gpg-interface.c:801 gpg-interface.c:806
+#: gpg-interface.c:815 gpg-interface.c:820
 #, c-format
 msgid "failed to get the ssh fingerprint for key '%s'"
 msgstr "échec d'obtention de l'empreinte ssh pour la clé '%s'"
 
-#: gpg-interface.c:829
+#: gpg-interface.c:843
 msgid ""
 "either user.signingkey or gpg.ssh.defaultKeyCommand needs to be configured"
 msgstr "soit user.signingkey ou gpg.ssh.defaultKeyCommand doit être configuré"
 
-#: gpg-interface.c:851
+#: gpg-interface.c:865
 #, c-format
 msgid "gpg.ssh.defaultKeyCommand succeeded but returned no keys: %s %s"
 msgstr ""
 "gpg.ssh.defaultKeyCommand a réussi mais n'a retourné aucune clé : %s %s"
 
-#: gpg-interface.c:857
+#: gpg-interface.c:871
 #, c-format
 msgid "gpg.ssh.defaultKeyCommand failed: %s %s"
 msgstr "gpg.ssh.defaultKeyCommand a échoué : %s %s"
 
-#: gpg-interface.c:945
+#: gpg-interface.c:966
 msgid "gpg failed to sign the data"
 msgstr "gpg n'a pas pu signer les données"
 
-#: gpg-interface.c:967
+#: gpg-interface.c:988
 msgid "user.signingkey needs to be set for ssh signing"
 msgstr "user.signingkey doit être configuré pour pour signer avec ssh"
 
-#: gpg-interface.c:978
+#: gpg-interface.c:999
 #, c-format
 msgid "failed writing ssh signing key to '%s'"
 msgstr "impossible d'écrire la clé de signature ssh dans '%s'"
 
-#: gpg-interface.c:996
+#: gpg-interface.c:1017
 #, c-format
 msgid "failed writing ssh signing key buffer to '%s'"
 msgstr "impossible d'écrire le tampon de la clé de signature ssh dans '%s'"
 
-#: gpg-interface.c:1014
+#: gpg-interface.c:1035
 msgid ""
 "ssh-keygen -Y sign is needed for ssh signing (available in openssh version "
 "8.2p1+)"
@@ -4533,7 +4661,7 @@ msgstr ""
 "ssh-keygen -Y signe est nécessaire pour pouvoir signer avec ssh (disponible "
 "dans openssh version 8.2p1+)"
 
-#: gpg-interface.c:1026
+#: gpg-interface.c:1047
 #, c-format
 msgid "failed reading ssh signing data buffer from '%s'"
 msgstr "impossible de lire le tampon de données de signature ssh depuis '%s'"
@@ -4543,7 +4671,7 @@ msgstr "impossible de lire le tampon de données de signature ssh depuis '%s'"
 msgid "ignored invalid color '%.*s' in log.graphColors"
 msgstr "couleur invalide '%.*s' ignorée dans log.graphColors"
 
-#: grep.c:531
+#: grep.c:446
 msgid ""
 "given pattern contains NULL byte (via -f <file>). This is only supported "
 "with -P under PCRE v2"
@@ -4551,112 +4679,112 @@ msgstr ""
 "le motif fourni contient des octets NUL (via -f <fichier>). Ce n'est "
 "supporté qu'avec -P avec PCRE v2"
 
-#: grep.c:1942
+#: grep.c:1859
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "'%s' : lecture de %s impossible"
 
-#: grep.c:1959 setup.c:177 builtin/clone.c:302 builtin/diff.c:90
+#: grep.c:1876 setup.c:178 builtin/clone.c:308 builtin/diff.c:90
 #: builtin/rm.c:136
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "échec du stat de '%s'"
 
-#: grep.c:1970
+#: grep.c:1887
 #, c-format
 msgid "'%s': short read"
 msgstr "'%s' : lecture tronquée"
 
-#: help.c:24
+#: help.c:25
 msgid "start a working area (see also: git help tutorial)"
 msgstr "démarrer une zone de travail (voir aussi : git help tutorial)"
 
-#: help.c:25
+#: help.c:26
 msgid "work on the current change (see also: git help everyday)"
 msgstr ""
 "travailler sur la modification actuelle (voir aussi : git help revisions)"
 
-#: help.c:26
+#: help.c:27
 msgid "examine the history and state (see also: git help revisions)"
 msgstr "examiner l'historique et l'état (voir aussi : git help revisions)"
 
-#: help.c:27
+#: help.c:28
 msgid "grow, mark and tweak your common history"
 msgstr "agrandir, marquer et modifier votre historique"
 
-#: help.c:28
+#: help.c:29
 msgid "collaborate (see also: git help workflows)"
 msgstr "collaborer (voir aussi : git help workflows)"
 
-#: help.c:32
+#: help.c:33
 msgid "Main Porcelain Commands"
 msgstr "Commandes Porcelaine Principales"
 
-#: help.c:33
+#: help.c:34
 msgid "Ancillary Commands / Manipulators"
 msgstr "Commandes Auxiliaires / Manipulateurs"
 
-#: help.c:34
+#: help.c:35
 msgid "Ancillary Commands / Interrogators"
 msgstr "Commandes Auxiliaires / Interrogateurs"
 
-#: help.c:35
+#: help.c:36
 msgid "Interacting with Others"
 msgstr "Interaction avec d'autres développeurs"
 
-#: help.c:36
+#: help.c:37
 msgid "Low-level Commands / Manipulators"
 msgstr "Commandes bas-niveau / Manipulateurs"
 
-#: help.c:37
+#: help.c:38
 msgid "Low-level Commands / Interrogators"
 msgstr "Commandes bas niveau / Interrogateurs"
 
-#: help.c:38
+#: help.c:39
 msgid "Low-level Commands / Syncing Repositories"
 msgstr "Commandes bas niveau / Synchronisation de dépôts"
 
-#: help.c:39
+#: help.c:40
 msgid "Low-level Commands / Internal Helpers"
 msgstr "Commandes bas niveau / Assistants internes"
 
-#: help.c:313
+#: help.c:316
 #, c-format
 msgid "available git commands in '%s'"
 msgstr "commandes git disponibles dans '%s'"
 
-#: help.c:320
+#: help.c:323
 msgid "git commands available from elsewhere on your $PATH"
 msgstr "commandes git disponibles depuis un autre endroit de votre $PATH"
 
-#: help.c:329
+#: help.c:332
 msgid "These are common Git commands used in various situations:"
 msgstr "Ci-dessous les commandes Git habituelles dans diverses situations :"
 
-#: help.c:378 git.c:100
+#: help.c:382 git.c:100
 #, c-format
 msgid "unsupported command listing type '%s'"
 msgstr "type de liste de commandes non supporté '%s'"
 
-#: help.c:418
+#: help.c:422
 msgid "The Git concept guides are:"
 msgstr "Les guides des concepts de Git sont :"
 
-#: help.c:442
-msgid "See 'git help <command>' to read about a specific subcommand"
-msgstr ""
-"Référez-vous à 'git help <commande>' pour des informations sur une sous-"
-"commande spécifique"
-
-#: help.c:447
+#: help.c:446
 msgid "External commands"
 msgstr "Commandes externes"
 
-#: help.c:462
+#: help.c:468
 msgid "Command aliases"
 msgstr "Alias de commande"
 
-#: help.c:543
+#: help.c:486
+msgid "See 'git help <command>' to read about a specific subcommand"
+msgstr ""
+"Référez-vous à 'git help <commande>' pour des informations sur une sous-"
+"commande spécifique"
+
+#: help.c:563
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -4665,38 +4793,38 @@ msgstr ""
 "'%s' semble être une commande git, mais elle n'a pas pu\n"
 "être exécutée. Peut-être git-%s est-elle cassée ?"
 
-#: help.c:565 help.c:662
+#: help.c:585 help.c:682
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr "git : '%s' n'est pas une commande git. Voir 'git --help'."
 
-#: help.c:613
+#: help.c:633
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "Ahem. Votre système n'indique aucune commande Git."
 
-#: help.c:635
+#: help.c:655
 #, c-format
 msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr ""
 "ATTENTION : vous avez invoqué une commande Git nommée '%s' qui n'existe pas."
 
-#: help.c:640
+#: help.c:660
 #, c-format
 msgid "Continuing under the assumption that you meant '%s'."
 msgstr "Continuons en supposant que vous avez voulu dire '%s'."
 
-#: help.c:646
+#: help.c:666
 #, c-format
 msgid "Run '%s' instead [y/N]? "
 msgstr "Lancer '%s' à la place [y/N] ? "
 
-#: help.c:654
+#: help.c:674
 #, c-format
 msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
 msgstr ""
 "Continuons dans %0.1f secondes en supposant que vous avez voulu dire '%s'."
 
-#: help.c:666
+#: help.c:686
 msgid ""
 "\n"
 "The most similar command is"
@@ -4710,16 +4838,16 @@ msgstr[1] ""
 "\n"
 "Les commandes les plus ressemblantes sont"
 
-#: help.c:706
+#: help.c:729
 msgid "git version [<options>]"
 msgstr "git version [<options>]"
 
-#: help.c:761
+#: help.c:784
 #, c-format
 msgid "%s: %s - %s"
 msgstr "%s: %s - %s"
 
-#: help.c:765
+#: help.c:788
 msgid ""
 "\n"
 "Did you mean this?"
@@ -4733,7 +4861,7 @@ msgstr[1] ""
 "\n"
 "Vouliez-vous dire un de ceux-là ?"
 
-#: hook.c:27
+#: hook.c:28
 #, c-format
 msgid ""
 "The '%s' hook was ignored because it's not set as executable.\n"
@@ -4743,15 +4871,20 @@ msgstr ""
 "Vous pouvez désactiver cet avertissement avec `git config advice.ignoredHook "
 "false`."
 
-#: ident.c:353
+#: hook.c:87
+#, c-format
+msgid "Couldn't start hook '%s'\n"
+msgstr "impossible de démarrer le crochet '%s'\n"
+
+#: ident.c:354
 msgid "Author identity unknown\n"
 msgstr "Identité d'auteur inconnue\n"
 
-#: ident.c:356
+#: ident.c:357
 msgid "Committer identity unknown\n"
 msgstr "Indentité de validateur inconnue\n"
 
-#: ident.c:362
+#: ident.c:363
 msgid ""
 "\n"
 "*** Please tell me who you are.\n"
@@ -4777,72 +4910,72 @@ msgstr ""
 "Éliminez --global pour ne faire les réglages que dans ce dépôt.\n"
 "\n"
 
-#: ident.c:397
+#: ident.c:398
 msgid "no email was given and auto-detection is disabled"
 msgstr "aucun courriel fourni et l'auto-détection est désactivée"
 
-#: ident.c:402
+#: ident.c:403
 #, c-format
 msgid "unable to auto-detect email address (got '%s')"
 msgstr "impossible de détecter automatiquement l'adresse ('%s' trouvé)"
 
-#: ident.c:419
+#: ident.c:420
 msgid "no name was given and auto-detection is disabled"
 msgstr "aucun nom fourni et l'auto-détection est désactivée"
 
-#: ident.c:425
+#: ident.c:426
 #, c-format
 msgid "unable to auto-detect name (got '%s')"
 msgstr "impossible de détecter automatiquement le nom ('%s' trouvé)"
 
-#: ident.c:433
+#: ident.c:434
 #, c-format
 msgid "empty ident name (for <%s>) not allowed"
 msgstr "nom d'identifiant vide (pour <%s>) non permis"
 
-#: ident.c:439
+#: ident.c:440
 #, c-format
 msgid "name consists only of disallowed characters: %s"
 msgstr "le nom n'est constitué que de caractères interdits : %s"
 
-#: ident.c:454 builtin/commit.c:648
+#: ident.c:455 builtin/commit.c:649
 #, c-format
 msgid "invalid date format: %s"
 msgstr "format de date invalide : %s"
 
-#: list-objects-filter-options.c:83
+#: list-objects-filter-options.c:68
 msgid "expected 'tree:<depth>'"
 msgstr "attendu : 'tree:<profondeur>'"
 
-#: list-objects-filter-options.c:98
+#: list-objects-filter-options.c:83
 msgid "sparse:path filters support has been dropped"
 msgstr "sparse : le support des filtres de chemin a été abandonné"
 
-#: list-objects-filter-options.c:105
+#: list-objects-filter-options.c:90
 #, c-format
 msgid "'%s' for 'object:type=<type>' is not a valid object type"
 msgstr "'%s' pour 'object:type=<type>' n'est pas un type d'objet valide"
 
-#: list-objects-filter-options.c:124
+#: list-objects-filter-options.c:109
 #, c-format
 msgid "invalid filter-spec '%s'"
 msgstr "spécificateur de filtre invalide '%s'"
 
-#: list-objects-filter-options.c:140
+#: list-objects-filter-options.c:125
 #, c-format
 msgid "must escape char in sub-filter-spec: '%c'"
 msgstr ""
 "le caractère doit être échappé dans le spécificateur de sous-filtre : '%c'"
 
-#: list-objects-filter-options.c:182
+#: list-objects-filter-options.c:167
 msgid "expected something after combine:"
 msgstr "quelque chose attendu après combine :"
 
-#: list-objects-filter-options.c:264
+#: list-objects-filter-options.c:249
 msgid "multiple filter-specs cannot be combined"
 msgstr "impossible de combiner des spécificateurs multiples de filtre"
 
-#: list-objects-filter-options.c:376
+#: list-objects-filter-options.c:365
 msgid "unable to upgrade repository format to support partial clone"
 msgstr ""
 "impossible de mettre à jour le format de dépôt pour supporter les clones "
@@ -4858,19 +4991,19 @@ msgstr "impossible d'accéder au blob clairsemé dans '%s'"
 msgid "unable to parse sparse filter data in %s"
 msgstr "impossible d'analyser la donnée de filtre clairsemé dans %s"
 
-#: list-objects.c:127
+#: list-objects.c:144
 #, c-format
 msgid "entry '%s' in tree %s has tree mode, but is not a tree"
 msgstr ""
 "l'entrée '%s' dans l'arbre %s a un mode d'arbre, mais n'est pas un arbre"
 
-#: list-objects.c:140
+#: list-objects.c:157
 #, c-format
 msgid "entry '%s' in tree %s has blob mode, but is not a blob"
 msgstr ""
 "l'entrée '%s' dans l'arbre %s a un mode de blob, mais n'est pas un blob"
 
-#: list-objects.c:398
+#: list-objects.c:415
 #, c-format
 msgid "unable to load root tree for commit %s"
 msgstr "impossible de charger l'arbre racine pour le commit %s"
@@ -4899,17 +5032,12 @@ msgstr ""
 msgid "Unable to create '%s.lock': %s"
 msgstr "Impossible de créer '%s.lock' : %s"
 
-#: ls-refs.c:37
-#, c-format
-msgid "invalid value '%s' for lsrefs.unborn"
-msgstr "valeur invalide '%s' pour lsrefs.unborn"
-
-#: ls-refs.c:174
+#: ls-refs.c:175
 #, c-format
 msgid "unexpected line: '%s'"
 msgstr "ligne inattendue : '%s'"
 
-#: ls-refs.c:178
+#: ls-refs.c:179
 msgid "expected flush after ls-refs arguments"
 msgstr "vidage attendu après les arguments ls-refs"
 
@@ -4917,39 +5045,39 @@ msgstr "vidage attendu après les arguments ls-refs"
 msgid "quoted CRLF detected"
 msgstr "CRLF citées détectées"
 
-#: mailinfo.c:1254 builtin/am.c:184 builtin/mailinfo.c:46
+#: mailinfo.c:1254 builtin/am.c:185 builtin/mailinfo.c:46
 #, c-format
 msgid "bad action '%s' for '%s'"
 msgstr "action invalide '%s' pour '%s'"
 
-#: merge-ort.c:1584 merge-recursive.c:1211
+#: merge-ort.c:1630 merge-recursive.c:1214
 #, c-format
 msgid "Failed to merge submodule %s (not checked out)"
 msgstr "Échec de la fusion du sous-module %s (non extrait)"
 
-#: merge-ort.c:1593 merge-recursive.c:1218
+#: merge-ort.c:1639 merge-recursive.c:1221
 #, c-format
 msgid "Failed to merge submodule %s (commits not present)"
 msgstr "Échec de fusion du sous-module %s (commits non présents)"
 
-#: merge-ort.c:1602 merge-recursive.c:1225
+#: merge-ort.c:1648 merge-recursive.c:1228
 #, c-format
 msgid "Failed to merge submodule %s (commits don't follow merge-base)"
 msgstr ""
 "Échec de la fusion du sous-module %s (les commits ne descendent pas de la "
 "base de fusion)"
 
-#: merge-ort.c:1612 merge-ort.c:1620
+#: merge-ort.c:1658 merge-ort.c:1666
 #, c-format
 msgid "Note: Fast-forwarding submodule %s to %s"
 msgstr "Note : Avance rapide du sous-module %s à %s"
 
-#: merge-ort.c:1642
+#: merge-ort.c:1688
 #, c-format
 msgid "Failed to merge submodule %s"
 msgstr "Échec de la fusion du sous-module %s"
 
-#: merge-ort.c:1649
+#: merge-ort.c:1695
 #, c-format
 msgid ""
 "Failed to merge submodule %s, but a possible merge resolution exists:\n"
@@ -4959,7 +5087,7 @@ msgstr ""
 "existe :\n"
 "%s\n"
 
-#: merge-ort.c:1653 merge-recursive.c:1281
+#: merge-ort.c:1699 merge-recursive.c:1284
 #, c-format
 msgid ""
 "If this is correct simply add it to the index for example\n"
@@ -4976,7 +5104,7 @@ msgstr ""
 "\n"
 "qui acceptera cette suggestion.\n"
 
-#: merge-ort.c:1666
+#: merge-ort.c:1712
 #, c-format
 msgid ""
 "Failed to merge submodule %s, but multiple possible merges exist:\n"
@@ -4986,21 +5114,21 @@ msgstr ""
 "existent :\n"
 "%s"
 
-#: merge-ort.c:1887 merge-recursive.c:1372
+#: merge-ort.c:1937 merge-recursive.c:1375
 msgid "Failed to execute internal merge"
 msgstr "Échec à l'exécution de la fusion interne"
 
-#: merge-ort.c:1892 merge-recursive.c:1377
+#: merge-ort.c:1942 merge-recursive.c:1380
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Impossible d'ajouter %s à la base de données"
 
-#: merge-ort.c:1899 merge-recursive.c:1410
+#: merge-ort.c:1949 merge-recursive.c:1413
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Fusion automatique de %s"
 
-#: merge-ort.c:2038 merge-recursive.c:2132
+#: merge-ort.c:2088 merge-recursive.c:2135
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
@@ -5009,7 +5137,7 @@ msgstr ""
 "CONFLIT (renommage implicite de répertoire) : le répertoire/fichier %s gêne "
 "des renommages implicites de répertoire déplaçant les chemins suivants : %s."
 
-#: merge-ort.c:2048 merge-recursive.c:2142
+#: merge-ort.c:2098 merge-recursive.c:2145
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
@@ -5018,7 +5146,7 @@ msgstr ""
 "CONFLIT (renommage implicite de répertoire) : impossible de transformer "
 "plusieurs chemins sur %s ; les chemins concernés sont : %s"
 
-#: merge-ort.c:2106
+#: merge-ort.c:2156
 #, c-format
 msgid ""
 "CONFLICT (directory rename split): Unclear where to rename %s to; it was "
@@ -5029,7 +5157,7 @@ msgstr ""
 "parce que le répertoire a été renommé en plusieurs autres répertoires, sans "
 "aucune destination récupérant la majorité des fichiers."
 
-#: merge-ort.c:2260 merge-recursive.c:2478
+#: merge-ort.c:2310 merge-recursive.c:2481
 #, c-format
 msgid ""
 "WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
@@ -5038,7 +5166,7 @@ msgstr ""
 "AVERTISSEMENT : ne renomme pas %s->%s dans %s, parce que %s lui-même a été "
 "renommé."
 
-#: merge-ort.c:2400 merge-recursive.c:3261
+#: merge-ort.c:2450 merge-recursive.c:3264
 #, c-format
 msgid ""
 "Path updated: %s added in %s inside a directory that was renamed in %s; "
@@ -5047,7 +5175,7 @@ msgstr ""
 "Chemin mis à jour : %s ajouté dans %s dans un répertoire qui a été renommé "
 "en %s ; déplacé dans %s."
 
-#: merge-ort.c:2407 merge-recursive.c:3268
+#: merge-ort.c:2457 merge-recursive.c:3271
 #, c-format
 msgid ""
 "Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
@@ -5056,7 +5184,7 @@ msgstr ""
 "Chemin mis à jour : %s renommé en %s dans %s, dans un répertoire qui a été "
 "renommé en %s ; déplacé dans %s."
 
-#: merge-ort.c:2420 merge-recursive.c:3264
+#: merge-ort.c:2470 merge-recursive.c:3267
 #, c-format
 msgid ""
 "CONFLICT (file location): %s added in %s inside a directory that was renamed "
@@ -5066,7 +5194,7 @@ msgstr ""
 "a été renommé dans %s, ce qui suggère qu'il devrait peut-être être déplacé "
 "vers %s."
 
-#: merge-ort.c:2428 merge-recursive.c:3271
+#: merge-ort.c:2478 merge-recursive.c:3274
 #, c-format
 msgid ""
 "CONFLICT (file location): %s renamed to %s in %s, inside a directory that "
@@ -5076,13 +5204,13 @@ msgstr ""
 "répertoire qui a été renommé dans %s, ce qui suggère qu'il devrait peut-être "
 "être déplacé vers %s."
 
-#: merge-ort.c:2584
+#: merge-ort.c:2634
 #, c-format
 msgid "CONFLICT (rename/rename): %s renamed to %s in %s and to %s in %s."
 msgstr ""
 "CONFLIT (renommage/renommage) : %s renommé en %s dans %s et en %s dans %s."
 
-#: merge-ort.c:2679
+#: merge-ort.c:2729
 #, c-format
 msgid ""
 "CONFLICT (rename involved in collision): rename of %s -> %s has content "
@@ -5093,24 +5221,24 @@ msgstr ""
 "des conflits de contenu ET entre en collision avec un autre chemin ; ceci "
 "peut resulter en des marqueurs de conflit imbriqués."
 
-#: merge-ort.c:2698 merge-ort.c:2722
+#: merge-ort.c:2748 merge-ort.c:2772
 #, c-format
 msgid "CONFLICT (rename/delete): %s renamed to %s in %s, but deleted in %s."
 msgstr ""
 "CONFLIT (renommage/suppression) : Renommage de %s en %s dans %s mais "
 "supprimé dans %s."
 
-#: merge-ort.c:3212 merge-recursive.c:3022
+#: merge-ort.c:3261 merge-recursive.c:3025
 #, c-format
 msgid "cannot read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: merge-ort.c:3215 merge-recursive.c:3025
+#: merge-ort.c:3264 merge-recursive.c:3028
 #, c-format
 msgid "object %s is not a blob"
 msgstr "l'objet %s n'est pas un blob"
 
-#: merge-ort.c:3644
+#: merge-ort.c:3693
 #, c-format
 msgid ""
 "CONFLICT (file/directory): directory in the way of %s from %s; moving it to "
@@ -5119,7 +5247,7 @@ msgstr ""
 "CONFLIT (fichier/répertoire) : répertoire au milieu de %s depuis %s ; "
 "déplacement dans %s à la place."
 
-#: merge-ort.c:3721
+#: merge-ort.c:3770
 #, c-format
 msgid ""
 "CONFLICT (distinct types): %s had different types on each side; renamed both "
@@ -5128,7 +5256,7 @@ msgstr ""
 "CONFLIT (types différents) : %s a des types différents des deux côtés ; "
 "renommé chacune de manière à pouvoir enregistrer les deux quelque part."
 
-#: merge-ort.c:3728
+#: merge-ort.c:3777
 #, c-format
 msgid ""
 "CONFLICT (distinct types): %s had different types on each side; renamed one "
@@ -5138,24 +5266,24 @@ msgstr ""
 "renommé une d'entre elles de manière à pouvoir enregistrer les deux quelque "
 "part."
 
-#: merge-ort.c:3819 merge-recursive.c:3101
+#: merge-ort.c:3866 merge-recursive.c:3104
 msgid "content"
 msgstr "contenu"
 
-#: merge-ort.c:3821 merge-recursive.c:3105
+#: merge-ort.c:3868 merge-recursive.c:3108
 msgid "add/add"
 msgstr "ajout/ajout"
 
-#: merge-ort.c:3823 merge-recursive.c:3150
+#: merge-ort.c:3870 merge-recursive.c:3153
 msgid "submodule"
 msgstr "sous-module"
 
-#: merge-ort.c:3825 merge-recursive.c:3151
+#: merge-ort.c:3872 merge-recursive.c:3154
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLIT (%s) : Conflit de fusion dans %s"
 
-#: merge-ort.c:3869
+#: merge-ort.c:3916
 #, c-format
 msgid ""
 "CONFLICT (modify/delete): %s deleted in %s and modified in %s.  Version %s "
@@ -5164,7 +5292,7 @@ msgstr ""
 "CONFLIT (modification/suppression) : %s supprimé dans %s et modifié dans %s. "
 "Version %s de %s laissée dans l'arbre."
 
-#: merge-ort.c:4165
+#: merge-ort.c:4212
 #, c-format
 msgid ""
 "Note: %s not up to date and in way of checking out conflicted version; old "
@@ -5176,12 +5304,12 @@ msgstr ""
 #. TRANSLATORS: The %s arguments are: 1) tree hash of a merge
 #. base, and 2-3) the trees for the two trees we're merging.
 #.
-#: merge-ort.c:4534
+#: merge-ort.c:4586
 #, c-format
 msgid "collecting merge info failed for trees %s, %s, %s"
 msgstr "échec de collecte l'information de fusion pour les arbres %s, %s, %s"
 
-#: merge-ort-wrappers.c:13 merge-recursive.c:3716
+#: merge-ort-wrappers.c:13 merge-recursive.c:3723
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -5191,7 +5319,7 @@ msgstr ""
 "fusion :\n"
 "  %s"
 
-#: merge-ort-wrappers.c:33 merge-recursive.c:3482 builtin/merge.c:405
+#: merge-ort-wrappers.c:33 merge-recursive.c:3485 builtin/merge.c:405
 msgid "Already up to date."
 msgstr "Déjà à jour."
 
@@ -5228,7 +5356,7 @@ msgstr ": peut-être un conflit D/F ?"
 msgid "refusing to lose untracked file at '%s'"
 msgstr "refus de perdre le fichier non suivi '%s'"
 
-#: merge-recursive.c:956 builtin/cat-file.c:41
+#: merge-recursive.c:956 builtin/cat-file.c:47
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "impossible de lire l'objet %s '%s'"
@@ -5253,44 +5381,44 @@ msgstr "échec à la création du lien symbolique '%s' : %s"
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "ne sait pas traiter %06o %s '%s'"
 
-#: merge-recursive.c:1233 merge-recursive.c:1246
+#: merge-recursive.c:1236 merge-recursive.c:1249
 #, c-format
 msgid "Fast-forwarding submodule %s to the following commit:"
 msgstr "Avance rapide du sous-module %s au commit suivant :"
 
-#: merge-recursive.c:1236 merge-recursive.c:1249
+#: merge-recursive.c:1239 merge-recursive.c:1252
 #, c-format
 msgid "Fast-forwarding submodule %s"
 msgstr "Avance rapide du sous-module %s"
 
-#: merge-recursive.c:1273
+#: merge-recursive.c:1276
 #, c-format
 msgid "Failed to merge submodule %s (merge following commits not found)"
 msgstr ""
 "Échec de fusion du sous-module %s (fusion suivant les commits non trouvée)"
 
-#: merge-recursive.c:1277
+#: merge-recursive.c:1280
 #, c-format
 msgid "Failed to merge submodule %s (not fast-forward)"
 msgstr "Échec de fusion du sous-module %s (pas en avance rapide)"
 
-#: merge-recursive.c:1278
+#: merge-recursive.c:1281
 msgid "Found a possible merge resolution for the submodule:\n"
 msgstr "Résolution possible de fusion trouvée pour le sous-module :\n"
 
-#: merge-recursive.c:1290
+#: merge-recursive.c:1293
 #, c-format
 msgid "Failed to merge submodule %s (multiple merges found)"
 msgstr "Échec de fusion du sous-module %s (plusieurs fusions trouvées)"
 
-#: merge-recursive.c:1434
+#: merge-recursive.c:1437
 #, c-format
 msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
 msgstr ""
 "Erreur : refus de perdre le fichier non suivi %s ; écriture dans %s à la "
 "place."
 
-#: merge-recursive.c:1506
+#: merge-recursive.c:1509
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -5299,7 +5427,7 @@ msgstr ""
 "CONFLIT (%s/suppression) : %s supprimé dans %s et %s dans %s. Version %s de "
 "%s laissée dans l'arbre."
 
-#: merge-recursive.c:1511
+#: merge-recursive.c:1514
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -5308,7 +5436,7 @@ msgstr ""
 "CONFLIT (%s/suppression) : %s supprimé dans %s et %s à %s dans %s. Version "
 "%s de %s laissée dans l'arbre."
 
-#: merge-recursive.c:1518
+#: merge-recursive.c:1521
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -5317,7 +5445,7 @@ msgstr ""
 "CONFLIT (%s/suppression) : %s supprimé dans %s et %s dans %s. Version %s de "
 "%s laissée dans l'arbre dans le fichier %s."
 
-#: merge-recursive.c:1523
+#: merge-recursive.c:1526
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -5326,61 +5454,61 @@ msgstr ""
 "CONFLIT (%s/suppression) : %s supprimé dans %s et %s à %s dans %s. Version "
 "%s de %s laissée dans l'arbre dans le fichier %s."
 
-#: merge-recursive.c:1558
+#: merge-recursive.c:1561
 msgid "rename"
 msgstr "renommage"
 
-#: merge-recursive.c:1558
+#: merge-recursive.c:1561
 msgid "renamed"
 msgstr "renommé"
 
-#: merge-recursive.c:1609 merge-recursive.c:2515 merge-recursive.c:3178
+#: merge-recursive.c:1612 merge-recursive.c:2518 merge-recursive.c:3181
 #, c-format
 msgid "Refusing to lose dirty file at %s"
 msgstr "Refus de perdre le fichier modifié %s"
 
-#: merge-recursive.c:1619
+#: merge-recursive.c:1622
 #, c-format
 msgid "Refusing to lose untracked file at %s, even though it's in the way."
 msgstr "Refus de perdre le fichier non suivi %s, même s'il gêne."
 
-#: merge-recursive.c:1677
+#: merge-recursive.c:1680
 #, c-format
 msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
 msgstr ""
 "CONFLIT (renommage/ajout) : Renommage de %s->%s dans %s. %s ajouté dans %s"
 
-#: merge-recursive.c:1708
+#: merge-recursive.c:1711
 #, c-format
 msgid "%s is a directory in %s adding as %s instead"
 msgstr "%s est un répertoire dans %s ajouté plutôt comme %s"
 
-#: merge-recursive.c:1713
+#: merge-recursive.c:1716
 #, c-format
 msgid "Refusing to lose untracked file at %s; adding as %s instead"
 msgstr "Refus de perdre le fichier non suivi %s ; ajout comme %s à la place"
 
-#: merge-recursive.c:1740
+#: merge-recursive.c:1743
 #, c-format
 msgid ""
-"CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
-"\"->\"%s\" in \"%s\"%s"
+"CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename "
+"\"%s\"->\"%s\" in \"%s\"%s"
 msgstr ""
 "CONFLIT (renommage/renommage) : Renommage de \"%s\"->\"%s\" dans la branche "
 "\"%s\" et renommage \"%s\"->\"%s\" dans \"%s\"%s"
 
-#: merge-recursive.c:1745
+#: merge-recursive.c:1748
 msgid " (left unresolved)"
 msgstr " (laissé non résolu)"
 
-#: merge-recursive.c:1837
+#: merge-recursive.c:1840
 #, c-format
 msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
 "CONFLIT (renommage/renommage) : renommage '%s'->'%s' dans %s. Renommage '%s'-"
 ">'%s' dans %s"
 
-#: merge-recursive.c:2100
+#: merge-recursive.c:2103
 #, c-format
 msgid ""
 "CONFLICT (directory rename split): Unclear where to place %s because "
@@ -5391,7 +5519,7 @@ msgstr ""
 "parce que le répertoire %s a été renommé en plusieurs autres répertoires, "
 "sans aucune destination récupérant la majorité des fichiers."
 
-#: merge-recursive.c:2234
+#: merge-recursive.c:2237
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
@@ -5400,79 +5528,79 @@ msgstr ""
 "CONFLIT (renommage/renommage) : renommage du répertoire %s->%s dans %s. "
 "Renommage de répertoire %s->%s dans %s"
 
-#: merge-recursive.c:3089
+#: merge-recursive.c:3092
 msgid "modify"
 msgstr "modification"
 
-#: merge-recursive.c:3089
+#: merge-recursive.c:3092
 msgid "modified"
 msgstr "modifié"
 
-#: merge-recursive.c:3128
+#: merge-recursive.c:3131
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "%s sauté (fusion identique à l'existant)"
 
-#: merge-recursive.c:3181
+#: merge-recursive.c:3184
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Ajout plutôt comme %s"
 
-#: merge-recursive.c:3385
+#: merge-recursive.c:3388
 #, c-format
 msgid "Removing %s"
 msgstr "Suppression de %s"
 
-#: merge-recursive.c:3408
+#: merge-recursive.c:3411
 msgid "file/directory"
 msgstr "fichier/répertoire"
 
-#: merge-recursive.c:3413
+#: merge-recursive.c:3416
 msgid "directory/file"
 msgstr "répertoire/fichier"
 
-#: merge-recursive.c:3420
+#: merge-recursive.c:3423
 #, c-format
 msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr ""
 "CONFLIT (%s) : Il y a un répertoire nommé %s dans %s. Ajout de %s comme %s"
 
-#: merge-recursive.c:3429
+#: merge-recursive.c:3432
 #, c-format
 msgid "Adding %s"
 msgstr "Ajout de %s"
 
-#: merge-recursive.c:3438
+#: merge-recursive.c:3441
 #, c-format
 msgid "CONFLICT (add/add): Merge conflict in %s"
 msgstr "CONFLIT (ajout/ajout) : Conflit de fusion dans %s"
 
-#: merge-recursive.c:3491
+#: merge-recursive.c:3494
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "échec de fusion des arbres %s et %s"
 
-#: merge-recursive.c:3585
+#: merge-recursive.c:3588
 msgid "Merging:"
 msgstr "Fusion :"
 
-#: merge-recursive.c:3598
+#: merge-recursive.c:3601
 #, c-format
 msgid "found %u common ancestor:"
 msgid_plural "found %u common ancestors:"
 msgstr[0] "%u ancêtre commun trouvé :"
 msgstr[1] "%u ancêtres communs trouvés :"
 
-#: merge-recursive.c:3648
+#: merge-recursive.c:3651
 msgid "merge returned no commit"
 msgstr "la fusion n'a pas retourné de commit"
 
-#: merge-recursive.c:3816
+#: merge-recursive.c:3823
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Impossible d'analyser l'objet '%s'"
 
-#: merge-recursive.c:3834 builtin/merge.c:720 builtin/merge.c:906
+#: merge-recursive.c:3841 builtin/merge.c:720 builtin/merge.c:912
 #: builtin/stash.c:489
 msgid "Unable to write index."
 msgstr "Impossible d'écrire l'index."
@@ -5481,174 +5609,178 @@ msgstr "Impossible d'écrire l'index."
 msgid "failed to read the cache"
 msgstr "impossible de lire le cache"
 
-#: merge.c:102 rerere.c:704 builtin/am.c:1988 builtin/am.c:2022
-#: builtin/checkout.c:598 builtin/checkout.c:853 builtin/clone.c:706
+#: merge.c:102 rerere.c:705 builtin/am.c:1989 builtin/am.c:2023
+#: builtin/checkout.c:603 builtin/checkout.c:865 builtin/clone.c:714
 #: builtin/stash.c:269
 msgid "unable to write new index file"
 msgstr "impossible d'écrire le nouveau fichier d'index"
 
-#: midx.c:78
+#: midx.c:79
 msgid "multi-pack-index OID fanout is of the wrong size"
 msgstr "l'étalement de l'OID d'index multi-paquet n'a pas la bonne taille"
 
-#: midx.c:111
+#: midx.c:112
 #, c-format
 msgid "multi-pack-index file %s is too small"
 msgstr "le fichier d'index multi-paquet %s est trop petit"
 
-#: midx.c:127
+#: midx.c:128
 #, c-format
 msgid "multi-pack-index signature 0x%08x does not match signature 0x%08x"
 msgstr ""
 "la signature de l'index multi-paquet 0x%08x ne correspond pas à la signature "
 "0x%08x"
 
-#: midx.c:132
+#: midx.c:133
 #, c-format
 msgid "multi-pack-index version %d not recognized"
 msgstr "la version d'index multi-paquet %d n'est pas reconnue"
 
-#: midx.c:137
+#: midx.c:138
 #, c-format
 msgid "multi-pack-index hash version %u does not match version %u"
 msgstr ""
 "la version d'empreinte d'index multi-paquet %u ne correspond pas à la "
 "version %u"
 
-#: midx.c:154
+#: midx.c:155
 msgid "multi-pack-index missing required pack-name chunk"
 msgstr "index multi-paquet manque de tronçon de nom de paquet"
 
-#: midx.c:156
+#: midx.c:157
 msgid "multi-pack-index missing required OID fanout chunk"
 msgstr "index multi-paquet manque de tronçon de d'étalement OID requis"
 
-#: midx.c:158
+#: midx.c:159
 msgid "multi-pack-index missing required OID lookup chunk"
 msgstr "index multi-paquet manque de tronçon de recherche OID requis"
 
-#: midx.c:160
+#: midx.c:161
 msgid "multi-pack-index missing required object offsets chunk"
 msgstr "index multi-paquet manque de tronçon de décalage d'objet requis"
 
-#: midx.c:176
+#: midx.c:180
 #, c-format
 msgid "multi-pack-index pack names out of order: '%s' before '%s'"
 msgstr ""
 "index multi-paquet les noms de paquets sont en désordre : '%s' avant '%s'"
 
-#: midx.c:224
+#: midx.c:228
 #, c-format
 msgid "bad pack-int-id: %u (%u total packs)"
 msgstr "mauvais pack-int-id : %u (%u paquets au total)"
 
-#: midx.c:274
+#: midx.c:278
 msgid "multi-pack-index stores a 64-bit offset, but off_t is too small"
 msgstr ""
 "l'index multi-paquet stock un décalage en 64-bit, mais off_t est trop petit"
 
-#: midx.c:505
+#: midx.c:509
 #, c-format
 msgid "failed to add packfile '%s'"
 msgstr "échec de l'ajout du fichier paquet '%s'"
 
-#: midx.c:511
+#: midx.c:515
 #, c-format
 msgid "failed to open pack-index '%s'"
 msgstr "échec à l'ouverture du fichier paquet '%s'"
 
-#: midx.c:579
+#: midx.c:583
 #, c-format
 msgid "failed to locate object %d in packfile"
 msgstr "échec de localisation de l'objet %d dans le fichier paquet"
 
-#: midx.c:895
+#: midx.c:911
 msgid "cannot store reverse index file"
 msgstr "impossible de stocker le fichier d'index inversé"
 
-#: midx.c:993
+#: midx.c:1009
 #, c-format
 msgid "could not parse line: %s"
 msgstr "impossible d'analyser la ligne : %s"
 
-#: midx.c:995
+#: midx.c:1011
 #, c-format
 msgid "malformed line: %s"
 msgstr "ligne malformée : %s"
 
-#: midx.c:1162
+#: midx.c:1181
 msgid "ignoring existing multi-pack-index; checksum mismatch"
 msgstr ""
 "index multi-paquet existant ignoré ; non-concordance de la somme de contrôle"
 
-#: midx.c:1187
+#: midx.c:1206
 msgid "could not load pack"
 msgstr "impossible de charger le paquet"
 
-#: midx.c:1193
+#: midx.c:1212
 #, c-format
 msgid "could not open index for %s"
 msgstr "impossible d'ouvrir l'index pour %s"
 
-#: midx.c:1204
+#: midx.c:1223
 msgid "Adding packfiles to multi-pack-index"
 msgstr "Ajout de fichiers paquet à un index multi-paquet"
 
-#: midx.c:1247
+#: midx.c:1266
 #, c-format
 msgid "unknown preferred pack: '%s'"
 msgstr "paquet préféré inconnu : %s"
 
-#: midx.c:1292
+#: midx.c:1311
 #, c-format
 msgid "cannot select preferred pack %s with no objects"
 msgstr "impossible de sélectionner le paquet préféré %s avec aucun objet"
 
-#: midx.c:1324
+#: midx.c:1343
 #, c-format
 msgid "did not see pack-file %s to drop"
 msgstr "fichier paquet à éliminer %s non trouvé"
 
-#: midx.c:1370
+#: midx.c:1389
 #, c-format
 msgid "preferred pack '%s' is expired"
 msgstr "le paquet préféré '%s' est expiré"
 
-#: midx.c:1383
+#: midx.c:1402
 msgid "no pack files to index."
 msgstr "aucun fichier paquet à l'index."
 
-#: midx.c:1420
+#: midx.c:1409
+msgid "refusing to write multi-pack .bitmap without any objects"
+msgstr "refus d'écrire le .bitmap multi-paquet sans aucun objet"
+
+#: midx.c:1451
 msgid "could not write multi-pack bitmap"
 msgstr "impossible d'écrire le bitmap multi-paquet"
 
-#: midx.c:1430
+#: midx.c:1461
 msgid "could not write multi-pack-index"
 msgstr "échec de l'écriture de l'index de multi-paquet"
 
-#: midx.c:1489 builtin/clean.c:37
+#: midx.c:1520 builtin/clean.c:37
 #, c-format
 msgid "failed to remove %s"
 msgstr "échec de la suppression de %s"
 
-#: midx.c:1522
+#: midx.c:1553
 #, c-format
 msgid "failed to clear multi-pack-index at %s"
 msgstr "échec du nettoyage de l'index de multi-paquet à %s"
 
-#: midx.c:1585
+#: midx.c:1616
 msgid "multi-pack-index file exists, but failed to parse"
 msgstr "le fichier d'index multi-paquet existe mais n'a pu être analysé"
 
-#: midx.c:1593
+#: midx.c:1624
 msgid "incorrect checksum"
 msgstr "somme de contrôle incorrecte"
 
-#: midx.c:1596
+#: midx.c:1627
 msgid "Looking for referenced packfiles"
 msgstr "Recherche de fichiers paquets référencés"
 
-#: midx.c:1611
+#: midx.c:1642
 #, c-format
 msgid ""
 "oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
@@ -5656,55 +5788,55 @@ msgstr ""
 "étalement oid en désordre : étalement[%d] = %<PRIx32> > %<PRIx32> = "
 "étalement[%d]"
 
-#: midx.c:1616
+#: midx.c:1647
 msgid "the midx contains no oid"
 msgstr "le midx ne contient aucun oid"
 
-#: midx.c:1625
+#: midx.c:1656
 msgid "Verifying OID order in multi-pack-index"
 msgstr "Vérification de l'ordre des OID dans l'index multi-paquet"
 
-#: midx.c:1634
+#: midx.c:1665
 #, c-format
 msgid "oid lookup out of order: oid[%d] = %s >= %s = oid[%d]"
 msgstr "recherche d'oid en désordre : oid[%d] = %s >= %s = oid[%d]"
 
-#: midx.c:1654
+#: midx.c:1685
 msgid "Sorting objects by packfile"
 msgstr "Classement des objets par fichier paquet"
 
-#: midx.c:1661
+#: midx.c:1692
 msgid "Verifying object offsets"
 msgstr "Vérification des décalages des objets"
 
-#: midx.c:1677
+#: midx.c:1708
 #, c-format
 msgid "failed to load pack entry for oid[%d] = %s"
 msgstr "échec de la lecture de l'élément de cache pour oid[%d] = %s"
 
-#: midx.c:1683
+#: midx.c:1714
 #, c-format
 msgid "failed to load pack-index for packfile %s"
 msgstr "impossible de lire le fichier paquet %s"
 
-#: midx.c:1692
+#: midx.c:1723
 #, c-format
 msgid "incorrect object offset for oid[%d] = %s: %<PRIx64> != %<PRIx64>"
 msgstr "décalage d'objet incorrect pour oid[%d] = %s : %<PRIx64> != %<PRIx64>"
 
-#: midx.c:1719
+#: midx.c:1750
 msgid "Counting referenced objects"
 msgstr "Comptage des objets référencés"
 
-#: midx.c:1729
+#: midx.c:1760
 msgid "Finding and deleting unreferenced packfiles"
 msgstr "Recherche et effacement des fichiers paquets non-référencés"
 
-#: midx.c:1921
+#: midx.c:1952
 msgid "could not start pack-objects"
 msgstr "impossible de démarrer le groupement d'objets"
 
-#: midx.c:1941
+#: midx.c:1972
 msgid "could not finish pack-objects"
 msgstr "impossible de finir le groupement d'objets"
 
@@ -5723,7 +5855,7 @@ msgstr "impossible de créer le fil lazy_name : %s"
 msgid "unable to join lazy_name thread: %s"
 msgstr "impossible de joindre le fil lazy_name : %s"
 
-#: notes-merge.c:277
+#: notes-merge.c:276
 #, c-format
 msgid ""
 "You have not concluded your previous notes merge (%s exists).\n"
@@ -5734,7 +5866,7 @@ msgstr ""
 "Veuillez utiliser 'git notes merge --commit' ou 'git notes merge --abort' "
 "pour valider/abandonner la fusion en cours avant d'en démarrer une nouvelle."
 
-#: notes-merge.c:284
+#: notes-merge.c:283
 #, c-format
 msgid "You have not concluded your notes merge (%s exists)."
 msgstr "Vous n'avez pas terminé votre fusion de notes (%s existe)."
@@ -5762,275 +5894,346 @@ msgstr "Refus de réécrire des notes dans %s (hors de refs/notes/)"
 msgid "Bad %s value: '%s'"
 msgstr "Mauvaise valeur de %s : '%s'"
 
-#: object-file.c:456
+#: object-file.c:457
 #, c-format
 msgid "object directory %s does not exist; check .git/objects/info/alternates"
 msgstr ""
 "le répertoire objet %s n'existe pas ; vérifiez .git/objects/info/alternates"
 
-#: object-file.c:514
+#: object-file.c:515
 #, c-format
 msgid "unable to normalize alternate object path: %s"
 msgstr "impossible de normaliser le chemin d'objet alternatif : %s"
 
-#: object-file.c:588
+#: object-file.c:589
 #, c-format
 msgid "%s: ignoring alternate object stores, nesting too deep"
 msgstr "%s : magasins d'objets alternatifs ignorés, récursion trop profonde"
 
-#: object-file.c:595
+#: object-file.c:596
 #, c-format
 msgid "unable to normalize object directory: %s"
 msgstr "impossible de normaliser le répertoire d'objet : %s"
 
-#: object-file.c:638
+#: object-file.c:639
 msgid "unable to fdopen alternates lockfile"
 msgstr "impossible d'ouvrir (fdopen) le fichier verrou des alternatives"
 
-#: object-file.c:656
+#: object-file.c:657
 msgid "unable to read alternates file"
 msgstr "lecture du fichier d'alternatives impossible"
 
-#: object-file.c:663
+#: object-file.c:664
 msgid "unable to move new alternates file into place"
 msgstr "impossible de déplacer le nouveau fichier d'alternative"
 
-#: object-file.c:741
+#: object-file.c:742
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "le chemin '%s' n'existe pas"
 
-#: object-file.c:762
+#: object-file.c:763
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr ""
 "extraire le dépôt de référence '%s' comme une extraction liée n'est pas "
 "encore supporté."
 
-#: object-file.c:768
+#: object-file.c:769
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr "le dépôt de référence '%s' n'est pas un dépôt local."
 
-#: object-file.c:774
+#: object-file.c:775
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "le dépôt de référence '%s' est superficiel"
 
-#: object-file.c:782
+#: object-file.c:783
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "le dépôt de référence '%s' est greffé"
 
-#: object-file.c:813
+#: object-file.c:814
 #, c-format
 msgid "could not find object directory matching %s"
 msgstr "impossible de trouver le répertoire objet correspondant à %s"
 
-#: object-file.c:863
+#: object-file.c:864
 #, c-format
 msgid "invalid line while parsing alternate refs: %s"
 msgstr "ligne invalide pendant l'analyse des refs alternatives : %s"
 
-#: object-file.c:1013
+#: object-file.c:1014
 #, c-format
 msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
 msgstr "essai de mmap %<PRIuMAX> au delà de la limite %<PRIuMAX>"
 
-#: object-file.c:1048
+#: object-file.c:1049
 #, c-format
 msgid "mmap failed%s"
 msgstr "échec de mmap%s"
 
-#: object-file.c:1214
+#: object-file.c:1230
 #, c-format
 msgid "object file %s is empty"
 msgstr "le fichier objet %s est vide"
 
-#: object-file.c:1333 object-file.c:2542
+#: object-file.c:1349 object-file.c:2588
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr "objet libre corrompu '%s'"
 
-#: object-file.c:1335 object-file.c:2546
+#: object-file.c:1351 object-file.c:2592
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr "données incorrectes à la fin de l'objet libre '%s'"
 
-#: object-file.c:1457
+#: object-file.c:1473
 #, c-format
 msgid "unable to parse %s header"
 msgstr "impossible d'analyser l'entête %s"
 
-#: object-file.c:1459
+#: object-file.c:1475
 msgid "invalid object type"
 msgstr "type d'objet invalide"
 
-#: object-file.c:1470
+#: object-file.c:1486
 #, c-format
 msgid "unable to unpack %s header"
 msgstr "impossible de dépaqueter l'entête %s"
 
-#: object-file.c:1474
+#: object-file.c:1490
 #, c-format
 msgid "header for %s too long, exceeds %d bytes"
 msgstr "entête de %s trop long, attendu %d octets"
 
-#: object-file.c:1704
+#: object-file.c:1720
 #, c-format
 msgid "failed to read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: object-file.c:1708
+#: object-file.c:1724
 #, c-format
 msgid "replacement %s not found for %s"
 msgstr "remplacement %s non trouvé pour %s"
 
-#: object-file.c:1712
+#: object-file.c:1728
 #, c-format
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr "l'objet libre %s (stocké dans %s) est corrompu"
 
-#: object-file.c:1716
+#: object-file.c:1732
 #, c-format
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr "l'objet empaqueté %s (stocké dans %s) est corrompu"
 
-#: object-file.c:1821
+#: object-file.c:1855
 #, c-format
 msgid "unable to write file %s"
 msgstr "impossible d'écrire le fichier %s"
 
-#: object-file.c:1828
+#: object-file.c:1862
 #, c-format
 msgid "unable to set permission to '%s'"
 msgstr "impossible de régler les droits de '%s'"
 
-#: object-file.c:1835
+#: object-file.c:1869
 msgid "file write error"
 msgstr "erreur d'écriture d'un fichier"
 
-#: object-file.c:1858
+#: object-file.c:1904
 msgid "error when closing loose object file"
 msgstr "erreur en fermeture du fichier d'objet esseulé"
 
-#: object-file.c:1925
+#: object-file.c:1971
 #, c-format
 msgid "insufficient permission for adding an object to repository database %s"
 msgstr ""
 "droits insuffisants pour ajouter un objet à la base de données %s du dépôt"
 
-#: object-file.c:1927
+#: object-file.c:1973
 msgid "unable to create temporary file"
 msgstr "impossible de créer un fichier temporaire"
 
-#: object-file.c:1951
+#: object-file.c:1997
 msgid "unable to write loose object file"
 msgstr "impossible d'écrire le fichier d'objet esseulé"
 
-#: object-file.c:1957
+#: object-file.c:2003
 #, c-format
 msgid "unable to deflate new object %s (%d)"
 msgstr "impossible de compresser le nouvel objet %s (%d)"
 
-#: object-file.c:1961
+#: object-file.c:2007
 #, c-format
 msgid "deflateEnd on object %s failed (%d)"
 msgstr "échec de deflateEnd sur l'objet %s (%d)"
 
-#: object-file.c:1965
+#: object-file.c:2011
 #, c-format
 msgid "confused by unstable object source data for %s"
 msgstr "données de source d'objet instable pour %s"
 
-#: object-file.c:1976 builtin/pack-objects.c:1243
+#: object-file.c:2022 builtin/pack-objects.c:1251
 #, c-format
 msgid "failed utime() on %s"
 msgstr "échec de utime() sur %s"
 
-#: object-file.c:2054
+#: object-file.c:2100
 #, c-format
 msgid "cannot read object for %s"
 msgstr "impossible de lire l'objet pour %s"
 
-#: object-file.c:2105
+#: object-file.c:2151
 msgid "corrupt commit"
 msgstr "commit corrompu"
 
-#: object-file.c:2113
+#: object-file.c:2159
 msgid "corrupt tag"
 msgstr "étiquette corrompue"
 
-#: object-file.c:2213
+#: object-file.c:2259
 #, c-format
 msgid "read error while indexing %s"
 msgstr "erreur de lecture à l'indexation de %s"
 
-#: object-file.c:2216
+#: object-file.c:2262
 #, c-format
 msgid "short read while indexing %s"
 msgstr "lecture tronquée pendant l'indexation de %s"
 
-#: object-file.c:2289 object-file.c:2299
+#: object-file.c:2335 object-file.c:2345
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr "%s : échec de l'insertion dans la base de données"
 
-#: object-file.c:2305
+#: object-file.c:2351
 #, c-format
 msgid "%s: unsupported file type"
 msgstr "%s : type de fichier non supporté"
 
-#: object-file.c:2329 builtin/fetch.c:1453
+#: object-file.c:2375 builtin/fetch.c:1494
 #, c-format
 msgid "%s is not a valid object"
 msgstr "%s n'est pas un objet valide"
 
-#: object-file.c:2331
+#: object-file.c:2377
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s n'est pas un objet '%s' valide"
 
-#: object-file.c:2358
+#: object-file.c:2404
 #, c-format
 msgid "unable to open %s"
 msgstr "impossible d'ouvrir %s"
 
-#: object-file.c:2553
+#: object-file.c:2599
 #, c-format
 msgid "hash mismatch for %s (expected %s)"
 msgstr "incohérence de hachage pour %s (%s attendu)"
 
-#: object-file.c:2576
+#: object-file.c:2622
 #, c-format
 msgid "unable to mmap %s"
 msgstr "impossible de mmap %s"
 
-#: object-file.c:2582
+#: object-file.c:2628
 #, c-format
 msgid "unable to unpack header of %s"
 msgstr "impossible de dépaqueter l'entête de %s"
 
-#: object-file.c:2587
+#: object-file.c:2633
 #, c-format
 msgid "unable to parse header of %s"
 msgstr "impossible d'analyser l'entête de %s"
 
-#: object-file.c:2598
+#: object-file.c:2644
 #, c-format
 msgid "unable to unpack contents of %s"
 msgstr "impossible de dépaqueter le contenu de %s"
 
-#: object-name.c:480
+#. TRANSLATORS: This is a line of ambiguous object
+#. output shown when we cannot look up or parse the
+#. object in question. E.g. "deadbeef [bad object]".
+#.
+#: object-name.c:382
+#, c-format
+msgid "%s [bad object]"
+msgstr "%s [mauvais objet]"
+
+#. TRANSLATORS: This is a line of ambiguous commit
+#. object output. E.g.:
+#. *
+#.    "deadbeef commit 2021-01-01 - Some Commit Message"
+#.
+#: object-name.c:407
+#, c-format
+msgid "%s commit %s - %s"
+msgstr "%s commit %s - %s"
+
+#. TRANSLATORS: This is a line of ambiguous
+#. tag object output. E.g.:
+#. *
+#.    "deadbeef tag 2022-01-01 - Some Tag Message"
+#. *
+#. The second argument is the YYYY-MM-DD found
+#. in the tag.
+#. *
+#. The third argument is the "tag" string
+#. from object.c.
+#.
+#: object-name.c:428
+#, c-format
+msgid "%s tag %s - %s"
+msgstr "%s étiquette %s - %s"
+
+#. TRANSLATORS: This is a line of ambiguous
+#. tag object output where we couldn't parse
+#. the tag itself. E.g.:
+#. *
+#.    "deadbeef [bad tag, could not parse it]"
+#.
+#: object-name.c:439
+#, c-format
+msgid "%s [bad tag, could not parse it]"
+msgstr "%s [mauvaise étiquette, impossible à analyser]"
+
+#. TRANSLATORS: This is a line of ambiguous <type>
+#. object output. E.g. "deadbeef tree".
+#.
+#: object-name.c:447
+#, c-format
+msgid "%s tree"
+msgstr "arbre %s"
+
+#. TRANSLATORS: This is a line of ambiguous <type>
+#. object output. E.g. "deadbeef blob".
+#.
+#: object-name.c:453
+#, c-format
+msgid "%s blob"
+msgstr "blob %s"
+
+#: object-name.c:569
 #, c-format
 msgid "short object ID %s is ambiguous"
 msgstr "l'id court d'objet %s est ambigu"
 
-#: object-name.c:491
-msgid "The candidates are:"
-msgstr "Les candidats sont :"
+#. TRANSLATORS: The argument is the list of ambiguous
+#. objects composed in show_ambiguous_object(). See
+#. its "TRANSLATORS" comments for details.
+#.
+#: object-name.c:591
+#, c-format
+msgid ""
+"The candidates are:\n"
+"%s"
+msgstr ""
+"Les candidats sont :\n"
+"%s"
 
-#: object-name.c:790
+#: object-name.c:888
 msgid ""
 "Git normally never creates a ref that ends with 40 hex characters\n"
 "because it will be ignored when you just specify 40-hex. These refs\n"
@@ -6054,22 +6257,22 @@ msgstr ""
 "message\n"
 "en lançant \"git config advice.objectNameWarning false\""
 
-#: object-name.c:910
+#: object-name.c:1008
 #, c-format
 msgid "log for '%.*s' only goes back to %s"
 msgstr "le journal de '%.*s' ne remonte qu'à %s"
 
-#: object-name.c:918
+#: object-name.c:1016
 #, c-format
 msgid "log for '%.*s' only has %d entries"
 msgstr "le journal de '%.*s' n'a que %d entrées"
 
-#: object-name.c:1696
+#: object-name.c:1794
 #, c-format
 msgid "path '%s' exists on disk, but not in '%.*s'"
 msgstr "le chemin '%s' existe sur le disque, mais pas dans '%.*s'"
 
-#: object-name.c:1702
+#: object-name.c:1800
 #, c-format
 msgid ""
 "path '%s' exists, but not '%s'\n"
@@ -6078,12 +6281,12 @@ msgstr ""
 "le chemin '%s' existe, mais pas '%s'\n"
 "conseil : peut-être vouliez-vous dire '%.*s:%s', soit '%.*s:./%s' ?"
 
-#: object-name.c:1711
+#: object-name.c:1809
 #, c-format
 msgid "path '%s' does not exist in '%.*s'"
 msgstr "le chemin '%s' n'existe pas dans '%.*s'"
 
-#: object-name.c:1739
+#: object-name.c:1837
 #, c-format
 msgid ""
 "path '%s' is in the index, but not at stage %d\n"
@@ -6092,7 +6295,7 @@ msgstr ""
 "le chemin '%s' est dans l'index, mais pas à l'étape %d\n"
 "conseil : vous vouliez peut-être dire ':%d:%s' ?"
 
-#: object-name.c:1755
+#: object-name.c:1853
 #, c-format
 msgid ""
 "path '%s' is in the index, but not '%s'\n"
@@ -6101,23 +6304,28 @@ msgstr ""
 "le chemin '%s' est dans l'index, mais pas '%s'\n"
 "conseil : peut-être vouliez-vous dire ':%d:%s', soit '%d:./%s' ?"
 
-#: object-name.c:1763
+#: object-name.c:1861
 #, c-format
 msgid "path '%s' exists on disk, but not in the index"
 msgstr "le chemin '%s' existe sur le disque, mais pas dans l'index"
 
-#: object-name.c:1765
+#: object-name.c:1863
 #, c-format
 msgid "path '%s' does not exist (neither on disk nor in the index)"
 msgstr "le chemin '%s' n'existe pas (ni sur le disque, ni dans l'index)"
 
-#: object-name.c:1778
+#: object-name.c:1876
 msgid "relative path syntax can't be used outside working tree"
 msgstr ""
 "la syntaxe de chemin relatif ne peut pas être utilisée hors de l'arbre de "
 "travail"
 
-#: object-name.c:1916
+#: object-name.c:1901
+#, c-format
+msgid "<object>:<path> required, only <object> '%s' given"
+msgstr "<objet>:<chemin> nécessaire, seul <objet> '%s' a été fourni"
+
+#: object-name.c:2014
 #, c-format
 msgid "invalid object name '%.*s'."
 msgstr "nom d'objet invalide : '%.*s'."
@@ -6142,7 +6350,7 @@ msgstr "l'objet %s a un id de type inconnu %d"
 msgid "unable to parse object: %s"
 msgstr "impossible d'analyser l'objet : %s"
 
-#: object.c:283 object.c:295
+#: object.c:283 object.c:294
 #, c-format
 msgid "hash mismatch %s"
 msgstr "incohérence de hachage %s"
@@ -6151,21 +6359,21 @@ msgstr "incohérence de hachage %s"
 msgid "multi-pack bitmap is missing required reverse index"
 msgstr "l'index inverse requis manque dans l'index multi-paquet"
 
-#: pack-bitmap.c:429
+#: pack-bitmap.c:433
 msgid "load_reverse_index: could not open pack"
 msgstr "load_reverse_index : impossible d'ouvrir le paquet"
 
-#: pack-bitmap.c:1069 pack-bitmap.c:1075 builtin/pack-objects.c:2424
+#: pack-bitmap.c:1072 pack-bitmap.c:1078 builtin/pack-objects.c:2432
 #, c-format
 msgid "unable to get size of %s"
 msgstr "impossible de récupérer la taille de %s"
 
-#: pack-bitmap.c:1935
+#: pack-bitmap.c:1937
 #, c-format
 msgid "could not find %s in pack %s at offset %<PRIuMAX>"
 msgstr "impossible de trouver %s dans le paquet %s à l'offset %<PRIuMAX>"
 
-#: pack-bitmap.c:1971 builtin/rev-list.c:92
+#: pack-bitmap.c:1973 builtin/rev-list.c:91
 #, c-format
 msgid "unable to get disk usage of %s"
 msgstr "impossible de récupérer l'utilisation du disque de %s"
@@ -6209,7 +6417,7 @@ msgstr "stat impossible de %s"
 msgid "failed to make %s readable"
 msgstr "échec de rendre %s lisible"
 
-#: pack-write.c:520
+#: pack-write.c:521
 #, c-format
 msgid "could not write '%s' promisor file"
 msgstr "impossible d'écrire le fichier de prometteur '%s'"
@@ -6558,20 +6766,20 @@ msgstr "object-info : vidage attendu après les arguments"
 msgid "Removing duplicate objects"
 msgstr "Suppression des objets dupliqués"
 
-#: range-diff.c:67
+#: range-diff.c:68
 msgid "could not start `log`"
 msgstr "impossible de démarrer `log`"
 
-#: range-diff.c:69
+#: range-diff.c:70
 msgid "could not read `log` output"
 msgstr "impossible de lire la sortie de `log`"
 
-#: range-diff.c:97 sequencer.c:5602
+#: range-diff.c:98 sequencer.c:5575
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr "impossible d'analyser le commit '%s'"
 
-#: range-diff.c:111
+#: range-diff.c:109
 #, c-format
 msgid ""
 "could not parse first line of `log` output: did not start with 'commit ': "
@@ -6580,66 +6788,66 @@ msgstr ""
 "impossible d'analyser la première ligne de la sortie de `log` : ne commence "
 "pas par 'commit' : '%s'"
 
-#: range-diff.c:137
+#: range-diff.c:132
 #, c-format
 msgid "could not parse git header '%.*s'"
 msgstr "impossible d'analyser l'entête git '%.*s'"
 
-#: range-diff.c:304
+#: range-diff.c:300
 msgid "failed to generate diff"
 msgstr "échec de la génération de diff"
 
-#: range-diff.c:562 range-diff.c:564
+#: range-diff.c:558 range-diff.c:560
 #, c-format
 msgid "could not parse log for '%s'"
 msgstr "impossible d'analyser le journal pour '%s'"
 
-#: read-cache.c:723
+#: read-cache.c:737
 #, c-format
 msgid "will not add file alias '%s' ('%s' already exists in index)"
 msgstr "pas d'ajout d'alias de fichier '%s'(« %s » existe déjà dans l'index)"
 
-#: read-cache.c:739
+#: read-cache.c:753
 msgid "cannot create an empty blob in the object database"
 msgstr "impossible de créer un blob vide dans la base de donnée d'objets"
 
-#: read-cache.c:761
+#: read-cache.c:775
 #, c-format
 msgid "%s: can only add regular files, symbolic links or git-directories"
 msgstr ""
 "%s : ne peut ajouter que des fichiers normaux, des liens symboliques ou des "
 "répertoires git"
 
-#: read-cache.c:766 builtin/submodule--helper.c:3242
+#: read-cache.c:780 builtin/submodule--helper.c:3359
 #, c-format
 msgid "'%s' does not have a commit checked out"
 msgstr "'%s' n'a pas de commit extrait"
 
-#: read-cache.c:818
+#: read-cache.c:832
 #, c-format
 msgid "unable to index file '%s'"
 msgstr "indexation du fichier '%s' impossible"
 
-#: read-cache.c:837
+#: read-cache.c:851
 #, c-format
 msgid "unable to add '%s' to index"
 msgstr "impossible d'ajouter '%s' à l'index"
 
-#: read-cache.c:848
+#: read-cache.c:862
 #, c-format
 msgid "unable to stat '%s'"
 msgstr "fstat de '%s' impossible"
 
-#: read-cache.c:1386
+#: read-cache.c:1404
 #, c-format
 msgid "'%s' appears as both a file and as a directory"
 msgstr "'%s' existe à la fois comme un fichier et un répertoire"
 
-#: read-cache.c:1601
+#: read-cache.c:1619
 msgid "Refresh index"
 msgstr "Rafraîchir l'index"
 
-#: read-cache.c:1733
+#: read-cache.c:1751
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -6648,7 +6856,7 @@ msgstr ""
 "index.version renseignée, mais la valeur est invalide.\n"
 "Utilisation de la version %i"
 
-#: read-cache.c:1743
+#: read-cache.c:1761
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -6657,143 +6865,147 @@ msgstr ""
 "GIT_INDEX_VERSION est renseigné, mais la valeur est invalide.\n"
 "Utilisation de la version %i"
 
-#: read-cache.c:1799
+#: read-cache.c:1817
 #, c-format
 msgid "bad signature 0x%08x"
 msgstr "signature incorrecte 0x%08x"
 
-#: read-cache.c:1802
+#: read-cache.c:1820
 #, c-format
 msgid "bad index version %d"
 msgstr "mauvaise version d'index %d"
 
-#: read-cache.c:1811
+#: read-cache.c:1829
 msgid "bad index file sha1 signature"
 msgstr "mauvaise signature sha1 d'index"
 
-#: read-cache.c:1845
+#: read-cache.c:1863
 #, c-format
 msgid "index uses %.4s extension, which we do not understand"
 msgstr "l'index utilise l'extension %.4s qui n'est pas comprise"
 
-#: read-cache.c:1847
+#: read-cache.c:1865
 #, c-format
 msgid "ignoring %.4s extension"
 msgstr "extension %.4s ignorée"
 
-#: read-cache.c:1884
+#: read-cache.c:1902
 #, c-format
 msgid "unknown index entry format 0x%08x"
 msgstr "format d'entrée d'index inconnu 0x%08x"
 
-#: read-cache.c:1900
+#: read-cache.c:1918
 #, c-format
 msgid "malformed name field in the index, near path '%s'"
 msgstr "champ de nom malformé dans l'index, près du chemin '%s'"
 
-#: read-cache.c:1957
+#: read-cache.c:1975
 msgid "unordered stage entries in index"
 msgstr "entrées de préparation non ordonnées dans l'index"
 
-#: read-cache.c:1960
+#: read-cache.c:1978
 #, c-format
 msgid "multiple stage entries for merged file '%s'"
 msgstr "entrées multiples de préparation pour le fichier fusionné '%s'"
 
-#: read-cache.c:1963
+#: read-cache.c:1981
 #, c-format
 msgid "unordered stage entries for '%s'"
 msgstr "entrées de préparation non ordonnées pour '%s'"
 
-#: read-cache.c:2078 read-cache.c:2384 rerere.c:549 rerere.c:583 rerere.c:1095
-#: submodule.c:1662 builtin/add.c:600 builtin/check-ignore.c:183
-#: builtin/checkout.c:527 builtin/checkout.c:719 builtin/clean.c:1013
-#: builtin/commit.c:378 builtin/diff-tree.c:122 builtin/grep.c:519
-#: builtin/mv.c:148 builtin/reset.c:499 builtin/rm.c:293
-#: builtin/submodule--helper.c:327 builtin/submodule--helper.c:3202
+#: read-cache.c:2096 read-cache.c:2402 rerere.c:549 rerere.c:583 rerere.c:1096
+#: submodule.c:1831 builtin/add.c:586 builtin/check-ignore.c:183
+#: builtin/checkout.c:532 builtin/checkout.c:724 builtin/clean.c:1016
+#: builtin/commit.c:379 builtin/diff-tree.c:122 builtin/grep.c:521
+#: builtin/mv.c:148 builtin/reset.c:506 builtin/rm.c:293
+#: builtin/submodule--helper.c:335 builtin/submodule--helper.c:3319
 msgid "index file corrupt"
 msgstr "fichier d'index corrompu"
 
-#: read-cache.c:2222
+#: read-cache.c:2240
 #, c-format
 msgid "unable to create load_cache_entries thread: %s"
 msgstr "impossible de créer le fil load_cache_entries : %s"
 
-#: read-cache.c:2235
+#: read-cache.c:2253
 #, c-format
 msgid "unable to join load_cache_entries thread: %s"
 msgstr "impossible de joindre le fil load_cache_entries : %s"
 
-#: read-cache.c:2268
+#: read-cache.c:2286
 #, c-format
 msgid "%s: index file open failed"
 msgstr "%s : l'ouverture du fichier d'index a échoué"
 
-#: read-cache.c:2272
+#: read-cache.c:2290
 #, c-format
 msgid "%s: cannot stat the open index"
 msgstr "%s : impossible de faire un stat sur l'index ouvert"
 
-#: read-cache.c:2276
+#: read-cache.c:2294
 #, c-format
 msgid "%s: index file smaller than expected"
 msgstr "%s : fichier d'index plus petit qu'attendu"
 
-#: read-cache.c:2280
+#: read-cache.c:2298
 #, c-format
 msgid "%s: unable to map index file%s"
 msgstr "%s : impossible de mapper le fichier d'index%s"
 
-#: read-cache.c:2323
+#: read-cache.c:2341
 #, c-format
 msgid "unable to create load_index_extensions thread: %s"
 msgstr "impossible de créer le fil load_index_extensions : %s"
 
-#: read-cache.c:2350
+#: read-cache.c:2368
 #, c-format
 msgid "unable to join load_index_extensions thread: %s"
 msgstr "impossible de joindre le fil load_index_extensions : %s"
 
-#: read-cache.c:2396
+#: read-cache.c:2414
 #, c-format
 msgid "could not freshen shared index '%s'"
 msgstr "impossible de rafraîchir l'index partagé '%s'"
 
-#: read-cache.c:2455
+#: read-cache.c:2473
 #, c-format
 msgid "broken index, expect %s in %s, got %s"
 msgstr "index cassé, %s attendu dans %s, %s obtenu"
 
-#: read-cache.c:3086 strbuf.c:1191 wrapper.c:641 builtin/merge.c:1150
+#: read-cache.c:3032
+msgid "cannot write split index for a sparse index"
+msgstr "impossible d'écrire un index scindé pour un index clairsemé"
+
+#: read-cache.c:3114 strbuf.c:1192 wrapper.c:717 builtin/merge.c:1156
 #, c-format
 msgid "could not close '%s'"
 msgstr "impossible de fermer '%s'"
 
-#: read-cache.c:3129
+#: read-cache.c:3157
 msgid "failed to convert to a sparse-index"
 msgstr "échec de conversion d'un index clairsemé"
 
-#: read-cache.c:3200
+#: read-cache.c:3228
 #, c-format
 msgid "could not stat '%s'"
 msgstr "impossible de stat '%s'"
 
-#: read-cache.c:3213
+#: read-cache.c:3241
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr "impossible d'ouvrir le répertoire git : %s"
 
-#: read-cache.c:3225
+#: read-cache.c:3253
 #, c-format
 msgid "unable to unlink: %s"
 msgstr "échec lors de l'unlink : %s"
 
-#: read-cache.c:3254
+#: read-cache.c:3282
 #, c-format
 msgid "cannot fix permission bits on '%s'"
 msgstr "impossible de régler les bits de droit de '%s'"
 
-#: read-cache.c:3411
+#: read-cache.c:3439
 #, c-format
 msgid "%s: cannot drop to stage #0"
 msgstr "%s : impossible de revenir à l'étape 0"
@@ -6915,9 +7127,9 @@ msgstr ""
 "Cependant, si vous effacez tout, le rebasage sera annulé.\n"
 "\n"
 
-#: rebase-interactive.c:113 rerere.c:469 rerere.c:676 sequencer.c:3883
-#: sequencer.c:3909 sequencer.c:5708 builtin/fsck.c:328 builtin/gc.c:1791
-#: builtin/rebase.c:190
+#: rebase-interactive.c:113 rerere.c:469 rerere.c:677 sequencer.c:3879
+#: sequencer.c:3905 sequencer.c:5681 builtin/fsck.c:328 builtin/gc.c:1791
+#: builtin/rebase.c:191
 #, c-format
 msgid "could not write '%s'"
 msgstr "impossible d'écrire '%s'"
@@ -6960,7 +7172,7 @@ msgid "%s: 'preserve' superseded by 'merges'"
 msgstr "%s : 'preserve' a été remplacé par 'merges'"
 
 # à priori on parle d'une branche ici
-#: ref-filter.c:42 wt-status.c:2048
+#: ref-filter.c:42 wt-status.c:2057
 msgid "gone"
 msgstr "disparue"
 
@@ -7127,81 +7339,91 @@ msgstr "cette commande rejette l'atome %%(%.*s)"
 msgid "--format=%.*s cannot be used with --python, --shell, --tcl"
 msgstr "--format=%.*s ne peut pas être utilisé avec --python, --shell, --tcl"
 
-#: ref-filter.c:1706
+#: ref-filter.c:1707
 #, c-format
 msgid "(no branch, rebasing %s)"
 msgstr "(aucune branche, rebasage de %s)"
 
-#: ref-filter.c:1709
+#: ref-filter.c:1710
 #, c-format
 msgid "(no branch, rebasing detached HEAD %s)"
 msgstr "(aucune branche, rebasage de la HEAD détachée %s)"
 
-#: ref-filter.c:1712
+#: ref-filter.c:1713
 #, c-format
 msgid "(no branch, bisect started on %s)"
 msgstr "(aucune branche, bisect a démarré sur %s)"
 
-#: ref-filter.c:1716
+#: ref-filter.c:1717
 #, c-format
 msgid "(HEAD detached at %s)"
 msgstr "(HEAD détachée sur %s)"
 
-#: ref-filter.c:1719
+#: ref-filter.c:1720
 #, c-format
 msgid "(HEAD detached from %s)"
 msgstr "(HEAD détachée depuis %s)"
 
-#: ref-filter.c:1722
+#: ref-filter.c:1723
 msgid "(no branch)"
 msgstr "(aucune branche)"
 
-#: ref-filter.c:1754 ref-filter.c:1972
+#: ref-filter.c:1755 ref-filter.c:1973
 #, c-format
 msgid "missing object %s for %s"
 msgstr "objet manquant %s pour %s"
 
-#: ref-filter.c:1764
+#: ref-filter.c:1765
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "échec de parse_object_buffer sur %s pour %s"
 
-#: ref-filter.c:2155
+#: ref-filter.c:2156
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "objet malformé à '%s'"
 
-#: ref-filter.c:2245
+#: ref-filter.c:2246
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "réf avec un nom cassé %s ignoré"
 
-#: ref-filter.c:2250 refs.c:676
+#: ref-filter.c:2251 refs.c:672
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "réf cassé %s ignoré"
 
-#: ref-filter.c:2629
+#: ref-filter.c:2630
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "format: atome %%(end) manquant"
 
-#: ref-filter.c:2740
+#: ref-filter.c:2741
 #, c-format
 msgid "malformed object name %s"
 msgstr "nom d'objet malformé %s"
 
-#: ref-filter.c:2745
+#: ref-filter.c:2746
 #, c-format
 msgid "option `%s' must point to a commit"
 msgstr "l'option '%s' doit pointer sur un commit"
 
-#: refs.c:261
+#: reflog.c:407
+#, c-format
+msgid "not a reflog: %s"
+msgstr "'%s' n'est pas un journal de références"
+
+#: reflog.c:410
+#, c-format
+msgid "no reflog for '%s'"
+msgstr "pas de journal de références pour '%s'"
+
+#: refs.c:262
 #, c-format
 msgid "%s does not point to a valid object!"
 msgstr "%s ne pointe pas sur un objet valide!"
 
-#: refs.c:563
+#: refs.c:561
 #, c-format
 msgid ""
 "Using '%s' as the name for the initial branch. This default branch name\n"
@@ -7226,81 +7448,81 @@ msgstr ""
 "\n"
 "\tgit branch -m <nom>\n"
 
-#: refs.c:585
+#: refs.c:583
 #, c-format
 msgid "could not retrieve `%s`"
 msgstr "impossible de récupérer `%s`"
 
-#: refs.c:595
+#: refs.c:593
 #, c-format
 msgid "invalid branch name: %s = %s"
 msgstr "nom de branche invalide : %s = %s"
 
-#: refs.c:674
+#: refs.c:670
 #, c-format
 msgid "ignoring dangling symref %s"
 msgstr "symref pendant %s ignoré"
 
-#: refs.c:925
+#: refs.c:919
 #, c-format
 msgid "log for ref %s has gap after %s"
 msgstr "le journal pour la réf %s contient un trou après %s"
 
-#: refs.c:932
+#: refs.c:926
 #, c-format
 msgid "log for ref %s unexpectedly ended on %s"
 msgstr "le journal pour la réf %s s'arrête de manière inattendue sur %s"
 
-#: refs.c:997
+#: refs.c:991
 #, c-format
 msgid "log for %s is empty"
 msgstr "le journal pour la réf %s est vide"
 
-#: refs.c:1090
+#: refs.c:1086
 #, c-format
 msgid "refusing to update ref with bad name '%s'"
 msgstr "refus de mettre à jour une réf avec un nom cassé '%s'"
 
-#: refs.c:1168
+#: refs.c:1164
 #, c-format
 msgid "update_ref failed for ref '%s': %s"
 msgstr "échec de update_ref pour la réf '%s' : %s"
 
-#: refs.c:2067
+#: refs.c:2059
 #, c-format
 msgid "multiple updates for ref '%s' not allowed"
 msgstr "mises à jour multiples pour la réf '%s' non permises"
 
-#: refs.c:2150
+#: refs.c:2145
 msgid "ref updates forbidden inside quarantine environment"
 msgstr "mises à jour des références interdites en environnement de quarantaine"
 
-#: refs.c:2161
+#: refs.c:2156
 msgid "ref updates aborted by hook"
 msgstr "mises à jour des références annulées par le crochet"
 
-#: refs.c:2269 refs.c:2299
+#: refs.c:2264 refs.c:2294
 #, c-format
 msgid "'%s' exists; cannot create '%s'"
 msgstr "'%s' existe ; impossible de créer '%s'"
 
-#: refs.c:2275 refs.c:2310
+#: refs.c:2270 refs.c:2305
 #, c-format
 msgid "cannot process '%s' and '%s' at the same time"
 msgstr "impossible de traiter '%s' et '%s' en même temps"
 
-#: refs/files-backend.c:1267
+#: refs/files-backend.c:1295
 #, c-format
 msgid "could not remove reference %s"
 msgstr "impossible de supprimer la référence %s"
 
-#: refs/files-backend.c:1281 refs/packed-backend.c:1549
-#: refs/packed-backend.c:1559
+#: refs/files-backend.c:1310 refs/packed-backend.c:1565
+#: refs/packed-backend.c:1575
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr "impossible de supprimer la référence %s : %s"
 
-#: refs/files-backend.c:1284 refs/packed-backend.c:1562
+#: refs/files-backend.c:1313 refs/packed-backend.c:1578
 #, c-format
 msgid "could not delete references: %s"
 msgstr "impossible de supprimer les références : %s"
@@ -7324,38 +7546,38 @@ msgstr "plus d'un receivepack fournis, utilisation du premier"
 msgid "more than one uploadpack given, using the first"
 msgstr "plus d'un uploadpack fournis, utilisation du premier"
 
-#: remote.c:699
+#: remote.c:698
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
 msgstr "Impossible de récupérer à la fois %s et %s pour %s"
 
-#: remote.c:703
+#: remote.c:702
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s suit habituellement %s, pas %s"
 
-#: remote.c:707
+#: remote.c:706
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s suit à la fois %s et %s"
 
-#: remote.c:775
+#: remote.c:774
 #, c-format
 msgid "key '%s' of pattern had no '*'"
 msgstr "la clé '%s' du modèle n'a pas de '*'"
 
-#: remote.c:785
+#: remote.c:784
 #, c-format
 msgid "value '%s' of pattern has no '*'"
 msgstr "la valeur '%s' du modèle n'a pas de '*'"
 
-#: remote.c:1192
+#: remote.c:1191
 #, c-format
 msgid "src refspec %s does not match any"
 msgstr ""
 "le spécificateur de référence source %s ne correspond à aucune référence"
 
-#: remote.c:1197
+#: remote.c:1196
 #, c-format
 msgid "src refspec %s matches more than one"
 msgstr ""
@@ -7365,7 +7587,7 @@ msgstr ""
 #. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
 #. the <src>.
 #.
-#: remote.c:1212
+#: remote.c:1211
 #, c-format
 msgid ""
 "The destination you provided is not a full refname (i.e.,\n"
@@ -7389,7 +7611,7 @@ msgstr ""
 "Aucune n'a fonctionné, donc abandon. Veuillez spécifier une référence "
 "totalement qualifiée."
 
-#: remote.c:1232
+#: remote.c:1231
 #, c-format
 msgid ""
 "The <src> part of the refspec is a commit object.\n"
@@ -7400,7 +7622,7 @@ msgstr ""
 "Souhaitiez-vous créer une nouvelle branche en poussant sur\n"
 "'%s:refs/heads/%s' ?"
 
-#: remote.c:1237
+#: remote.c:1236
 #, c-format
 msgid ""
 "The <src> part of the refspec is a tag object.\n"
@@ -7411,7 +7633,7 @@ msgstr ""
 "Souhaitiez-vous créer une nouvelle étiquette en poussant sur\n"
 "'%s:refs/tags/%s' ?"
 
-#: remote.c:1242
+#: remote.c:1241
 #, c-format
 msgid ""
 "The <src> part of the refspec is a tree object.\n"
@@ -7422,7 +7644,7 @@ msgstr ""
 "Souhaitiez-vous créer un nouvel arbre en poussant sur\n"
 "'%s:refs/tags/%s' ?"
 
-#: remote.c:1247
+#: remote.c:1246
 #, c-format
 msgid ""
 "The <src> part of the refspec is a blob object.\n"
@@ -7433,119 +7655,119 @@ msgstr ""
 "Souhaitiez-vous créer un nouveau blob en poussant sur\n"
 "'%s:refs/tags/%s' ?"
 
-#: remote.c:1283
+#: remote.c:1282
 #, c-format
 msgid "%s cannot be resolved to branch"
 msgstr "'%s' ne peut pas être résolue comme une branche"
 
-#: remote.c:1294
+#: remote.c:1293
 #, c-format
 msgid "unable to delete '%s': remote ref does not exist"
 msgstr "suppression de '%s' impossible : la référence distante n'existe pas"
 
-#: remote.c:1306
+#: remote.c:1305
 #, c-format
 msgid "dst refspec %s matches more than one"
 msgstr ""
 "le spécificateur de référence dst %s correspond à plus d'un spécificateur de "
 "références"
 
-#: remote.c:1313
+#: remote.c:1312
 #, c-format
 msgid "dst ref %s receives from more than one src"
 msgstr "le spécificateur de référence dst %s reçoit depuis plus d'une source"
 
-#: remote.c:1834 remote.c:1941
+#: remote.c:1833 remote.c:1940
 msgid "HEAD does not point to a branch"
 msgstr "HEAD ne pointe pas sur une branche"
 
-#: remote.c:1843
+#: remote.c:1842
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "pas de branche '%s'"
 
-#: remote.c:1846
+#: remote.c:1845
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "aucune branche amont configurée pour la branche '%s'"
 
-#: remote.c:1852
+#: remote.c:1851
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr "la branche amont '%s' n'est pas stockée comme branche de suivi"
 
-#: remote.c:1867
+#: remote.c:1866
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr ""
 "la destination de poussée '%s' sur le serveur distant '%s' n'a pas de "
 "branche locale de suivi"
 
-#: remote.c:1882
+#: remote.c:1881
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "la branche '%s' n'a aucune branche distante de poussée"
 
-#: remote.c:1892
+#: remote.c:1891
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr "les références de spec pour '%s' n'incluent pas '%s'"
 
-#: remote.c:1905
+#: remote.c:1904
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "la poussée n'a pas de destination (push.default vaut 'nothing')"
 
-#: remote.c:1927
+#: remote.c:1926
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr ""
 "impossible de résoudre une poussée 'simple' pour une destination unique"
 
-#: remote.c:2060
+#: remote.c:2059
 #, c-format
 msgid "couldn't find remote ref %s"
 msgstr "impossible de trouver la référence distante %s"
 
-#: remote.c:2073
+#: remote.c:2072
 #, c-format
 msgid "* Ignoring funny ref '%s' locally"
 msgstr "* Référence bizarre '%s' ignorée localement"
 
-#: remote.c:2236
+#: remote.c:2235
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr "Votre branche est basée sur '%s', mais la branche amont a disparu.\n"
 
-#: remote.c:2240
+#: remote.c:2239
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (utilisez \"git branch --unset-upstream\" pour corriger)\n"
 
-#: remote.c:2243
+#: remote.c:2242
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr "Votre branche est à jour avec '%s'.\n"
 
-#: remote.c:2247
+#: remote.c:2246
 #, c-format
 msgid "Your branch and '%s' refer to different commits.\n"
 msgstr "Votre branche et '%s' font référence à des commits différents.\n"
 
-#: remote.c:2250
+#: remote.c:2249
 #, c-format
 msgid "  (use \"%s\" for details)\n"
 msgstr "  (utilisez \"%s\" pour plus de détails)\n"
 
-#: remote.c:2254
+#: remote.c:2253
 #, c-format
 msgid "Your branch is ahead of '%s' by %d commit.\n"
 msgid_plural "Your branch is ahead of '%s' by %d commits.\n"
 msgstr[0] "Votre branche est en avance sur '%s' de %d commit.\n"
 msgstr[1] "Votre branche est en avance sur '%s' de %d commits.\n"
 
-#: remote.c:2260
+#: remote.c:2259
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (utilisez \"git push\" pour publier vos commits locaux)\n"
 
-#: remote.c:2263
+#: remote.c:2262
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -7557,11 +7779,11 @@ msgstr[1] ""
 "Votre branche est en retard sur '%s' de %d commits, et peut être mise à jour "
 "en avance rapide.\n"
 
-#: remote.c:2271
+#: remote.c:2270
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (utilisez \"git pull\" pour mettre à jour votre branche locale)\n"
 
-#: remote.c:2274
+#: remote.c:2273
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -7576,12 +7798,12 @@ msgstr[1] ""
 "Votre branche et '%s' ont divergé,\n"
 "et ont %d et %d commits différents chacune respectivement.\n"
 
-#: remote.c:2284
+#: remote.c:2283
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr ""
 "  (utilisez \"git pull\" pour fusionner la branche distante dans la vôtre)\n"
 
-#: remote.c:2476
+#: remote.c:2475
 #, c-format
 msgid "cannot parse expected object name '%s'"
 msgstr "impossible d'analyser le nom attendu d'objet '%s'"
@@ -7619,104 +7841,108 @@ msgstr "il y a eu des erreurs à l'écriture de '%s' (%s)"
 msgid "failed to flush '%s'"
 msgstr "échec du flush de '%s'"
 
-#: rerere.c:487 rerere.c:1023
+#: rerere.c:487 rerere.c:1024
 #, c-format
 msgid "could not parse conflict hunks in '%s'"
 msgstr "impossible d'analyser la section en conflit dans '%s'"
 
-#: rerere.c:668
+#: rerere.c:669
 #, c-format
 msgid "failed utime() on '%s'"
 msgstr "échec de utime() sur '%s'"
 
-#: rerere.c:678
+#: rerere.c:679
 #, c-format
 msgid "writing '%s' failed"
 msgstr "échec de l'écriture de '%s'"
 
-#: rerere.c:698
+#: rerere.c:699
 #, c-format
 msgid "Staged '%s' using previous resolution."
 msgstr "'%s' indexé en utilisant la résolution pré-existante."
 
-#: rerere.c:737
+#: rerere.c:738
 #, c-format
 msgid "Recorded resolution for '%s'."
 msgstr "Résolution enregistrée pour '%s'."
 
-#: rerere.c:772
+#: rerere.c:773
 #, c-format
 msgid "Resolved '%s' using previous resolution."
 msgstr "'%s' résolu en utilisant la résolution pré-existante."
 
-#: rerere.c:787
+#: rerere.c:788
 #, c-format
 msgid "cannot unlink stray '%s'"
 msgstr "impossible de délier '%s' qui est errant"
 
-#: rerere.c:791
+#: rerere.c:792
 #, c-format
 msgid "Recorded preimage for '%s'"
 msgstr "Pré-image enregistrée pour '%s'"
 
-#: rerere.c:865 submodule.c:2121 builtin/log.c:2017
-#: builtin/submodule--helper.c:1777 builtin/submodule--helper.c:1820
+#: rerere.c:866 submodule.c:2290 builtin/log.c:2042
+#: builtin/submodule--helper.c:1786 builtin/submodule--helper.c:1833
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "impossible de créer le répertoire '%s'"
 
-#: rerere.c:1041
+#: rerere.c:1042
 #, c-format
 msgid "failed to update conflicted state in '%s'"
 msgstr "échec de la mise à jour de l'état en conflit dans '%s'"
 
-#: rerere.c:1052 rerere.c:1059
+#: rerere.c:1053 rerere.c:1060
 #, c-format
 msgid "no remembered resolution for '%s'"
 msgstr "aucune résolution enregistrée pour '%s'"
 
-#: rerere.c:1061
+#: rerere.c:1062
 #, c-format
 msgid "cannot unlink '%s'"
 msgstr "impossible de délier '%s'"
 
-#: rerere.c:1071
+#: rerere.c:1072
 #, c-format
 msgid "Updated preimage for '%s'"
 msgstr "Pré-image mise à jour pour '%s'"
 
-#: rerere.c:1080
+#: rerere.c:1081
 #, c-format
 msgid "Forgot resolution for '%s'\n"
 msgstr "Résolution  pour '%s' oubliée\n"
 
-#: rerere.c:1191
+#: rerere.c:1192
 msgid "unable to open rr-cache directory"
 msgstr "impossible d'ouvrir le répertoire rr-cache"
 
-#: reset.c:42
+#: reset.c:112
 msgid "could not determine HEAD revision"
 msgstr "impossible de déterminer la révision HEAD"
 
-#: reset.c:70 reset.c:76 sequencer.c:3700
+#: reset.c:141 reset.c:147 sequencer.c:3696
 #, c-format
 msgid "failed to find tree of %s"
 msgstr "impossible de trouver l'arbre de %s"
 
-#: revision.c:2347
+#: revision.c:2358
 msgid "--unpacked=<packfile> no longer supported"
 msgstr "--unpacked=<fichier-paquet> n'est plus géré"
 
-#: revision.c:2686
+#: revision.c:2712
 msgid "your current branch appears to be broken"
 msgstr "votre branche actuelle semble cassée"
 
-#: revision.c:2689
+#: revision.c:2715
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr "votre branche actuelle '%s' ne contient encore aucun commit"
 
-#: revision.c:2891
+#: revision.c:2901
+msgid "object filtering requires --objects"
+msgstr "le filtrage d'objet exige --objects"
+
+#: revision.c:2918
 msgid "-L does not yet support diff formats besides -p and -s"
 msgstr "-L ne supporte pas encore les formats de diff autres que -p et -s"
 
@@ -7788,7 +8014,7 @@ msgstr "mode de nettoyage invalide de message de validation '%s'"
 msgid "could not delete '%s'"
 msgstr "impossible de supprimer '%s'"
 
-#: sequencer.c:345 sequencer.c:4751 builtin/rebase.c:563 builtin/rebase.c:1297
+#: sequencer.c:345 sequencer.c:4724 builtin/rebase.c:564 builtin/rebase.c:1326
 #: builtin/rm.c:409
 #, c-format
 msgid "could not remove '%s'"
@@ -7851,13 +8077,13 @@ msgstr ""
 "Pour arrêter et revenir à l'état antérieur à \"git revert\",,\n"
 "lancez \"git revert --abort\"."
 
-#: sequencer.c:448 sequencer.c:3292
+#: sequencer.c:448 sequencer.c:3288
 #, c-format
 msgid "could not lock '%s'"
 msgstr "impossible de verrouiller '%s'"
 
-#: sequencer.c:450 sequencer.c:3091 sequencer.c:3296 sequencer.c:3310
-#: sequencer.c:3561 sequencer.c:5618 strbuf.c:1188 wrapper.c:639
+#: sequencer.c:450 sequencer.c:3087 sequencer.c:3292 sequencer.c:3306
+#: sequencer.c:3557 sequencer.c:5591 strbuf.c:1189 wrapper.c:715
 #, c-format
 msgid "could not write to '%s'"
 msgstr "impossible d'écrire dans '%s'"
@@ -7867,14 +8093,14 @@ msgstr "impossible d'écrire dans '%s'"
 msgid "could not write eol to '%s'"
 msgstr "impossible d'écrire la fin de ligne dans '%s'"
 
-#: sequencer.c:460 sequencer.c:3096 sequencer.c:3298 sequencer.c:3312
-#: sequencer.c:3569
+#: sequencer.c:460 sequencer.c:3092 sequencer.c:3294 sequencer.c:3308
+#: sequencer.c:3565
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr "échec lors de la finalisation de '%s'"
 
-#: sequencer.c:473 sequencer.c:1934 sequencer.c:3116 sequencer.c:3551
-#: sequencer.c:3679 builtin/am.c:289 builtin/commit.c:834 builtin/merge.c:1148
+#: sequencer.c:473 sequencer.c:1930 sequencer.c:3112 sequencer.c:3547
+#: sequencer.c:3675 builtin/am.c:290 builtin/commit.c:837 builtin/merge.c:1154
 #, c-format
 msgid "could not read '%s'"
 msgstr "impossible de lire '%s'"
@@ -7893,7 +8119,7 @@ msgstr "validez vos modifications ou les remiser pour continuer."
 msgid "%s: fast-forward"
 msgstr "%s : avance rapide"
 
-#: sequencer.c:574 builtin/tag.c:614
+#: sequencer.c:574 builtin/tag.c:615
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Mode de nettoyage invalide %s"
@@ -7924,8 +8150,8 @@ msgstr "aucune clé présente dans '%.*s'"
 msgid "unable to dequote value of '%s'"
 msgstr "impossible de décoter la valeur de '%s'"
 
-#: sequencer.c:841 wrapper.c:209 wrapper.c:379 builtin/am.c:756
-#: builtin/am.c:848 builtin/rebase.c:694
+#: sequencer.c:841 wrapper.c:219 wrapper.c:389 builtin/am.c:757
+#: builtin/am.c:849 builtin/rebase.c:699
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "impossible d'ouvrir '%s' en lecture"
@@ -8047,350 +8273,345 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1288
+#: sequencer.c:1287
 msgid "couldn't look up newly created commit"
 msgstr "impossible de retrouver le commit nouvellement créé"
 
-#: sequencer.c:1290
+#: sequencer.c:1289
 msgid "could not parse newly created commit"
 msgstr "impossible d'analyser le commit nouvellement créé"
 
-#: sequencer.c:1339
+#: sequencer.c:1336
 msgid "unable to resolve HEAD after creating commit"
 msgstr "impossible de résoudre HEAD après création du commit"
 
-#: sequencer.c:1342
+#: sequencer.c:1338
 msgid "detached HEAD"
 msgstr "HEAD détachée"
 
-#: sequencer.c:1346
+#: sequencer.c:1342
 msgid " (root-commit)"
 msgstr " (commit racine)"
 
-#: sequencer.c:1367
+#: sequencer.c:1363
 msgid "could not parse HEAD"
 msgstr "impossible de lire HEAD"
 
-#: sequencer.c:1369
+#: sequencer.c:1365
 #, c-format
 msgid "HEAD %s is not a commit!"
 msgstr "HEAD %s n'est pas un commit !"
 
-#: sequencer.c:1373 sequencer.c:1451 builtin/commit.c:1708
+#: sequencer.c:1369 sequencer.c:1447 builtin/commit.c:1707
 msgid "could not parse HEAD commit"
 msgstr "impossible d'analyser le commit HEAD"
 
-#: sequencer.c:1429 sequencer.c:2314
+#: sequencer.c:1425 sequencer.c:2310
 msgid "unable to parse commit author"
 msgstr "impossible d'analyser l'auteur du commit"
 
-#: sequencer.c:1440 builtin/am.c:1643 builtin/merge.c:710
+#: sequencer.c:1436 builtin/am.c:1644 builtin/merge.c:710
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree a échoué à écrire un arbre"
 
-#: sequencer.c:1473 sequencer.c:1593
+#: sequencer.c:1469 sequencer.c:1589
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr "impossible de lire le message de validation de '%s'"
 
-#: sequencer.c:1504 sequencer.c:1536
+#: sequencer.c:1500 sequencer.c:1532
 #, c-format
 msgid "invalid author identity '%s'"
 msgstr "identité d'auteur invalide '%s'"
 
-#: sequencer.c:1510
+#: sequencer.c:1506
 msgid "corrupt author: missing date information"
 msgstr "auteur corrompu : information de date manquante"
 
-#: sequencer.c:1549 builtin/am.c:1670 builtin/commit.c:1822 builtin/merge.c:915
-#: builtin/merge.c:940 t/helper/test-fast-rebase.c:78
+#: sequencer.c:1545 builtin/am.c:1671 builtin/commit.c:1821 builtin/merge.c:921
+#: builtin/merge.c:946 t/helper/test-fast-rebase.c:78
 msgid "failed to write commit object"
 msgstr "échec de l'écriture de l'objet commit"
 
-#: sequencer.c:1576 sequencer.c:4523 t/helper/test-fast-rebase.c:199
+#: sequencer.c:1572 sequencer.c:4496 t/helper/test-fast-rebase.c:199
 #: t/helper/test-fast-rebase.c:217
 #, c-format
 msgid "could not update %s"
 msgstr "impossible de mettre à jour %s"
 
-#: sequencer.c:1625
+#: sequencer.c:1621
 #, c-format
 msgid "could not parse commit %s"
 msgstr "impossible d'analyser le commit %s"
 
-#: sequencer.c:1630
+#: sequencer.c:1626
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr "impossible d'analyser le commit parent %s"
 
-#: sequencer.c:1713 sequencer.c:1994
+#: sequencer.c:1709 sequencer.c:1990
 #, c-format
 msgid "unknown command: %d"
 msgstr "commande inconnue : %d"
 
-#: sequencer.c:1755
+#: sequencer.c:1751
 msgid "This is the 1st commit message:"
 msgstr "Ceci est le premier message de validation :"
 
-#: sequencer.c:1756
+#: sequencer.c:1752
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Ceci est le message de validation numéro %d :"
 
-#: sequencer.c:1757
+#: sequencer.c:1753
 msgid "The 1st commit message will be skipped:"
 msgstr "Le premier message de validation sera ignoré :"
 
-#: sequencer.c:1758
+#: sequencer.c:1754
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Le message de validation %d sera ignoré :"
 
-#: sequencer.c:1759
+#: sequencer.c:1755
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Ceci est la combinaison de %d commits."
 
-#: sequencer.c:1906 sequencer.c:1963
+#: sequencer.c:1902 sequencer.c:1959
 #, c-format
 msgid "cannot write '%s'"
 msgstr "impossible d'écrire '%s'"
 
-#: sequencer.c:1953
+#: sequencer.c:1949
 msgid "need a HEAD to fixup"
 msgstr "une HEAD est nécessaire à la correction"
 
-#: sequencer.c:1955 sequencer.c:3596
+#: sequencer.c:1951 sequencer.c:3592
 msgid "could not read HEAD"
 msgstr "impossible de lire HEAD"
 
-#: sequencer.c:1957
+#: sequencer.c:1953
 msgid "could not read HEAD's commit message"
 msgstr "impossible de lire le message de validation de HEAD"
 
-#: sequencer.c:1981
+#: sequencer.c:1977
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "impossible de lire le message de validation de %s"
 
-#: sequencer.c:2091
+#: sequencer.c:2087
 msgid "your index file is unmerged."
 msgstr "votre fichier d'index n'est pas fusionné."
 
-#: sequencer.c:2098
+#: sequencer.c:2094
 msgid "cannot fixup root commit"
 msgstr "impossible de réparer le commit racine"
 
-#: sequencer.c:2117
+#: sequencer.c:2113
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr "le commit %s est une fusion mais l'option -m n'a pas été spécifiée."
 
-#: sequencer.c:2125 sequencer.c:2133
+#: sequencer.c:2121 sequencer.c:2129
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "le commit %s n'a pas de parent %d"
 
-#: sequencer.c:2139
+#: sequencer.c:2135
 #, c-format
 msgid "cannot get commit message for %s"
 msgstr "impossible d'obtenir un message de validation pour %s"
 
 #. TRANSLATORS: The first %s will be a "todo" command like
 #. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:2158
+#: sequencer.c:2154
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s : impossible d'analyser le commit parent %s"
 
-#: sequencer.c:2224
+#: sequencer.c:2220
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "impossible de renommer '%s' en '%s'"
 
-#: sequencer.c:2284
+#: sequencer.c:2280
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "impossible d'annuler %s... %s"
 
-#: sequencer.c:2285
+#: sequencer.c:2281
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "impossible d'appliquer %s... %s"
 
-#: sequencer.c:2306
+#: sequencer.c:2302
 #, c-format
 msgid "dropping %s %s -- patch contents already upstream\n"
 msgstr "abandon de %s %s -- le contenu de la rustine déjà en amont\n"
 
-#: sequencer.c:2364
+#: sequencer.c:2360
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s : échec à la lecture de l'index"
 
-#: sequencer.c:2372
+#: sequencer.c:2368
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s : échec du rafraîchissement de l'index"
 
-#: sequencer.c:2452
+#: sequencer.c:2448
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s n'accepte pas d'argument : '%s'"
 
-#: sequencer.c:2461
+#: sequencer.c:2457
 #, c-format
 msgid "missing arguments for %s"
 msgstr "argument manquant pour %s"
 
-#: sequencer.c:2504
+#: sequencer.c:2500
 #, c-format
 msgid "could not parse '%s'"
 msgstr "impossible d'analyser '%s'"
 
-#: sequencer.c:2565
+#: sequencer.c:2561
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "ligne %d invalide : %.*s"
 
-#: sequencer.c:2576
+#: sequencer.c:2572
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "'%s' impossible avec le commit précédent"
 
-#: sequencer.c:2624 builtin/rebase.c:184
+#: sequencer.c:2620 builtin/rebase.c:185
 #, c-format
 msgid "could not read '%s'."
 msgstr "impossible de lire '%s'."
 
-#: sequencer.c:2662
+#: sequencer.c:2658
 msgid "cancelling a cherry picking in progress"
 msgstr "annulation d'un picorage en cours"
 
-#: sequencer.c:2671
+#: sequencer.c:2667
 msgid "cancelling a revert in progress"
 msgstr "annulation d'un retour en cours"
 
-#: sequencer.c:2711
+#: sequencer.c:2707
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "veuillez corriger ceci en utilisant 'git rebase --edit-todo'."
 
-#: sequencer.c:2713
+#: sequencer.c:2709
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "feuille d'instruction inutilisable : '%s'"
 
-#: sequencer.c:2718
+#: sequencer.c:2714
 msgid "no commits parsed."
 msgstr "aucun commit analysé."
 
-#: sequencer.c:2729
+#: sequencer.c:2725
 msgid "cannot cherry-pick during a revert."
 msgstr "impossible de picorer pendant l'annulation d'un commit."
 
-#: sequencer.c:2731
+#: sequencer.c:2727
 msgid "cannot revert during a cherry-pick."
 msgstr "impossible d'annuler un commit pendant un picorage."
 
-#: sequencer.c:2809
-#, c-format
-msgid "invalid value for %s: %s"
-msgstr "valeur invalide pour %s : %s"
-
-#: sequencer.c:2918
+#: sequencer.c:2914
 msgid "unusable squash-onto"
 msgstr "\"écrase-sur\" inutilisable"
 
-#: sequencer.c:2938
+#: sequencer.c:2934
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "feuille d'options malformée : %s"
 
-#: sequencer.c:3033 sequencer.c:4902
+#: sequencer.c:3029 sequencer.c:4875
 msgid "empty commit set passed"
 msgstr "l'ensemble de commits spécifié est vide"
 
-#: sequencer.c:3050
+#: sequencer.c:3046
 msgid "revert is already in progress"
 msgstr "un retour est déjà en cours"
 
-#: sequencer.c:3052
+#: sequencer.c:3048
 #, c-format
 msgid "try \"git revert (--continue | %s--abort | --quit)\""
 msgstr "essayez \"git revert (--continue | %s--abort | --quit)\""
 
-#: sequencer.c:3055
+#: sequencer.c:3051
 msgid "cherry-pick is already in progress"
 msgstr "un picorage est déjà en cours"
 
-#: sequencer.c:3057
+#: sequencer.c:3053
 #, c-format
 msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
 msgstr "essayez \"git cherry-pick (--continue | %s--abort | --quit)\""
 
-#: sequencer.c:3071
+#: sequencer.c:3067
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "impossible de créer le répertoire de séquenceur '%s'"
 
-#: sequencer.c:3086
+#: sequencer.c:3082
 msgid "could not lock HEAD"
 msgstr "impossible de verrouiller HEAD"
 
-#: sequencer.c:3146 sequencer.c:4612
+#: sequencer.c:3142 sequencer.c:4585
 msgid "no cherry-pick or revert in progress"
 msgstr "aucun picorage ou retour en cours"
 
-#: sequencer.c:3148 sequencer.c:3159
+#: sequencer.c:3144 sequencer.c:3155
 msgid "cannot resolve HEAD"
 msgstr "impossible de résoudre HEAD"
 
-#: sequencer.c:3150 sequencer.c:3194
+#: sequencer.c:3146 sequencer.c:3190
 msgid "cannot abort from a branch yet to be born"
 msgstr "impossible d'abandonner depuis une branche non encore créée"
 
-#: sequencer.c:3180 builtin/fetch.c:1004 builtin/fetch.c:1416
-#: builtin/grep.c:772
+#: sequencer.c:3176 builtin/fetch.c:1030 builtin/fetch.c:1457
+#: builtin/grep.c:774
 #, c-format
 msgid "cannot open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: sequencer.c:3182
+#: sequencer.c:3178
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "impossible de lire '%s' : %s"
 
-#: sequencer.c:3183
+#: sequencer.c:3179
 msgid "unexpected end of file"
 msgstr "fin de fichier inattendue"
 
-#: sequencer.c:3189
+#: sequencer.c:3185
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr "le fichier HEAD de préparation de picorage '%s' est corrompu"
 
-#: sequencer.c:3200
+#: sequencer.c:3196
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr ""
 "Vous semblez avoir déplacé la HEAD. Pas de rembobinage, vérifiez votre HEAD !"
 
-#: sequencer.c:3241
+#: sequencer.c:3237
 msgid "no revert in progress"
 msgstr "pas de retour en cours"
 
-#: sequencer.c:3250
+#: sequencer.c:3246
 msgid "no cherry-pick in progress"
 msgstr "aucun picorage en cours"
 
-#: sequencer.c:3260
+#: sequencer.c:3256
 msgid "failed to skip the commit"
 msgstr "échec du saut de commit"
 
-#: sequencer.c:3267
+#: sequencer.c:3263
 msgid "there is nothing to skip"
 msgstr "il n'y a rien à sauter"
 
-#: sequencer.c:3270
+#: sequencer.c:3266
 #, c-format
 msgid ""
 "have you committed already?\n"
@@ -8399,16 +8620,16 @@ msgstr ""
 "avez-vous déjà validé ?\n"
 "essayez \"git %s --continue\""
 
-#: sequencer.c:3432 sequencer.c:4503
+#: sequencer.c:3428 sequencer.c:4476
 msgid "cannot read HEAD"
 msgstr "impossible de lire HEAD"
 
-#: sequencer.c:3449
+#: sequencer.c:3445
 #, c-format
 msgid "unable to copy '%s' to '%s'"
 msgstr "impossible de copier '%s' vers '%s'"
 
-#: sequencer.c:3457
+#: sequencer.c:3453
 #, c-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -8427,27 +8648,27 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:3467
+#: sequencer.c:3463
 #, c-format
 msgid "Could not apply %s... %.*s"
 msgstr "Impossible d'appliquer %s... %.*s"
 
-#: sequencer.c:3474
+#: sequencer.c:3470
 #, c-format
 msgid "Could not merge %.*s"
 msgstr "Impossible de fusionner %.*s"
 
-#: sequencer.c:3488 sequencer.c:3492 builtin/difftool.c:633
+#: sequencer.c:3484 sequencer.c:3488 builtin/difftool.c:633
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "impossible de copier '%s' vers '%s'"
 
-#: sequencer.c:3503
+#: sequencer.c:3499
 #, c-format
 msgid "Executing: %s\n"
 msgstr "Exécution : %s\n"
 
-#: sequencer.c:3514
+#: sequencer.c:3510
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -8462,11 +8683,11 @@ msgstr ""
 "git rebase --continue\n"
 "\n"
 
-#: sequencer.c:3520
+#: sequencer.c:3516
 msgid "and made changes to the index and/or the working tree\n"
 msgstr "et a mis à jour l'index ou l'arbre de travail\n"
 
-#: sequencer.c:3526
+#: sequencer.c:3522
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -8483,91 +8704,91 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:3586
+#: sequencer.c:3582
 #, c-format
 msgid "illegal label name: '%.*s'"
 msgstr "nom de label illégal '%.*s'"
 
-#: sequencer.c:3659
+#: sequencer.c:3655
 msgid "writing fake root commit"
 msgstr "écriture d'un commit racine bidon"
 
-#: sequencer.c:3664
+#: sequencer.c:3660
 msgid "writing squash-onto"
 msgstr "écriture de 'écraser-sur'"
 
-#: sequencer.c:3743
+#: sequencer.c:3739
 #, c-format
 msgid "could not resolve '%s'"
 msgstr "impossible de résoudre '%s'"
 
-#: sequencer.c:3775
+#: sequencer.c:3771
 msgid "cannot merge without a current revision"
 msgstr "impossible de fusionner avec une révision courante"
 
-#: sequencer.c:3797
+#: sequencer.c:3793
 #, c-format
 msgid "unable to parse '%.*s'"
 msgstr "impossible d'analyser '%.*s'"
 
-#: sequencer.c:3806
+#: sequencer.c:3802
 #, c-format
 msgid "nothing to merge: '%.*s'"
 msgstr "rien à fusionner : '%.*s'"
 
-#: sequencer.c:3818
+#: sequencer.c:3814
 msgid "octopus merge cannot be executed on top of a [new root]"
 msgstr ""
 "une fusion octopus ne peut pas être exécutée par dessus une nouvelle racine"
 
-#: sequencer.c:3873
+#: sequencer.c:3869
 #, c-format
 msgid "could not get commit message of '%s'"
 msgstr "impossible de lire le message de validation de '%s'"
 
-#: sequencer.c:4019
+#: sequencer.c:4013
 #, c-format
 msgid "could not even attempt to merge '%.*s'"
 msgstr "impossible de seulement essayer de fusionner '%.*s'"
 
-#: sequencer.c:4035
+#: sequencer.c:4029
 msgid "merge: Unable to write new index file"
 msgstr "fusion : Impossible d'écrire le nouveau fichier index"
 
-#: sequencer.c:4116
+#: sequencer.c:4110
 msgid "Cannot autostash"
 msgstr "Autoremisage impossible"
 
-#: sequencer.c:4119
+#: sequencer.c:4113
 #, c-format
 msgid "Unexpected stash response: '%s'"
 msgstr "Réponse de remisage inattendue : '%s'"
 
-#: sequencer.c:4125
+#: sequencer.c:4119
 #, c-format
 msgid "Could not create directory for '%s'"
 msgstr "Impossible de créer le répertoire pour '%s'"
 
-#: sequencer.c:4128
+#: sequencer.c:4122
 #, c-format
 msgid "Created autostash: %s\n"
 msgstr "Autoremisage créé : %s\n"
 
-#: sequencer.c:4132
+#: sequencer.c:4124
 msgid "could not reset --hard"
 msgstr "impossible de réinitialiser --hard"
 
-#: sequencer.c:4157
+#: sequencer.c:4148
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Autoremisage appliqué.\n"
 
-#: sequencer.c:4169
+#: sequencer.c:4160
 #, c-format
 msgid "cannot store %s"
 msgstr "impossible de stocker %s"
 
-#: sequencer.c:4172
+#: sequencer.c:4163
 #, c-format
 msgid ""
 "%s\n"
@@ -8578,30 +8799,30 @@ msgstr ""
 "Vos  modifications sont à l'abri dans la remise.\n"
 "Vous pouvez lancer \"git stash pop\" ou \"git stash drop\" à tout moment.\n"
 
-#: sequencer.c:4177
+#: sequencer.c:4168
 msgid "Applying autostash resulted in conflicts."
 msgstr "L'application du remisage automatique a créé des conflits."
 
-#: sequencer.c:4178
+#: sequencer.c:4169
 msgid "Autostash exists; creating a new stash entry."
 msgstr ""
 "Un remisage automatique existe ; création d'une nouvelle entrée de remisage."
 
-#: sequencer.c:4252
+#: sequencer.c:4225
 msgid "could not detach HEAD"
 msgstr "impossible de détacher HEAD"
 
-#: sequencer.c:4267
+#: sequencer.c:4240
 #, c-format
 msgid "Stopped at HEAD\n"
 msgstr "Arrêt à HEAD\n"
 
-#: sequencer.c:4269
+#: sequencer.c:4242
 #, c-format
 msgid "Stopped at %s\n"
 msgstr "Arrêté à %s\n"
 
-#: sequencer.c:4301
+#: sequencer.c:4274
 #, c-format
 msgid ""
 "Could not execute the todo command\n"
@@ -8622,58 +8843,58 @@ msgstr ""
 "    git rebase --edit-todo\n"
 "    git rebase --continue\n"
 
-#: sequencer.c:4347
+#: sequencer.c:4320
 #, c-format
 msgid "Rebasing (%d/%d)%s"
 msgstr "Rebasage (%d/%d)%s"
 
-#: sequencer.c:4393
+#: sequencer.c:4366
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "Arrêt à %s... %.*s\n"
 
-#: sequencer.c:4463
+#: sequencer.c:4436
 #, c-format
 msgid "unknown command %d"
 msgstr "commande inconnue %d"
 
-#: sequencer.c:4511
+#: sequencer.c:4484
 msgid "could not read orig-head"
 msgstr "impossible de lire orig-head"
 
-#: sequencer.c:4516
+#: sequencer.c:4489
 msgid "could not read 'onto'"
 msgstr "impossible de lire 'onto'"
 
-#: sequencer.c:4530
+#: sequencer.c:4503
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "impossible de mettre à jour HEAD sur %s"
 
-#: sequencer.c:4590
+#: sequencer.c:4563
 #, c-format
 msgid "Successfully rebased and updated %s.\n"
 msgstr "Rebasage et mise à jour de %s avec succès.\n"
 
-#: sequencer.c:4642
+#: sequencer.c:4615
 msgid "cannot rebase: You have unstaged changes."
 msgstr "impossible de rebaser : vous avez des modifications non indexées."
 
-#: sequencer.c:4651
+#: sequencer.c:4624
 msgid "cannot amend non-existing commit"
 msgstr "impossible de corriger un commit non-existant"
 
-#: sequencer.c:4653
+#: sequencer.c:4626
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "fichier invalide : '%s'"
 
-#: sequencer.c:4655
+#: sequencer.c:4628
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "contenu invalide : '%s'"
 
-#: sequencer.c:4658
+#: sequencer.c:4631
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -8683,68 +8904,68 @@ msgstr ""
 "Vous avez des modifications non validées dans votre copie de travail.\n"
 "Veuillez les valider d'abord, puis relancer 'git rebase --continue'."
 
-#: sequencer.c:4694 sequencer.c:4733
+#: sequencer.c:4667 sequencer.c:4706
 #, c-format
 msgid "could not write file: '%s'"
 msgstr "impossible d'écrire le fichier : '%s'"
 
-#: sequencer.c:4749
+#: sequencer.c:4722
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "impossible de supprimer CHERRY_PICK_HEAD"
 
-#: sequencer.c:4759
+#: sequencer.c:4732
 msgid "could not commit staged changes."
 msgstr "impossible de valider les modifications indexées."
 
-#: sequencer.c:4879
+#: sequencer.c:4852
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s : impossible de picorer un %s"
 
-#: sequencer.c:4883
+#: sequencer.c:4856
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s : mauvaise révision"
 
-#: sequencer.c:4918
+#: sequencer.c:4891
 msgid "can't revert as initial commit"
 msgstr "impossible d'annuler en tant que commit initial"
 
-#: sequencer.c:5189 sequencer.c:5418
+#: sequencer.c:5162 sequencer.c:5391
 #, c-format
 msgid "skipped previously applied commit %s"
 msgstr "le commit %s appliqué précédemment a été sauté"
 
-#: sequencer.c:5259 sequencer.c:5434
+#: sequencer.c:5232 sequencer.c:5407
 msgid "use --reapply-cherry-picks to include skipped commits"
 msgstr "utilisez --reapply-cherry-picks pour inclure les commits sautés"
 
-#: sequencer.c:5405
+#: sequencer.c:5378
 msgid "make_script: unhandled options"
 msgstr "make_script : options non gérées"
 
-#: sequencer.c:5408
+#: sequencer.c:5381
 msgid "make_script: error preparing revisions"
 msgstr "make_script : erreur lors de la préparation des révisions"
 
-#: sequencer.c:5666 sequencer.c:5683
+#: sequencer.c:5639 sequencer.c:5656
 msgid "nothing to do"
 msgstr "rien à faire"
 
-#: sequencer.c:5702
+#: sequencer.c:5675
 msgid "could not skip unnecessary pick commands"
 msgstr "impossible d'éviter les commandes de picorage non nécessaires"
 
-#: sequencer.c:5802
+#: sequencer.c:5775
 msgid "the script was already rearranged."
 msgstr "le script a déjà été réarrangé."
 
-#: setup.c:134
+#: setup.c:135
 #, c-format
 msgid "'%s' is outside repository at '%s'"
 msgstr "'%s' est hors du dépôt à '%s'"
 
-#: setup.c:186
+#: setup.c:187
 #, c-format
 msgid ""
 "%s: no such path in the working tree.\n"
@@ -8754,7 +8975,7 @@ msgstr ""
 "Utilisez 'git <commande> -- <chemin>...' pour spécifier des chemins qui "
 "n'existent pas localement."
 
-#: setup.c:199
+#: setup.c:200
 #, c-format
 msgid ""
 "ambiguous argument '%s': unknown revision or path not in the working tree.\n"
@@ -8765,14 +8986,14 @@ msgstr ""
 "Utilisez '--' pour séparer les chemins des révisions, comme ceci :\n"
 "'git <commande> [<révision>...] -- [<chemin>...]'"
 
-#: setup.c:265
+#: setup.c:266
 #, c-format
 msgid "option '%s' must come before non-option arguments"
 msgstr ""
 "l'option '%s' doit être présente avant les arguments qui ne sont pas des "
 "options"
 
-#: setup.c:284
+#: setup.c:285
 #, c-format
 msgid ""
 "ambiguous argument '%s': both revision and filename\n"
@@ -8783,28 +9004,28 @@ msgstr ""
 "Utilisez '--' pour séparer les chemins des révisions, comme ceci :\n"
 "'git <commande> [<révision>...] -- [<chemin>...]'"
 
-#: setup.c:420
+#: setup.c:421
 msgid "unable to set up work tree using invalid config"
 msgstr ""
 "impossible de mettre en place le répertoire de travail en utilisant une "
 "configuration invalide"
 
-#: setup.c:424 builtin/rev-parse.c:895
+#: setup.c:425 builtin/rev-parse.c:895
 msgid "this operation must be run in a work tree"
 msgstr "cette opération doit être effectuée dans un arbre de travail"
 
-#: setup.c:722
+#: setup.c:724
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr "Version attendue du dépôt git <= %d, %d trouvée"
 
-#: setup.c:730
+#: setup.c:732
 msgid "unknown repository extension found:"
 msgid_plural "unknown repository extensions found:"
 msgstr[0] "extension de dépôt inconnue trouvée :"
 msgstr[1] "extensions de dépôt inconnues trouvées :"
 
-#: setup.c:744
+#: setup.c:746
 msgid "repo version is 0, but v1-only extension found:"
 msgid_plural "repo version is 0, but v1-only extensions found:"
 msgstr[0] ""
@@ -8812,75 +9033,75 @@ msgstr[0] ""
 msgstr[1] ""
 "la version du dépôt est 0, mais des extensions uniquement v1 trouvées :"
 
-#: setup.c:765
+#: setup.c:767
 #, c-format
 msgid "error opening '%s'"
 msgstr "erreur à l'ouverture de '%s'"
 
-#: setup.c:767
+#: setup.c:769
 #, c-format
 msgid "too large to be a .git file: '%s'"
 msgstr "trop gros pour être une fichier .git : '%s'"
 
-#: setup.c:769
+#: setup.c:771
 #, c-format
 msgid "error reading %s"
 msgstr "erreur à la lecture de %s"
 
-#: setup.c:771
+#: setup.c:773
 #, c-format
 msgid "invalid gitfile format: %s"
 msgstr "format de fichier git invalide : %s"
 
-#: setup.c:773
+#: setup.c:775
 #, c-format
 msgid "no path in gitfile: %s"
 msgstr "aucun chemin dans le fichier git : %s"
 
-#: setup.c:775
+#: setup.c:777
 #, c-format
 msgid "not a git repository: %s"
 msgstr "ce n'est pas un dépôt git : %s"
 
-#: setup.c:877
+#: setup.c:879
 #, c-format
 msgid "'$%s' too big"
 msgstr "'$%s' trop gros"
 
-#: setup.c:891
+#: setup.c:893
 #, c-format
 msgid "not a git repository: '%s'"
 msgstr "ce n'est pas un dépôt git : '%s'"
 
-#: setup.c:920 setup.c:922 setup.c:953
+#: setup.c:922 setup.c:924 setup.c:955
 #, c-format
 msgid "cannot chdir to '%s'"
 msgstr "impossible de se déplacer vers le répertoire (chdir) '%s'"
 
-#: setup.c:925 setup.c:981 setup.c:991 setup.c:1030 setup.c:1038
+#: setup.c:927 setup.c:983 setup.c:993 setup.c:1032 setup.c:1040
 msgid "cannot come back to cwd"
 msgstr "impossible de revenir au répertoire de travail courant"
 
-#: setup.c:1052
+#: setup.c:1054
 #, c-format
 msgid "failed to stat '%*s%s%s'"
 msgstr "échec du stat de '%*s%s%s'"
 
-#: setup.c:1295
+#: setup.c:1338
 msgid "Unable to read current working directory"
 msgstr "Impossible d'accéder au répertoire de travail courant"
 
-#: setup.c:1304 setup.c:1310
+#: setup.c:1347 setup.c:1353
 #, c-format
 msgid "cannot change to '%s'"
 msgstr "impossible de modifier en '%s'"
 
-#: setup.c:1315
+#: setup.c:1358
 #, c-format
 msgid "not a git repository (or any of the parent directories): %s"
 msgstr "ni ceci ni aucun de ses répertoires parents n'est un dépôt git : %s"
 
-#: setup.c:1321
+#: setup.c:1364
 #, c-format
 msgid ""
 "not a git repository (or any parent up to mount point %s)\n"
@@ -8891,7 +9112,20 @@ msgstr ""
 "Arrêt à la limite du système de fichiers (GIT_DISCOVERY_ACROSS_FILESYSTEM "
 "n'est pas défini)."
 
-#: setup.c:1446
+#: setup.c:1374
+#, c-format
+msgid ""
+"unsafe repository ('%s' is owned by someone else)\n"
+"To add an exception for this directory, call:\n"
+"\n"
+"\tgit config --global --add safe.directory %s"
+msgstr ""
+"dépôt non sécurisé ('%s' appartient à quelqu'un d'autre)\n"
+"Pour ajouter une exception pour ce dépôt, lancez :\n"
+"\n"
+"\tgit config --global --add safe.directory %s"
+
+#: setup.c:1502
 #, c-format
 msgid ""
 "problem with core.sharedRepository filemode value (0%.3o).\n"
@@ -8901,57 +9135,61 @@ msgstr ""
 "Le propriétaire des fichiers doit toujours avoir les droits en lecture et "
 "écriture."
 
-#: setup.c:1508
+#: setup.c:1564
 msgid "fork failed"
 msgstr "échec de la bifurcation"
 
-#: setup.c:1513
+#: setup.c:1569
 msgid "setsid failed"
 msgstr "échec du setsid"
 
-#: sparse-index.c:289
+#: sparse-index.c:285
 #, c-format
 msgid "index entry is a directory, but not sparse (%08x)"
 msgstr "l'entrée d'index est un répertoire, mais pas clairsemé (%08x)"
 
+#: split-index.c:9
+msgid "cannot use split index with a sparse index"
+msgstr "impossible d'utiliser l'index scindé avec un index clairsemé"
+
 #. TRANSLATORS: IEC 80000-13:2008 gibibyte
-#: strbuf.c:850
+#: strbuf.c:851
 #, c-format
 msgid "%u.%2.2u GiB"
 msgstr "%u.%2.2u Gio"
 
 #. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
-#: strbuf.c:852
+#: strbuf.c:853
 #, c-format
 msgid "%u.%2.2u GiB/s"
 msgstr "%u.%2.2u Gio/s"
 
 #. TRANSLATORS: IEC 80000-13:2008 mebibyte
-#: strbuf.c:860
+#: strbuf.c:861
 #, c-format
 msgid "%u.%2.2u MiB"
 msgstr "%u.%2.2u Mio"
 
 #. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
-#: strbuf.c:862
+#: strbuf.c:863
 #, c-format
 msgid "%u.%2.2u MiB/s"
 msgstr "%u.%2.2u Mio/s"
 
 #. TRANSLATORS: IEC 80000-13:2008 kibibyte
-#: strbuf.c:869
+#: strbuf.c:870
 #, c-format
 msgid "%u.%2.2u KiB"
 msgstr "%u.%2.2u Kio"
 
 #. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
-#: strbuf.c:871
+#: strbuf.c:872
 #, c-format
 msgid "%u.%2.2u KiB/s"
 msgstr "%u.%2.2u Kio/s"
 
 #. TRANSLATORS: IEC 80000-13:2008 byte
-#: strbuf.c:877
+#: strbuf.c:878
 #, c-format
 msgid "%u byte"
 msgid_plural "%u bytes"
@@ -8959,87 +9197,87 @@ msgstr[0] "%u octet"
 msgstr[1] "%u octets"
 
 #. TRANSLATORS: IEC 80000-13:2008 byte/second
-#: strbuf.c:879
+#: strbuf.c:880
 #, c-format
 msgid "%u byte/s"
 msgid_plural "%u bytes/s"
 msgstr[0] "%u octet/s"
 msgstr[1] "%u octets/s"
 
-#: strbuf.c:1186 wrapper.c:207 wrapper.c:377 builtin/am.c:765
-#: builtin/rebase.c:650
+#: strbuf.c:1187 wrapper.c:217 wrapper.c:387 builtin/am.c:766
+#: builtin/rebase.c:653
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "impossible d'ouvrir '%s' en écriture"
 
-#: strbuf.c:1195
+#: strbuf.c:1196
 #, c-format
 msgid "could not edit '%s'"
 msgstr "impossible d'éditer '%s'"
 
-#: submodule-config.c:237
+#: submodule-config.c:238
 #, c-format
 msgid "ignoring suspicious submodule name: %s"
 msgstr "nom de sous-module suspicieux %s ignoré"
 
-#: submodule-config.c:304
+#: submodule-config.c:305
 msgid "negative values not allowed for submodule.fetchjobs"
 msgstr "les valeurs négatives ne sont pas permises pour submodule.fetchjobs"
 
-#: submodule-config.c:402
+#: submodule-config.c:403
 #, c-format
 msgid "ignoring '%s' which may be interpreted as a command-line option: %s"
 msgstr ""
 "'%s' ignoré et qui peut être interprété comme une option de ligne de "
 "commande : %s"
 
-#: submodule-config.c:499
+#: submodule-config.c:500 builtin/push.c:489 builtin/send-pack.c:148
 #, c-format
-msgid "invalid value for %s"
-msgstr "valeur invalide pour %s"
+msgid "invalid value for '%s'"
+msgstr "valeur invalide pour '%s'"
 
-#: submodule-config.c:767
+#: submodule-config.c:828
 #, c-format
 msgid "Could not update .gitmodules entry %s"
 msgstr "Impossible de mettre à jour l'élément %s de .gitmodules"
 
-#: submodule.c:114 submodule.c:143
+#: submodule.c:115 submodule.c:144
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
 "Modification impossible de .gitmodules non fusionné, résolvez les conflits "
 "d'abord"
 
-#: submodule.c:118 submodule.c:147
+#: submodule.c:119 submodule.c:148
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr "Impossible de trouver une section où path=%s dans .gitmodules"
 
 # ici %s est un chemin
-#: submodule.c:154
+#: submodule.c:155
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr "Impossible de supprimer l'élément de .gitmodules pour %s"
 
-#: submodule.c:165
+#: submodule.c:166
 msgid "staging updated .gitmodules failed"
 msgstr "échec de la mise en index du .gitmodules mis à jour"
 
-#: submodule.c:358
+#: submodule.c:346
 #, c-format
 msgid "in unpopulated submodule '%s'"
 msgstr "dans le sous-module '%s' non populé"
 
-#: submodule.c:389
+#: submodule.c:377
 #, c-format
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr "Le chemin '%s' est dans le sous-module '%.*s'"
 
-#: submodule.c:466
+#: submodule.c:454
 #, c-format
 msgid "bad --ignore-submodules argument: %s"
 msgstr "mauvais argument --ignore-submodules : %s"
 
-#: submodule.c:844
+#: submodule.c:866
 #, c-format
 msgid ""
 "Submodule in commit %s at path: '%s' collides with a submodule named the "
@@ -9048,12 +9286,12 @@ msgstr ""
 "Le sous-module dans le commit %s au chemin : '%s' entre en collision avec un "
 "sous-module du même nom. Ignoré."
 
-#: submodule.c:954
+#: submodule.c:987
 #, c-format
 msgid "submodule entry '%s' (%s) is a %s, not a commit"
 msgstr "l'entrée de sous-module '%s' (%s) est un %s, pas un commit"
 
-#: submodule.c:1042
+#: submodule.c:1069
 #, c-format
 msgid ""
 "Could not run 'git rev-list <commits> --not --remotes -n 1' command in "
@@ -9062,36 +9300,46 @@ msgstr ""
 "Impossible de lancer la commande 'git rev-list <commits> --not --remotes -n "
 "1' dans le sous-module %s"
 
-#: submodule.c:1165
+#: submodule.c:1192
 #, c-format
 msgid "process for submodule '%s' failed"
 msgstr "le processus pour le sous-module '%s' a échoué"
 
-#: submodule.c:1194 builtin/branch.c:699 builtin/submodule--helper.c:2714
+#: submodule.c:1221 builtin/branch.c:714 builtin/submodule--helper.c:2827
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Échec de résolution de HEAD comme référence valide."
 
-#: submodule.c:1205
+#: submodule.c:1232
 #, c-format
 msgid "Pushing submodule '%s'\n"
 msgstr "Poussée du sous-module '%s'\n"
 
-#: submodule.c:1208
+#: submodule.c:1235
 #, c-format
 msgid "Unable to push submodule '%s'\n"
 msgstr "Impossible de pousser le sous-module '%s'\n"
 
-#: submodule.c:1491
+#: submodule.c:1567
 #, c-format
 msgid "Fetching submodule %s%s\n"
 msgstr "Récupération du sous-module %s%s\n"
 
-#: submodule.c:1525
+#: submodule.c:1589
 #, c-format
 msgid "Could not access submodule '%s'\n"
 msgstr "Impossible d'accéder au sous-module '%s'\n"
 
-#: submodule.c:1680
+#: submodule.c:1618
+#, c-format
+msgid "Could not access submodule '%s' at commit %s\n"
+msgstr "Impossible d'accéder au sous-module '%s' au commit %s\n"
+
+#: submodule.c:1629
+#, c-format
+msgid "Fetching submodule %s%s at commit %s\n"
+msgstr "Récupération du sous-module %s%s au commit %s\n"
+
+#: submodule.c:1849
 #, c-format
 msgid ""
 "Errors during submodule fetch:\n"
@@ -9100,63 +9348,63 @@ msgstr ""
 "Erreurs pendant la récupération du sous-module :\n"
 "%s"
 
-#: submodule.c:1705
+#: submodule.c:1874
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr "'%s' n'est pas reconnu comme dépôt git"
 
-#: submodule.c:1722
+#: submodule.c:1891
 #, c-format
 msgid "Could not run 'git status --porcelain=2' in submodule %s"
 msgstr "impossible de lancer 'git status --porcelain=2' dans le sous-module %s"
 
-#: submodule.c:1763
+#: submodule.c:1932
 #, c-format
 msgid "'git status --porcelain=2' failed in submodule %s"
 msgstr "'git status --porcelain=2' a échoué dans le sous-module %s"
 
-#: submodule.c:1838
+#: submodule.c:2007
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr "impossible de démarrer 'git status' dans le sous-module '%s'"
 
-#: submodule.c:1851
+#: submodule.c:2020
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr "impossible de lancer 'git status' dans le sous-module '%s'"
 
-#: submodule.c:1868
+#: submodule.c:2037
 #, c-format
 msgid "Could not unset core.worktree setting in submodule '%s'"
 msgstr "Impossible de désactiver core.worktree dans le sous-module '%s'"
 
-#: submodule.c:1895 submodule.c:2210
+#: submodule.c:2064 submodule.c:2379
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr "récursion impossible dans le sous-module '%s'"
 
-#: submodule.c:1917
+#: submodule.c:2086
 msgid "could not reset submodule index"
 msgstr "impossible de réinitialiser l'index du sous-module"
 
-#: submodule.c:1959
+#: submodule.c:2128
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr "le sous-module '%s' a un index sale"
 
-#: submodule.c:2013
+#: submodule.c:2182
 #, c-format
 msgid "Submodule '%s' could not be updated."
 msgstr "Le sous-module '%s' n'a pas pu être mis à jour."
 
-#: submodule.c:2081
+#: submodule.c:2250
 #, c-format
 msgid "submodule git dir '%s' is inside git dir '%.*s'"
 msgstr ""
 "le répertoire git du sous-module '%s' est à l'intérieur du répertoire git "
 "'%.*s'"
 
-#: submodule.c:2102
+#: submodule.c:2271
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -9164,17 +9412,17 @@ msgstr ""
 "relocate_gitdir pour le sous-module '%s' avec plus d'un arbre de travail "
 "n'est pas supporté"
 
-#: submodule.c:2114 submodule.c:2174
+#: submodule.c:2283 submodule.c:2343
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "impossible de trouve le nom pour le sous-module '%s'"
 
-#: submodule.c:2118
+#: submodule.c:2287
 #, c-format
 msgid "refusing to move '%s' into an existing git dir"
 msgstr "refus de déplacer '%s' dans une répertoire git existant"
 
-#: submodule.c:2124
+#: submodule.c:2293
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -9185,11 +9433,11 @@ msgstr ""
 "'%s' sur\n"
 "'%s'\n"
 
-#: submodule.c:2255
+#: submodule.c:2424
 msgid "could not start ls-files in .."
 msgstr "impossible de démarrer ls-files dans .."
 
-#: submodule.c:2295
+#: submodule.c:2464
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree a renvoyé un code de retour inattendu %d"
@@ -9210,8 +9458,8 @@ msgstr "échec de la commande trailer '%s'"
 msgid "unknown value '%s' for key '%s'"
 msgstr "valeur inconnue '%s' pour la clé '%s'"
 
-#: trailer.c:547 trailer.c:552 trailer.c:557 builtin/remote.c:299
-#: builtin/remote.c:327
+#: trailer.c:547 trailer.c:552 trailer.c:557 builtin/remote.c:300
+#: builtin/remote.c:328
 #, c-format
 msgid "more than one %s"
 msgstr "plus d'un %s"
@@ -9226,11 +9474,11 @@ msgstr "symbole vide dans la ligne de fin '%.*s'"
 msgid "could not read input file '%s'"
 msgstr "impossible de lire le fichier d'entrée '%s'"
 
-#: trailer.c:766 builtin/mktag.c:89 imap-send.c:1573
+#: trailer.c:766 builtin/mktag.c:88 imap-send.c:1563
 msgid "could not read from stdin"
 msgstr "impossible de lire depuis l'entrée standard"
 
-#: trailer.c:1024 wrapper.c:684
+#: trailer.c:1024 wrapper.c:760
 #, c-format
 msgid "could not stat %s"
 msgstr "stat impossible de %s"
@@ -9299,7 +9547,7 @@ msgstr "impossible de lancer fast-import"
 msgid "error while running fast-import"
 msgstr "erreur au lancement de fast-import"
 
-#: transport-helper.c:549 transport-helper.c:1251
+#: transport-helper.c:549 transport-helper.c:1254
 #, c-format
 msgid "could not read ref %s"
 msgstr "impossible de lire la réf %s"
@@ -9319,7 +9567,7 @@ msgstr ""
 msgid "invalid remote service path"
 msgstr "chemin de service distant invalide"
 
-#: transport-helper.c:661 transport.c:1479
+#: transport-helper.c:661 transport.c:1496
 msgid "operation not supported by protocol"
 msgstr "option non supportée par le protocole"
 
@@ -9328,74 +9576,74 @@ msgstr "option non supportée par le protocole"
 msgid "can't connect to subservice %s"
 msgstr "impossible de se connecter au sous-service %s"
 
-#: transport-helper.c:693 transport.c:404
+#: transport-helper.c:693 transport.c:415
 msgid "--negotiate-only requires protocol v2"
 msgstr "--negotiate-only requiert le protocole v2"
 
-#: transport-helper.c:755
+#: transport-helper.c:758
 msgid "'option' without a matching 'ok/error' directive"
 msgstr "'option' sans directive 'ok/error' correspondante"
 
-#: transport-helper.c:798
+#: transport-helper.c:801
 #, c-format
 msgid "expected ok/error, helper said '%s'"
 msgstr "ok/error attendu, l'assistant a dit '%s'"
 
-#: transport-helper.c:859
+#: transport-helper.c:862
 #, c-format
 msgid "helper reported unexpected status of %s"
 msgstr "l'assistant a renvoyé un statut de retour inattendu %s"
 
-#: transport-helper.c:942
+#: transport-helper.c:945
 #, c-format
 msgid "helper %s does not support dry-run"
 msgstr "l'assistant %s ne gère pas dry-run"
 
-#: transport-helper.c:945
+#: transport-helper.c:948
 #, c-format
 msgid "helper %s does not support --signed"
 msgstr "l'assistant %s ne gère pas --signed"
 
-#: transport-helper.c:948
+#: transport-helper.c:951
 #, c-format
 msgid "helper %s does not support --signed=if-asked"
 msgstr "l'assistant %s ne gère pas --signed=if-asked"
 
-#: transport-helper.c:953
+#: transport-helper.c:956
 #, c-format
 msgid "helper %s does not support --atomic"
 msgstr "l'assistant %s ne gère pas --atomic"
 
-#: transport-helper.c:957
+#: transport-helper.c:960
 #, c-format
 msgid "helper %s does not support --%s"
 msgstr "l'assistant %s ne gère pas --%s"
 
-#: transport-helper.c:964
+#: transport-helper.c:967
 #, c-format
 msgid "helper %s does not support 'push-option'"
 msgstr "l'assistant %s ne gère pas 'push-option'"
 
-#: transport-helper.c:1064
+#: transport-helper.c:1067
 msgid "remote-helper doesn't support push; refspec needed"
 msgstr ""
 "l'assistant %s ne gère pas push ; un spécificateur de référence est "
 "nécessaire"
 
-#: transport-helper.c:1069
+#: transport-helper.c:1072
 #, c-format
 msgid "helper %s does not support 'force'"
 msgstr "l'assistant %s ne gère pas 'force'"
 
-#: transport-helper.c:1116
+#: transport-helper.c:1119
 msgid "couldn't run fast-export"
 msgstr "impossible de lancer fast-export"
 
-#: transport-helper.c:1121
+#: transport-helper.c:1124
 msgid "error while running fast-export"
 msgstr "erreur au lancement de fast-export"
 
-#: transport-helper.c:1146
+#: transport-helper.c:1149
 #, c-format
 msgid ""
 "No refs in common and none specified; doing nothing.\n"
@@ -9404,52 +9652,52 @@ msgstr ""
 "Aucune référence en commun et aucune spécfiée ; rien à faire.\n"
 "Vous devriez peut-être spécifier une branche.\n"
 
-#: transport-helper.c:1228
+#: transport-helper.c:1231
 #, c-format
 msgid "unsupported object format '%s'"
 msgstr "format d'objet non géré '%s'"
 
-#: transport-helper.c:1237
+#: transport-helper.c:1240
 #, c-format
 msgid "malformed response in ref list: %s"
 msgstr "réponse malformée dans le liste de réfs : %s"
 
-#: transport-helper.c:1389
+#: transport-helper.c:1392
 #, c-format
 msgid "read(%s) failed"
 msgstr "échec de read(%s)"
 
-#: transport-helper.c:1416
+#: transport-helper.c:1419
 #, c-format
 msgid "write(%s) failed"
 msgstr "échec de write(%s)"
 
-#: transport-helper.c:1465
+#: transport-helper.c:1468
 #, c-format
 msgid "%s thread failed"
 msgstr "échec du fil d'exécution %s"
 
-#: transport-helper.c:1469
+#: transport-helper.c:1472
 #, c-format
 msgid "%s thread failed to join: %s"
 msgstr "échec de jonction du fil d'exécution %s : %s"
 
-#: transport-helper.c:1488 transport-helper.c:1492
+#: transport-helper.c:1491 transport-helper.c:1495
 #, c-format
 msgid "can't start thread for copying data: %s"
 msgstr "impossible de démarrer le fil d'exécution pour copier les données : %s"
 
-#: transport-helper.c:1529
+#: transport-helper.c:1532
 #, c-format
 msgid "%s process failed to wait"
 msgstr "échec du processus %s pour l'attente"
 
-#: transport-helper.c:1533
+#: transport-helper.c:1536
 #, c-format
 msgid "%s process failed"
 msgstr "échec du processus %s"
 
-#: transport-helper.c:1551 transport-helper.c:1560
+#: transport-helper.c:1554 transport-helper.c:1563
 msgid "can't start thread for copying data"
 msgstr "impossible de démarrer le fil d'exécution pour copier les données"
 
@@ -9458,51 +9706,51 @@ msgstr "impossible de démarrer le fil d'exécution pour copier les données"
 msgid "Would set upstream of '%s' to '%s' of '%s'\n"
 msgstr "Positionnerait la branche amont de '%s' sur '%s' de '%s'\n"
 
-#: transport.c:145
+#: transport.c:138
 #, c-format
 msgid "could not read bundle '%s'"
 msgstr "impossible de lire la liasse '%s'"
 
-#: transport.c:227
+#: transport.c:234
 #, c-format
 msgid "transport: invalid depth option '%s'"
 msgstr "transport : option de profondeur invalide '%s'"
 
-#: transport.c:279
+#: transport.c:289
 msgid "see protocol.version in 'git help config' for more details"
 msgstr "voir protocol.version dans 'git help config' pour plus d'information"
 
-#: transport.c:280
+#: transport.c:290
 msgid "server options require protocol version 2 or later"
 msgstr "les options de serveur exigent une version 2 ou supérieure"
 
-#: transport.c:407
+#: transport.c:418
 msgid "server does not support wait-for-done"
 msgstr "le serveur ne prend pas en charge wait-for-done"
 
-#: transport.c:759
+#: transport.c:770
 msgid "could not parse transport.color.* config"
 msgstr "impossible d'analyser la configuration transport.color.*"
 
-#: transport.c:834
+#: transport.c:845
 msgid "support for protocol v2 not implemented yet"
 msgstr "le support du protocole v2 n'est pas encore implanté"
 
-#: transport.c:967
+#: transport.c:978
 #, c-format
 msgid "unknown value for config '%s': %s"
 msgstr "valeur inconnue pour la config '%s' : %s"
 
-#: transport.c:1033
+#: transport.c:1044
 #, c-format
 msgid "transport '%s' not allowed"
 msgstr "transport '%s' non permis"
 
-#: transport.c:1082
+#: transport.c:1093
 msgid "git-over-rsync is no longer supported"
 msgstr "git-over-rsync n'est plus supporté"
 
-#: transport.c:1185
+#: transport.c:1196
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
@@ -9511,7 +9759,7 @@ msgstr ""
 "Les chemins suivants de sous-module contiennent des modifications\n"
 "qui ne peuvent être trouvées sur aucun distant :\n"
 
-#: transport.c:1189
+#: transport.c:1200
 #, c-format
 msgid ""
 "\n"
@@ -9538,11 +9786,11 @@ msgstr ""
 "pour les pousser vers un serveur distant.\n"
 "\n"
 
-#: transport.c:1197
+#: transport.c:1208
 msgid "Aborting."
 msgstr "Abandon."
 
-#: transport.c:1343
+#: transport.c:1354
 msgid "failed to push all needed submodules"
 msgstr "échec de la poussée de tous les sous-modules nécessaires"
 
@@ -9830,17 +10078,17 @@ msgstr ""
 "sensibles à la casse dans une système de fichier insensible) et un\n"
 "seul du groupe en collision est dans l'arbre de travail :\n"
 
-#: unpack-trees.c:1636
+#: unpack-trees.c:1664
 msgid "Updating index flags"
 msgstr "Mise à jour des drapeaux de l'index"
 
-#: unpack-trees.c:2803
+#: unpack-trees.c:2925
 #, c-format
 msgid "worktree and untracked commit have duplicate entries: %s"
 msgstr ""
 "l'arbre de travail et le commit non suivi ont des entrées dupliquées : %s"
 
-#: upload-pack.c:1565
+#: upload-pack.c:1579
 msgid "expected flush after fetch arguments"
 msgstr "vidage attendu après les arguments de récupération"
 
@@ -9877,128 +10125,142 @@ msgstr "segment de chemin '..' invalide"
 msgid "Fetching objects"
 msgstr "Récupération des objets"
 
-#: worktree.c:238 builtin/am.c:2209 builtin/bisect--helper.c:156
+#: worktree.c:237 builtin/am.c:2210 builtin/bisect--helper.c:156
 #, c-format
 msgid "failed to read '%s'"
 msgstr "échec de la lecture de '%s'"
 
-#: worktree.c:305
+#: worktree.c:304
 #, c-format
 msgid "'%s' at main working tree is not the repository directory"
 msgstr ""
 "'%s' dans l'arbre de travail principal n'est pas le répertoire de dépôt"
 
-#: worktree.c:316
+#: worktree.c:315
 #, c-format
 msgid "'%s' file does not contain absolute path to the working tree location"
 msgstr ""
 "le fichier '%s' ne contient pas de chemin absolu à l'emplacement de l'arbre "
 "de travail"
 
-#: worktree.c:328
+#: worktree.c:327
 #, c-format
 msgid "'%s' does not exist"
 msgstr "'%s' n'existe pas"
 
-#: worktree.c:334
+#: worktree.c:333
 #, c-format
 msgid "'%s' is not a .git file, error code %d"
 msgstr "'%s' n'est pas un fichier .git, code d'erreur %d"
 
-#: worktree.c:343
+#: worktree.c:342
 #, c-format
 msgid "'%s' does not point back to '%s'"
 msgstr "'%s' ne pointe pas en retour sur '%s'"
 
-#: worktree.c:604
+#: worktree.c:600
 msgid "not a directory"
 msgstr "pas un répertoire"
 
-#: worktree.c:613
+#: worktree.c:609
 msgid ".git is not a file"
 msgstr ".git n'est pas un fichier"
 
-#: worktree.c:615
+#: worktree.c:611
 msgid ".git file broken"
 msgstr "fichier .git cassé"
 
-#: worktree.c:617
+#: worktree.c:613
 msgid ".git file incorrect"
 msgstr "fichier .git incorrect"
 
-#: worktree.c:723
+#: worktree.c:719
 msgid "not a valid path"
 msgstr "pas un chemin valide"
 
-#: worktree.c:729
+#: worktree.c:725
 msgid "unable to locate repository; .git is not a file"
 msgstr "impossible de localiser le dépôt ; .git n'est pas un fichier"
 
-#: worktree.c:733
+#: worktree.c:729
 msgid "unable to locate repository; .git file does not reference a repository"
 msgstr ""
 "impossible de localiser le dépôt ; .git ne fait pas référence à un dépôt"
 
-#: worktree.c:737
+#: worktree.c:733
 msgid "unable to locate repository; .git file broken"
 msgstr "impossible de localiser le dépôt ; fichier .git cassé"
 
-#: worktree.c:743
+#: worktree.c:739
 msgid "gitdir unreadable"
 msgstr "gitdir non lisible"
 
-#: worktree.c:747
+#: worktree.c:743
 msgid "gitdir incorrect"
 msgstr "gitdir incorrect"
 
-#: worktree.c:772
+#: worktree.c:768
 msgid "not a valid directory"
 msgstr "pas un répertoire valide"
 
-#: worktree.c:778
+#: worktree.c:774
 msgid "gitdir file does not exist"
 msgstr "le fichier gitdir n'existe pas"
 
-#: worktree.c:783 worktree.c:792
+#: worktree.c:779 worktree.c:788
 #, c-format
 msgid "unable to read gitdir file (%s)"
 msgstr "impossible de lire le fichier gitdir (%s)"
 
-#: worktree.c:802
+#: worktree.c:798
 #, c-format
 msgid "short read (expected %<PRIuMAX> bytes, read %<PRIuMAX>)"
 msgstr ""
 "lecture trop courte ( %<PRIuMAX> octets attendus, %<PRIuMAX> octets lus)"
 
-#: worktree.c:810
+#: worktree.c:806
 msgid "invalid gitdir file"
 msgstr "fichier gitdir invalide"
 
-#: worktree.c:818
+#: worktree.c:814
 msgid "gitdir file points to non-existent location"
 msgstr "le fichier gitdir pointe sur un endroit inexistant"
 
-#: wrapper.c:151
+#: worktree.c:830
+#, c-format
+msgid "unable to set %s in '%s'"
+msgstr "impossible de définir la clé %s dans '%s'"
+
+#: worktree.c:832
+#, c-format
+msgid "unable to unset %s in '%s'"
+msgstr "impossible de désinitialiser %s dans '%s'"
+
+#: worktree.c:852
+msgid "failed to set extensions.worktreeConfig setting"
+msgstr "échec de paramétrage extensions.worktreeConfig"
+
+#: wrapper.c:161
 #, c-format
 msgid "could not setenv '%s'"
 msgstr "impossible de configurer l'environnement '%s'"
 
-#: wrapper.c:203
+#: wrapper.c:213
 #, c-format
 msgid "unable to create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: wrapper.c:205 wrapper.c:375
+#: wrapper.c:215 wrapper.c:385
 #, c-format
 msgid "could not open '%s' for reading and writing"
 msgstr "impossible d'ouvrir '%s' en lecture/écriture"
 
-#: wrapper.c:406 wrapper.c:607
+#: wrapper.c:416 wrapper.c:683
 #, c-format
 msgid "unable to access '%s'"
 msgstr "impossible d'accéder à '%s'"
 
-#: wrapper.c:615
+#: wrapper.c:691
 msgid "unable to get current working directory"
 msgstr "impossible d'accéder au répertoire de travail courant"
 
@@ -10035,11 +10297,11 @@ msgstr ""
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr "  (utilisez \"git rm <fichier>...\" pour marquer comme résolu)"
 
-#: wt-status.c:211 wt-status.c:1131
+#: wt-status.c:211 wt-status.c:1140
 msgid "Changes to be committed:"
 msgstr "Modifications qui seront validées :"
 
-#: wt-status.c:234 wt-status.c:1140
+#: wt-status.c:234 wt-status.c:1149
 msgid "Changes not staged for commit:"
 msgstr "Modifications qui ne seront pas validées :"
 
@@ -10144,22 +10406,22 @@ msgstr "contenu modifié, "
 msgid "untracked content, "
 msgstr "contenu non suivi, "
 
-#: wt-status.c:964
+#: wt-status.c:973
 #, c-format
 msgid "Your stash currently has %d entry"
 msgid_plural "Your stash currently has %d entries"
 msgstr[0] "Votre remisage contient actuellement %d entrée"
 msgstr[1] "Votre remisage contient actuellement %d entrées"
 
-#: wt-status.c:995
+#: wt-status.c:1004
 msgid "Submodules changed but not updated:"
 msgstr "Sous-modules modifiés mais non mis à jour :"
 
-#: wt-status.c:997
+#: wt-status.c:1006
 msgid "Submodule changes to be committed:"
 msgstr "Changements du sous-module à valider :"
 
-#: wt-status.c:1079
+#: wt-status.c:1088
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
@@ -10167,7 +10429,7 @@ msgstr ""
 "Ne touchez pas à la ligne ci-dessus.\n"
 "Tout ce qui suit sera éliminé."
 
-#: wt-status.c:1171
+#: wt-status.c:1180
 #, c-format
 msgid ""
 "\n"
@@ -10179,114 +10441,114 @@ msgstr ""
 "de la branche.\n"
 "Vous pouvez utiliser '--no-ahead-behind' pour éviter ceci.\n"
 
-#: wt-status.c:1201
+#: wt-status.c:1210
 msgid "You have unmerged paths."
 msgstr "Vous avez des chemins non fusionnés."
 
-#: wt-status.c:1204
+#: wt-status.c:1213
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (réglez les conflits puis lancez \"git commit\")"
 
-#: wt-status.c:1206
+#: wt-status.c:1215
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr "  (utilisez \"git merge --abort\" pour annuler la fusion)"
 
-#: wt-status.c:1210
+#: wt-status.c:1219
 msgid "All conflicts fixed but you are still merging."
 msgstr "Tous les conflits sont réglés mais la fusion n'est pas terminée."
 
-#: wt-status.c:1213
+#: wt-status.c:1222
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (utilisez \"git commit\" pour terminer la fusion)"
 
-#: wt-status.c:1224
+#: wt-status.c:1233
 msgid "You are in the middle of an am session."
 msgstr "Vous êtes au milieu d'une session am."
 
-#: wt-status.c:1227
+#: wt-status.c:1236
 msgid "The current patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: wt-status.c:1232
+#: wt-status.c:1241
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git am --continue\")"
 
-#: wt-status.c:1234
+#: wt-status.c:1243
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (utilisez \"git am --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1237
+#: wt-status.c:1246
 msgid ""
 "  (use \"git am --allow-empty\" to record this patch as an empty commit)"
 msgstr ""
 "  (utilisez \"git am --allow-empty\" pour enregistrer la rustine comme un "
 "commit vide)"
 
-#: wt-status.c:1239
+#: wt-status.c:1248
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (utilisez \"git am --abort\" pour restaurer la branche d'origine)"
 
-#: wt-status.c:1372
+#: wt-status.c:1381
 msgid "git-rebase-todo is missing."
 msgstr "git-rebase-todo est manquant."
 
-#: wt-status.c:1374
+#: wt-status.c:1383
 msgid "No commands done."
 msgstr "Aucune commande réalisée."
 
-#: wt-status.c:1377
+#: wt-status.c:1386
 #, c-format
-msgid "Last command done (%d command done):"
-msgid_plural "Last commands done (%d commands done):"
-msgstr[0] "Dernière commande effectuée (%d commande effectuée) :"
-msgstr[1] "Dernières commandes effectuées (%d commandes effectuées) :"
+msgid "Last command done (%<PRIuMAX> command done):"
+msgid_plural "Last commands done (%<PRIuMAX> commands done):"
+msgstr[0] "Dernière commande effectuée (%<PRIuMAX> commande effectuée) :"
+msgstr[1] "Dernières commandes effectuées (%<PRIuMAX> commandes effectuées) :"
 
-#: wt-status.c:1388
+#: wt-status.c:1397
 #, c-format
 msgid "  (see more in file %s)"
 msgstr "  (voir plus dans le fichier %s)"
 
-#: wt-status.c:1393
+#: wt-status.c:1402
 msgid "No commands remaining."
 msgstr "Aucune commande restante."
 
-#: wt-status.c:1396
+#: wt-status.c:1405
 #, c-format
-msgid "Next command to do (%d remaining command):"
-msgid_plural "Next commands to do (%d remaining commands):"
-msgstr[0] "Prochaine commande à effectuer (%d commande restante) :"
-msgstr[1] "Prochaines commandes à effectuer (%d commandes restantes) :"
+msgid "Next command to do (%<PRIuMAX> remaining command):"
+msgid_plural "Next commands to do (%<PRIuMAX> remaining commands):"
+msgstr[0] "Prochaine commande à effectuer (%<PRIuMAX> commande restante) :"
+msgstr[1] "Prochaines commandes à effectuer (%<PRIuMAX> commandes restantes) :"
 
-#: wt-status.c:1404
+#: wt-status.c:1413
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr "  (utilisez \"git rebase --edit-todo\" pour voir et éditer)"
 
-#: wt-status.c:1416
+#: wt-status.c:1425
 #, c-format
 msgid "You are currently rebasing branch '%s' on '%s'."
 msgstr "Vous êtes en train de rebaser la branche '%s' sur '%s'."
 
-#: wt-status.c:1421
+#: wt-status.c:1430
 msgid "You are currently rebasing."
 msgstr "Vous êtes en train de rebaser."
 
-#: wt-status.c:1434
+#: wt-status.c:1443
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git rebase --continue\")"
 
-#: wt-status.c:1436
+#: wt-status.c:1445
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (utilisez \"git rebase --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1438
+#: wt-status.c:1447
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr "  (utilisez \"git rebase --abort\" pour extraire la branche d'origine)"
 
-#: wt-status.c:1445
+#: wt-status.c:1454
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git rebase --continue\")"
 
-#: wt-status.c:1449
+#: wt-status.c:1458
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -10294,163 +10556,163 @@ msgstr ""
 "Vous êtes actuellement en train de fractionner un commit pendant un rebasage "
 "de la branche '%s' sur '%s'."
 
-#: wt-status.c:1454
+#: wt-status.c:1463
 msgid "You are currently splitting a commit during a rebase."
 msgstr ""
 "Vous êtes actuellement en train de fractionner un commit pendant un rebasage."
 
-#: wt-status.c:1457
+#: wt-status.c:1466
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr ""
 "  (Une fois la copie de travail nettoyée, lancez \"git rebase --continue\")"
 
-#: wt-status.c:1461
+#: wt-status.c:1470
 #, c-format
 msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 "Vous êtes actuellement en train d'éditer un commit pendant un rebasage de la "
 "branche '%s' sur '%s'."
 
-#: wt-status.c:1466
+#: wt-status.c:1475
 msgid "You are currently editing a commit during a rebase."
 msgstr ""
 "Vous êtes actuellement en train d'éditer un commit pendant un rebasage."
 
-#: wt-status.c:1469
+#: wt-status.c:1478
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (utilisez \"git commit --amend\" pour corriger le commit actuel)"
 
-#: wt-status.c:1471
+#: wt-status.c:1480
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
 "  (utilisez \"git rebase --continue\" quand vous avez effectué toutes vos "
 "modifications)"
 
-#: wt-status.c:1482
+#: wt-status.c:1491
 msgid "Cherry-pick currently in progress."
 msgstr "Picorage en cours."
 
-#: wt-status.c:1485
+#: wt-status.c:1494
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "Vous êtes actuellement en train de picorer le commit %s."
 
-#: wt-status.c:1492
+#: wt-status.c:1501
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git cherry-pick --continue\")"
 
-#: wt-status.c:1495
+#: wt-status.c:1504
 msgid "  (run \"git cherry-pick --continue\" to continue)"
 msgstr "  (lancez \"git cherry-pick --continue\" pour continuer)"
 
-#: wt-status.c:1498
+#: wt-status.c:1507
 msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
 msgstr ""
 "  (tous les conflits sont réglés : lancez \"git cherry-pick --continue\")"
 
-#: wt-status.c:1500
+#: wt-status.c:1509
 msgid "  (use \"git cherry-pick --skip\" to skip this patch)"
 msgstr "  (utilisez \"git cherry-pick --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1502
+#: wt-status.c:1511
 msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
 msgstr "  (utilisez \"git cherry-pick --abort\" pour annuler le picorage)"
 
-#: wt-status.c:1512
+#: wt-status.c:1521
 msgid "Revert currently in progress."
 msgstr "Rétablissement en cours."
 
-#: wt-status.c:1515
+#: wt-status.c:1524
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Vous êtes actuellement en train de rétablir le commit %s."
 
-#: wt-status.c:1521
+#: wt-status.c:1530
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git revert --continue\")"
 
-#: wt-status.c:1524
+#: wt-status.c:1533
 msgid "  (run \"git revert --continue\" to continue)"
 msgstr "  (lancez \"git revert --continue\" pour continuer)"
 
-#: wt-status.c:1527
+#: wt-status.c:1536
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git revert --continue\")"
 
-#: wt-status.c:1529
+#: wt-status.c:1538
 msgid "  (use \"git revert --skip\" to skip this patch)"
 msgstr "  (utilisez \"git revert --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1531
+#: wt-status.c:1540
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (utilisez \"git revert --abort\" pour annuler le rétablissement)"
 
-#: wt-status.c:1541
+#: wt-status.c:1550
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr "Vous êtes en cours de bissection, depuis la branche '%s'."
 
-#: wt-status.c:1545
+#: wt-status.c:1554
 msgid "You are currently bisecting."
 msgstr "Vous êtes en cours de bissection."
 
-#: wt-status.c:1548
+#: wt-status.c:1557
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr "  (utilisez \"git bisect reset\" pour revenir à la branche d'origine)"
 
-#: wt-status.c:1559
+#: wt-status.c:1568
 msgid "You are in a sparse checkout."
 msgstr "Vous êtes dans une extraction clairsemée."
 
-#: wt-status.c:1562
+#: wt-status.c:1571
 #, c-format
 msgid "You are in a sparse checkout with %d%% of tracked files present."
 msgstr ""
 "Vous êtes dans une extraction partielle avec %d %% de fichiers suivis "
 "présents."
 
-#: wt-status.c:1806
+#: wt-status.c:1815
 msgid "On branch "
 msgstr "Sur la branche "
 
-#: wt-status.c:1813
+#: wt-status.c:1822
 msgid "interactive rebase in progress; onto "
 msgstr "rebasage interactif en cours ; sur "
 
-#: wt-status.c:1815
+#: wt-status.c:1824
 msgid "rebase in progress; onto "
 msgstr "rebasage en cours ; sur "
 
-#: wt-status.c:1820
+#: wt-status.c:1829
 msgid "HEAD detached at "
 msgstr "HEAD détachée sur "
 
-#: wt-status.c:1822
+#: wt-status.c:1831
 msgid "HEAD detached from "
 msgstr "HEAD détachée depuis "
 
-#: wt-status.c:1825
+#: wt-status.c:1834
 msgid "Not currently on any branch."
 msgstr "Actuellement sur aucun branche."
 
-#: wt-status.c:1842
+#: wt-status.c:1851
 msgid "Initial commit"
 msgstr "Validation initiale"
 
-#: wt-status.c:1843
+#: wt-status.c:1852
 msgid "No commits yet"
 msgstr "Aucun commit"
 
-#: wt-status.c:1857
+#: wt-status.c:1866
 msgid "Untracked files"
 msgstr "Fichiers non suivis"
 
-#: wt-status.c:1859
+#: wt-status.c:1868
 msgid "Ignored files"
 msgstr "Fichiers ignorés"
 
-#: wt-status.c:1863
+#: wt-status.c:1872
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -10462,32 +10724,32 @@ msgstr ""
 "oublier d'ajouter les nouveaux fichiers par vous-même (voir 'git help "
 "status')."
 
-#: wt-status.c:1869
+#: wt-status.c:1878
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "Fichiers non suivis non affichés%s"
 
-#: wt-status.c:1871
+#: wt-status.c:1880
 msgid " (use -u option to show untracked files)"
 msgstr " (utilisez -u pour afficher les fichiers non suivis)"
 
-#: wt-status.c:1877
+#: wt-status.c:1886
 msgid "No changes"
 msgstr "Aucune modification"
 
-#: wt-status.c:1882
+#: wt-status.c:1891
 #, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
 msgstr ""
 "aucune modification n'a été ajoutée à la validation (utilisez \"git add\" ou "
 "\"git commit -a\")\n"
 
-#: wt-status.c:1886
+#: wt-status.c:1895
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "aucune modification ajoutée à la validation\n"
 
-#: wt-status.c:1890
+#: wt-status.c:1899
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -10496,66 +10758,66 @@ msgstr ""
 "aucune modification ajoutée à la validation mais des fichiers non suivis "
 "sont présents (utilisez \"git add\" pour les suivre)\n"
 
-#: wt-status.c:1894
+#: wt-status.c:1903
 #, c-format
 msgid "nothing added to commit but untracked files present\n"
 msgstr ""
 "aucune modification ajoutée à la validation mais des fichiers non suivis "
 "sont présents\n"
 
-#: wt-status.c:1898
+#: wt-status.c:1907
 #, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr ""
 "rien à valider (créez/copiez des fichiers et utilisez \"git add\" pour les "
 "suivre)\n"
 
-#: wt-status.c:1902 wt-status.c:1908
+#: wt-status.c:1911 wt-status.c:1917
 #, c-format
 msgid "nothing to commit\n"
 msgstr "rien à valider\n"
 
-#: wt-status.c:1905
+#: wt-status.c:1914
 #, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
 msgstr "rien à valider (utilisez -u pour afficher les fichiers non suivis)\n"
 
-#: wt-status.c:1910
+#: wt-status.c:1919
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr "rien à valider, la copie de travail est propre\n"
 
-#: wt-status.c:2015
+#: wt-status.c:2024
 msgid "No commits yet on "
 msgstr "Encore aucun commit sur "
 
-#: wt-status.c:2019
+#: wt-status.c:2028
 msgid "HEAD (no branch)"
 msgstr "HEAD (aucune branche)"
 
-#: wt-status.c:2050
+#: wt-status.c:2059
 msgid "different"
 msgstr "différent"
 
-#: wt-status.c:2052 wt-status.c:2060
+#: wt-status.c:2061 wt-status.c:2069
 msgid "behind "
 msgstr "derrière "
 
-#: wt-status.c:2055 wt-status.c:2058
+#: wt-status.c:2064 wt-status.c:2067
 msgid "ahead "
 msgstr "devant "
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2596
+#: wt-status.c:2605
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr "impossible de %s : vous avez des modifications non indexées."
 
-#: wt-status.c:2602
+#: wt-status.c:2611
 msgid "additionally, your index contains uncommitted changes."
 msgstr "de plus, votre index contient des modifications non validées."
 
-#: wt-status.c:2604
+#: wt-status.c:2613
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr "%s impossible : votre index contient des modifications non validées."
@@ -10578,151 +10840,155 @@ msgstr "impossible de démarrer accept_thread '%s'"
 msgid "could not start worker[0] for '%s'"
 msgstr "impossible de démarrer worker[0] pour '%s'"
 
-#: compat/precompose_utf8.c:58 builtin/clone.c:347
+#: compat/precompose_utf8.c:58 builtin/clone.c:353
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "échec pour délier '%s'"
 
+#: compat/fsmonitor/fsm-listen-darwin.c:355
+msgid "Unable to create FSEventStream."
+msgstr "impossible de créer FSEVEntStream."
+
+#: compat/fsmonitor/fsm-listen-darwin.c:403
+msgid "Failed to start the FSEventStream"
+msgstr "Échec de démarrage de FSEVEntStream"
+
 #: builtin/add.c:26
 msgid "git add [<options>] [--] <pathspec>..."
 msgstr "git add [<options>] [--] <chemin>..."
 
-#: builtin/add.c:64
+#: builtin/add.c:63
 #, c-format
 msgid "cannot chmod %cx '%s'"
 msgstr "impossible de chmod %cx '%s'"
 
-#: builtin/add.c:106
+#: builtin/add.c:105
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "état de diff inattendu %c"
 
-#: builtin/add.c:111 builtin/commit.c:298
+#: builtin/add.c:110 builtin/commit.c:299
 msgid "updating files failed"
 msgstr "échec de la mise à jour des fichiers"
 
-#: builtin/add.c:121
+#: builtin/add.c:120
 #, c-format
 msgid "remove '%s'\n"
 msgstr "suppression de '%s'\n"
 
-#: builtin/add.c:205
+#: builtin/add.c:204
 msgid "Unstaged changes after refreshing the index:"
 msgstr "Modifications non indexées après rafraîchissement de l'index :"
 
-#: builtin/add.c:313 builtin/rev-parse.c:993
+#: builtin/add.c:312 builtin/rev-parse.c:993
 msgid "Could not read the index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/add.c:326
+#: builtin/add.c:325
 msgid "Could not write patch"
 msgstr "Impossible d'écrire le patch"
 
-#: builtin/add.c:329
+#: builtin/add.c:328
 msgid "editing patch failed"
 msgstr "échec de l'édition du patch"
 
-#: builtin/add.c:332
+#: builtin/add.c:331
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "Stat de '%s' impossible"
 
-#: builtin/add.c:334
+#: builtin/add.c:333
 msgid "Empty patch. Aborted."
 msgstr "Patch vide. Abandon."
 
-#: builtin/add.c:340
+#: builtin/add.c:339
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "Impossible d'appliquer '%s'"
 
-#: builtin/add.c:348
+#: builtin/add.c:347
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr ""
 "Les chemins suivants sont ignorés par un de vos fichiers .gitignore :\n"
 
-#: builtin/add.c:368 builtin/clean.c:927 builtin/fetch.c:174 builtin/mv.c:124
+#: builtin/add.c:367 builtin/clean.c:927 builtin/fetch.c:175 builtin/mv.c:124
 #: builtin/prune-packed.c:14 builtin/pull.c:208 builtin/push.c:550
-#: builtin/remote.c:1429 builtin/rm.c:244 builtin/send-pack.c:194
+#: builtin/remote.c:1454 builtin/rm.c:244 builtin/send-pack.c:194
 msgid "dry run"
 msgstr "simuler l'action"
 
-#: builtin/add.c:369 builtin/check-ignore.c:22 builtin/commit.c:1484
-#: builtin/count-objects.c:98 builtin/fsck.c:789 builtin/log.c:2313
+#: builtin/add.c:368 builtin/check-ignore.c:22 builtin/commit.c:1483
+#: builtin/count-objects.c:98 builtin/fsck.c:789 builtin/log.c:2338
 #: builtin/mv.c:123 builtin/read-tree.c:120
 msgid "be verbose"
 msgstr "mode verbeux"
 
-#: builtin/add.c:371
+#: builtin/add.c:370
 msgid "interactive picking"
 msgstr "sélection interactive"
 
-#: builtin/add.c:372 builtin/checkout.c:1581 builtin/reset.c:409
+#: builtin/add.c:371 builtin/checkout.c:1599 builtin/reset.c:417
 msgid "select hunks interactively"
 msgstr "sélection interactive des sections"
 
-#: builtin/add.c:373
+#: builtin/add.c:372
 msgid "edit current diff and apply"
 msgstr "édition du diff actuel et application"
 
-#: builtin/add.c:374
+#: builtin/add.c:373
 msgid "allow adding otherwise ignored files"
 msgstr "permettre l'ajout de fichiers ignorés"
 
-#: builtin/add.c:375
+#: builtin/add.c:374
 msgid "update tracked files"
 msgstr "mettre à jour les fichiers suivis"
 
-#: builtin/add.c:376
+#: builtin/add.c:375
 msgid "renormalize EOL of tracked files (implies -u)"
 msgstr ""
 "renormaliser les fins de lignes (EOL) des fichiers suivis (implique -u)"
 
-#: builtin/add.c:377
+#: builtin/add.c:376
 msgid "record only the fact that the path will be added later"
 msgstr "enregistrer seulement le fait que le chemin sera ajouté plus tard"
 
-#: builtin/add.c:378
+#: builtin/add.c:377
 msgid "add changes from all tracked and untracked files"
 msgstr "ajouter les modifications de tous les fichiers suivis et non suivis"
 
-#: builtin/add.c:381
+#: builtin/add.c:380
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr ""
 "ignorer les chemins effacés dans la copie de travail (identique à --no-all)"
 
-#: builtin/add.c:383
+#: builtin/add.c:382
 msgid "don't add, only refresh the index"
 msgstr "ne pas ajouter, juste rafraîchir l'index"
 
-#: builtin/add.c:384
+#: builtin/add.c:383
 msgid "just skip files which cannot be added because of errors"
 msgstr ""
 "sauter seulement les fichiers qui ne peuvent pas être ajoutés du fait "
 "d'erreurs"
 
-#: builtin/add.c:385
+#: builtin/add.c:384
 msgid "check if - even missing - files are ignored in dry run"
 msgstr "vérifier si des fichiers - même manquants - sont ignorés, à vide"
 
-#: builtin/add.c:386 builtin/mv.c:128 builtin/rm.c:251
+#: builtin/add.c:385 builtin/mv.c:128 builtin/rm.c:251
 msgid "allow updating entries outside of the sparse-checkout cone"
 msgstr ""
 "permettre la mise à jour des entrées hors du cone d'extraction clairsemée"
 
-#: builtin/add.c:388 builtin/update-index.c:1004
+#: builtin/add.c:387 builtin/update-index.c:1023
 msgid "override the executable bit of the listed files"
 msgstr "outrepasser le bit exécutable pour les fichiers listés"
 
-#: builtin/add.c:390
+#: builtin/add.c:389
 msgid "warn when adding an embedded repository"
 msgstr "avertir lors de l'ajout d'un dépôt embarqué"
 
-#: builtin/add.c:392
-msgid "backend for `git stash -p`"
-msgstr "backend pour `git stash -p`"
-
-#: builtin/add.c:410
+#: builtin/add.c:407
 #, c-format
 msgid ""
 "You've added another git repository inside your current repository.\n"
@@ -10753,12 +11019,12 @@ msgstr ""
 "\n"
 "Référez-vous à \"git help submodule\" pour plus d'information."
 
-#: builtin/add.c:439
+#: builtin/add.c:436
 #, c-format
 msgid "adding embedded git repository: %s"
 msgstr "dépôt git embarqué ajouté : %s"
 
-#: builtin/add.c:459
+#: builtin/add.c:456
 msgid ""
 "Use -f if you really want to add them.\n"
 "Turn this message off by running\n"
@@ -10768,29 +11034,29 @@ msgstr ""
 "Éliminez ce message en lançant\n"
 "\"git config advice.addIgnoredFile false\""
 
-#: builtin/add.c:474
+#: builtin/add.c:471
 msgid "adding files failed"
 msgstr "échec de l'ajout de fichiers"
 
-#: builtin/add.c:548
+#: builtin/add.c:534
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "Le paramètre '%s' de --chmod doit être soit -x soit +x"
 
-#: builtin/add.c:569 builtin/checkout.c:1751 builtin/commit.c:364
-#: builtin/reset.c:429 builtin/rm.c:275 builtin/stash.c:1713
+#: builtin/add.c:555 builtin/checkout.c:1770 builtin/commit.c:365
+#: builtin/reset.c:436 builtin/rm.c:275 builtin/stash.c:1702
 #, c-format
 msgid "'%s' and pathspec arguments cannot be used together"
 msgstr ""
 "'%s' et les arguments de spécificateur de chemin ne peuvent pas être "
 "utilisés ensemble"
 
-#: builtin/add.c:580
+#: builtin/add.c:566
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr "Rien de spécifié, rien n'a été ajouté.\n"
 
-#: builtin/add.c:582
+#: builtin/add.c:568
 msgid ""
 "Maybe you wanted to say 'git add .'?\n"
 "Turn this message off by running\n"
@@ -10800,120 +11066,115 @@ msgstr ""
 "Éliminez ce message en lançant\n"
 "\"git config advice.addEmptyPathspec false\""
 
-#: builtin/am.c:202
-#, c-format
-msgid "Invalid value for --empty: %s"
-msgstr "Valeur invalide pour --empty : %s"
-
-#: builtin/am.c:392
+#: builtin/am.c:393
 msgid "could not parse author script"
 msgstr "impossible d'analyser l'auteur du script"
 
-#: builtin/am.c:482
+#: builtin/am.c:483
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr "'%s' a été effacé par le crochet applypatch-msg"
 
-#: builtin/am.c:524
+#: builtin/am.c:525
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Ligne en entrée malformée : '%s'."
 
-#: builtin/am.c:562
+#: builtin/am.c:563
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Impossible de copier les notes de '%s' vers '%s'"
 
-#: builtin/am.c:588
+#: builtin/am.c:589
 msgid "fseek failed"
 msgstr "échec de fseek"
 
-#: builtin/am.c:776
+#: builtin/am.c:777
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "impossible d'analyser le patch '%s'"
 
-#: builtin/am.c:841
+#: builtin/am.c:842
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "Seulement une série de patchs StGIT peut être appliquée à la fois"
 
-#: builtin/am.c:889
+#: builtin/am.c:890
 msgid "invalid timestamp"
 msgstr "horodatage invalide"
 
-#: builtin/am.c:894 builtin/am.c:906
+#: builtin/am.c:895 builtin/am.c:907
 msgid "invalid Date line"
 msgstr "ligne de Date invalide"
 
-#: builtin/am.c:901
+#: builtin/am.c:902
 msgid "invalid timezone offset"
 msgstr "décalage horaire invalide"
 
-#: builtin/am.c:994
+#: builtin/am.c:995
 msgid "Patch format detection failed."
 msgstr "Échec de détection du format du patch."
 
-#: builtin/am.c:999 builtin/clone.c:300
+#: builtin/am.c:1000 builtin/clone.c:306
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "échec de la création du répertoire '%s'"
 
-#: builtin/am.c:1004
+#: builtin/am.c:1005
 msgid "Failed to split patches."
 msgstr "Échec de découpage des patchs."
 
-#: builtin/am.c:1153
+#: builtin/am.c:1154
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr "Quand vous avez résolu ce problème, lancez \"%s --continue\"."
 
-#: builtin/am.c:1154
+#: builtin/am.c:1155
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr "Si vous préférez plutôt sauter ce patch, lancez \"%s --skip\"."
 
-#: builtin/am.c:1159
+#: builtin/am.c:1160
 #, c-format
 msgid "To record the empty patch as an empty commit, run \"%s --allow-empty\"."
 msgstr ""
 "Pour enregistrer la rustine vide comme un commit vide, lancez \"%s --allow-"
 "empty\"."
 
-#: builtin/am.c:1161
+#: builtin/am.c:1162
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr ""
 "Pour restaurer la branche originale et arrêter de patcher, lancez \"%s --"
 "abort\"."
 
-#: builtin/am.c:1256
+#: builtin/am.c:1257
 msgid "Patch sent with format=flowed; space at the end of lines might be lost."
 msgstr ""
 "Rustine envoyée avec format=flowed ; les espaces en fin de ligne peuvent "
 "être perdus."
 
-#: builtin/am.c:1344
+#: builtin/am.c:1345
 #, c-format
 msgid "missing author line in commit %s"
 msgstr "ligne d'auteur manquante dans le commit %s"
 
-#: builtin/am.c:1347
+#: builtin/am.c:1348
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr "ligne d'identification invalide : %.*s"
 
-#: builtin/am.c:1566
+#: builtin/am.c:1567
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr ""
 "Le dépôt n'a pas les blobs nécessaires pour un retour à une fusion à 3 "
 "points."
 
-#: builtin/am.c:1568
+#: builtin/am.c:1569
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 "Utilisation de l'information de l'index pour reconstruire un arbre de base..."
 
-#: builtin/am.c:1587
+#: builtin/am.c:1588
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -10921,24 +11182,24 @@ msgstr ""
 "Avez-vous édité le patch à la main ?\n"
 "Il ne s'applique pas aux blobs enregistrés dans son index."
 
-#: builtin/am.c:1593
+#: builtin/am.c:1594
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Retour à un patch de la base et fusion à 3 points..."
 
-#: builtin/am.c:1619
+#: builtin/am.c:1620
 msgid "Failed to merge in the changes."
 msgstr "Échec d'intégration des modifications."
 
-#: builtin/am.c:1651
+#: builtin/am.c:1652
 msgid "applying to an empty history"
 msgstr "application à un historique vide"
 
-#: builtin/am.c:1703 builtin/am.c:1707
+#: builtin/am.c:1704 builtin/am.c:1708
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "impossible de continuer : %s n'existe pas."
 
-#: builtin/am.c:1725
+#: builtin/am.c:1726
 msgid "Commit Body is:"
 msgstr "Le corps de la validation est :"
 
@@ -10946,58 +11207,58 @@ msgstr "Le corps de la validation est :"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1735
+#: builtin/am.c:1736
 #, c-format
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr "Appliquer ? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all : "
 
-#: builtin/am.c:1781 builtin/commit.c:409
+#: builtin/am.c:1782 builtin/commit.c:410
 msgid "unable to write index file"
 msgstr "impossible d'écrire le fichier d'index"
 
-#: builtin/am.c:1785
+#: builtin/am.c:1786
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Index sale : impossible d'appliquer des patchs (sales : %s)"
 
-#: builtin/am.c:1827
+#: builtin/am.c:1828
 #, c-format
 msgid "Skipping: %.*s"
 msgstr "Ignoré : %.*s"
 
-#: builtin/am.c:1832
+#: builtin/am.c:1833
 #, c-format
 msgid "Creating an empty commit: %.*s"
 msgstr "Création d'un commit vide : %.*s"
 
-#: builtin/am.c:1836
+#: builtin/am.c:1837
 msgid "Patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: builtin/am.c:1847 builtin/am.c:1916
+#: builtin/am.c:1848 builtin/am.c:1917
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Application de  %.*s"
 
-#: builtin/am.c:1864
+#: builtin/am.c:1865
 msgid "No changes -- Patch already applied."
 msgstr "Pas de changement -- Patch déjà appliqué."
 
-#: builtin/am.c:1870
+#: builtin/am.c:1871
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "l'application de la rustine a échoué à %s %.*s"
 
-#: builtin/am.c:1874
+#: builtin/am.c:1875
 msgid "Use 'git am --show-current-patch=diff' to see the failed patch"
 msgstr ""
 "Utilisez 'git am --show-current-patch=diff' pour visualiser le patch en échec"
 
-#: builtin/am.c:1920
+#: builtin/am.c:1921
 msgid "No changes - recorded it as an empty commit."
 msgstr "aucune modification - enregistré comme un commit vide."
 
-#: builtin/am.c:1922
+#: builtin/am.c:1923
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -11008,7 +11269,7 @@ msgstr ""
 "introduit les mêmes changements ; vous pourriez avoir envie de sauter ce "
 "patch."
 
-#: builtin/am.c:1930
+#: builtin/am.c:1931
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -11021,17 +11282,17 @@ msgstr ""
 "Vous pouvez lancer 'git rm' sur un fichier \"supprimé par eux\" pour "
 "accepter son état."
 
-#: builtin/am.c:2038 builtin/am.c:2042 builtin/am.c:2054 builtin/reset.c:448
-#: builtin/reset.c:456
+#: builtin/am.c:2039 builtin/am.c:2043 builtin/am.c:2055 builtin/reset.c:455
+#: builtin/reset.c:463
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Impossible d'analyser l'objet '%s'."
 
-#: builtin/am.c:2090 builtin/am.c:2166
+#: builtin/am.c:2091 builtin/am.c:2167
 msgid "failed to clean index"
 msgstr "échec du nettoyage de l'index"
 
-#: builtin/am.c:2134
+#: builtin/am.c:2135
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -11039,168 +11300,159 @@ msgstr ""
 "Vous semblez avoir déplacé la HEAD depuis le dernier échec de 'am'.\n"
 "Pas de retour à ORIG_HEAD"
 
-#: builtin/am.c:2242
-#, c-format
-msgid "Invalid value for --patch-format: %s"
-msgstr "Valeur invalide pour --patch-format : %s"
-
-#: builtin/am.c:2285
-#, c-format
-msgid "Invalid value for --show-current-patch: %s"
-msgstr "Valeur invalide pour --show-current-patch : %s"
-
-#: builtin/am.c:2289
+#: builtin/am.c:2292
 #, c-format
 msgid "options '%s=%s' and '%s=%s' cannot be used together"
 msgstr "les options '%s=%s' et '%s=%s' ne peuvent pas être utilisées ensemble"
 
-#: builtin/am.c:2320
+#: builtin/am.c:2323
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<options>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/am.c:2321
+#: builtin/am.c:2324
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<options>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2327
+#: builtin/am.c:2330
 msgid "run interactively"
 msgstr "exécution interactive"
 
-#: builtin/am.c:2329
+#: builtin/am.c:2332
 msgid "historical option -- no-op"
 msgstr "option historique -- no-op"
 
-#: builtin/am.c:2331
+#: builtin/am.c:2334
 msgid "allow fall back on 3way merging if needed"
 msgstr "permettre de revenir à une fusion à 3 points si nécessaire"
 
-#: builtin/am.c:2332 builtin/init-db.c:547 builtin/prune-packed.c:16
-#: builtin/repack.c:642 builtin/stash.c:962
+#: builtin/am.c:2335 builtin/init-db.c:547 builtin/prune-packed.c:16
+#: builtin/repack.c:646 builtin/stash.c:946
 msgid "be quiet"
 msgstr "être silencieux"
 
-#: builtin/am.c:2334
+#: builtin/am.c:2337
 msgid "add a Signed-off-by trailer to the commit message"
 msgstr "ajouter une ligne terminale Signed-off-by au message de validation"
 
-#: builtin/am.c:2337
+#: builtin/am.c:2340
 msgid "recode into utf8 (default)"
 msgstr "recoder en utf-8 (par défaut)"
 
-#: builtin/am.c:2339
+#: builtin/am.c:2342
 msgid "pass -k flag to git-mailinfo"
 msgstr "passer l'option -k à git-mailinfo"
 
-#: builtin/am.c:2341
+#: builtin/am.c:2344
 msgid "pass -b flag to git-mailinfo"
 msgstr "passer l'option -b à git-mailinfo"
 
-#: builtin/am.c:2343
+#: builtin/am.c:2346
 msgid "pass -m flag to git-mailinfo"
 msgstr "passer l'option -m à git-mailinfo"
 
-#: builtin/am.c:2345
+#: builtin/am.c:2348
 msgid "pass --keep-cr flag to git-mailsplit for mbox format"
 msgstr "passer l'option --keep-cr à git-mailsplit fpour le format mbox"
 
-#: builtin/am.c:2348
+#: builtin/am.c:2351
 msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
 "ne pas passer l'option --keep-cr à git-mailsplit indépendamment de am.keepcr"
 
-#: builtin/am.c:2351
+#: builtin/am.c:2354
 msgid "strip everything before a scissors line"
 msgstr "retirer tout le contenu avant la ligne des ciseaux"
 
-#: builtin/am.c:2353
+#: builtin/am.c:2356
 msgid "pass it through git-mailinfo"
 msgstr "le passer à travers git-mailinfo"
 
-#: builtin/am.c:2356 builtin/am.c:2359 builtin/am.c:2362 builtin/am.c:2365
-#: builtin/am.c:2368 builtin/am.c:2371 builtin/am.c:2374 builtin/am.c:2377
-#: builtin/am.c:2383
+#: builtin/am.c:2359 builtin/am.c:2362 builtin/am.c:2365 builtin/am.c:2368
+#: builtin/am.c:2371 builtin/am.c:2374 builtin/am.c:2377 builtin/am.c:2380
+#: builtin/am.c:2386
 msgid "pass it through git-apply"
 msgstr "le passer jusqu'à git-apply"
 
-#: builtin/am.c:2373 builtin/commit.c:1515 builtin/fmt-merge-msg.c:18
-#: builtin/fmt-merge-msg.c:21 builtin/grep.c:919 builtin/merge.c:263
+#: builtin/am.c:2376 builtin/commit.c:1514 builtin/fmt-merge-msg.c:18
+#: builtin/fmt-merge-msg.c:21 builtin/grep.c:920 builtin/merge.c:263
 #: builtin/pull.c:142 builtin/pull.c:204 builtin/pull.c:221
-#: builtin/rebase.c:1046 builtin/repack.c:653 builtin/repack.c:657
-#: builtin/repack.c:659 builtin/show-branch.c:649 builtin/show-ref.c:172
-#: builtin/tag.c:445 parse-options.h:154 parse-options.h:175
-#: parse-options.h:317
+#: builtin/rebase.c:1074 builtin/repack.c:657 builtin/repack.c:661
+#: builtin/repack.c:663 builtin/show-branch.c:650 builtin/show-ref.c:172
+#: builtin/tag.c:446 parse-options.h:159 parse-options.h:180
+#: parse-options.h:348
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2379 builtin/branch.c:680 builtin/bugreport.c:109
-#: builtin/for-each-ref.c:41 builtin/replace.c:555 builtin/tag.c:479
-#: builtin/verify-tag.c:38
+#: builtin/am.c:2382 builtin/branch.c:695 builtin/bugreport.c:109
+#: builtin/cat-file.c:848 builtin/cat-file.c:852 builtin/cat-file.c:856
+#: builtin/for-each-ref.c:41 builtin/ls-tree.c:357 builtin/replace.c:555
+#: builtin/tag.c:480 builtin/verify-tag.c:38
 msgid "format"
 msgstr "format"
 
-#: builtin/am.c:2380
+#: builtin/am.c:2383
 msgid "format the patch(es) are in"
 msgstr "format de présentation des patchs"
 
-#: builtin/am.c:2386
+#: builtin/am.c:2389
 msgid "override error message when patch failure occurs"
 msgstr "surcharger le message d'erreur lors d'un échec d'application de patch"
 
-#: builtin/am.c:2388
+#: builtin/am.c:2391
 msgid "continue applying patches after resolving a conflict"
 msgstr "continuer à appliquer les patchs après résolution d'un conflit"
 
-#: builtin/am.c:2391
+#: builtin/am.c:2394
 msgid "synonyms for --continue"
 msgstr "synonymes de --continue"
 
-#: builtin/am.c:2394
+#: builtin/am.c:2397
 msgid "skip the current patch"
 msgstr "sauter le patch courant"
 
-#: builtin/am.c:2397
+#: builtin/am.c:2400
 msgid "restore the original branch and abort the patching operation"
 msgstr "restaurer la branche originale et abandonner les applications de patch"
 
-#: builtin/am.c:2400
+#: builtin/am.c:2403
 msgid "abort the patching operation but keep HEAD where it is"
 msgstr "abandonne l'opération de patch mais garde HEAD où il est"
 
-#: builtin/am.c:2404
+#: builtin/am.c:2407
 msgid "show the patch being applied"
 msgstr "afficher le patch en cours d'application"
 
-#: builtin/am.c:2408
+#: builtin/am.c:2411
 msgid "record the empty patch as an empty commit"
 msgstr "enregistrer la rustine vide comme un commit vide"
 
-#: builtin/am.c:2412
+#: builtin/am.c:2415
 msgid "lie about committer date"
 msgstr "mentir sur la date de validation"
 
-#: builtin/am.c:2414
+#: builtin/am.c:2417
 msgid "use current timestamp for author date"
 msgstr "utiliser l'horodatage actuel pour la date d'auteur"
 
-#: builtin/am.c:2416 builtin/commit-tree.c:118 builtin/commit.c:1643
-#: builtin/merge.c:302 builtin/pull.c:179 builtin/rebase.c:1099
-#: builtin/revert.c:117 builtin/tag.c:460
+#: builtin/am.c:2419 builtin/commit-tree.c:118 builtin/commit.c:1642
+#: builtin/merge.c:302 builtin/pull.c:179 builtin/rebase.c:1127
+#: builtin/revert.c:117 builtin/tag.c:461
 msgid "key-id"
 msgstr "id-clé"
 
-#: builtin/am.c:2417 builtin/rebase.c:1100
+#: builtin/am.c:2420 builtin/rebase.c:1128
 msgid "GPG-sign commits"
 msgstr "signer les commits avec GPG"
 
-#: builtin/am.c:2420
+#: builtin/am.c:2423
 msgid "how to handle empty patches"
 msgstr "comment gérer les rustines vides"
 
-#: builtin/am.c:2423
+#: builtin/am.c:2426
 msgid "(internal use for git-rebase)"
 msgstr "(utilisation interne pour git-rebase)"
 
-#: builtin/am.c:2441
+#: builtin/am.c:2444
 msgid ""
 "The -b/--binary option has been a no-op for long time, and\n"
 "it will be removed. Please do not use it anymore."
@@ -11208,17 +11460,17 @@ msgstr ""
 "L'option -b/--binary ne fait plus rien depuis longtemps,\n"
 "et elle sera supprimée. Veuillez ne plus l'utiliser."
 
-#: builtin/am.c:2448
+#: builtin/am.c:2451
 msgid "failed to read the index"
 msgstr "échec à la lecture de l'index"
 
-#: builtin/am.c:2463
+#: builtin/am.c:2466
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr ""
 "le répertoire précédent de rebasage %s existe toujours mais mbox donnée."
 
-#: builtin/am.c:2487
+#: builtin/am.c:2490
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -11227,13 +11479,13 @@ msgstr ""
 "Répertoire abandonné %s trouvé.\n"
 "Utilisez \"git am --abort\" pour le supprimer."
 
-#: builtin/am.c:2493
+#: builtin/am.c:2496
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr ""
 "Pas de résolution de l'opération en cours, nous ne sommes pas dans une "
 "reprise."
 
-#: builtin/am.c:2503
+#: builtin/am.c:2506
 msgid "interactive mode requires patches on the command line"
 msgstr "le mode interactif requiert des rustines sur la ligne de commande"
 
@@ -11270,14 +11522,6 @@ msgstr "git archive : vidage attendu"
 msgid "git bisect--helper --bisect-reset [<commit>]"
 msgstr "git bisect--helper --bisect-reset [<commit>]"
 
-#: builtin/bisect--helper.c:25
-msgid ""
-"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
-"term-new]"
-msgstr ""
-"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
-"term-new]"
-
 #: builtin/bisect--helper.c:26
 msgid ""
 "git bisect--helper --bisect-start [--term-{new,bad}=<term> --term-{old,good}"
@@ -11288,10 +11532,6 @@ msgstr ""
 "=<terme>][--no-checkout] [--first-parent] [<mauvais> [<bon>...]] [--] "
 "[<chemins>...]"
 
-#: builtin/bisect--helper.c:28
-msgid "git bisect--helper --bisect-next"
-msgstr "git bisect--helper --bisect-next"
-
 #: builtin/bisect--helper.c:29
 msgid "git bisect--helper --bisect-state (bad|new) [<rev>]"
 msgstr "git bisect--helper --bisect-state (bad|new) [<rév>]"
@@ -11308,10 +11548,6 @@ msgstr "git bisect--helper --bisect-replay <nom-de-fichier>"
 msgid "git bisect--helper --bisect-skip [(<rev>|<range>)...]"
 msgstr "git bisect--helper --bisect-skip [(<rév>|<plage>)...]"
 
-#: builtin/bisect--helper.c:33
-msgid "git bisect--helper --bisect-visualize"
-msgstr "git bisect--helper --bisect-visualize"
-
 #: builtin/bisect--helper.c:34
 msgid "git bisect--helper --bisect-run <cmd>..."
 msgstr "git bisect--helper --bisect-run <cmd>..."
@@ -11535,40 +11771,50 @@ msgstr "'%s' ?? de quoi parlez-vous ?"
 msgid "cannot read file '%s' for replaying"
 msgstr "impossible de lire le fichier '%s' pour rejouer"
 
-#: builtin/bisect--helper.c:1107 builtin/bisect--helper.c:1274
+#: builtin/bisect--helper.c:1120 builtin/bisect--helper.c:1152
+#, c-format
+msgid "running %s\n"
+msgstr "Lancement de %s\n"
+
+#: builtin/bisect--helper.c:1145 builtin/bisect--helper.c:1335
 msgid "bisect run failed: no command provided."
 msgstr "la bissection a échoué : aucune commande fournie."
 
-#: builtin/bisect--helper.c:1116
+#: builtin/bisect--helper.c:1166
 #, c-format
-msgid "running %s\n"
-msgstr "Lancement de %s\n"
+msgid "unable to verify '%s' on good revision"
+msgstr "impossible de vérifier '%s' sur une bonne révision"
+
+#: builtin/bisect--helper.c:1172
+#, c-format
+msgid "bogus exit code %d for good revision"
+msgstr "code de sortie %d erroné pour une bonne révision"
 
-#: builtin/bisect--helper.c:1120
+#: builtin/bisect--helper.c:1180
 #, c-format
 msgid "bisect run failed: exit code %d from '%s' is < 0 or >= 128"
 msgstr "la bissection a échoué : le code retour %d de '%s' est < 0 ou >= 128"
 
-#: builtin/bisect--helper.c:1136
+#: builtin/bisect--helper.c:1195
 #, c-format
 msgid "cannot open file '%s' for writing"
 msgstr "impossible d'ouvrir '%s' en écriture"
 
-#: builtin/bisect--helper.c:1152
+#: builtin/bisect--helper.c:1213
 msgid "bisect run cannot continue any more"
 msgstr "la bissection ne peut plus continuer"
 
-#: builtin/bisect--helper.c:1154
+#: builtin/bisect--helper.c:1215
 #, c-format
 msgid "bisect run success"
 msgstr "succès de la bissection"
 
-#: builtin/bisect--helper.c:1157
+#: builtin/bisect--helper.c:1218
 #, c-format
 msgid "bisect found first bad commit"
 msgstr "la bissection a trouvé le premier mauvais commit"
 
-#: builtin/bisect--helper.c:1160
+#: builtin/bisect--helper.c:1221
 #, c-format
 msgid ""
 "bisect run failed: 'git bisect--helper --bisect-state %s' exited with error "
@@ -11577,71 +11823,71 @@ msgstr ""
 "la bissection a échoué : 'git bisect--helper --bisect-state %s' a retourné "
 "le code erreur %d"
 
-#: builtin/bisect--helper.c:1192
+#: builtin/bisect--helper.c:1253
 msgid "reset the bisection state"
 msgstr "réinitialiser l'état de la bissection"
 
-#: builtin/bisect--helper.c:1194
+#: builtin/bisect--helper.c:1255
 msgid "check whether bad or good terms exist"
 msgstr "vérifier si les termes bons ou mauvais existent"
 
-#: builtin/bisect--helper.c:1196
+#: builtin/bisect--helper.c:1257
 msgid "print out the bisect terms"
 msgstr "afficher les termes de bissection"
 
-#: builtin/bisect--helper.c:1198
+#: builtin/bisect--helper.c:1259
 msgid "start the bisect session"
 msgstr "démarrer une session de bissection"
 
-#: builtin/bisect--helper.c:1200
+#: builtin/bisect--helper.c:1261
 msgid "find the next bisection commit"
 msgstr "trouver le prochain commit de bissection"
 
-#: builtin/bisect--helper.c:1202
+#: builtin/bisect--helper.c:1263
 msgid "mark the state of ref (or refs)"
 msgstr "marquer l'état d'une références (ou plusieurs)"
 
-#: builtin/bisect--helper.c:1204
+#: builtin/bisect--helper.c:1265
 msgid "list the bisection steps so far"
 msgstr "lister les étapes de bissection jusqu'ici"
 
-#: builtin/bisect--helper.c:1206
+#: builtin/bisect--helper.c:1267
 msgid "replay the bisection process from the given file"
 msgstr "rejouer le processus de bissection depuis le fichier fourni"
 
-#: builtin/bisect--helper.c:1208
+#: builtin/bisect--helper.c:1269
 msgid "skip some commits for checkout"
 msgstr "sauter certains commits pour l'extraction"
 
-#: builtin/bisect--helper.c:1210
+#: builtin/bisect--helper.c:1271
 msgid "visualize the bisection"
 msgstr "visualiser la bissection"
 
-#: builtin/bisect--helper.c:1212
-msgid "use <cmd>... to automatically bisect."
-msgstr "utiliser <cmd>... pour bissecter automatiquement."
+#: builtin/bisect--helper.c:1273
+msgid "use <cmd>... to automatically bisect"
+msgstr "utiliser <cmd>... pour bissecter automatiquement"
 
-#: builtin/bisect--helper.c:1214
+#: builtin/bisect--helper.c:1275
 msgid "no log for BISECT_WRITE"
 msgstr "pas de journal pour BISECT_WRITE"
 
-#: builtin/bisect--helper.c:1229
+#: builtin/bisect--helper.c:1290
 msgid "--bisect-reset requires either no argument or a commit"
 msgstr "--bisect-reset supporte soit aucun argument, soit un commit"
 
-#: builtin/bisect--helper.c:1234
+#: builtin/bisect--helper.c:1295
 msgid "--bisect-terms requires 0 or 1 argument"
 msgstr "--bisect-terms exige 0 ou 1 argument"
 
-#: builtin/bisect--helper.c:1243
+#: builtin/bisect--helper.c:1304
 msgid "--bisect-next requires 0 arguments"
 msgstr "--bisect-next exige 0 argument"
 
-#: builtin/bisect--helper.c:1254
+#: builtin/bisect--helper.c:1315
 msgid "--bisect-log requires 0 arguments"
 msgstr "--bisect-log exige 0 argument"
 
-#: builtin/bisect--helper.c:1259
+#: builtin/bisect--helper.c:1320
 msgid "no logfile given"
 msgstr "pas de fichier de log donné"
 
@@ -11662,152 +11908,143 @@ msgstr "couleur attendue : %s"
 msgid "must end with a color"
 msgstr "doit finir avec une couleur"
 
-#: builtin/blame.c:724
-#, c-format
-msgid "invalid color '%s' in color.blame.repeatedLines"
-msgstr "couleur invalide '%s' dans color.blame.repeatedLines"
-
-#: builtin/blame.c:742
-msgid "invalid value for blame.coloring"
-msgstr "valeur invalide pour blame.coloring"
-
-#: builtin/blame.c:841
+#: builtin/blame.c:842
 #, c-format
 msgid "cannot find revision %s to ignore"
 msgstr "référence à ignorer %s introuvable"
 
-#: builtin/blame.c:863
+#: builtin/blame.c:864
 msgid "show blame entries as we find them, incrementally"
 msgstr ""
 "montrer les éléments de blâme au fur et à mesure de leur découverte, de "
 "manière incrémentale"
 
-#: builtin/blame.c:864
+#: builtin/blame.c:865
 msgid "do not show object names of boundary commits (Default: off)"
 msgstr ""
 "ne pas montrer les noms des objets pour les commits de limite (Défaut : "
 "désactivé)"
 
-#: builtin/blame.c:865
+#: builtin/blame.c:866
 msgid "do not treat root commits as boundaries (Default: off)"
 msgstr ""
 "ne pas traiter les commits racine comme des limites (Défaut : désactivé)"
 
-#: builtin/blame.c:866
+#: builtin/blame.c:867
 msgid "show work cost statistics"
 msgstr "montrer les statistiques de coût d'activité"
 
-#: builtin/blame.c:867 builtin/checkout.c:1536 builtin/clone.c:94
-#: builtin/commit-graph.c:75 builtin/commit-graph.c:228 builtin/fetch.c:180
+#: builtin/blame.c:868 builtin/checkout.c:1554 builtin/clone.c:98
+#: builtin/commit-graph.c:75 builtin/commit-graph.c:228 builtin/fetch.c:181
 #: builtin/merge.c:301 builtin/multi-pack-index.c:103
 #: builtin/multi-pack-index.c:154 builtin/multi-pack-index.c:180
 #: builtin/multi-pack-index.c:208 builtin/pull.c:120 builtin/push.c:566
-#: builtin/send-pack.c:202
+#: builtin/remote.c:683 builtin/send-pack.c:202
 msgid "force progress reporting"
 msgstr "forcer l'affichage de l'état d'avancement"
 
-#: builtin/blame.c:868
+#: builtin/blame.c:869
 msgid "show output score for blame entries"
 msgstr "montrer le score de sortie pour les éléments de blâme"
 
-#: builtin/blame.c:869
+#: builtin/blame.c:870
 msgid "show original filename (Default: auto)"
 msgstr "montrer les noms de fichier originaux (Défaut : auto)"
 
-#: builtin/blame.c:870
+#: builtin/blame.c:871
 msgid "show original linenumber (Default: off)"
 msgstr "montrer les numéros de lignes originaux (Défaut : désactivé)"
 
-#: builtin/blame.c:871
+#: builtin/blame.c:872
 msgid "show in a format designed for machine consumption"
 msgstr "afficher dans un format propice à la consommation par machine"
 
-#: builtin/blame.c:872
+#: builtin/blame.c:873
 msgid "show porcelain format with per-line commit information"
 msgstr "afficher en format porcelaine avec l'information de commit par ligne"
 
-#: builtin/blame.c:873
+#: builtin/blame.c:874
 msgid "use the same output mode as git-annotate (Default: off)"
 msgstr "utiliser le même mode de sortie que git-annotate (Défaut : désactivé)"
 
-#: builtin/blame.c:874
+#: builtin/blame.c:875
 msgid "show raw timestamp (Default: off)"
 msgstr "afficher les horodatages bruts (Défaut : désactivé)"
 
-#: builtin/blame.c:875
+#: builtin/blame.c:876
 msgid "show long commit SHA1 (Default: off)"
 msgstr "afficher les longs SHA1 de commits (Défaut : désactivé)"
 
-#: builtin/blame.c:876
+#: builtin/blame.c:877
 msgid "suppress author name and timestamp (Default: off)"
 msgstr "supprimer le nom de l'auteur et l'horodatage (Défaut : désactivé)"
 
-#: builtin/blame.c:877
+#: builtin/blame.c:878
 msgid "show author email instead of name (Default: off)"
 msgstr "afficher le courriel de l'auteur au lieu du nom (Défaut : désactivé)"
 
-#: builtin/blame.c:878
+#: builtin/blame.c:879
 msgid "ignore whitespace differences"
 msgstr "ignorer les différences d'espace"
 
-#: builtin/blame.c:879 builtin/log.c:1838
+#: builtin/blame.c:880 builtin/log.c:1857
 msgid "rev"
 msgstr "rév"
 
-#: builtin/blame.c:879
+#: builtin/blame.c:880
 msgid "ignore <rev> when blaming"
 msgstr "ignorer <rev> pendant le blâme"
 
-#: builtin/blame.c:880
+#: builtin/blame.c:881
 msgid "ignore revisions from <file>"
 msgstr "ignorer les révisions listées dans <fichier>"
 
-#: builtin/blame.c:881
+#: builtin/blame.c:882
 msgid "color redundant metadata from previous line differently"
 msgstr ""
 "colorer différemment les métadonnées redondantes avec la ligne précédente"
 
-#: builtin/blame.c:882
+#: builtin/blame.c:883
 msgid "color lines by age"
 msgstr "colorier les lignes par âge"
 
-#: builtin/blame.c:883
+#: builtin/blame.c:884
 msgid "spend extra cycles to find better match"
 msgstr ""
 "dépenser des cycles supplémentaires pour trouver une meilleure correspondance"
 
-#: builtin/blame.c:884
+#: builtin/blame.c:885
 msgid "use revisions from <file> instead of calling git-rev-list"
 msgstr ""
 "utiliser les révisions du fichier <fichier> au lieu d'appeler git-rev-list"
 
-#: builtin/blame.c:885
+#: builtin/blame.c:886
 msgid "use <file>'s contents as the final image"
 msgstr "utiliser le contenu de <fichier> comme image finale"
 
-#: builtin/blame.c:886 builtin/blame.c:887
+#: builtin/blame.c:887 builtin/blame.c:888
 msgid "score"
 msgstr "score"
 
-#: builtin/blame.c:886
+#: builtin/blame.c:887
 msgid "find line copies within and across files"
 msgstr "trouver les copies de ligne dans et entre les fichiers"
 
-#: builtin/blame.c:887
+#: builtin/blame.c:888
 msgid "find line movements within and across files"
 msgstr "trouver les mouvements de ligne dans et entre les fichiers"
 
-#: builtin/blame.c:888
+#: builtin/blame.c:889
 msgid "range"
 msgstr "plage"
 
-#: builtin/blame.c:889
+#: builtin/blame.c:890
 msgid "process only line range <start>,<end> or function :<funcname>"
 msgstr ""
 "traiter seulement l'intervalle de ligne <début>,<fin> ou la fonction : <nom-"
 "de-fonction>"
 
-#: builtin/blame.c:947
+#: builtin/blame.c:949
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress ne peut pas être utilisé avec --incremental ou les formats "
@@ -11821,18 +12058,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:998
+#: builtin/blame.c:1000
 msgid "4 years, 11 months ago"
 msgstr "il y a 10 ans et 11 mois"
 
-#: builtin/blame.c:1114
+#: builtin/blame.c:1116
 #, c-format
 msgid "file %s has only %lu line"
 msgid_plural "file %s has only %lu lines"
 msgstr[0] "le fichier %s n'a qu'%lu ligne"
 msgstr[1] "le fichier %s n'a que %lu lignes"
 
-#: builtin/blame.c:1159
+#: builtin/blame.c:1161
 msgid "Blaming lines"
 msgstr "Assignation de blâme aux lignes"
 
@@ -11841,32 +12078,40 @@ msgid "git branch [<options>] [-r | -a] [--merged] [--no-merged]"
 msgstr "git branch [<options>] [-r | -a] [--merged | --no-merged]"
 
 #: builtin/branch.c:30
-msgid "git branch [<options>] [-l] [-f] <branch-name> [<start-point>]"
-msgstr "git branch [<options>] [-l] [-f] <nom-de-branche> [<point-de-départ>]"
+msgid ""
+"git branch [<options>] [-f] [--recurse-submodules] <branch-name> [<start-"
+"point>]"
+msgstr ""
+"git branch [<options>] [-f] [--recurse-submodules] <nom-de-branche> [<point-"
+"de-départ>]"
 
 #: builtin/branch.c:31
+msgid "git branch [<options>] [-l] [<pattern>...]"
+msgstr "git branch [<options>] [-l] [<motif>...]"
+
+#: builtin/branch.c:32
 msgid "git branch [<options>] [-r] (-d | -D) <branch-name>..."
 msgstr "git branch [<options>] [-r] (-d | -D) <nom-de-branche>..."
 
-#: builtin/branch.c:32
+#: builtin/branch.c:33
 msgid "git branch [<options>] (-m | -M) [<old-branch>] <new-branch>"
 msgstr ""
 "git branch [<options>] (-m | -M) [<ancienne-branche>] <nouvelle-branche>"
 
-#: builtin/branch.c:33
+#: builtin/branch.c:34
 msgid "git branch [<options>] (-c | -C) [<old-branch>] <new-branch>"
 msgstr ""
 "git branch [<options>] (-c | -C) [<ancienne-branche>] <nouvelle-branche>"
 
-#: builtin/branch.c:34
+#: builtin/branch.c:35
 msgid "git branch [<options>] [-r | -a] [--points-at]"
 msgstr "git branch [<options>] [-r | -a] [--points-at]"
 
-#: builtin/branch.c:35
+#: builtin/branch.c:36
 msgid "git branch [<options>] [-r | -a] [--format]"
 msgstr "git branch [<options>] [-r | -a] [--format]"
 
-#: builtin/branch.c:153
+#: builtin/branch.c:165
 #, c-format
 msgid ""
 "deleting branch '%s' that has been merged to\n"
@@ -11875,7 +12120,7 @@ msgstr ""
 "suppression de la branche '%s' qui a été fusionnée dans\n"
 "         '%s', mais pas dans HEAD."
 
-#: builtin/branch.c:157
+#: builtin/branch.c:169
 #, c-format
 msgid ""
 "not deleting branch '%s' that is not yet merged to\n"
@@ -11884,12 +12129,12 @@ msgstr ""
 "branche '%s' non supprimée car elle n'a pas été fusionnée dans\n"
 "         '%s', même si elle est fusionnée dans HEAD."
 
-#: builtin/branch.c:171
+#: builtin/branch.c:183
 #, c-format
 msgid "Couldn't look up commit object for '%s'"
 msgstr "Impossible de rechercher l'objet commit pour '%s'"
 
-#: builtin/branch.c:175
+#: builtin/branch.c:187
 #, c-format
 msgid ""
 "The branch '%s' is not fully merged.\n"
@@ -11898,115 +12143,115 @@ msgstr ""
 "La branche '%s' n'est pas totalement fusionnée.\n"
 "Si vous souhaitez réellement la supprimer, lancez 'git branch -D %s'."
 
-#: builtin/branch.c:188
+#: builtin/branch.c:200
 msgid "Update of config-file failed"
 msgstr "Échec de la mise à jour du fichier de configuration"
 
-#: builtin/branch.c:223
+#: builtin/branch.c:235
 msgid "cannot use -a with -d"
 msgstr "impossible d'utiliser -a avec -d"
 
-#: builtin/branch.c:230
+#: builtin/branch.c:242
 msgid "Couldn't look up commit object for HEAD"
 msgstr "Impossible de rechercher l'objet commit pour HEAD"
 
-#: builtin/branch.c:247
+#: builtin/branch.c:259
 #, c-format
 msgid "Cannot delete branch '%s' checked out at '%s'"
 msgstr "Impossible de supprimer la branche '%s' extraite dans '%s'"
 
-#: builtin/branch.c:262
+#: builtin/branch.c:274
 #, c-format
 msgid "remote-tracking branch '%s' not found."
 msgstr "branche de suivi '%s' non trouvée."
 
-#: builtin/branch.c:263
+#: builtin/branch.c:275
 #, c-format
 msgid "branch '%s' not found."
 msgstr "branche '%s' non trouvée."
 
-#: builtin/branch.c:294
+#: builtin/branch.c:306
 #, c-format
 msgid "Deleted remote-tracking branch %s (was %s).\n"
 msgstr "Branche de suivi %s supprimée (précédemment %s).\n"
 
-#: builtin/branch.c:295
+#: builtin/branch.c:307
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr "Branche %s supprimée (précédemment %s).\n"
 
-#: builtin/branch.c:445 builtin/tag.c:63
+#: builtin/branch.c:457 builtin/tag.c:64
 msgid "unable to parse format string"
 msgstr "impossible d'analyser la chaîne de format"
 
-#: builtin/branch.c:476
+#: builtin/branch.c:488
 msgid "could not resolve HEAD"
 msgstr "impossible de résoudre HEAD"
 
-#: builtin/branch.c:482
+#: builtin/branch.c:494
 #, c-format
 msgid "HEAD (%s) points outside of refs/heads/"
 msgstr "HEAD (%s) pointe hors de refs/heads/"
 
-#: builtin/branch.c:497
+#: builtin/branch.c:509
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr "La branche %s est en cours de rebasage sur %s"
 
-#: builtin/branch.c:501
+#: builtin/branch.c:513
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr "La branche %s est en cours de bissection sur %s"
 
-#: builtin/branch.c:518
+#: builtin/branch.c:530
 msgid "cannot copy the current branch while not on any."
 msgstr "impossible de copier la branche actuelle, il n'y en a pas."
 
-#: builtin/branch.c:520
+#: builtin/branch.c:532
 msgid "cannot rename the current branch while not on any."
 msgstr "impossible de renommer la branche actuelle, il n'y en a pas."
 
-#: builtin/branch.c:531
+#: builtin/branch.c:543
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Nom de branche invalide : '%s'"
 
-#: builtin/branch.c:560
+#: builtin/branch.c:572
 msgid "Branch rename failed"
 msgstr "Échec de renommage de la branche"
 
-#: builtin/branch.c:562
+#: builtin/branch.c:574
 msgid "Branch copy failed"
 msgstr "Échec de copie de la branche"
 
-#: builtin/branch.c:566
+#: builtin/branch.c:578
 #, c-format
 msgid "Created a copy of a misnamed branch '%s'"
 msgstr "Création d'une copie d'une branche mal nommée '%s'"
 
-#: builtin/branch.c:569
+#: builtin/branch.c:581
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "Renommage d'une branche mal nommée '%s'"
 
-#: builtin/branch.c:575
+#: builtin/branch.c:587
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "La branche a été renommée en %s, mais HEAD n'est pas mise à jour !"
 
-#: builtin/branch.c:584
+#: builtin/branch.c:596
 msgid "Branch is renamed, but update of config-file failed"
 msgstr ""
 "La branche est renommée, mais la mise à jour du fichier de configuration a "
 "échoué"
 
-#: builtin/branch.c:586
+#: builtin/branch.c:598
 msgid "Branch is copied, but update of config-file failed"
 msgstr ""
 "La branche est copiée, mais la mise à jour du fichier de configuration a "
 "échoué"
 
-#: builtin/branch.c:602
+#: builtin/branch.c:614
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -12017,176 +12262,193 @@ msgstr ""
 "  %s\n"
 "Les lignes commençant par '%c' seront ignorées.\n"
 
-#: builtin/branch.c:637
+#: builtin/branch.c:651
 msgid "Generic options"
 msgstr "Options génériques"
 
-#: builtin/branch.c:639
+#: builtin/branch.c:653
 msgid "show hash and subject, give twice for upstream branch"
 msgstr "afficher le hachage et le sujet, doublé pour la branche amont"
 
-#: builtin/branch.c:640
+#: builtin/branch.c:654
 msgid "suppress informational messages"
 msgstr "supprimer les messages d'information"
 
-#: builtin/branch.c:642
+#: builtin/branch.c:656 builtin/checkout.c:1571
+#: builtin/submodule--helper.c:3077
 msgid "set branch tracking configuration"
 msgstr "règler la configuration des branches de suivi"
 
-#: builtin/branch.c:645
+#: builtin/branch.c:659
 msgid "do not use"
 msgstr "ne pas utiliser"
 
-#: builtin/branch.c:647
+#: builtin/branch.c:661
 msgid "upstream"
 msgstr "amont"
 
-#: builtin/branch.c:647
+#: builtin/branch.c:661
 msgid "change the upstream info"
 msgstr "modifier l'information amont"
 
-#: builtin/branch.c:648
+#: builtin/branch.c:662
 msgid "unset the upstream info"
 msgstr "désactiver l'information amont"
 
-#: builtin/branch.c:649
+#: builtin/branch.c:663
 msgid "use colored output"
 msgstr "utiliser la coloration dans la sortie"
 
-#: builtin/branch.c:650
+#: builtin/branch.c:664
 msgid "act on remote-tracking branches"
 msgstr "agir sur les branches de suivi distantes"
 
-#: builtin/branch.c:652 builtin/branch.c:654
+#: builtin/branch.c:666 builtin/branch.c:668
 msgid "print only branches that contain the commit"
 msgstr "afficher seulement les branches qui contiennent le commit"
 
-#: builtin/branch.c:653 builtin/branch.c:655
+#: builtin/branch.c:667 builtin/branch.c:669
 msgid "print only branches that don't contain the commit"
 msgstr "afficher seulement les branches qui ne contiennent pas le commit"
 
-#: builtin/branch.c:658
+#: builtin/branch.c:672
 msgid "Specific git-branch actions:"
 msgstr "Actions spécifiques à git-branch :"
 
-#: builtin/branch.c:659
+#: builtin/branch.c:673
 msgid "list both remote-tracking and local branches"
 msgstr "afficher à la fois les branches de suivi et les branches locales"
 
-#: builtin/branch.c:661
+#: builtin/branch.c:675
 msgid "delete fully merged branch"
 msgstr "supprimer une branche totalement fusionnée"
 
-#: builtin/branch.c:662
+#: builtin/branch.c:676
 msgid "delete branch (even if not merged)"
 msgstr "supprimer une branche (même non fusionnée)"
 
-#: builtin/branch.c:663
+#: builtin/branch.c:677
 msgid "move/rename a branch and its reflog"
 msgstr "déplacer/renommer une branche et son reflog"
 
-#: builtin/branch.c:664
+#: builtin/branch.c:678
 msgid "move/rename a branch, even if target exists"
 msgstr "déplacer/renommer une branche, même si la cible existe"
 
-#: builtin/branch.c:665
+#: builtin/branch.c:679
 msgid "copy a branch and its reflog"
 msgstr "copier une branche et son reflog"
 
-#: builtin/branch.c:666
+#: builtin/branch.c:680
 msgid "copy a branch, even if target exists"
 msgstr "copier une branche, même si la cible existe"
 
-#: builtin/branch.c:667
+#: builtin/branch.c:681
 msgid "list branch names"
 msgstr "afficher les noms des branches"
 
-#: builtin/branch.c:668
+#: builtin/branch.c:682
 msgid "show current branch name"
 msgstr "afficher le nom de la branche courante"
 
-#: builtin/branch.c:669
+#: builtin/branch.c:683 builtin/submodule--helper.c:3075
 msgid "create the branch's reflog"
 msgstr "créer le reflog de la branche"
 
-#: builtin/branch.c:671
+#: builtin/branch.c:685
 msgid "edit the description for the branch"
 msgstr "éditer la description de la branche"
 
-#: builtin/branch.c:672
+#: builtin/branch.c:686
 msgid "force creation, move/rename, deletion"
 msgstr "forcer la création, le déplacement/renommage, ou la suppression"
 
-#: builtin/branch.c:673
+#: builtin/branch.c:687
 msgid "print only branches that are merged"
 msgstr "afficher seulement les branches qui sont fusionnées"
 
-#: builtin/branch.c:674
+#: builtin/branch.c:688
 msgid "print only branches that are not merged"
 msgstr "afficher seulement les branches qui ne sont pas fusionnées"
 
-#: builtin/branch.c:675
+#: builtin/branch.c:689
 msgid "list branches in columns"
 msgstr "afficher les branches en colonnes"
 
-#: builtin/branch.c:677 builtin/for-each-ref.c:45 builtin/notes.c:413
+#: builtin/branch.c:691 builtin/for-each-ref.c:45 builtin/notes.c:413
 #: builtin/notes.c:416 builtin/notes.c:579 builtin/notes.c:582
-#: builtin/tag.c:475
+#: builtin/tag.c:476
 msgid "object"
 msgstr "objet"
 
-#: builtin/branch.c:678
+#: builtin/branch.c:692
 msgid "print only branches of the object"
 msgstr "afficher seulement les branches de l'objet"
 
-#: builtin/branch.c:679 builtin/for-each-ref.c:51 builtin/tag.c:482
+#: builtin/branch.c:693 builtin/for-each-ref.c:51 builtin/tag.c:483
 msgid "sorting and filtering are case insensitive"
 msgstr "le tri et le filtrage sont non-sensibles à la casse"
 
-#: builtin/branch.c:680 builtin/for-each-ref.c:41 builtin/tag.c:480
-#: builtin/verify-tag.c:38
+#: builtin/branch.c:694 builtin/ls-files.c:667
+msgid "recurse through submodules"
+msgstr "parcourir récursivement les sous-modules"
+
+#: builtin/branch.c:695 builtin/for-each-ref.c:41 builtin/ls-tree.c:358
+#: builtin/tag.c:481 builtin/verify-tag.c:38
 msgid "format to use for the output"
 msgstr "format à utiliser pour la sortie"
 
-#: builtin/branch.c:703 builtin/clone.c:678
+#: builtin/branch.c:718 builtin/clone.c:684
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD non trouvée sous refs/heads !"
 
-#: builtin/branch.c:742 builtin/branch.c:798 builtin/branch.c:807
+#: builtin/branch.c:739
+msgid ""
+"branch with --recurse-submodules can only be used if submodule."
+"propagateBranches is enabled"
+msgstr ""
+"brancher avec --recurse-submodules ne peut être utilisé que si submodule."
+"propagateBranches est activé"
+
+#: builtin/branch.c:741
+msgid "--recurse-submodules can only be used to create branches"
+msgstr "--recurse-submodules ne peut être utilisé que pour créer des branches"
+
+#: builtin/branch.c:770 builtin/branch.c:826 builtin/branch.c:835
 msgid "branch name required"
 msgstr "le nom de branche est requis"
 
-#: builtin/branch.c:774
+#: builtin/branch.c:802
 msgid "Cannot give description to detached HEAD"
 msgstr "Impossible de décrire une HEAD détachée"
 
-#: builtin/branch.c:779
+#: builtin/branch.c:807
 msgid "cannot edit description of more than one branch"
 msgstr "impossible d'éditer la description de plus d'une branche"
 
-#: builtin/branch.c:786
+#: builtin/branch.c:814
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr "Aucun commit sur la branche '%s'."
 
-#: builtin/branch.c:789
+#: builtin/branch.c:817
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Aucune branche nommée '%s'."
 
-#: builtin/branch.c:804
+#: builtin/branch.c:832
 msgid "too many branches for a copy operation"
 msgstr "trop de branches pour une opération de copie"
 
-#: builtin/branch.c:813
+#: builtin/branch.c:841
 msgid "too many arguments for a rename operation"
 msgstr "trop d'arguments pour une opération de renommage"
 
-#: builtin/branch.c:818
+#: builtin/branch.c:846
 msgid "too many arguments to set new upstream"
 msgstr "trop d'arguments pour spécifier une branche amont"
 
-#: builtin/branch.c:822
+#: builtin/branch.c:850
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -12194,32 +12456,32 @@ msgstr ""
 "impossible de spécifier une branche amont de HEAD par %s qui ne pointe sur "
 "aucune branche."
 
-#: builtin/branch.c:825 builtin/branch.c:848
+#: builtin/branch.c:853 builtin/branch.c:873
 #, c-format
 msgid "no such branch '%s'"
 msgstr "pas de branche '%s'"
 
-#: builtin/branch.c:829
+#: builtin/branch.c:857
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "la branche '%s' n'existe pas"
 
-#: builtin/branch.c:842
+#: builtin/branch.c:867
 msgid "too many arguments to unset upstream"
 msgstr "trop d'arguments pour désactiver un amont"
 
-#: builtin/branch.c:846
+#: builtin/branch.c:871
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr ""
 "impossible de désactiver une branche amont de HEAD quand elle ne pointe sur "
 "aucune branche."
 
-#: builtin/branch.c:852
+#: builtin/branch.c:877
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "La branche '%s' n'a aucune information de branche amont"
 
-#: builtin/branch.c:862
+#: builtin/branch.c:890
 msgid ""
 "The -a, and -r, options to 'git branch' do not take a branch name.\n"
 "Did you mean to use: -a|-r --list <pattern>?"
@@ -12228,7 +12490,7 @@ msgstr ""
 "branche.\n"
 "Vouliez-vous plutôt dire -a|-r --list <motif> ?"
 
-#: builtin/branch.c:866
+#: builtin/branch.c:894
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -12345,19 +12607,19 @@ msgstr "git bundle list-heads <fichier> [<nom-de-ref>...]"
 msgid "git bundle unbundle <file> [<refname>...]"
 msgstr "git bundle unbundle <fichier> [<nom-de-ref>...]"
 
-#: builtin/bundle.c:65 builtin/pack-objects.c:3876
+#: builtin/bundle.c:65 builtin/pack-objects.c:3899
 msgid "do not show progress meter"
 msgstr "ne pas afficher la barre de progression"
 
-#: builtin/bundle.c:67 builtin/bundle.c:167 builtin/pack-objects.c:3878
+#: builtin/bundle.c:67 builtin/bundle.c:168 builtin/pack-objects.c:3901
 msgid "show progress meter"
 msgstr "afficher la barre de progression"
 
-#: builtin/bundle.c:69 builtin/pack-objects.c:3880
+#: builtin/bundle.c:69 builtin/pack-objects.c:3903
 msgid "show progress meter during object writing phase"
 msgstr "afficher la barre de progression durant la phase d'écrite des objets"
 
-#: builtin/bundle.c:72 builtin/pack-objects.c:3883
+#: builtin/bundle.c:72 builtin/pack-objects.c:3906
 msgid "similar to --all-progress when progress meter is shown"
 msgstr "similaire à --all-progress quand la barre de progression est affichée"
 
@@ -12369,114 +12631,228 @@ msgstr "spécifier la version du format de colis"
 msgid "Need a repository to create a bundle."
 msgstr "La création d'un colis requiert un dépôt."
 
-#: builtin/bundle.c:107
+#: builtin/bundle.c:108
 msgid "do not show bundle details"
 msgstr "ne pas afficher les détails du colis"
 
-#: builtin/bundle.c:126
+#: builtin/bundle.c:127
 #, c-format
 msgid "%s is okay\n"
 msgstr "%s est correct\n"
 
-#: builtin/bundle.c:182
+#: builtin/bundle.c:183
 msgid "Need a repository to unbundle."
 msgstr "Le dépaquetage d'un colis requiert un dépôt."
 
-#: builtin/bundle.c:185
+#: builtin/bundle.c:186
 msgid "Unbundling objects"
 msgstr "Dépaquetage d'objets"
 
-#: builtin/bundle.c:219 builtin/remote.c:1733
+#: builtin/bundle.c:220 builtin/remote.c:1758
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "Sous-commande inconnue : %s"
 
-#: builtin/cat-file.c:622
+#: builtin/cat-file.c:568
+msgid "flush is only for --buffer mode"
+msgstr "flush n'est que pour le mode --buffer"
+
+#: builtin/cat-file.c:612
+msgid "empty command in input"
+msgstr "commande vide dans l'entrée"
+
+#: builtin/cat-file.c:614
+#, c-format
+msgid "whitespace before command: '%s'"
+msgstr "caractère espace devant la commande : '%s'"
+
+#: builtin/cat-file.c:623
+#, c-format
+msgid "%s requires arguments"
+msgstr "%s nécessite des arguments"
+
+#: builtin/cat-file.c:628
+#, c-format
+msgid "%s takes no arguments"
+msgstr "%s n'accepte aucune argument"
+
+#: builtin/cat-file.c:636
+#, c-format
+msgid "unknown command: '%s'"
+msgstr "commande inconnue : %s"
+
+#: builtin/cat-file.c:795
+msgid "only one batch option may be specified"
+msgstr "une seule option de traitement ne peut être spécifiée à la fois"
+
+#: builtin/cat-file.c:824
+msgid "git cat-file <type> <object>"
+msgstr "git cat-file <type> <objet>"
+
+#: builtin/cat-file.c:825
+msgid "git cat-file (-e | -p) <object>"
+msgstr "git cat-file (-e | -p) <objet>"
+
+#: builtin/cat-file.c:826
+msgid "git cat-file (-t | -s) [--allow-unknown-type] <object>"
+msgstr "git cat-file (-t | -s) [--allow-unknown-type] <objet>"
+
+#: builtin/cat-file.c:827
 msgid ""
-"git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
-"p | <type> | --textconv | --filters) [--path=<path>] <object>"
+"git cat-file (--batch | --batch-check | --batch-command) [--batch-all-"
+"objects]\n"
+"             [--buffer] [--follow-symlinks] [--unordered]\n"
+"             [--textconv | --filters]"
 msgstr ""
-"git cat-file (-t [--allow-unknow-type] | -s [--allow-unknow-type] | -e | -p "
-"| <type> | --textconv | --filters) [--path=<chemin>] <objet>"
+"git cat-file (--batch | --batch-check | --batch-command) [--batch-all-"
+"objects]\n"
+"             [--buffer] [--follow-symlinks] [--unordered]\n"
+"             [--textconv | --filters]"
 
-#: builtin/cat-file.c:623
+#: builtin/cat-file.c:830
 msgid ""
-"git cat-file (--batch[=<format>] | --batch-check[=<format>]) [--follow-"
-"symlinks] [--textconv | --filters]"
+"git cat-file (--textconv | --filters)\n"
+"             [<rev>:<path|tree-ish> | --path=<path|tree-ish> <rev>]"
 msgstr ""
-"git cat-file (--batch[=<format>] | --batch-check[=<format>]) [--follow-"
-"symlinks] [--textconv | --filters]"
+"git cat-file (--textconv | --filters)\n"
+"             [<rev>:<chemin|arbresque> | --path=<chemin|arbresque> <rev>]"
 
-#: builtin/cat-file.c:644
-msgid "only one batch option may be specified"
-msgstr "une seule option de traitement ne peut être spécifiée à la fois"
+#: builtin/cat-file.c:836
+msgid "Check object existence or emit object contents"
+msgstr "Vérifie l'existence d'un objet ou émettre le contenu de l'objet"
+
+#: builtin/cat-file.c:838
+msgid "check if <object> exists"
+msgstr "Vérification si <objet> existe"
+
+#: builtin/cat-file.c:839
+msgid "pretty-print <object> content"
+msgstr "affichage propre du contenu de <objet>"
 
-#: builtin/cat-file.c:662
-msgid "<type> can be one of: blob, tree, commit, tag"
-msgstr "<type> peut être : blob, tree, commit ou tag"
+#: builtin/cat-file.c:841
+msgid "Emit [broken] object attributes"
+msgstr "Émet les attributs [broken] d'un objet"
 
-#: builtin/cat-file.c:663
-msgid "show object type"
-msgstr "afficher le type de l'objet"
+#: builtin/cat-file.c:842
+msgid "show object type (one of 'blob', 'tree', 'commit', 'tag', ...)"
+msgstr "montrer le type de l'objet (parmi 'blob', 'tree', 'commit', 'tag' ...)"
 
-#: builtin/cat-file.c:664
+#: builtin/cat-file.c:843
 msgid "show object size"
 msgstr "afficher la taille de l'objet"
 
-#: builtin/cat-file.c:666
-msgid "exit with zero when there's no error"
-msgstr "sortir avec un code d'erreur nul quand il n'y a aucune erreur"
+#: builtin/cat-file.c:845
+msgid "allow -s and -t to work with broken/corrupt objects"
+msgstr "autoriser -s et -t à travailler sur des objets cassés/corrompus"
 
-#: builtin/cat-file.c:667
-msgid "pretty-print object's content"
-msgstr "afficher avec mise en forme le contenu de l'objet"
+#: builtin/cat-file.c:847
+msgid "Batch objects requested on stdin (or --batch-all-objects)"
+msgstr "Traiter par lot les objets demandés sur stdin (ou --batch-all-objects)"
 
-#: builtin/cat-file.c:669
-msgid "for blob objects, run textconv on object's content"
-msgstr "pour les objets blob, lancer textconv sur le contenu de l'objet"
+#: builtin/cat-file.c:849
+msgid "show full <object> or <rev> contents"
+msgstr "afficher tout le contenu de <objet> ou <rev>"
 
-#: builtin/cat-file.c:671
-msgid "for blob objects, run filters on object's content"
-msgstr "pour les objets blob, lancer les filtres sur le contenu de l'objet"
+#: builtin/cat-file.c:853
+msgid "like --batch, but don't emit <contents>"
+msgstr "comme --batch, mais ne pas émettre <contenu>"
 
-#: builtin/cat-file.c:672
-msgid "blob"
-msgstr "blob"
+#: builtin/cat-file.c:857
+msgid "read commands from stdin"
+msgstr "lire les commandes depuis l'entrée standard"
 
-#: builtin/cat-file.c:673
-msgid "use a specific path for --textconv/--filters"
-msgstr "utiliser un chemin spécifique pour --textconv/--filters"
+#: builtin/cat-file.c:861
+msgid "with --batch[-check]: ignores stdin, batches all known objects"
+msgstr ""
+"avec --batch[-check] : ignore stdin, gère tous les objets connus par lots"
 
-#: builtin/cat-file.c:675
-msgid "allow -s and -t to work with broken/corrupt objects"
-msgstr "autoriser -s et -t à travailler sur des objets cassés/corrompus"
+#: builtin/cat-file.c:863
+msgid "Change or optimize batch output"
+msgstr "Changer ou optimiser la sortie de traitement"
 
-#: builtin/cat-file.c:676
+#: builtin/cat-file.c:864
 msgid "buffer --batch output"
 msgstr "bufferiser la sortie de --batch"
 
-#: builtin/cat-file.c:678
-msgid "show info and content of objects fed from the standard input"
+#: builtin/cat-file.c:866
+msgid "follow in-tree symlinks"
+msgstr "suivi des liens symboliques dans l'arbre"
+
+#: builtin/cat-file.c:868
+msgid "do not order objects before emitting them"
+msgstr "ne pas ordonner les objets avant de les émettre"
+
+#: builtin/cat-file.c:870
+msgid ""
+"Emit object (blob or tree) with conversion or filter (stand-alone, or with "
+"batch)"
 msgstr ""
-"afficher l'information et le contenu des objets passés en entrée standard"
+"Émet l'objet (blob ou arbre) avec une conversion ou un filtre (autonome ou "
+"en lot)"
 
-#: builtin/cat-file.c:682
-msgid "show info about objects fed from the standard input"
-msgstr "afficher l'information des objets passés en entrée standard"
+#: builtin/cat-file.c:872
+msgid "run textconv on object's content"
+msgstr "lancer textconv sur le contenu de l'objet"
 
-#: builtin/cat-file.c:686
-msgid "follow in-tree symlinks (used with --batch or --batch-check)"
+#: builtin/cat-file.c:874
+msgid "run filters on object's content"
+msgstr "lancer les filtres sur le contenu de l'objet"
+
+#: builtin/cat-file.c:875
+msgid "blob|tree"
+msgstr "blob|arbre"
+
+#: builtin/cat-file.c:876
+msgid "use a <path> for (--textconv | --filters); Not with 'batch'"
 msgstr ""
-"suivre les liens symbolique internes à la copie de travail (utilisé avec --"
-"batch ou --batch-check)"
+"utiliser un <chemin> spécifique pour (--textconv | --filters); pas pour les "
+"lots"
+
+#: builtin/cat-file.c:894
+#, c-format
+msgid "'%s=<%s>' needs '%s' or '%s'"
+msgstr "'%s=<%s>' a besoin de  '%s' ou '%s'"
+
+#: builtin/cat-file.c:896
+msgid "path|tree-ish"
+msgstr "blob|arbre-esque"
 
-#: builtin/cat-file.c:688
-msgid "show all objects with --batch or --batch-check"
-msgstr "montrer tous les objets avec --batch ou --batch-check"
+#: builtin/cat-file.c:903 builtin/cat-file.c:906 builtin/cat-file.c:909
+#, c-format
+msgid "'%s' requires a batch mode"
+msgstr "%s a besoin d'un mode par lots"
+
+#: builtin/cat-file.c:921
+#, c-format
+msgid "'-%c' is incompatible with batch mode"
+msgstr "'-%c' est incompatible avec le mode par lots"
+
+#: builtin/cat-file.c:924
+msgid "batch modes take no arguments"
+msgstr "les modes par lot n'acceptent aucun argument"
+
+#: builtin/cat-file.c:932 builtin/cat-file.c:935
+#, c-format
+msgid "<rev> required with '%s'"
+msgstr "<rev> nécessaire avec '%s'"
+
+#: builtin/cat-file.c:938
+#, c-format
+msgid "<object> required with '-%c'"
+msgstr "<objet> nécessaire avec '-%c'"
+
+#: builtin/cat-file.c:943 builtin/notes.c:374 builtin/notes.c:429
+#: builtin/notes.c:507 builtin/notes.c:519 builtin/notes.c:596
+#: builtin/notes.c:663 builtin/notes.c:813 builtin/notes.c:965
+#: builtin/notes.c:987 builtin/prune-packed.c:25 builtin/receive-pack.c:2489
+#: builtin/tag.c:592
+msgid "too many arguments"
+msgstr "trop d'arguments"
 
-#: builtin/cat-file.c:690
-msgid "do not order --batch-all-objects output"
-msgstr "ne pas ordonner la sortie de --batch-all-objects"
+#: builtin/cat-file.c:947
+#, c-format
+msgid "only two arguments allowed in <type> <object> mode, not %d"
+msgstr "deux arguments seulement permis dans le mode <type> <objet>, pas %d"
 
 #: builtin/check-attr.c:13
 msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
@@ -12494,7 +12870,7 @@ msgstr "afficher tous les attributs associés au fichier"
 msgid "use .gitattributes only from the index"
 msgstr "utiliser .gitattributes seulement depuis l'index"
 
-#: builtin/check-attr.c:23 builtin/check-ignore.c:25 builtin/hash-object.c:100
+#: builtin/check-attr.c:23 builtin/check-ignore.c:25 builtin/hash-object.c:101
 msgid "read file names from stdin"
 msgstr "lire les noms de fichier depuis l'entrée standard"
 
@@ -12503,8 +12879,8 @@ msgid "terminate input and output records by a NUL character"
 msgstr ""
 "terminer les enregistrements en entrée et en sortie par un caractère NUL"
 
-#: builtin/check-ignore.c:21 builtin/checkout.c:1532 builtin/gc.c:550
-#: builtin/worktree.c:493
+#: builtin/check-ignore.c:21 builtin/checkout.c:1550 builtin/gc.c:550
+#: builtin/worktree.c:565
 msgid "suppress progress reporting"
 msgstr "supprimer l'état d'avancement"
 
@@ -12561,165 +12937,169 @@ msgstr "aucun contact spécifié"
 msgid "git checkout--worker [<options>]"
 msgstr "git checkout--worker [<options>]"
 
-#: builtin/checkout--worker.c:118 builtin/checkout-index.c:201
-#: builtin/column.c:31 builtin/column.c:32 builtin/submodule--helper.c:1864
-#: builtin/submodule--helper.c:1867 builtin/submodule--helper.c:1875
-#: builtin/submodule--helper.c:2511 builtin/submodule--helper.c:2577
-#: builtin/worktree.c:491 builtin/worktree.c:728
+#: builtin/checkout--worker.c:118 builtin/checkout-index.c:235
+#: builtin/column.c:31 builtin/column.c:32 builtin/submodule--helper.c:1878
+#: builtin/submodule--helper.c:1881 builtin/submodule--helper.c:1889
+#: builtin/submodule--helper.c:2716 builtin/worktree.c:563
+#: builtin/worktree.c:808
 msgid "string"
 msgstr "chaîne"
 
-#: builtin/checkout--worker.c:119 builtin/checkout-index.c:202
+#: builtin/checkout--worker.c:119 builtin/checkout-index.c:236
 msgid "when creating files, prepend <string>"
 msgstr "lors de la création de fichiers, préfixer par <chaîne>"
 
-#: builtin/checkout-index.c:152
+#: builtin/checkout-index.c:184
 msgid "git checkout-index [<options>] [--] [<file>...]"
 msgstr "git checkout-index [<options>] [--] [<fichier>...]"
 
-#: builtin/checkout-index.c:169
+#: builtin/checkout-index.c:201
 msgid "stage should be between 1 and 3 or all"
 msgstr "stage doit valoir entre 1 et 3, ou all"
 
-#: builtin/checkout-index.c:187
+#: builtin/checkout-index.c:219
 msgid "check out all files in the index"
 msgstr "extraire tous les fichiers présents dans l'index"
 
-#: builtin/checkout-index.c:188
+#: builtin/checkout-index.c:221
+msgid "do not skip files with skip-worktree set"
+msgstr "ne pas sauter des fichiers avec un ensemble skip-worktree"
+
+#: builtin/checkout-index.c:222
 msgid "force overwrite of existing files"
 msgstr "forcer l'écrasement des fichiers existants"
 
-#: builtin/checkout-index.c:190
+#: builtin/checkout-index.c:224
 msgid "no warning for existing files and files not in index"
 msgstr ""
 "pas d'avertissement pour les fichiers existants et les fichiers absents de "
 "l'index"
 
-#: builtin/checkout-index.c:192
+#: builtin/checkout-index.c:226
 msgid "don't checkout new files"
 msgstr "ne pas extraire les nouveaux fichiers"
 
-#: builtin/checkout-index.c:194
+#: builtin/checkout-index.c:228
 msgid "update stat information in the index file"
 msgstr "mettre à jour l'information de stat dans le fichier d'index"
 
-#: builtin/checkout-index.c:198
+#: builtin/checkout-index.c:232
 msgid "read list of paths from the standard input"
 msgstr "lire la liste des chemins depuis l'entrée standard"
 
-#: builtin/checkout-index.c:200
+#: builtin/checkout-index.c:234
 msgid "write the content to temporary files"
 msgstr "écrire le contenu dans des fichiers temporaires"
 
-#: builtin/checkout-index.c:204
+#: builtin/checkout-index.c:238
 msgid "copy out the files from named stage"
 msgstr "copier les fichiers depuis l'index nommé"
 
-#: builtin/checkout.c:33
+#: builtin/checkout.c:34
 msgid "git checkout [<options>] <branch>"
 msgstr "git checkout [<options>] <branche>"
 
-#: builtin/checkout.c:34
+#: builtin/checkout.c:35
 msgid "git checkout [<options>] [<branch>] -- <file>..."
 msgstr "git checkout [<options>] [<branche>] -- <fichier>..."
 
-#: builtin/checkout.c:39
+#: builtin/checkout.c:40
 msgid "git switch [<options>] [<branch>]"
 msgstr "git switch [<options>] <branche>"
 
-#: builtin/checkout.c:44
+#: builtin/checkout.c:45
 msgid "git restore [<options>] [--source=<branch>] <file>..."
 msgstr "git restore [<options>] [--source=<branche>] <fichier>..."
 
-#: builtin/checkout.c:198 builtin/checkout.c:237
+#: builtin/checkout.c:199 builtin/checkout.c:238
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "le chemin '%s' n'a pas notre version"
 
-#: builtin/checkout.c:200 builtin/checkout.c:239
+#: builtin/checkout.c:201 builtin/checkout.c:240
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "le chemin '%s' n'a pas leur version"
 
-#: builtin/checkout.c:216
+#: builtin/checkout.c:217
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr "le chemin '%s' n'a aucune des versions nécessaires"
 
-#: builtin/checkout.c:269
+#: builtin/checkout.c:271
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr "le chemin '%s' n'a pas les versions nécessaires"
 
-#: builtin/checkout.c:286
+#: builtin/checkout.c:291
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "chemin '%s' : impossible de fusionner"
 
-#: builtin/checkout.c:302
+#: builtin/checkout.c:307
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "Impossible d'ajouter le résultat de fusion pour '%s'"
 
-#: builtin/checkout.c:419
+#: builtin/checkout.c:424
 #, c-format
 msgid "Recreated %d merge conflict"
 msgid_plural "Recreated %d merge conflicts"
 msgstr[0] "%d conflit du fusion recréé"
 msgstr[1] "%d conflits du fusion recréés"
 
-#: builtin/checkout.c:424
+#: builtin/checkout.c:429
 #, c-format
 msgid "Updated %d path from %s"
 msgid_plural "Updated %d paths from %s"
 msgstr[0] "%d chemin mis à jour depuis %s"
 msgstr[1] "%d chemins mis à jour depuis %s"
 
-#: builtin/checkout.c:431
+#: builtin/checkout.c:436
 #, c-format
 msgid "Updated %d path from the index"
 msgid_plural "Updated %d paths from the index"
 msgstr[0] "%d chemin mis à jour depuis l'index"
 msgstr[1] "%d chemins mis à jour depuis l'index"
 
-#: builtin/checkout.c:454 builtin/checkout.c:457 builtin/checkout.c:460
-#: builtin/checkout.c:464
+#: builtin/checkout.c:459 builtin/checkout.c:462 builtin/checkout.c:465
+#: builtin/checkout.c:469
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr "'%s' ne peut pas être utilisé avec des mises à jour de chemins"
 
-#: builtin/checkout.c:474
+#: builtin/checkout.c:479
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr ""
 "Impossible de mettre à jour les chemins et basculer sur la branche '%s' en "
 "même temps."
 
-#: builtin/checkout.c:478
+#: builtin/checkout.c:483
 #, c-format
 msgid "neither '%s' or '%s' is specified"
 msgstr "ni '%s', ni '%s' spécifié"
 
-#: builtin/checkout.c:482
+#: builtin/checkout.c:487
 #, c-format
 msgid "'%s' must be used when '%s' is not specified"
 msgstr "'%s' ne peut pas être utilisé quand '%s' n'est pas spécifié"
 
-#: builtin/checkout.c:487 builtin/checkout.c:492
+#: builtin/checkout.c:492 builtin/checkout.c:497
 #, c-format
 msgid "'%s' or '%s' cannot be used with %s"
 msgstr "'%s' ou '%s' ne peut pas être utilisé avec %s"
 
-#: builtin/checkout.c:566 builtin/checkout.c:573
+#: builtin/checkout.c:571 builtin/checkout.c:578
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "le chemin '%s' n'est pas fusionné"
 
-#: builtin/checkout.c:747
+#: builtin/checkout.c:753
 msgid "you need to resolve your current index first"
 msgstr "vous devez d'abord résoudre votre index courant"
 
-#: builtin/checkout.c:797
+#: builtin/checkout.c:809
 #, c-format
 msgid ""
 "cannot continue with staged changes in the following files:\n"
@@ -12729,50 +13109,50 @@ msgstr ""
 "suivants :\n"
 "%s"
 
-#: builtin/checkout.c:890
+#: builtin/checkout.c:902
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Impossible de faire un reflog pour '%s' : %s\n"
 
-#: builtin/checkout.c:934
+#: builtin/checkout.c:947
 msgid "HEAD is now at"
 msgstr "HEAD est maintenant sur"
 
-#: builtin/checkout.c:938 builtin/clone.c:609 t/helper/test-fast-rebase.c:203
+#: builtin/checkout.c:951 builtin/clone.c:615 t/helper/test-fast-rebase.c:203
 msgid "unable to update HEAD"
 msgstr "impossible de mettre à jour HEAD"
 
-#: builtin/checkout.c:942
+#: builtin/checkout.c:955
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:945
+#: builtin/checkout.c:958
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Déjà sur '%s'\n"
 
-#: builtin/checkout.c:949
+#: builtin/checkout.c:962
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Basculement et remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:951 builtin/checkout.c:1388
+#: builtin/checkout.c:964 builtin/checkout.c:1398
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Basculement sur la nouvelle branche '%s'\n"
 
-#: builtin/checkout.c:953
+#: builtin/checkout.c:966
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Basculement sur la branche '%s'\n"
 
-#: builtin/checkout.c:1004
+#: builtin/checkout.c:1017
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... et %d en plus.\n"
 
-#: builtin/checkout.c:1010
+#: builtin/checkout.c:1023
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -12795,7 +13175,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:1029
+#: builtin/checkout.c:1042
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -12824,19 +13204,19 @@ msgstr[1] ""
 "git branch <nouvelle-branche> %s\n"
 "\n"
 
-#: builtin/checkout.c:1064
+#: builtin/checkout.c:1077
 msgid "internal error in revision walk"
 msgstr "erreur interne lors du parcours des révisions"
 
-#: builtin/checkout.c:1068
+#: builtin/checkout.c:1081
 msgid "Previous HEAD position was"
 msgstr "La position précédente de HEAD était sur"
 
-#: builtin/checkout.c:1114 builtin/checkout.c:1383
+#: builtin/checkout.c:1124 builtin/checkout.c:1393
 msgid "You are on a branch yet to be born"
 msgstr "Vous êtes sur une branche qui doit encore naître"
 
-#: builtin/checkout.c:1196
+#: builtin/checkout.c:1206
 #, c-format
 msgid ""
 "'%s' could be both a local file and a tracking branch.\n"
@@ -12845,7 +13225,7 @@ msgstr ""
 "'%s' pourrait être un fichier local ou un branche de suivi.\n"
 "Veuillez utiliser -- (et --no-guess en facultatif) pour les distinguer"
 
-#: builtin/checkout.c:1203
+#: builtin/checkout.c:1213
 msgid ""
 "If you meant to check out a remote tracking branch on, e.g. 'origin',\n"
 "you can do so by fully qualifying the name with the --track option:\n"
@@ -12865,51 +13245,58 @@ msgstr ""
 "ambigu, vous pouvez positionner checkout.defaultRemote=origin dans\n"
 "votre config."
 
-#: builtin/checkout.c:1213
+#: builtin/checkout.c:1223
 #, c-format
 msgid "'%s' matched multiple (%d) remote tracking branches"
 msgstr "'%s' correspond à plusieurs (%d) branches de suivi à distance"
 
-#: builtin/checkout.c:1279
+#: builtin/checkout.c:1289
 msgid "only one reference expected"
 msgstr "une seule référence attendue"
 
-#: builtin/checkout.c:1296
+#: builtin/checkout.c:1306
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "une seule référence attendue, %d fournies."
 
-#: builtin/checkout.c:1342 builtin/worktree.c:269 builtin/worktree.c:436
+#: builtin/checkout.c:1352 builtin/worktree.c:338 builtin/worktree.c:508
 #, c-format
 msgid "invalid reference: %s"
 msgstr "référence invalide : %s"
 
-#: builtin/checkout.c:1355 builtin/checkout.c:1725
+#: builtin/checkout.c:1365 builtin/checkout.c:1744
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "la référence n'est pas un arbre : %s"
 
-#: builtin/checkout.c:1402
+#: builtin/checkout.c:1413
 #, c-format
 msgid "a branch is expected, got tag '%s'"
 msgstr "branche attendue, mais étiquette '%s' reçue"
 
-#: builtin/checkout.c:1404
+#: builtin/checkout.c:1415
 #, c-format
 msgid "a branch is expected, got remote branch '%s'"
 msgstr "une branche est attendue, mais une branche distante '%s' a été reçue"
 
-#: builtin/checkout.c:1405 builtin/checkout.c:1413
+#: builtin/checkout.c:1417 builtin/checkout.c:1426
 #, c-format
 msgid "a branch is expected, got '%s'"
 msgstr "une branche est attendue, mais '%s' a été reçue"
 
-#: builtin/checkout.c:1408
+#: builtin/checkout.c:1420
 #, c-format
 msgid "a branch is expected, got commit '%s'"
 msgstr "une branche est attendue, mais un commit '%s' a été reçu"
 
-#: builtin/checkout.c:1424
+#: builtin/checkout.c:1429
+msgid ""
+"If you want to detach HEAD at the commit, try again with the --detach option."
+msgstr ""
+"Si vous souhaitez détacher HEAD à ce commit, réessayez avec l'option --"
+"detach."
+
+#: builtin/checkout.c:1442
 msgid ""
 "cannot switch branch while merging\n"
 "Consider \"git merge --quit\" or \"git worktree add\"."
@@ -12917,7 +13304,7 @@ msgstr ""
 "impossible de basculer de branche pendant une fusion\n"
 "Envisagez \"git merge --quit\" ou \"git worktree add\"."
 
-#: builtin/checkout.c:1428
+#: builtin/checkout.c:1446
 msgid ""
 "cannot switch branch in the middle of an am session\n"
 "Consider \"git am --quit\" or \"git worktree add\"."
@@ -12925,7 +13312,7 @@ msgstr ""
 "impossible de basculer de branche pendant une session am\n"
 "Envisagez \"git am --quit\" ou \"git worktree add\"."
 
-#: builtin/checkout.c:1432
+#: builtin/checkout.c:1450
 msgid ""
 "cannot switch branch while rebasing\n"
 "Consider \"git rebase --quit\" or \"git worktree add\"."
@@ -12933,7 +13320,7 @@ msgstr ""
 "impossible de basculer de branche pendant un rebasage\n"
 "Envisagez \"git rebase --quit\" ou \"git worktree add\"."
 
-#: builtin/checkout.c:1436
+#: builtin/checkout.c:1454
 msgid ""
 "cannot switch branch while cherry-picking\n"
 "Consider \"git cherry-pick --quit\" or \"git worktree add\"."
@@ -12941,7 +13328,7 @@ msgstr ""
 "impossible de basculer de branche pendant un picorage\n"
 "Envisagez \"git cherry-pick --quit\" ou \"git worktree add\"."
 
-#: builtin/checkout.c:1440
+#: builtin/checkout.c:1458
 msgid ""
 "cannot switch branch while reverting\n"
 "Consider \"git revert --quit\" or \"git worktree add\"."
@@ -12949,128 +13336,124 @@ msgstr ""
 "impossible de basculer de branche pendant un retour\n"
 "Envisagez \"git revert --quit\" ou \"git worktree add\"."
 
-#: builtin/checkout.c:1444
+#: builtin/checkout.c:1462
 msgid "you are switching branch while bisecting"
 msgstr "vous basculez de branche en cours de bissection"
 
-#: builtin/checkout.c:1451
+#: builtin/checkout.c:1469
 msgid "paths cannot be used with switching branches"
 msgstr "impossible d'utiliser des chemins avec un basculement de branches"
 
-#: builtin/checkout.c:1454 builtin/checkout.c:1458 builtin/checkout.c:1462
+#: builtin/checkout.c:1472 builtin/checkout.c:1476 builtin/checkout.c:1480
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "'%s' ne peut pas être utilisé avec un basculement de branches"
 
-#: builtin/checkout.c:1466 builtin/checkout.c:1469 builtin/checkout.c:1472
-#: builtin/checkout.c:1477 builtin/checkout.c:1482
+#: builtin/checkout.c:1484 builtin/checkout.c:1487 builtin/checkout.c:1490
+#: builtin/checkout.c:1495 builtin/checkout.c:1500
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' ne peut pas être utilisé avec '%s'"
 
-#: builtin/checkout.c:1479
+#: builtin/checkout.c:1497
 #, c-format
 msgid "'%s' cannot take <start-point>"
 msgstr "'%s' n'accepte pas <point-de-départ>"
 
-#: builtin/checkout.c:1487
+#: builtin/checkout.c:1505
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr "Impossible de basculer de branche vers '%s' qui n'est pas un commit"
 
-#: builtin/checkout.c:1494
+#: builtin/checkout.c:1512
 msgid "missing branch or commit argument"
 msgstr "argument de branche ou de commit manquant"
 
-#: builtin/checkout.c:1537
+#: builtin/checkout.c:1555
 msgid "perform a 3-way merge with the new branch"
 msgstr "effectuer une fusion à 3 points avec la nouvelle branche"
 
-#: builtin/checkout.c:1538 builtin/log.c:1825 parse-options.h:323
+#: builtin/checkout.c:1556 builtin/log.c:1844 parse-options.h:354
 msgid "style"
 msgstr "style"
 
-#: builtin/checkout.c:1539
+#: builtin/checkout.c:1557
 msgid "conflict style (merge, diff3, or zdiff3)"
 msgstr "style de conflit (merge (fusion), diff3 ou zdiff3)"
 
-#: builtin/checkout.c:1551 builtin/worktree.c:488
+#: builtin/checkout.c:1569 builtin/worktree.c:560
 msgid "detach HEAD at named commit"
 msgstr "détacher la HEAD au commit nommé"
 
-#: builtin/checkout.c:1553
-msgid "set up tracking mode (see git-pull(1))"
-msgstr "régler le mode de suivi (voir git-pull(1))"
-
-#: builtin/checkout.c:1556
+#: builtin/checkout.c:1574
 msgid "force checkout (throw away local modifications)"
 msgstr "forcer l'extraction (laisser tomber les modifications locales)"
 
-#: builtin/checkout.c:1558
+#: builtin/checkout.c:1576
 msgid "new-branch"
 msgstr "nouvelle branche"
 
-#: builtin/checkout.c:1558
+#: builtin/checkout.c:1576
 msgid "new unparented branch"
 msgstr "nouvelle branche sans parent"
 
-#: builtin/checkout.c:1560 builtin/merge.c:305
+#: builtin/checkout.c:1578 builtin/merge.c:305
 msgid "update ignored files (default)"
 msgstr "mettre à jour les fichiers ignorés (par défaut)"
 
-#: builtin/checkout.c:1563
+#: builtin/checkout.c:1581
 msgid "do not check if another worktree is holding the given ref"
 msgstr ""
 "ne pas vérifier si une autre copie de travail contient le référence fournie"
 
-#: builtin/checkout.c:1576
+#: builtin/checkout.c:1594
 msgid "checkout our version for unmerged files"
 msgstr "extraire notre version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1579
+#: builtin/checkout.c:1597
 msgid "checkout their version for unmerged files"
 msgstr "extraire leur version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1583
+#: builtin/checkout.c:1601
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "ne pas limiter les spécificateurs de chemins aux seuls éléments creux"
 
-#: builtin/checkout.c:1640
+#: builtin/checkout.c:1659
 #, c-format
 msgid "options '-%c', '-%c', and '%s' cannot be used together"
 msgstr ""
 "les options '-%c', '-%c' et '%s' ne peuvent pas être utilisées ensemble"
 
-#: builtin/checkout.c:1681
+#: builtin/checkout.c:1700
 msgid "--track needs a branch name"
 msgstr "--track requiert un nom de branche"
 
-#: builtin/checkout.c:1686
+#: builtin/checkout.c:1705
 #, c-format
 msgid "missing branch name; try -%c"
 msgstr "nom de branche manquant ; essayez -%c"
 
-#: builtin/checkout.c:1718
+#: builtin/checkout.c:1737
 #, c-format
 msgid "could not resolve %s"
 msgstr "impossible de résoudre %s"
 
-#: builtin/checkout.c:1734
+#: builtin/checkout.c:1753
 msgid "invalid path specification"
 msgstr "spécification de chemin invalide"
 
-#: builtin/checkout.c:1741
+#: builtin/checkout.c:1760
 #, c-format
 msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
 "'%s' n'est pas un commit et une branche '%s' ne peut pas en être créée depuis"
 
-#: builtin/checkout.c:1745
+#: builtin/checkout.c:1764
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr "git checkout: --detach n'accepte pas un argument de chemin '%s'"
 
-#: builtin/checkout.c:1770
+#: builtin/checkout.c:1789
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -13078,72 +13461,72 @@ msgstr ""
 "git checkout: --ours/--theirs, --force et --merge sont incompatibles lors\n"
 "de l'extraction de l'index."
 
-#: builtin/checkout.c:1775
+#: builtin/checkout.c:1794
 msgid "you must specify path(s) to restore"
 msgstr "vous devez spécifier un ou des chemins à restaurer"
 
-#: builtin/checkout.c:1800 builtin/checkout.c:1802 builtin/checkout.c:1854
-#: builtin/checkout.c:1856 builtin/clone.c:126 builtin/remote.c:170
-#: builtin/remote.c:172 builtin/submodule--helper.c:2959
-#: builtin/submodule--helper.c:3253 builtin/worktree.c:484
-#: builtin/worktree.c:486
+#: builtin/checkout.c:1819 builtin/checkout.c:1821 builtin/checkout.c:1873
+#: builtin/checkout.c:1875 builtin/clone.c:130 builtin/remote.c:171
+#: builtin/remote.c:173 builtin/submodule--helper.c:3038
+#: builtin/submodule--helper.c:3371 builtin/worktree.c:556
+#: builtin/worktree.c:558
 msgid "branch"
 msgstr "branche"
 
-#: builtin/checkout.c:1801
+#: builtin/checkout.c:1820
 msgid "create and checkout a new branch"
 msgstr "créer et extraire une nouvelle branche"
 
-#: builtin/checkout.c:1803
+#: builtin/checkout.c:1822
 msgid "create/reset and checkout a branch"
 msgstr "créer/réinitialiser et extraire une branche"
 
-#: builtin/checkout.c:1804
+#: builtin/checkout.c:1823
 msgid "create reflog for new branch"
 msgstr "créer un reflog pour une nouvelle branche"
 
-#: builtin/checkout.c:1806
+#: builtin/checkout.c:1825
 msgid "second guess 'git checkout <no-such-branch>' (default)"
 msgstr ""
 "essayer d'interpréter 'git checkout <branche-inexistante>' (par défaut)"
 
-#: builtin/checkout.c:1807
+#: builtin/checkout.c:1826
 msgid "use overlay mode (default)"
 msgstr "utiliser le mode de superposition (défaut)"
 
-#: builtin/checkout.c:1855
+#: builtin/checkout.c:1874
 msgid "create and switch to a new branch"
 msgstr "créer et basculer sur une nouvelle branche"
 
-#: builtin/checkout.c:1857
+#: builtin/checkout.c:1876
 msgid "create/reset and switch to a branch"
 msgstr "créer/réinitialiser et basculer sur une branche"
 
-#: builtin/checkout.c:1859
+#: builtin/checkout.c:1878
 msgid "second guess 'git switch <no-such-branch>'"
 msgstr "interpréter 'git switch <branche-inexistante>'"
 
-#: builtin/checkout.c:1861
+#: builtin/checkout.c:1880
 msgid "throw away local modifications"
 msgstr "laisser tomber les modifications locales"
 
-#: builtin/checkout.c:1897
+#: builtin/checkout.c:1916
 msgid "which tree-ish to checkout from"
 msgstr "de quel <arbre-esque> faire l'extraction"
 
-#: builtin/checkout.c:1899
+#: builtin/checkout.c:1918
 msgid "restore the index"
 msgstr "restaurer l'index"
 
-#: builtin/checkout.c:1901
+#: builtin/checkout.c:1920
 msgid "restore the working tree (default)"
 msgstr "restaurer l'arbre de travail (par défaut)"
 
-#: builtin/checkout.c:1903
+#: builtin/checkout.c:1922
 msgid "ignore unmerged entries"
 msgstr "ignorer les entrées non-fusionnées"
 
-#: builtin/checkout.c:1904
+#: builtin/checkout.c:1923
 msgid "use overlay mode"
 msgstr "utiliser le mode de superposition"
 
@@ -13291,8 +13674,8 @@ msgid "remove whole directories"
 msgstr "supprimer les répertoires entiers"
 
 #: builtin/clean.c:932 builtin/describe.c:565 builtin/describe.c:567
-#: builtin/grep.c:937 builtin/log.c:184 builtin/log.c:186
-#: builtin/ls-files.c:651 builtin/name-rev.c:535 builtin/name-rev.c:537
+#: builtin/grep.c:938 builtin/log.c:185 builtin/log.c:187
+#: builtin/ls-files.c:651 builtin/name-rev.c:585 builtin/name-rev.c:587
 #: builtin/show-ref.c:179
 msgid "pattern"
 msgstr "motif"
@@ -13329,214 +13712,218 @@ msgstr ""
 msgid "-x and -X cannot be used together"
 msgstr "-x et -X ne peuvent pas être utilisés ensemble"
 
-#: builtin/clone.c:45
+#: builtin/clone.c:47
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<options>] [--] <dépôt> [<répertoire>]"
 
-#: builtin/clone.c:96
+#: builtin/clone.c:100
 msgid "don't clone shallow repository"
 msgstr "ne pas cloner un dépôt superficiel"
 
-#: builtin/clone.c:98
+#: builtin/clone.c:102
 msgid "don't create a checkout"
 msgstr "ne pas créer d'extraction"
 
-#: builtin/clone.c:99 builtin/clone.c:101 builtin/init-db.c:542
+#: builtin/clone.c:103 builtin/clone.c:105 builtin/init-db.c:542
 msgid "create a bare repository"
 msgstr "créer un dépôt nu"
 
-#: builtin/clone.c:103
+#: builtin/clone.c:107
 msgid "create a mirror repository (implies bare)"
 msgstr "créer un dépôt miroir (implique dépôt nu)"
 
-#: builtin/clone.c:105
+#: builtin/clone.c:109
 msgid "to clone from a local repository"
 msgstr "pour cloner depuis un dépôt local"
 
-#: builtin/clone.c:107
+#: builtin/clone.c:111
 msgid "don't use local hardlinks, always copy"
 msgstr "ne pas utiliser de liens durs locaux, toujours copier"
 
-#: builtin/clone.c:109
+#: builtin/clone.c:113
 msgid "setup as shared repository"
 msgstr "régler comme dépôt partagé"
 
-#: builtin/clone.c:111
+#: builtin/clone.c:115
 msgid "pathspec"
 msgstr "spécificateur de chemin"
 
-#: builtin/clone.c:111
+#: builtin/clone.c:115
 msgid "initialize submodules in the clone"
 msgstr "initialiser les sous-modules dans le clone"
 
-#: builtin/clone.c:115
+#: builtin/clone.c:119
 msgid "number of submodules cloned in parallel"
 msgstr "nombre de sous-modules clonés en parallèle"
 
-#: builtin/clone.c:116 builtin/init-db.c:539
+#: builtin/clone.c:120 builtin/init-db.c:539
 msgid "template-directory"
 msgstr "répertoire-modèle"
 
-#: builtin/clone.c:117 builtin/init-db.c:540
+#: builtin/clone.c:121 builtin/init-db.c:540
 msgid "directory from which templates will be used"
 msgstr "répertoire depuis lequel les modèles vont être utilisés"
 
-#: builtin/clone.c:119 builtin/clone.c:121 builtin/submodule--helper.c:1871
-#: builtin/submodule--helper.c:2514 builtin/submodule--helper.c:3260
+#: builtin/clone.c:123 builtin/clone.c:125 builtin/submodule--helper.c:1885
+#: builtin/submodule--helper.c:2719 builtin/submodule--helper.c:3378
 msgid "reference repository"
 msgstr "dépôt de référence"
 
-#: builtin/clone.c:123 builtin/submodule--helper.c:1873
-#: builtin/submodule--helper.c:2516
+#: builtin/clone.c:127 builtin/submodule--helper.c:1887
+#: builtin/submodule--helper.c:2721
 msgid "use --reference only while cloning"
 msgstr "utiliser seulement --reference pour cloner"
 
-#: builtin/clone.c:124 builtin/column.c:27 builtin/fmt-merge-msg.c:27
+#: builtin/clone.c:128 builtin/column.c:27 builtin/fmt-merge-msg.c:27
 #: builtin/init-db.c:550 builtin/merge-file.c:48 builtin/merge.c:290
-#: builtin/pack-objects.c:3944 builtin/repack.c:665
-#: builtin/submodule--helper.c:3262 t/helper/test-simple-ipc.c:595
+#: builtin/pack-objects.c:3967 builtin/repack.c:669
+#: builtin/submodule--helper.c:3380 t/helper/test-simple-ipc.c:595
 #: t/helper/test-simple-ipc.c:597
 msgid "name"
 msgstr "nom"
 
-#: builtin/clone.c:125
+#: builtin/clone.c:129
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "utiliser <nom> au lieu de 'origin' pour suivre la branche amont"
 
-#: builtin/clone.c:127
+#: builtin/clone.c:131
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "extraire <branche> au lieu de la HEAD du répertoire distant"
 
-#: builtin/clone.c:129
+#: builtin/clone.c:133
 msgid "path to git-upload-pack on the remote"
 msgstr "chemin vers git-upload-pack sur le serveur distant"
 
-#: builtin/clone.c:130 builtin/fetch.c:181 builtin/grep.c:876
+#: builtin/clone.c:134 builtin/fetch.c:182 builtin/grep.c:877
 #: builtin/pull.c:212
 msgid "depth"
 msgstr "profondeur"
 
-#: builtin/clone.c:131
+#: builtin/clone.c:135
 msgid "create a shallow clone of that depth"
 msgstr "créer un clone superficiel de cette profondeur"
 
-#: builtin/clone.c:132 builtin/fetch.c:183 builtin/pack-objects.c:3933
+#: builtin/clone.c:136 builtin/fetch.c:184 builtin/pack-objects.c:3956
 #: builtin/pull.c:215
 msgid "time"
 msgstr "heure"
 
-#: builtin/clone.c:133
+#: builtin/clone.c:137
 msgid "create a shallow clone since a specific time"
 msgstr "créer un clone superficiel depuis une date spécifique"
 
-#: builtin/clone.c:134 builtin/fetch.c:185 builtin/fetch.c:208
-#: builtin/pull.c:218 builtin/pull.c:243 builtin/rebase.c:1022
+#: builtin/clone.c:138 builtin/fetch.c:186 builtin/fetch.c:212
+#: builtin/pull.c:218 builtin/pull.c:243 builtin/rebase.c:1050
 msgid "revision"
 msgstr "révision"
 
-#: builtin/clone.c:135 builtin/fetch.c:186 builtin/pull.c:219
+#: builtin/clone.c:139 builtin/fetch.c:187 builtin/pull.c:219
 msgid "deepen history of shallow clone, excluding rev"
 msgstr ""
 "approfondir l'historique d'un clone superficiel en excluant une révision"
 
-#: builtin/clone.c:137 builtin/submodule--helper.c:1883
-#: builtin/submodule--helper.c:2530
+#: builtin/clone.c:141 builtin/submodule--helper.c:1897
+#: builtin/submodule--helper.c:2735
 msgid "clone only one branch, HEAD or --branch"
 msgstr "cloner seulement une branche, HEAD ou --branch"
 
-#: builtin/clone.c:139
+#: builtin/clone.c:143
 msgid "don't clone any tags, and make later fetches not to follow them"
 msgstr ""
 "ne pas cloner les tags et indiquer aux récupérations futures de ne pas le "
 "faire"
 
-#: builtin/clone.c:141
+#: builtin/clone.c:145
 msgid "any cloned submodules will be shallow"
 msgstr "tous les sous-modules clonés seront superficiels"
 
-#: builtin/clone.c:142 builtin/init-db.c:548
+#: builtin/clone.c:146 builtin/init-db.c:548
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:143 builtin/init-db.c:549
+#: builtin/clone.c:147 builtin/init-db.c:549
 msgid "separate git dir from working tree"
 msgstr "séparer le répertoire git de la copie de travail"
 
-#: builtin/clone.c:144
+#: builtin/clone.c:148
 msgid "key=value"
 msgstr "clé=valeur"
 
-#: builtin/clone.c:145
+#: builtin/clone.c:149
 msgid "set config inside the new repository"
 msgstr "régler la configuration dans le nouveau dépôt"
 
-#: builtin/clone.c:147 builtin/fetch.c:203 builtin/ls-remote.c:77
+#: builtin/clone.c:151 builtin/fetch.c:207 builtin/ls-remote.c:77
 #: builtin/pull.c:234 builtin/push.c:575 builtin/send-pack.c:200
 msgid "server-specific"
 msgstr "spécifique au serveur"
 
-#: builtin/clone.c:147 builtin/fetch.c:203 builtin/ls-remote.c:77
+#: builtin/clone.c:151 builtin/fetch.c:207 builtin/ls-remote.c:77
 #: builtin/pull.c:235 builtin/push.c:575 builtin/send-pack.c:201
 msgid "option to transmit"
 msgstr "option à transmettre"
 
-#: builtin/clone.c:148 builtin/fetch.c:204 builtin/pull.c:238
+#: builtin/clone.c:152 builtin/fetch.c:208 builtin/pull.c:238
 #: builtin/push.c:576
 msgid "use IPv4 addresses only"
 msgstr "n'utiliser que des adresses IPv4"
 
-#: builtin/clone.c:150 builtin/fetch.c:206 builtin/pull.c:241
+#: builtin/clone.c:154 builtin/fetch.c:210 builtin/pull.c:241
 #: builtin/push.c:578
 msgid "use IPv6 addresses only"
 msgstr "n'utiliser que des adresses IPv6"
 
-#: builtin/clone.c:154
+#: builtin/clone.c:158
+msgid "apply partial clone filters to submodules"
+msgstr "appliquer les filtres de clone partiel aux sous-modules"
+
+#: builtin/clone.c:160
 msgid "any cloned submodules will use their remote-tracking branch"
 msgstr ""
 "tous les sous-modules clonés utiliseront leur branche de suivi à distance"
 
-#: builtin/clone.c:156
+#: builtin/clone.c:162
 msgid "initialize sparse-checkout file to include only files at root"
 msgstr ""
 "initialiser le fichier d'extraction clairsemée pour n'inclure que les "
 "fichiers à la racine"
 
-#: builtin/clone.c:231
+#: builtin/clone.c:237
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr "info : impossible d'ajouter une alternative pour '%s' : %s\n"
 
-#: builtin/clone.c:304
+#: builtin/clone.c:310
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s existe et n'est pas un répertoire"
 
-#: builtin/clone.c:322
+#: builtin/clone.c:328
 #, c-format
 msgid "failed to start iterator over '%s'"
 msgstr "échec du démarrage un itérateur sur '%s'"
 
-#: builtin/clone.c:353
+#: builtin/clone.c:359
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "échec de la création du lien '%s'"
 
-#: builtin/clone.c:357
+#: builtin/clone.c:363
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "échec de la copie vers '%s'"
 
-#: builtin/clone.c:362
+#: builtin/clone.c:368
 #, c-format
 msgid "failed to iterate over '%s'"
 msgstr "échec de l'itération sur '%s'"
 
-#: builtin/clone.c:389
+#: builtin/clone.c:395
 #, c-format
 msgid "done.\n"
 msgstr "fait.\n"
 
-#: builtin/clone.c:403
+#: builtin/clone.c:409
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -13546,103 +13933,103 @@ msgstr ""
 "Vous pouvez inspecter ce qui a été extrait avec 'git status'\n"
 "et réessayer avec 'git restore --source=HEAD :/'\n"
 
-#: builtin/clone.c:480
+#: builtin/clone.c:486
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Impossible de trouver la branche distante '%s' à cloner."
 
-#: builtin/clone.c:597
+#: builtin/clone.c:603
 #, c-format
 msgid "unable to update %s"
 msgstr "impossible de mettre à jour %s"
 
-#: builtin/clone.c:645
+#: builtin/clone.c:651
 msgid "failed to initialize sparse-checkout"
 msgstr "échec lors de l'initialisation l'extraction clairsemée"
 
-#: builtin/clone.c:668
+#: builtin/clone.c:674
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr ""
 "la HEAD distante réfère à une référence non existante, impossible de "
 "l'extraire.\n"
 
-#: builtin/clone.c:701
+#: builtin/clone.c:709
 msgid "unable to checkout working tree"
 msgstr "impossible d'extraire la copie de travail"
 
-#: builtin/clone.c:779
+#: builtin/clone.c:793
 msgid "unable to write parameters to config file"
 msgstr "impossible d'écrire les paramètres dans le fichier de configuration"
 
-#: builtin/clone.c:842
+#: builtin/clone.c:856
 msgid "cannot repack to clean up"
 msgstr "impossible de remballer pour nettoyer"
 
-#: builtin/clone.c:844
+#: builtin/clone.c:858
 msgid "cannot unlink temporary alternates file"
 msgstr "impossible de délier le fichier temporaire alternates"
 
-#: builtin/clone.c:886
+#: builtin/clone.c:901
 msgid "Too many arguments."
 msgstr "Trop d'arguments."
 
-#: builtin/clone.c:890 contrib/scalar/scalar.c:414
+#: builtin/clone.c:905 contrib/scalar/scalar.c:413
 msgid "You must specify a repository to clone."
 msgstr "Vous devez spécifier un dépôt à cloner."
 
-#: builtin/clone.c:903
+#: builtin/clone.c:918
 #, c-format
 msgid "options '%s' and '%s %s' cannot be used together"
 msgstr "les options '%s' et '%s %s' ne peuvent pas être utilisées ensemble"
 
-#: builtin/clone.c:920
+#: builtin/clone.c:935
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "le dépôt '%s' n'existe pas"
 
-#: builtin/clone.c:924 builtin/fetch.c:2052
+#: builtin/clone.c:939 builtin/fetch.c:2176
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "la profondeur %s n'est pas un entier positif"
 
-#: builtin/clone.c:934
+#: builtin/clone.c:949
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr ""
 "le chemin de destination '%s' existe déjà et n'est pas un répertoire vide."
 
-#: builtin/clone.c:940
+#: builtin/clone.c:955
 #, c-format
 msgid "repository path '%s' already exists and is not an empty directory."
 msgstr "le chemin du dépôt '%s' existe déjà et n'est pas un répertoire vide."
 
-#: builtin/clone.c:954
+#: builtin/clone.c:969
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "la copie de travail '%s' existe déjà."
 
-#: builtin/clone.c:969 builtin/clone.c:990 builtin/difftool.c:256
-#: builtin/log.c:2012 builtin/worktree.c:281 builtin/worktree.c:313
+#: builtin/clone.c:984 builtin/clone.c:1005 builtin/difftool.c:256
+#: builtin/log.c:2037 builtin/worktree.c:350 builtin/worktree.c:382
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "impossible de créer les répertoires de premier niveau dans '%s'"
 
-#: builtin/clone.c:974
+#: builtin/clone.c:989
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr "impossible de créer le répertoire de la copie de travail '%s'"
 
-#: builtin/clone.c:994
+#: builtin/clone.c:1009
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Clonage dans le dépôt nu '%s'\n"
 
-#: builtin/clone.c:996
+#: builtin/clone.c:1011
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Clonage dans '%s'...\n"
 
-#: builtin/clone.c:1025
+#: builtin/clone.c:1040
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -13650,50 +14037,54 @@ msgstr ""
 "clone --recursive n'est pas compatible avec à la fois --reference et --"
 "reference-if-able"
 
-#: builtin/clone.c:1080 builtin/remote.c:200 builtin/remote.c:710
+#: builtin/clone.c:1116 builtin/remote.c:201 builtin/remote.c:721
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' n'est pas un nom valide de distante"
 
-#: builtin/clone.c:1121
+#: builtin/clone.c:1157
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr ""
 "--depth est ignoré dans les clones locaux : utilisez plutôt \"file://\"."
 
-#: builtin/clone.c:1123
+#: builtin/clone.c:1159
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr ""
 "--shallow-since est ignoré dans les clones locaux : utilisez plutôt \"file://"
 "\"."
 
-#: builtin/clone.c:1125
+#: builtin/clone.c:1161
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr ""
 "--shallow-exclude est ignoré dans les clones locaux : utilisez plutôt "
 "\"file://\"."
 
-#: builtin/clone.c:1127
+#: builtin/clone.c:1163
 msgid "--filter is ignored in local clones; use file:// instead."
 msgstr "--filter est ignoré dans les clones locaux ; utilisez plutôt file:// ."
 
-#: builtin/clone.c:1132
+#: builtin/clone.c:1168
 msgid "source repository is shallow, ignoring --local"
 msgstr "le dépôt source est superficiel, option --local ignorée"
 
-#: builtin/clone.c:1137
+#: builtin/clone.c:1173
 msgid "--local is ignored"
 msgstr "--local est ignoré"
 
-#: builtin/clone.c:1216 builtin/clone.c:1276
+#: builtin/clone.c:1185
+msgid "cannot clone from filtered bundle"
+msgstr "impossible de cloner depuis un colis filtré"
+
+#: builtin/clone.c:1265 builtin/clone.c:1324
 msgid "remote transport reported error"
 msgstr "le transport distant a retourné une erreur"
 
-#: builtin/clone.c:1228 builtin/clone.c:1239
+#: builtin/clone.c:1277 builtin/clone.c:1289
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "La branche distante %s n'a pas été trouvée dans le dépôt amont %s"
 
-#: builtin/clone.c:1242
+#: builtin/clone.c:1292
 msgid "You appear to have cloned an empty repository."
 msgstr "Vous semblez avoir cloné un dépôt vide."
 
@@ -13745,7 +14136,7 @@ msgstr ""
 "split[=<stratégie>]] [--reachable|--stdin-packs|--stdin-commits] [--changed-"
 "paths] [--[no-]max-new-filters <n>] [--[no-]progress] <options de division>"
 
-#: builtin/commit-graph.c:51 builtin/fetch.c:192 builtin/log.c:1794
+#: builtin/commit-graph.c:51 builtin/fetch.c:196 builtin/log.c:1813
 msgid "dir"
 msgstr "répertoire"
 
@@ -13846,7 +14237,7 @@ msgstr ""
 msgid "duplicate parent %s ignored"
 msgstr "le parent dupliqué %s est ignoré"
 
-#: builtin/commit-tree.c:56 builtin/commit-tree.c:134 builtin/log.c:577
+#: builtin/commit-tree.c:56 builtin/commit-tree.c:134 builtin/log.c:590
 #, c-format
 msgid "not a valid object name %s"
 msgstr "nom d'objet invalide %s"
@@ -13869,13 +14260,13 @@ msgstr "parent"
 msgid "id of a parent commit object"
 msgstr "id d'un objet commit parent"
 
-#: builtin/commit-tree.c:112 builtin/commit.c:1627 builtin/merge.c:284
-#: builtin/notes.c:407 builtin/notes.c:573 builtin/stash.c:1677
-#: builtin/tag.c:454
+#: builtin/commit-tree.c:112 builtin/commit.c:1626 builtin/merge.c:284
+#: builtin/notes.c:407 builtin/notes.c:573 builtin/stash.c:1666
+#: builtin/tag.c:455
 msgid "message"
 msgstr "message"
 
-#: builtin/commit-tree.c:113 builtin/commit.c:1627
+#: builtin/commit-tree.c:113 builtin/commit.c:1626
 msgid "commit message"
 msgstr "message de validation"
 
@@ -13883,7 +14274,7 @@ msgstr "message de validation"
 msgid "read commit log message from file"
 msgstr "lire le message de validation depuis un fichier"
 
-#: builtin/commit-tree.c:119 builtin/commit.c:1644 builtin/merge.c:303
+#: builtin/commit-tree.c:119 builtin/commit.c:1643 builtin/merge.c:303
 #: builtin/pull.c:180 builtin/revert.c:118
 msgid "GPG sign commit"
 msgstr "signer la validation avec GPG"
@@ -13896,15 +14287,15 @@ msgstr "exactement un arbre obligatoire"
 msgid "git commit-tree: failed to read"
 msgstr "git commit-tree : échec de la lecture"
 
-#: builtin/commit.c:42
+#: builtin/commit.c:43
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr "git commit [<options>] [--] <spécification-de-chemin>..."
 
-#: builtin/commit.c:47
+#: builtin/commit.c:48
 msgid "git status [<options>] [--] <pathspec>..."
 msgstr "git status [<options>] [--] <spécification-de-chemin>..."
 
-#: builtin/commit.c:52
+#: builtin/commit.c:53
 msgid ""
 "You asked to amend the most recent commit, but doing so would make\n"
 "it empty. You can repeat your command with --allow-empty, or you can\n"
@@ -13915,7 +14306,7 @@ msgstr ""
 "vide. Vous pouvez répéter votre commande avec --allow-empty, ou vous pouvez\n"
 "supprimer complètement le commit avec \"git reset HEAD^\".\n"
 
-#: builtin/commit.c:57
+#: builtin/commit.c:58
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -13930,15 +14321,15 @@ msgstr ""
 "    git commit --allow-empty\n"
 "\n"
 
-#: builtin/commit.c:64
+#: builtin/commit.c:65
 msgid "Otherwise, please use 'git rebase --skip'\n"
 msgstr "Sinon, veuillez utiliser 'git rebase --skip'\n"
 
-#: builtin/commit.c:67
+#: builtin/commit.c:68
 msgid "Otherwise, please use 'git cherry-pick --skip'\n"
 msgstr "Sinon, veuillez utiliser 'git cherry-pick --skip'\n"
 
-#: builtin/commit.c:70
+#: builtin/commit.c:71
 msgid ""
 "and then use:\n"
 "\n"
@@ -13960,69 +14351,69 @@ msgstr ""
 "    git cherry-pick --skip\n"
 "\n"
 
-#: builtin/commit.c:325
+#: builtin/commit.c:326
 msgid "failed to unpack HEAD tree object"
 msgstr "échec du dépaquetage de l'objet arbre HEAD"
 
-#: builtin/commit.c:375
+#: builtin/commit.c:376
 msgid "No paths with --include/--only does not make sense."
 msgstr "Aucun chemin avec les options --include/--only n'a pas de sens."
 
-#: builtin/commit.c:387
+#: builtin/commit.c:388
 msgid "unable to create temporary index"
 msgstr "impossible de créer l'index temporaire"
 
-#: builtin/commit.c:396
+#: builtin/commit.c:397
 msgid "interactive add failed"
 msgstr "échec de l'ajout interactif"
 
-#: builtin/commit.c:411
+#: builtin/commit.c:412
 msgid "unable to update temporary index"
 msgstr "impossible de mettre à jour l'index temporaire"
 
-#: builtin/commit.c:413
+#: builtin/commit.c:414
 msgid "Failed to update main cache tree"
 msgstr "Impossible de mettre à jour l'arbre de cache principal"
 
-#: builtin/commit.c:438 builtin/commit.c:461 builtin/commit.c:509
+#: builtin/commit.c:439 builtin/commit.c:462 builtin/commit.c:510
 msgid "unable to write new_index file"
 msgstr "impossible d'écrire le fichier new_index"
 
-#: builtin/commit.c:490
+#: builtin/commit.c:491
 msgid "cannot do a partial commit during a merge."
 msgstr "impossible de faire une validation partielle pendant une fusion."
 
-#: builtin/commit.c:492
+#: builtin/commit.c:493
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "impossible de faire une validation partielle pendant un picorage."
 
-#: builtin/commit.c:494
+#: builtin/commit.c:495
 msgid "cannot do a partial commit during a rebase."
 msgstr "impossible de faire une validation partielle pendant un rebasage."
 
-#: builtin/commit.c:502
+#: builtin/commit.c:503
 msgid "cannot read the index"
 msgstr "impossible de lire l'index"
 
-#: builtin/commit.c:521
+#: builtin/commit.c:522
 msgid "unable to write temporary index file"
 msgstr "impossible d'écrire le fichier d'index temporaire"
 
-#: builtin/commit.c:619
+#: builtin/commit.c:620
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "entête d'auteur manquant dans le commit '%s'"
 
-#: builtin/commit.c:621
+#: builtin/commit.c:622
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr "le commit '%s' a une ligne d'auteur malformée"
 
-#: builtin/commit.c:640
+#: builtin/commit.c:641
 msgid "malformed --author parameter"
 msgstr "paramètre --author mal formé"
 
-#: builtin/commit.c:693
+#: builtin/commit.c:694
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -14030,43 +14421,43 @@ msgstr ""
 "impossible de sélectionner un caractère de commentaire\n"
 "qui n'est pas utilisé dans le message de validation actuel"
 
-#: builtin/commit.c:747 builtin/commit.c:781 builtin/commit.c:1166
+#: builtin/commit.c:750 builtin/commit.c:784 builtin/commit.c:1170
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "impossible de rechercher le commit %s"
 
-#: builtin/commit.c:759 builtin/shortlog.c:416
+#: builtin/commit.c:762 builtin/shortlog.c:417
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(lecture du message de journal depuis l'entrée standard)\n"
 
-#: builtin/commit.c:761
+#: builtin/commit.c:764
 msgid "could not read log from standard input"
 msgstr "impossible de lire le journal depuis l'entrée standard"
 
-#: builtin/commit.c:765
+#: builtin/commit.c:768
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "impossible de lire le fichier de journal '%s'"
 
-#: builtin/commit.c:802
+#: builtin/commit.c:805
 #, c-format
 msgid "options '%s' and '%s:%s' cannot be used together"
 msgstr "les options '%s' et '%s.%s' ne peuvent pas être utilisées ensemble"
 
-#: builtin/commit.c:814 builtin/commit.c:830
+#: builtin/commit.c:817 builtin/commit.c:833
 msgid "could not read SQUASH_MSG"
 msgstr "impossible de lire SQUASH_MSG"
 
-#: builtin/commit.c:821
+#: builtin/commit.c:824
 msgid "could not read MERGE_MSG"
 msgstr "impossible de lire MERGE_MSG"
 
-#: builtin/commit.c:881
+#: builtin/commit.c:884
 msgid "could not write commit template"
 msgstr "impossible d'écrire le modèle de commit"
 
-#: builtin/commit.c:894
+#: builtin/commit.c:897
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -14075,7 +14466,7 @@ msgstr ""
 "Veuillez saisir le message de validation pour vos modifications. Les lignes\n"
 "commençant par '%c' seront ignorées.\n"
 
-#: builtin/commit.c:896
+#: builtin/commit.c:899
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -14085,7 +14476,7 @@ msgstr ""
 "commençant par '%c' seront ignorées, et un message vide abandonne la "
 "validation.\n"
 
-#: builtin/commit.c:900
+#: builtin/commit.c:903
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -14096,7 +14487,7 @@ msgstr ""
 "par '%c' seront conservées ; vous pouvez les supprimer vous-même si vous le "
 "souhaitez.\n"
 
-#: builtin/commit.c:904
+#: builtin/commit.c:907
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -14107,7 +14498,7 @@ msgstr ""
 "commençant par '%c' seront conservées ; vous pouvez les supprimer vous-même\n"
 "si vous le souhaitez. Un message vide abandonne la validation.\n"
 
-#: builtin/commit.c:916
+#: builtin/commit.c:919
 msgid ""
 "\n"
 "It looks like you may be committing a merge.\n"
@@ -14121,7 +14512,7 @@ msgstr ""
 "\tgit update-ref -d MERGE_HEAD\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:921
+#: builtin/commit.c:924
 msgid ""
 "\n"
 "It looks like you may be committing a cherry-pick.\n"
@@ -14135,175 +14526,153 @@ msgstr ""
 "\tgit update-ref -d CHERRY_PICK_HEAD\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:948
+#: builtin/commit.c:951
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sAuteur :     %.*s <%.*s>"
 
-#: builtin/commit.c:956
+#: builtin/commit.c:959
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sDate :       %s"
 
-#: builtin/commit.c:963
+#: builtin/commit.c:966
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sValidateur : %.*s <%.*s>"
 
-#: builtin/commit.c:981
+#: builtin/commit.c:984
 msgid "Cannot read index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/commit.c:1026
+#: builtin/commit.c:1029
 msgid "unable to pass trailers to --trailers"
 msgstr "impossible de passer les lignes finales à --trailers"
 
-#: builtin/commit.c:1066
+#: builtin/commit.c:1069
 msgid "Error building trees"
 msgstr "Erreur lors de la construction des arbres"
 
-#: builtin/commit.c:1080 builtin/tag.c:316
+#: builtin/commit.c:1083 builtin/tag.c:317
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
 msgstr "Veuillez fournir le message en utilisant l'option -m ou -F.\n"
 
-#: builtin/commit.c:1124
+#: builtin/commit.c:1128
 #, c-format
 msgid "--author '%s' is not 'Name <email>' and matches no existing author"
 msgstr ""
 "--author '%s' n'est pas de la forme 'Nom <email>' ni ne correspond à aucun "
 "auteur existant"
 
-#: builtin/commit.c:1138
+#: builtin/commit.c:1142
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr "Mode de fichier ignoré invalide '%s'"
 
-#: builtin/commit.c:1156 builtin/commit.c:1451
+#: builtin/commit.c:1160 builtin/commit.c:1450
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Mode de fichier non suivi invalide '%s'"
 
-#: builtin/commit.c:1227
+#: builtin/commit.c:1231
 msgid "You are in the middle of a merge -- cannot reword."
 msgstr "Vous êtes en pleine fusion -- impossible de reformuler."
 
-#: builtin/commit.c:1229
+#: builtin/commit.c:1233
 msgid "You are in the middle of a cherry-pick -- cannot reword."
 msgstr "Vous êtes en plein picorage -- impossible de reformuler."
 
-#: builtin/commit.c:1232
+#: builtin/commit.c:1236
 #, c-format
 msgid "reword option of '%s' and path '%s' cannot be used together"
 msgstr ""
 "l'option de reformulation de '%s' et le chemin '%s' ne peuvent pas être "
 "utilisés ensemble"
 
-#: builtin/commit.c:1234
+#: builtin/commit.c:1238
 #, c-format
 msgid "reword option of '%s' and '%s' cannot be used together"
 msgstr ""
 "l'option de reformulation de '%s' et '%s' ne peuvent pas être utilisés "
 "ensemble"
 
-#: builtin/commit.c:1254
-msgid "Using both --reset-author and --author does not make sense"
-msgstr "L'utilisation simultanée de --reset-author et --author n'a pas de sens"
-
-#: builtin/commit.c:1261
+#: builtin/commit.c:1263
 msgid "You have nothing to amend."
 msgstr "Il n'y a rien à corriger."
 
-#: builtin/commit.c:1264
+#: builtin/commit.c:1266
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Vous êtes en pleine fusion -- impossible de corriger (amend)."
 
-#: builtin/commit.c:1266
+#: builtin/commit.c:1268
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr "Vous êtes en plein picorage -- impossible de corriger (amend)."
 
-#: builtin/commit.c:1268
+#: builtin/commit.c:1270
 msgid "You are in the middle of a rebase -- cannot amend."
 msgstr "Vous êtes en plein rebasage -- impossible de corriger (amend)."
 
-#: builtin/commit.c:1271
-msgid "Options --squash and --fixup cannot be used together"
-msgstr "Les options --squash et --fixup ne peuvent pas être utilisées ensemble"
-
-#: builtin/commit.c:1281
-msgid "Only one of -c/-C/-F/--fixup can be used."
-msgstr "Une seule option parmi -c/-C/-F/--fixup peut être utilisée."
-
-#: builtin/commit.c:1283
-msgid "Option -m cannot be combined with -c/-C/-F."
-msgstr "L'option -m ne peut pas être combinée avec -c/-C/-F."
-
-#: builtin/commit.c:1292
+#: builtin/commit.c:1290
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr "--reset-author ne peut être utilisé qu'avec -C, -c ou --amend."
 
-#: builtin/commit.c:1310
-msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
-msgstr ""
-"Une seule option parmi --include/--only/--all/--interactive/--patch peut "
-"être utilisée."
-
-#: builtin/commit.c:1338
+#: builtin/commit.c:1337
 #, c-format
 msgid "unknown option: --fixup=%s:%s"
 msgstr "option inconnue : --fixup=%s:%s"
 
-#: builtin/commit.c:1355
+#: builtin/commit.c:1354
 #, c-format
 msgid "paths '%s ...' with -a does not make sense"
 msgstr "des chemins '%s ...' avec l'option -a n'a pas de sens"
 
-#: builtin/commit.c:1486 builtin/commit.c:1655
+#: builtin/commit.c:1485 builtin/commit.c:1654
 msgid "show status concisely"
 msgstr "afficher l'état avec concision"
 
-#: builtin/commit.c:1488 builtin/commit.c:1657
+#: builtin/commit.c:1487 builtin/commit.c:1656
 msgid "show branch information"
 msgstr "afficher l'information de branche"
 
-#: builtin/commit.c:1490
+#: builtin/commit.c:1489
 msgid "show stash information"
 msgstr "afficher l'information de remisage"
 
-#: builtin/commit.c:1492 builtin/commit.c:1659
+#: builtin/commit.c:1491 builtin/commit.c:1658
 msgid "compute full ahead/behind values"
 msgstr "calcule les valeurs complètes en avance/en retard"
 
-#: builtin/commit.c:1494
+#: builtin/commit.c:1493
 msgid "version"
 msgstr "version"
 
-#: builtin/commit.c:1494 builtin/commit.c:1661 builtin/push.c:551
-#: builtin/worktree.c:690
+#: builtin/commit.c:1493 builtin/commit.c:1660 builtin/push.c:551
+#: builtin/worktree.c:765
 msgid "machine-readable output"
 msgstr "sortie pour traitement automatique"
 
-#: builtin/commit.c:1497 builtin/commit.c:1663
+#: builtin/commit.c:1496 builtin/commit.c:1662
 msgid "show status in long format (default)"
 msgstr "afficher l'état en format long (par défaut)"
 
-#: builtin/commit.c:1500 builtin/commit.c:1666
+#: builtin/commit.c:1499 builtin/commit.c:1665
 msgid "terminate entries with NUL"
 msgstr "terminer les éléments par NUL"
 
-#: builtin/commit.c:1502 builtin/commit.c:1506 builtin/commit.c:1669
+#: builtin/commit.c:1501 builtin/commit.c:1505 builtin/commit.c:1668
 #: builtin/fast-export.c:1172 builtin/fast-export.c:1175
-#: builtin/fast-export.c:1178 builtin/rebase.c:1111 parse-options.h:337
+#: builtin/fast-export.c:1178 builtin/rebase.c:1139 parse-options.h:368
 msgid "mode"
 msgstr "mode"
 
-#: builtin/commit.c:1503 builtin/commit.c:1669
+#: builtin/commit.c:1502 builtin/commit.c:1668
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr ""
 "afficher les fichiers non suivis, \"mode\" facultatif : all (tous), normal, "
 "no. (Défaut : all)"
 
-#: builtin/commit.c:1507
+#: builtin/commit.c:1506
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
@@ -14311,11 +14680,11 @@ msgstr ""
 "afficher les fichiers ignorés, \"mode\" facultatif : traditional "
 "(traditionnel), matching (correspondant), no. (Défaut : traditional)"
 
-#: builtin/commit.c:1509 parse-options.h:192
+#: builtin/commit.c:1508 parse-options.h:197
 msgid "when"
 msgstr "quand"
 
-#: builtin/commit.c:1510
+#: builtin/commit.c:1509
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -14323,198 +14692,198 @@ msgstr ""
 "ignorer les modifications dans les sous-modules, \"quand\" facultatif : all "
 "(tous), dirty (sale), untracked (non suivi). (Défaut : all)"
 
-#: builtin/commit.c:1512
+#: builtin/commit.c:1511
 msgid "list untracked files in columns"
 msgstr "afficher les fichiers non suivis en colonnes"
 
-#: builtin/commit.c:1513
+#: builtin/commit.c:1512
 msgid "do not detect renames"
 msgstr "ne pas détecter les renommages"
 
-#: builtin/commit.c:1515
+#: builtin/commit.c:1514
 msgid "detect renames, optionally set similarity index"
 msgstr ""
 "détecter les renommages, en spécifiant optionnellement le facteur de "
 "similarité"
 
-#: builtin/commit.c:1538
+#: builtin/commit.c:1537
 msgid "Unsupported combination of ignored and untracked-files arguments"
 msgstr ""
 "Combinaison non supportée d'arguments sur les fichiers ignorés et non-suivis"
 
-#: builtin/commit.c:1620
+#: builtin/commit.c:1619
 msgid "suppress summary after successful commit"
 msgstr "supprimer le résumé après une validation réussie"
 
-#: builtin/commit.c:1621
+#: builtin/commit.c:1620
 msgid "show diff in commit message template"
 msgstr "afficher les diff dans le modèle de message de validation"
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1622
 msgid "Commit message options"
 msgstr "Options du message de validation"
 
-#: builtin/commit.c:1624 builtin/merge.c:288 builtin/tag.c:456
+#: builtin/commit.c:1623 builtin/merge.c:288 builtin/tag.c:457
 msgid "read message from file"
 msgstr "lire le message depuis un fichier"
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1624
 msgid "author"
 msgstr "auteur"
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1624
 msgid "override author for commit"
 msgstr "remplacer l'auteur pour la validation"
 
-#: builtin/commit.c:1626 builtin/gc.c:551
+#: builtin/commit.c:1625 builtin/gc.c:551
 msgid "date"
 msgstr "date"
 
-#: builtin/commit.c:1626
+#: builtin/commit.c:1625
 msgid "override date for commit"
 msgstr "remplacer la date pour la validation"
 
-#: builtin/commit.c:1628 builtin/commit.c:1629 builtin/commit.c:1635
-#: parse-options.h:329 ref-filter.h:89
+#: builtin/commit.c:1627 builtin/commit.c:1628 builtin/commit.c:1634
+#: parse-options.h:360 ref-filter.h:89
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1627
 msgid "reuse and edit message from specified commit"
 msgstr "réutiliser et éditer le message du commit spécifié"
 
-#: builtin/commit.c:1629
+#: builtin/commit.c:1628
 msgid "reuse message from specified commit"
 msgstr "réutiliser le message du commit spécifié"
 
 #. TRANSLATORS: Leave "[(amend|reword):]" as-is,
 #. and only translate <commit>.
 #.
-#: builtin/commit.c:1634
+#: builtin/commit.c:1633
 msgid "[(amend|reword):]commit"
 msgstr "[(amend|reword):]commit"
 
-#: builtin/commit.c:1634
+#: builtin/commit.c:1633
 msgid ""
 "use autosquash formatted message to fixup or amend/reword specified commit"
 msgstr ""
 "utiliser un message au format autosquash pour corriger ou reformuler le "
 "commit spécifié"
 
-#: builtin/commit.c:1635
+#: builtin/commit.c:1634
 msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
 "utiliser un message au format autosquash pour compresser le commit spécifié"
 
-#: builtin/commit.c:1636
+#: builtin/commit.c:1635
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr ""
 "à présent je suis l'auteur de la validation (utilisé avec -C/-c/--amend)"
 
-#: builtin/commit.c:1637 builtin/interpret-trailers.c:111
+#: builtin/commit.c:1636 builtin/interpret-trailers.c:111
 msgid "trailer"
 msgstr "ligne de fin"
 
-#: builtin/commit.c:1637
+#: builtin/commit.c:1636
 msgid "add custom trailer(s)"
 msgstr "ajouter des lignes terminales personnaliser"
 
-#: builtin/commit.c:1638 builtin/log.c:1769 builtin/merge.c:306
+#: builtin/commit.c:1637 builtin/log.c:1788 builtin/merge.c:306
 #: builtin/pull.c:146 builtin/revert.c:110
 msgid "add a Signed-off-by trailer"
 msgstr "ajouter une ligne terminale Signed-off-by"
 
-#: builtin/commit.c:1639
+#: builtin/commit.c:1638
 msgid "use specified template file"
 msgstr "utiliser le fichier de modèle spécifié"
 
-#: builtin/commit.c:1640
+#: builtin/commit.c:1639
 msgid "force edit of commit"
 msgstr "forcer l'édition du commit"
 
-#: builtin/commit.c:1642
+#: builtin/commit.c:1641
 msgid "include status in commit message template"
 msgstr "inclure l'état dans le modèle de message de validation"
 
-#: builtin/commit.c:1647
+#: builtin/commit.c:1646
 msgid "Commit contents options"
 msgstr "Valider les options des contenus"
 
-#: builtin/commit.c:1648
+#: builtin/commit.c:1647
 msgid "commit all changed files"
 msgstr "valider tous les fichiers modifiés"
 
-#: builtin/commit.c:1649
+#: builtin/commit.c:1648
 msgid "add specified files to index for commit"
 msgstr "ajouter les fichiers spécifiés à l'index pour la validation"
 
-#: builtin/commit.c:1650
+#: builtin/commit.c:1649
 msgid "interactively add files"
 msgstr "ajouter des fichiers en mode interactif"
 
-#: builtin/commit.c:1651
+#: builtin/commit.c:1650
 msgid "interactively add changes"
 msgstr "ajouter les modifications en mode interactif"
 
-#: builtin/commit.c:1652
+#: builtin/commit.c:1651
 msgid "commit only specified files"
 msgstr "valider seulement les fichiers spécifiés"
 
-#: builtin/commit.c:1653
+#: builtin/commit.c:1652
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "éviter d'utiliser les crochets pre-commit et commit-msg"
 
-#: builtin/commit.c:1654
+#: builtin/commit.c:1653
 msgid "show what would be committed"
 msgstr "afficher ce qui serait validé"
 
-#: builtin/commit.c:1667
+#: builtin/commit.c:1666
 msgid "amend previous commit"
 msgstr "corriger la validation précédente"
 
-#: builtin/commit.c:1668
+#: builtin/commit.c:1667
 msgid "bypass post-rewrite hook"
 msgstr "éviter d'utiliser le crochet post-rewrite"
 
-#: builtin/commit.c:1675
+#: builtin/commit.c:1674
 msgid "ok to record an empty change"
 msgstr "accepter d'enregistrer une modification vide"
 
-#: builtin/commit.c:1677
+#: builtin/commit.c:1676
 msgid "ok to record a change with an empty message"
 msgstr "accepter d'enregistrer une modification avec un message vide"
 
-#: builtin/commit.c:1753
+#: builtin/commit.c:1752
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Fichier MERGE_HEAD corrompu (%s)"
 
-#: builtin/commit.c:1760
+#: builtin/commit.c:1759
 msgid "could not read MERGE_MODE"
 msgstr "impossible de lire MERGE_MODE"
 
-#: builtin/commit.c:1781
+#: builtin/commit.c:1780
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "impossible de lire le message de validation : %s"
 
-#: builtin/commit.c:1788
+#: builtin/commit.c:1787
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "Abandon de la validation dû à un message de validation vide.\n"
 
-#: builtin/commit.c:1793
+#: builtin/commit.c:1792
 #, c-format
 msgid "Aborting commit; you did not edit the message.\n"
 msgstr "Abandon de la validation ; vous n'avez pas édité le message\n"
 
-#: builtin/commit.c:1804
+#: builtin/commit.c:1803
 #, c-format
 msgid "Aborting commit due to empty commit message body.\n"
 msgstr ""
 "Abandon de la validation dû à un corps de message de validation vide.\n"
 
-#: builtin/commit.c:1840
+#: builtin/commit.c:1839
 msgid ""
 "repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -14639,6 +15008,10 @@ msgstr "trouver le réglage de la couleur : slot [stdout-est-tty]"
 msgid "Type"
 msgstr "Type"
 
+#: builtin/config.c:154 builtin/env--helper.c:42 builtin/hash-object.c:97
+msgid "type"
+msgstr "type"
+
 #: builtin/config.c:154 builtin/env--helper.c:43
 msgid "value is given this type"
 msgstr "ce type est assigné à la valeur"
@@ -14854,10 +15227,6 @@ msgstr ""
 msgid "no such section: %s"
 msgstr "section inexistante : %s"
 
-#: builtin/count-objects.c:90
-msgid "git count-objects [-v] [-H | --human-readable]"
-msgstr "git count-objects [-v] [-H | --human-readable]"
-
 #: builtin/count-objects.c:100
 msgid "print sizes in human readable format"
 msgstr "affiche les tailles dans un format humainement lisible"
@@ -15029,7 +15398,7 @@ msgstr "ne considérer que les étiquettes correspondant à <motif>"
 msgid "do not consider tags matching <pattern>"
 msgstr "ne pas considérer les étiquettes correspondant à <motif>"
 
-#: builtin/describe.c:570 builtin/name-rev.c:544
+#: builtin/describe.c:570 builtin/name-rev.c:595
 msgid "show abbreviated commit object as fallback"
 msgstr "afficher les objets commits abrégés en dernier recours"
 
@@ -15079,7 +15448,7 @@ msgstr "%s..%s: pas de base de fusion"
 msgid "Not a git repository"
 msgstr "Ce n'est pas un dépôt git"
 
-#: builtin/diff.c:537 builtin/grep.c:698
+#: builtin/diff.c:537 builtin/grep.c:700
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "objet spécifié '%s' invalide."
@@ -15197,11 +15566,11 @@ msgstr "passé à `diff`"
 msgid "difftool requires worktree or --no-index"
 msgstr "difftool exige un arbre de travail ou --no-index"
 
-#: builtin/difftool.c:744
+#: builtin/difftool.c:745
 msgid "no <tool> given for --tool=<tool>"
 msgstr "pas d'<outil> spécifié pour --tool=<outil>"
 
-#: builtin/difftool.c:751
+#: builtin/difftool.c:752
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr "pas de <commande> spécifié pour --extcmd=<commande>"
 
@@ -15209,10 +15578,6 @@ msgstr "pas de <commande> spécifié pour --extcmd=<commande>"
 msgid "git env--helper --type=[bool|ulong] <options> <env-var>"
 msgstr "git env--helper --type=[bool|ulong] <options> <var d'env>"
 
-#: builtin/env--helper.c:42 builtin/hash-object.c:96
-msgid "type"
-msgstr "type"
-
 #: builtin/env--helper.c:46
 msgid "default for git_env_*(...) to fall back on"
 msgstr "valeur par défaut pour git_env_*(...) en cas d'absence"
@@ -15232,15 +15597,15 @@ msgstr ""
 #: builtin/env--helper.c:82
 #, c-format
 msgid ""
-"option `--default' expects an unsigned long value with `--type=ulong`, not `"
-"%s`"
+"option `--default' expects an unsigned long value with `--type=ulong`, not "
+"`%s`"
 msgstr ""
 "l'option `--default` attend une valeur entier long non signé avec `--"
 "type=ulong`, pas `%s`"
 
 #: builtin/fast-export.c:29
-msgid "git fast-export [rev-list-opts]"
-msgstr "git fast-export [options-de-liste-de-révisions]"
+msgid "git fast-export [<rev-list-opts>]"
+msgstr "git fast-export [<options-de-liste-de-révisions>]"
 
 #: builtin/fast-export.c:843
 msgid "Error: Cannot export nested tags unless --mark-tags is specified."
@@ -15299,7 +15664,7 @@ msgstr "utiliser la fonction \"done\" pour terminer le flux"
 msgid "skip output of blob data"
 msgstr "sauter l'affichage de données de blob"
 
-#: builtin/fast-export.c:1196 builtin/log.c:1841
+#: builtin/fast-export.c:1196 builtin/log.c:1860
 msgid "refspec"
 msgstr "spécificateur de référence"
 
@@ -15333,39 +15698,39 @@ msgstr "afficher les ids d'objet originaux des blobs/commits"
 msgid "label tags with mark ids"
 msgstr "marquer les étiquettes avec des ids de marque"
 
-#: builtin/fast-import.c:3090
+#: builtin/fast-import.c:3097
 #, c-format
 msgid "Missing from marks for submodule '%s'"
 msgstr "Champs from manquants pour le sous-module '%s'"
 
-#: builtin/fast-import.c:3092
+#: builtin/fast-import.c:3099
 #, c-format
 msgid "Missing to marks for submodule '%s'"
 msgstr "Champs 'to' manquants pour le sous-module '%s'"
 
-#: builtin/fast-import.c:3227
+#: builtin/fast-import.c:3234
 #, c-format
 msgid "Expected 'mark' command, got %s"
 msgstr "Commande 'mark' attendue, %s trouvé"
 
-#: builtin/fast-import.c:3232
+#: builtin/fast-import.c:3239
 #, c-format
 msgid "Expected 'to' command, got %s"
 msgstr "Commande 'to' attendue, %s trouvé"
 
-#: builtin/fast-import.c:3324
+#: builtin/fast-import.c:3331
 msgid "Expected format name:filename for submodule rewrite option"
 msgstr ""
 "Format attendu nom:<nom de fichier> pour l'option de réécriture de sous-"
 "module"
 
-#: builtin/fast-import.c:3379
+#: builtin/fast-import.c:3386
 #, c-format
 msgid "feature '%s' forbidden in input without --allow-unsafe-features"
 msgstr ""
 "la fonctionnalité '%s' est interdite en entrée sans --allow-unsafe-features"
 
-#: builtin/fetch-pack.c:242
+#: builtin/fetch-pack.c:246
 #, c-format
 msgid "Lockfile created but not reported: %s"
 msgstr "Fichier verrou créé mais non reporté : %s"
@@ -15386,106 +15751,110 @@ msgstr "git fetch --multiple [<options>] [(<dépôt> | <groupe>)...]"
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<options>]"
 
-#: builtin/fetch.c:123
+#: builtin/fetch.c:124
 msgid "fetch.parallel cannot be negative"
 msgstr "fetch.parallel ne peut pas être négatif"
 
-#: builtin/fetch.c:146 builtin/pull.c:189
+#: builtin/fetch.c:147 builtin/pull.c:189
 msgid "fetch from all remotes"
 msgstr "récupérer depuis tous les dépôts distants"
 
-#: builtin/fetch.c:148 builtin/pull.c:249
+#: builtin/fetch.c:149 builtin/pull.c:249
 msgid "set upstream for git pull/fetch"
 msgstr "définir la branche amont pour git pull/fetch"
 
-#: builtin/fetch.c:150 builtin/pull.c:192
+#: builtin/fetch.c:151 builtin/pull.c:192
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "ajouter à .git/FETCH_HEAD au lieu de l'écraser"
 
-#: builtin/fetch.c:152
+#: builtin/fetch.c:153
 msgid "use atomic transaction to update references"
 msgstr "utiliser une transaction atomique pour mettre à jour les références"
 
-#: builtin/fetch.c:154 builtin/pull.c:195
+#: builtin/fetch.c:155 builtin/pull.c:195
 msgid "path to upload pack on remote end"
 msgstr "chemin vers lequel télécharger le paquet sur le poste distant"
 
-#: builtin/fetch.c:155
+#: builtin/fetch.c:156
 msgid "force overwrite of local reference"
 msgstr "forcer l'écrasement de la branche locale"
 
-#: builtin/fetch.c:157
+#: builtin/fetch.c:158
 msgid "fetch from multiple remotes"
 msgstr "récupérer depuis plusieurs dépôts distants"
 
-#: builtin/fetch.c:159 builtin/pull.c:199
+#: builtin/fetch.c:160 builtin/pull.c:199
 msgid "fetch all tags and associated objects"
 msgstr "récupérer toutes les étiquettes et leurs objets associés"
 
-#: builtin/fetch.c:161
+#: builtin/fetch.c:162
 msgid "do not fetch all tags (--no-tags)"
 msgstr "ne pas récupérer toutes les étiquettes (--no-tags)"
 
-#: builtin/fetch.c:163
+#: builtin/fetch.c:164
 msgid "number of submodules fetched in parallel"
 msgstr "nombre de sous-modules récupérés en parallèle"
 
-#: builtin/fetch.c:165
+#: builtin/fetch.c:166
 msgid "modify the refspec to place all refs within refs/prefetch/"
 msgstr ""
 "modifier le spécificateur de référence pour placer les références dans refs/"
 "prefetch/"
 
-#: builtin/fetch.c:167 builtin/pull.c:202
+#: builtin/fetch.c:168 builtin/pull.c:202
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 "éliminer les branches de suivi distant si la branche n'existe plus dans le "
 "dépôt distant"
 
-#: builtin/fetch.c:169
+#: builtin/fetch.c:170
 msgid "prune local tags no longer on remote and clobber changed tags"
 msgstr ""
 "éliminer les étiquettes locales qui ont disparu du dépôt distant et qui "
 "encombrent les étiquettes modifiées"
 
-#: builtin/fetch.c:170 builtin/fetch.c:195 builtin/pull.c:123
+#: builtin/fetch.c:171 builtin/fetch.c:199 builtin/pull.c:123
 msgid "on-demand"
 msgstr "à la demande"
 
-#: builtin/fetch.c:171
+#: builtin/fetch.c:172
 msgid "control recursive fetching of submodules"
 msgstr "contrôler la récupération récursive dans les sous-modules"
 
-#: builtin/fetch.c:176
+#: builtin/fetch.c:177
 msgid "write fetched references to the FETCH_HEAD file"
 msgstr "écrire les références récupérées dans le fichier FETCH_HEAD"
 
-#: builtin/fetch.c:177 builtin/pull.c:210
+#: builtin/fetch.c:178 builtin/pull.c:210
 msgid "keep downloaded pack"
 msgstr "conserver le paquet téléchargé"
 
-#: builtin/fetch.c:179
+#: builtin/fetch.c:180
 msgid "allow updating of HEAD ref"
 msgstr "permettre la mise à jour de la référence HEAD"
 
-#: builtin/fetch.c:182 builtin/fetch.c:188 builtin/pull.c:213
+#: builtin/fetch.c:183 builtin/fetch.c:189 builtin/pull.c:213
 #: builtin/pull.c:222
 msgid "deepen history of shallow clone"
 msgstr "approfondir l'historique d'un clone superficiel"
 
-#: builtin/fetch.c:184 builtin/pull.c:216
+#: builtin/fetch.c:185 builtin/pull.c:216
 msgid "deepen history of shallow repository based on time"
 msgstr "approfondir l'historique d'un clone superficiel en fonction d'une date"
 
-#: builtin/fetch.c:190 builtin/pull.c:225
+#: builtin/fetch.c:191 builtin/pull.c:225
 msgid "convert to a complete repository"
 msgstr "convertir en un dépôt complet"
 
-#: builtin/fetch.c:193
+#: builtin/fetch.c:194
+msgid "re-fetch without negotiating common commits"
+msgstr "re-récupérer sans négocier les commits communs"
+
+#: builtin/fetch.c:197
 msgid "prepend this to submodule path output"
 msgstr "préfixer ceci à la sortie du chemin du sous-module"
 
-#: builtin/fetch.c:196
+#: builtin/fetch.c:200
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
@@ -15493,111 +15862,105 @@ msgstr ""
 "par défaut pour la récupération récursive de sous-modules (priorité plus "
 "basse que les fichiers de config)"
 
-#: builtin/fetch.c:200 builtin/pull.c:228
+#: builtin/fetch.c:204 builtin/pull.c:228
 msgid "accept refs that update .git/shallow"
 msgstr "accepter les références qui mettent à jour .git/shallow"
 
-#: builtin/fetch.c:201 builtin/pull.c:230
+#: builtin/fetch.c:205 builtin/pull.c:230
 msgid "refmap"
 msgstr "correspondance de référence"
 
-#: builtin/fetch.c:202 builtin/pull.c:231
+#: builtin/fetch.c:206 builtin/pull.c:231
 msgid "specify fetch refmap"
 msgstr "spécifier une correspondance de référence pour la récupération"
 
-#: builtin/fetch.c:209 builtin/pull.c:244
+#: builtin/fetch.c:213 builtin/pull.c:244
 msgid "report that we have only objects reachable from this object"
 msgstr "rapporte que nous n'avons que des objets joignables depuis cet objet"
 
-#: builtin/fetch.c:211
+#: builtin/fetch.c:215
 msgid "do not fetch a packfile; instead, print ancestors of negotiation tips"
 msgstr ""
 "ne pas récupérer le fichier paquet ; à la place, afficher les ancêtres des "
 "sommets de négociation"
 
-#: builtin/fetch.c:214 builtin/fetch.c:216
+#: builtin/fetch.c:218 builtin/fetch.c:220
 msgid "run 'maintenance --auto' after fetching"
 msgstr "lancer 'maintenance --auto' après la récupération"
 
-#: builtin/fetch.c:218 builtin/pull.c:247
+#: builtin/fetch.c:222 builtin/pull.c:247
 msgid "check for forced-updates on all updated branches"
 msgstr ""
 "vérifier les mises à jour forcées (forced-updates) sur toutes les branches "
 "mises à jour"
 
-#: builtin/fetch.c:220
+#: builtin/fetch.c:224
 msgid "write the commit-graph after fetching"
 msgstr "écrire le graphe de commits après le rapatriement"
 
-#: builtin/fetch.c:222
+#: builtin/fetch.c:226
 msgid "accept refspecs from stdin"
 msgstr "lire les spécificateurs de référence depuis l'entrée standard"
 
-#: builtin/fetch.c:592
+#: builtin/fetch.c:618
 msgid "couldn't find remote ref HEAD"
 msgstr "impossible de trouver la référence HEAD distante"
 
-#: builtin/fetch.c:766
-#, c-format
-msgid "configuration fetch.output contains invalid value %s"
-msgstr ""
-"le paramètre de configuration fetch.output contient une valeur invalide %s"
-
-#: builtin/fetch.c:867
+#: builtin/fetch.c:893
 #, c-format
 msgid "object %s not found"
 msgstr "objet %s non trouvé"
 
-#: builtin/fetch.c:871
+#: builtin/fetch.c:897
 msgid "[up to date]"
 msgstr "[à jour]"
 
-#: builtin/fetch.c:883 builtin/fetch.c:901 builtin/fetch.c:973
+#: builtin/fetch.c:909 builtin/fetch.c:927 builtin/fetch.c:999
 msgid "[rejected]"
 msgstr "[rejeté]"
 
-#: builtin/fetch.c:885
+#: builtin/fetch.c:911
 msgid "can't fetch in current branch"
 msgstr "impossible de récupérer dans la branche actuelle"
 
-#: builtin/fetch.c:886
+#: builtin/fetch.c:912
 msgid "checked out in another worktree"
 msgstr "extrait dans un autre arbre de travail"
 
-#: builtin/fetch.c:896
+#: builtin/fetch.c:922
 msgid "[tag update]"
 msgstr "[mise à jour de l'étiquette]"
 
-#: builtin/fetch.c:897 builtin/fetch.c:934 builtin/fetch.c:956
-#: builtin/fetch.c:968
+#: builtin/fetch.c:923 builtin/fetch.c:960 builtin/fetch.c:982
+#: builtin/fetch.c:994
 msgid "unable to update local ref"
 msgstr "impossible de mettre à jour la référence locale"
 
-#: builtin/fetch.c:901
+#: builtin/fetch.c:927
 msgid "would clobber existing tag"
 msgstr "écraserait l'étiquette existante"
 
-#: builtin/fetch.c:923
+#: builtin/fetch.c:949
 msgid "[new tag]"
 msgstr "[nouvelle étiquette]"
 
-#: builtin/fetch.c:926
+#: builtin/fetch.c:952
 msgid "[new branch]"
 msgstr "[nouvelle branche]"
 
-#: builtin/fetch.c:929
+#: builtin/fetch.c:955
 msgid "[new ref]"
 msgstr "[nouvelle référence]"
 
-#: builtin/fetch.c:968
+#: builtin/fetch.c:994
 msgid "forced update"
 msgstr "mise à jour forcée"
 
-#: builtin/fetch.c:973
+#: builtin/fetch.c:999
 msgid "non-fast-forward"
 msgstr "pas en avance rapide"
 
-#: builtin/fetch.c:1076
+#: builtin/fetch.c:1102
 msgid ""
 "fetch normally indicates which branches had a forced update,\n"
 "but that check has been disabled; to re-enable, use '--show-forced-updates'\n"
@@ -15607,7 +15970,7 @@ msgstr ""
 "mais ceci a été désactivé. Pour ré-activer, utilisez le drapeau\n"
 "'--show-forced-updates' ou lancez 'git config fetch.showForcedUpdates true'"
 
-#: builtin/fetch.c:1080
+#: builtin/fetch.c:1106
 #, c-format
 msgid ""
 "it took %.2f seconds to check forced updates; you can use\n"
@@ -15619,24 +15982,24 @@ msgstr ""
 "Vous pouvez utiliser '--no-show-forced-updates' ou lancer\n"
 "'git config fetch.showForcedUpdates false' pour éviter cette vérification\n"
 
-#: builtin/fetch.c:1112
+#: builtin/fetch.c:1136
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr "%s n'a pas envoyé tous les objets nécessaires\n"
 
-#: builtin/fetch.c:1141
+#: builtin/fetch.c:1156
 #, c-format
 msgid "rejected %s because shallow roots are not allowed to be updated"
 msgstr ""
 "%s rejeté parce que les  mises à jour de racines superficielles ne sont pas "
 "permises"
 
-#: builtin/fetch.c:1231 builtin/fetch.c:1379
+#: builtin/fetch.c:1259 builtin/fetch.c:1418
 #, c-format
 msgid "From %.*s\n"
 msgstr "Depuis %.*s\n"
 
-#: builtin/fetch.c:1252
+#: builtin/fetch.c:1269
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -15645,49 +16008,49 @@ msgstr ""
 "des références locales n'ont pas pu être mises à jour ; essayez de lancer\n"
 " 'git remote prune %s' pour supprimer des branches anciennes en conflit"
 
-#: builtin/fetch.c:1349
+#: builtin/fetch.c:1377
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s sera en suspens)"
 
-#: builtin/fetch.c:1350
+#: builtin/fetch.c:1378
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s est devenu en suspens)"
 
-#: builtin/fetch.c:1382
+#: builtin/fetch.c:1421
 msgid "[deleted]"
 msgstr "[supprimé]"
 
-#: builtin/fetch.c:1383 builtin/remote.c:1128
+#: builtin/fetch.c:1422 builtin/remote.c:1153
 msgid "(none)"
 msgstr "(aucun(e))"
 
-#: builtin/fetch.c:1405
+#: builtin/fetch.c:1446
 #, c-format
 msgid "refusing to fetch into branch '%s' checked out at '%s'"
 msgstr "refus de récupérer dans la branche '%s' extraite dans '%s'"
 
-#: builtin/fetch.c:1425
+#: builtin/fetch.c:1466
 #, c-format
 msgid "option \"%s\" value \"%s\" is not valid for %s"
 msgstr "la valeur \"%2$s\" de l'option \"%1$s\" est invalide pour %3$s"
 
-#: builtin/fetch.c:1428
+#: builtin/fetch.c:1469
 #, c-format
 msgid "option \"%s\" is ignored for %s\n"
 msgstr "l'option \"%s\" est ignorée pour %s\n"
 
-#: builtin/fetch.c:1455
+#: builtin/fetch.c:1496
 #, c-format
 msgid "the object %s does not exist"
 msgstr "l'objet %s n'existe pas"
 
-#: builtin/fetch.c:1643
+#: builtin/fetch.c:1748
 msgid "multiple branches detected, incompatible with --set-upstream"
 msgstr "branches multiples détectées, imcompatible avec --set-upstream"
 
-#: builtin/fetch.c:1655
+#: builtin/fetch.c:1760
 #, c-format
 msgid ""
 "could not set upstream of HEAD to '%s' from '%s' when it does not point to "
@@ -15696,19 +16059,19 @@ msgstr ""
 "impossible de régler la branche amont de HEAD à '%s' depuis '%s' qui ne "
 "pointe sur aucune branche."
 
-#: builtin/fetch.c:1668
+#: builtin/fetch.c:1773
 msgid "not setting upstream for a remote remote-tracking branch"
 msgstr "dépôt amont non défini pour la branche de suivi à distance"
 
-#: builtin/fetch.c:1670
+#: builtin/fetch.c:1775
 msgid "not setting upstream for a remote tag"
 msgstr "dépôt amont non défini pour l'étiquette distante"
 
-#: builtin/fetch.c:1672
+#: builtin/fetch.c:1777
 msgid "unknown branch type"
 msgstr "type de branche inconnu"
 
-#: builtin/fetch.c:1674
+#: builtin/fetch.c:1779
 msgid ""
 "no source branch found;\n"
 "you need to specify exactly one branch with the --set-upstream option"
@@ -15716,22 +16079,22 @@ msgstr ""
 "aucune branche source trouvée.\n"
 "Vous devez spécifier exactement une branche avec l'option --set-upstream"
 
-#: builtin/fetch.c:1804 builtin/fetch.c:1867
+#: builtin/fetch.c:1904 builtin/fetch.c:1967
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Récupération de %s\n"
 
-#: builtin/fetch.c:1814 builtin/fetch.c:1869
+#: builtin/fetch.c:1914 builtin/fetch.c:1969
 #, c-format
 msgid "could not fetch %s"
 msgstr "impossible de récupérer %s"
 
-#: builtin/fetch.c:1826
+#: builtin/fetch.c:1926
 #, c-format
 msgid "could not fetch '%s' (exit code: %d)\n"
 msgstr "impossible de récupérer '%s' (code de sortie : %d)\n"
 
-#: builtin/fetch.c:1930
+#: builtin/fetch.c:2030
 msgid ""
 "no remote repository specified; please specify either a URL or a\n"
 "remote name from which new revisions should be fetched"
@@ -15739,50 +16102,50 @@ msgstr ""
 "Aucun dépôt distant spécifié. Veuillez spécifier une URL ou un nom\n"
 "distant depuis lesquels les nouvelles révisions devraient être récupérées"
 
-#: builtin/fetch.c:1966
+#: builtin/fetch.c:2066
 msgid "you need to specify a tag name"
 msgstr "Vous devez spécifier un nom d'étiquette"
 
-#: builtin/fetch.c:2032
-msgid "--negotiate-only needs one or more --negotiate-tip=*"
-msgstr "--negotiate-only nécessite au moins un --negotiate-tip=*"
+#: builtin/fetch.c:2156
+msgid "--negotiate-only needs one or more --negotiation-tip=*"
+msgstr "--negotiate-only nécessite au moins un --negotiation-tip=*"
 
-#: builtin/fetch.c:2036
+#: builtin/fetch.c:2160
 msgid "negative depth in --deepen is not supported"
 msgstr "une profondeur négative dans --deepen n'est pas supportée"
 
-#: builtin/fetch.c:2045
+#: builtin/fetch.c:2169
 msgid "--unshallow on a complete repository does not make sense"
 msgstr "--unshallow sur un dépôt complet n'a pas de sens"
 
-#: builtin/fetch.c:2062
+#: builtin/fetch.c:2186
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all n'accepte pas d'argument de dépôt"
 
-#: builtin/fetch.c:2064
+#: builtin/fetch.c:2188
 msgid "fetch --all does not make sense with refspecs"
 msgstr "fetch --all n'a pas de sens avec des spécifications de référence"
 
-#: builtin/fetch.c:2073
+#: builtin/fetch.c:2197
 #, c-format
 msgid "no such remote or remote group: %s"
 msgstr "distant ou groupe distant inexistant : %s"
 
-#: builtin/fetch.c:2081
+#: builtin/fetch.c:2205
 msgid "fetching a group and specifying refspecs does not make sense"
 msgstr ""
 "la récupération d'un groupe avec des spécifications de référence n'a pas de "
 "sens"
 
-#: builtin/fetch.c:2097
+#: builtin/fetch.c:2221
 msgid "must supply remote when using --negotiate-only"
 msgstr "le distant doit être fourni lors de l'utilisation de --negotiate-only"
 
-#: builtin/fetch.c:2102
+#: builtin/fetch.c:2226
 msgid "protocol does not support --negotiate-only, exiting"
 msgstr "Le protocole ne prend pas en charge --negotiate-only, abandon"
 
-#: builtin/fetch.c:2121
+#: builtin/fetch.c:2246
 msgid ""
 "--filter can only be used with the remote configured in extensions."
 "partialclone"
@@ -15790,11 +16153,11 @@ msgstr ""
 "--filter ne peut être utilisé qu'avec le dépôt distant configuré dans "
 "extensions.partialclone"
 
-#: builtin/fetch.c:2125
+#: builtin/fetch.c:2250
 msgid "--atomic can only be used when fetching from one remote"
 msgstr "--atomic ne peut être utilisée qu'en récupérant depuis un seul distant"
 
-#: builtin/fetch.c:2129
+#: builtin/fetch.c:2254
 msgid "--stdin can only be used when fetching from one remote"
 msgstr "--stdin ne peut être utilisée qu'en récupérant depuis un seul distant"
 
@@ -15864,7 +16227,7 @@ msgstr "échapper les champs réservés pour compatibilité avec Tcl"
 msgid "show only <n> matched refs"
 msgstr "n'afficher que <n> références correspondant"
 
-#: builtin/for-each-ref.c:42 builtin/tag.c:481
+#: builtin/for-each-ref.c:42 builtin/tag.c:482
 msgid "respect format colors"
 msgstr "respecter les couleurs de formatage"
 
@@ -16058,7 +16421,7 @@ msgstr "Vérification des répertoires d'objet"
 msgid "Checking %s link"
 msgstr "Vérification du lien %s"
 
-#: builtin/fsck.c:710 builtin/index-pack.c:859
+#: builtin/fsck.c:710 builtin/index-pack.c:862
 #, c-format
 msgid "invalid %s"
 msgstr "%s invalide"
@@ -16128,7 +16491,7 @@ msgstr "inspecter aussi les objets pack et alternatifs"
 msgid "check only connectivity"
 msgstr "ne vérifier que la connectivité"
 
-#: builtin/fsck.c:798 builtin/mktag.c:76
+#: builtin/fsck.c:798 builtin/mktag.c:75
 msgid "enable more strict checking"
 msgstr "activer une vérification plus strict"
 
@@ -16158,6 +16521,118 @@ msgstr "%s : objet manquant"
 msgid "invalid parameter: expected sha1, got '%s'"
 msgstr "paramètre invalide : sha-1 attendu, '%s' trouvé"
 
+#: builtin/fsmonitor--daemon.c:13
+msgid "git fsmonitor--daemon start [<options>]"
+msgstr "git fsmonitor--daemon start [<options>]"
+
+#: builtin/fsmonitor--daemon.c:14
+msgid "git fsmonitor--daemon run [<options>]"
+msgstr "git fsmonitor--daemon run [<options>]"
+
+#: builtin/fsmonitor--daemon.c:15
+msgid "git fsmonitor--daemon stop"
+msgstr "git fsmonitor--daemon stop"
+
+#: builtin/fsmonitor--daemon.c:16
+msgid "git fsmonitor--daemon status"
+msgstr "git fsmonitor--daemon status"
+
+#: builtin/fsmonitor--daemon.c:38 builtin/fsmonitor--daemon.c:47
+#, c-format
+msgid "value of '%s' out of range: %d"
+msgstr "valeur de '%s' hors de gamme : %d"
+
+#: builtin/fsmonitor--daemon.c:57
+#, c-format
+msgid "value of '%s' not bool or int: %d"
+msgstr "la valeur de '%s' n'est ni bool ni int : %d"
+
+#: builtin/fsmonitor--daemon.c:99
+#, c-format
+msgid "fsmonitor-daemon is watching '%s'\n"
+msgstr "fsmonitor-daemon surveille '%s'\n"
+
+#: builtin/fsmonitor--daemon.c:104
+#, c-format
+msgid "fsmonitor-daemon is not watching '%s'\n"
+msgstr "fsmonitor-daemon ne surveille pas '%s'\n"
+
+#: builtin/fsmonitor--daemon.c:170
+#, c-format
+msgid "could not create fsmonitor cookie '%s'"
+msgstr "impossible de créer le cookie fsmonitor '%s'"
+
+#: builtin/fsmonitor--daemon.c:753
+#, c-format
+msgid "fsmonitor: cookie_result '%d' != SEEN"
+msgstr "fsmonitor: cookie_result '%d' != SEEN"
+
+#: builtin/fsmonitor--daemon.c:1187
+#, c-format
+msgid "could not start IPC thread pool on '%s'"
+msgstr "impossible de démarrer le stock de fils IPC sur '%s'"
+
+#: builtin/fsmonitor--daemon.c:1199
+msgid "could not start fsmonitor listener thread"
+msgstr "impossible de démarrer le fil d'écoute fsmonitor"
+
+#: builtin/fsmonitor--daemon.c:1297
+msgid "could not initialize listener thread"
+msgstr "impossible de démarrer le fil d'écoute"
+
+#: builtin/fsmonitor--daemon.c:1328 builtin/fsmonitor--daemon.c:1383
+#, c-format
+msgid "fsmonitor--daemon is already running '%s'"
+msgstr "fsmonitor--daemon exécute déjà '%s'"
+
+#: builtin/fsmonitor--daemon.c:1332
+#, c-format
+msgid "running fsmonitor-daemon in '%s'\n"
+msgstr "lancement du fil fsmonitor-daemon dans '%s'\n"
+
+#: builtin/fsmonitor--daemon.c:1387
+#, c-format
+msgid "starting fsmonitor-daemon in '%s'\n"
+msgstr "démarrer fsmonitor-daemon dans '%s'\n"
+
+#: builtin/fsmonitor--daemon.c:1413
+msgid "daemon failed to start"
+msgstr "échec du démarrage du daemon"
+
+#: builtin/fsmonitor--daemon.c:1416
+msgid "daemon not online yet"
+msgstr "le daemon n'est pas encore en ligne"
+
+#: builtin/fsmonitor--daemon.c:1419
+msgid "daemon terminated"
+msgstr "le daemon s'est terminé"
+
+#: builtin/fsmonitor--daemon.c:1429
+msgid "detach from console"
+msgstr "détacher de la console"
+
+#: builtin/fsmonitor--daemon.c:1432
+msgid "use <n> ipc worker threads"
+msgstr "utiliser <n> fils de travail ipc"
+
+#: builtin/fsmonitor--daemon.c:1435
+msgid "max seconds to wait for background daemon startup"
+msgstr "nombre max de secondes à attendre que le daemon démarre"
+
+#: builtin/fsmonitor--daemon.c:1449
+#, c-format
+msgid "invalid 'ipc-threads' value (%d)"
+msgstr "valeur invalide de 'ipc-threads' (%d)"
+
+#: builtin/fsmonitor--daemon.c:1464
+#, c-format
+msgid "Unhandled subcommand '%s'"
+msgstr "Sous-commande non-gérée '%s'"
+
+#: builtin/fsmonitor--daemon.c:1477
+msgid "fsmonitor--daemon not supported on this platform"
+msgstr "fsmonitor--daemon non géré sur cette plateforme"
+
 #: builtin/gc.c:39
 msgid "git gc [<options>]"
 msgstr "git gc [<options>]"
@@ -16413,8 +16888,8 @@ msgstr "échec du démarrage de systemctl"
 msgid "failed to run systemctl"
 msgstr "échec pour lancer systemctl"
 
-#: builtin/gc.c:2210 builtin/gc.c:2215 builtin/worktree.c:62
-#: builtin/worktree.c:944
+#: builtin/gc.c:2210 builtin/gc.c:2215 builtin/worktree.c:63
+#: builtin/worktree.c:1024
 #, c-format
 msgid "failed to delete '%s'"
 msgstr "échec de la suppression de '%s'"
@@ -16464,16 +16939,16 @@ msgstr "git maintenance <subcommand> [<options>]"
 msgid "invalid subcommand: %s"
 msgstr "sous-commande invalide : %s"
 
-#: builtin/grep.c:30
+#: builtin/grep.c:32
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr "git grep [<options>] [-e] <motif> [<révision>...] [[--] <chemin>...]"
 
-#: builtin/grep.c:239
+#: builtin/grep.c:241
 #, c-format
 msgid "grep: failed to create thread: %s"
 msgstr "grep : échec de création du fil: %s"
 
-#: builtin/grep.c:293
+#: builtin/grep.c:295
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
 msgstr "nombre de fils spécifié invalide (%d) pour %s"
@@ -16482,266 +16957,258 @@ msgstr "nombre de fils spécifié invalide (%d) pour %s"
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:301 builtin/index-pack.c:1582 builtin/index-pack.c:1785
-#: builtin/pack-objects.c:3142
+#: builtin/grep.c:303 builtin/index-pack.c:1587 builtin/index-pack.c:1791
+#: builtin/pack-objects.c:3150
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "pas de support des fils, ignore %s"
 
-#: builtin/grep.c:488 builtin/grep.c:617 builtin/grep.c:657
+#: builtin/grep.c:490 builtin/grep.c:619 builtin/grep.c:659
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "impossible de lire l'arbre (%s)"
 
-#: builtin/grep.c:672
+#: builtin/grep.c:674
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr "impossible de faire un grep sur un objet de type %s"
 
-#: builtin/grep.c:752
+#: builtin/grep.c:754
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "l'option '%c' attend une valeur numérique"
 
-#: builtin/grep.c:851
+#: builtin/grep.c:852
 msgid "search in index instead of in the work tree"
 msgstr "rechercher dans l'index plutôt que dans la copie de travail"
 
-#: builtin/grep.c:853
+#: builtin/grep.c:854
 msgid "find in contents not managed by git"
 msgstr "rechercher dans les contenus non gérés par git"
 
-#: builtin/grep.c:855
+#: builtin/grep.c:856
 msgid "search in both tracked and untracked files"
 msgstr "rechercher dans les fichiers suivis et non-suivis"
 
-#: builtin/grep.c:857
+#: builtin/grep.c:858
 msgid "ignore files specified via '.gitignore'"
 msgstr "ignorer les fichiers spécifiés via '.gitignore'"
 
-#: builtin/grep.c:859
+#: builtin/grep.c:860
 msgid "recursively search in each submodule"
 msgstr "rechercher récursivement dans chaque sous-module"
 
-#: builtin/grep.c:862
+#: builtin/grep.c:863
 msgid "show non-matching lines"
 msgstr "afficher les lignes qui ne correspondent pas"
 
-#: builtin/grep.c:864
+#: builtin/grep.c:865
 msgid "case insensitive matching"
 msgstr "correspondance insensible à la casse"
 
-#: builtin/grep.c:866
+#: builtin/grep.c:867
 msgid "match patterns only at word boundaries"
 msgstr "rechercher les motifs aux séparateurs de mots"
 
-#: builtin/grep.c:868
+#: builtin/grep.c:869
 msgid "process binary files as text"
 msgstr "traiter les fichiers binaires comme texte"
 
-#: builtin/grep.c:870
+#: builtin/grep.c:871
 msgid "don't match patterns in binary files"
 msgstr "ne pas chercher les motifs dans les fichiers binaires"
 
-#: builtin/grep.c:873
+#: builtin/grep.c:874
 msgid "process binary files with textconv filters"
 msgstr "traiter les fichiers binaires avec les filtres textconv"
 
-#: builtin/grep.c:875
+#: builtin/grep.c:876
 msgid "search in subdirectories (default)"
 msgstr "rechercher dans les sous-répertoires (défaut)"
 
-#: builtin/grep.c:877
+#: builtin/grep.c:878
 msgid "descend at most <depth> levels"
 msgstr "descendre au plus de <profondeur> dans l'arborescence"
 
-#: builtin/grep.c:881
+#: builtin/grep.c:882
 msgid "use extended POSIX regular expressions"
 msgstr "utiliser des expressions régulières étendues POSIX"
 
-#: builtin/grep.c:884
+#: builtin/grep.c:885
 msgid "use basic POSIX regular expressions (default)"
 msgstr "utiliser des expressions régulières basiques POSIX (par défaut)"
 
-#: builtin/grep.c:887
+#: builtin/grep.c:888
 msgid "interpret patterns as fixed strings"
 msgstr "interpréter les motifs comme de chaînes fixes"
 
-#: builtin/grep.c:890
+#: builtin/grep.c:891
 msgid "use Perl-compatible regular expressions"
 msgstr "utiliser des expressions régulières compatibles avec Perl"
 
-#: builtin/grep.c:893
+#: builtin/grep.c:894
 msgid "show line numbers"
 msgstr "afficher les numéros de ligne"
 
-#: builtin/grep.c:894
+#: builtin/grep.c:895
 msgid "show column number of first match"
 msgstr "afficher le numéro de colonne de la première correspondance"
 
-#: builtin/grep.c:895
+#: builtin/grep.c:896
 msgid "don't show filenames"
 msgstr "ne pas pas afficher les noms de fichier"
 
-#: builtin/grep.c:896
+#: builtin/grep.c:897
 msgid "show filenames"
 msgstr "afficher les noms de fichier"
 
-#: builtin/grep.c:898
+#: builtin/grep.c:899
 msgid "show filenames relative to top directory"
 msgstr "afficher les noms de fichiers relativement au répertoire de base"
 
-#: builtin/grep.c:900
+#: builtin/grep.c:901
 msgid "show only filenames instead of matching lines"
 msgstr "n'afficher que les noms de fichiers au lieu des lignes correspondant"
 
-#: builtin/grep.c:902
+#: builtin/grep.c:903
 msgid "synonym for --files-with-matches"
 msgstr "synonyme pour --files-with-matches"
 
-#: builtin/grep.c:905
+#: builtin/grep.c:906
 msgid "show only the names of files without match"
 msgstr "n'afficher que les noms des fichiers sans correspondance"
 
-#: builtin/grep.c:907
+#: builtin/grep.c:908
 msgid "print NUL after filenames"
 msgstr "imprimer une caractère NUL après le noms de fichier"
 
-#: builtin/grep.c:910
+#: builtin/grep.c:911
 msgid "show only matching parts of a line"
 msgstr "n'afficher que les parties correspondantes d'une ligne"
 
-#: builtin/grep.c:912
+#: builtin/grep.c:913
 msgid "show the number of matches instead of matching lines"
 msgstr "afficher le nombre de correspondances au lieu des lignes correspondant"
 
-#: builtin/grep.c:913
+#: builtin/grep.c:914
 msgid "highlight matches"
 msgstr "mettre en évidence les correspondances"
 
-#: builtin/grep.c:915
+#: builtin/grep.c:916
 msgid "print empty line between matches from different files"
 msgstr ""
 "imprimer une ligne vide entre les correspondances de fichiers différents"
 
-#: builtin/grep.c:917
+#: builtin/grep.c:918
 msgid "show filename only once above matches from same file"
 msgstr ""
 "afficher le nom de fichier une fois au dessus des correspondances du même "
 "fichier"
 
-#: builtin/grep.c:920
+#: builtin/grep.c:921
 msgid "show <n> context lines before and after matches"
 msgstr "afficher <n> lignes de contexte avant et après les correspondances"
 
-#: builtin/grep.c:923
+#: builtin/grep.c:924
 msgid "show <n> context lines before matches"
 msgstr "afficher <n> lignes de contexte avant les correspondances"
 
-#: builtin/grep.c:925
+#: builtin/grep.c:926
 msgid "show <n> context lines after matches"
 msgstr "afficher <n> lignes de contexte après les correspondances"
 
-#: builtin/grep.c:927
+#: builtin/grep.c:928
 msgid "use <n> worker threads"
 msgstr "utiliser <n> fils de travail"
 
-#: builtin/grep.c:928
+#: builtin/grep.c:929
 msgid "shortcut for -C NUM"
 msgstr "raccourci pour -C NUM"
 
-#: builtin/grep.c:931
+#: builtin/grep.c:932
 msgid "show a line with the function name before matches"
 msgstr ""
 "afficher une ligne avec le nom de la fonction avant les correspondances"
 
-#: builtin/grep.c:933
+#: builtin/grep.c:934
 msgid "show the surrounding function"
 msgstr "afficher la fonction contenante"
 
-#: builtin/grep.c:936
+#: builtin/grep.c:937
 msgid "read patterns from file"
 msgstr "lire les motifs depuis fichier"
 
-#: builtin/grep.c:938
+#: builtin/grep.c:939
 msgid "match <pattern>"
 msgstr "rechercher <motif>"
 
-#: builtin/grep.c:940
+#: builtin/grep.c:941
 msgid "combine patterns specified with -e"
 msgstr "combiner les motifs spécifiés par -e"
 
-#: builtin/grep.c:952
+#: builtin/grep.c:953
 msgid "indicate hit with exit status without output"
 msgstr ""
 "indiquer des correspondances avec le code de sortie mais sans rien afficher"
 
-#: builtin/grep.c:954
+#: builtin/grep.c:955
 msgid "show only matches from files that match all patterns"
 msgstr ""
 "n'afficher que les correspondances de fichiers qui correspondent à tous les "
 "motifs"
 
-#: builtin/grep.c:957
+#: builtin/grep.c:958
 msgid "pager"
 msgstr "pagineur"
 
-#: builtin/grep.c:957
+#: builtin/grep.c:958
 msgid "show matching files in the pager"
 msgstr "afficher les fichiers correspondant dans le pagineur"
 
-#: builtin/grep.c:961
+#: builtin/grep.c:962
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "permettre l'appel de grep(1) (ignoré par ce build)"
 
-#: builtin/grep.c:1027
+#: builtin/grep.c:1028
 msgid "no pattern given"
 msgstr "aucun motif fourni"
 
-#: builtin/grep.c:1063
+#: builtin/grep.c:1064
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr ""
 "--no-index ou --untracked ne peuvent pas être utilisés avec des révisions"
 
-#: builtin/grep.c:1071
+#: builtin/grep.c:1072
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "impossible de résoudre la révision : %s"
 
-#: builtin/grep.c:1101
+#: builtin/grep.c:1102
 msgid "--untracked not supported with --recurse-submodules"
 msgstr "--untracked non supportée avec --recurse-submodules"
 
-#: builtin/grep.c:1105
+#: builtin/grep.c:1106
 msgid "invalid option combination, ignoring --threads"
 msgstr "option de combinaison invalide, ignore --threads"
 
-#: builtin/grep.c:1108 builtin/pack-objects.c:4059
+#: builtin/grep.c:1109 builtin/pack-objects.c:4084
 msgid "no threads support, ignoring --threads"
 msgstr "pas de support des fils, ignore --threads"
 
-#: builtin/grep.c:1111 builtin/index-pack.c:1579 builtin/pack-objects.c:3139
+#: builtin/grep.c:1112 builtin/index-pack.c:1584 builtin/pack-objects.c:3147
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "nombre de fils spécifié invalide (%d)"
 
-#: builtin/grep.c:1145
+#: builtin/grep.c:1146
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager ne fonctionne que sur la copie de travail"
 
-#: builtin/grep.c:1171
-msgid "--cached or --untracked cannot be used with --no-index"
-msgstr "--cached ou --untracked ne peuvent pas être utilisés avec --no-index"
-
-#: builtin/grep.c:1174
-msgid "--untracked cannot be used with --cached"
-msgstr "--untracked ne peut pas être utilisé avec --cached"
-
-#: builtin/grep.c:1180
+#: builtin/grep.c:1179
 msgid "--[no-]exclude-standard cannot be used for tracked contents"
 msgstr "--[no-]exclude-standard ne peut pas être utilisé avec du contenu suivi"
 
-#: builtin/grep.c:1188
+#: builtin/grep.c:1187
 msgid "both --cached and trees are given"
 msgstr "--cached et des arbres sont fournis en même temps"
 
@@ -16753,109 +17220,101 @@ msgstr ""
 "git hash-object [-t <type>] [-w] [--path=<fichier> | --no-filters] [--stdin] "
 "[--] <fichier>..."
 
-#: builtin/hash-object.c:84
-msgid "git hash-object  --stdin-paths"
-msgstr "git hash-object  --stdin-paths"
-
-#: builtin/hash-object.c:96
+#: builtin/hash-object.c:97
 msgid "object type"
 msgstr "type d'objet"
 
-#: builtin/hash-object.c:97
+#: builtin/hash-object.c:98
 msgid "write the object into the object database"
 msgstr "écrire l'objet dans la base de donnée d'objets"
 
-#: builtin/hash-object.c:99
+#: builtin/hash-object.c:100
 msgid "read the object from stdin"
 msgstr "lire l'objet depuis l'entrée standard"
 
-#: builtin/hash-object.c:101
+#: builtin/hash-object.c:102
 msgid "store file as is without filters"
 msgstr "stocker le fichier tel quel sans filtrage"
 
-#: builtin/hash-object.c:102
+#: builtin/hash-object.c:103
 msgid ""
 "just hash any random garbage to create corrupt objects for debugging Git"
 msgstr ""
 "juste hasher n'importe quel contenu pour créer des objets corrompus pour "
 "debugger Git"
 
-#: builtin/hash-object.c:103
+#: builtin/hash-object.c:104
 msgid "process file as it were from this path"
 msgstr "traiter le fichier comme s'il venait de ce chemin"
 
-#: builtin/help.c:55
+#: builtin/help.c:57
 msgid "print all available commands"
 msgstr "afficher toutes les commandes disponibles"
 
-#: builtin/help.c:57
+#: builtin/help.c:60
+msgid "show external commands in --all"
+msgstr "afficher les commandes externes dans --all"
+
+#: builtin/help.c:61
+msgid "show aliases in --all"
+msgstr "afficher les alias dans --all"
+
+#: builtin/help.c:62
 msgid "exclude guides"
 msgstr "exclure les guides"
 
-#: builtin/help.c:58
+#: builtin/help.c:63
 msgid "show man page"
 msgstr "afficher la page de manuel"
 
-#: builtin/help.c:59
+#: builtin/help.c:64
 msgid "show manual in web browser"
 msgstr "afficher le manuel dans un navigateur web"
 
-#: builtin/help.c:61
+#: builtin/help.c:66
 msgid "show info page"
 msgstr "afficher la page info"
 
-#: builtin/help.c:63
+#: builtin/help.c:68
 msgid "print command description"
 msgstr "afficher la description de la commande"
 
-#: builtin/help.c:65
+#: builtin/help.c:70
 msgid "print list of useful guides"
 msgstr "afficher une liste de guides utiles"
 
-#: builtin/help.c:67
+#: builtin/help.c:72
 msgid "print all configuration variable names"
 msgstr "afficher tous les noms de variables de configuration"
 
-#: builtin/help.c:78
-msgid ""
-"git help [-a|--all] [--[no-]verbose]]\n"
-"         [[-i|--info] [-m|--man] [-w|--web]] [<command>]"
-msgstr ""
-"git help [-a|--all] [--[no-]verbose]]\n"
-"         [[-i|--info] [-m|--man] [-w|--web]] [<commande>]"
-
-#: builtin/help.c:80
-msgid "git help [-g|--guides]"
-msgstr "git help [-g|--guides]"
-
-#: builtin/help.c:81
-msgid "git help [-c|--config]"
-msgstr "git help [-c|--config]"
+#: builtin/help.c:84
+msgid "git help [[-i|--info] [-m|--man] [-w|--web]] [<command>]"
+msgstr "git help [[-i|--info] [-m|--man] [-w|--web]] [<commande>]"
 
-#: builtin/help.c:196
+#: builtin/help.c:201
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr "format d'aide non reconnu '%s'"
 
-#: builtin/help.c:222
+#: builtin/help.c:227
 msgid "Failed to start emacsclient."
 msgstr "Échec de démarrage d'emacsclient."
 
-#: builtin/help.c:235
+#: builtin/help.c:240
 msgid "Failed to parse emacsclient version."
 msgstr "Échec d'analyse de la version d'emacsclient."
 
-#: builtin/help.c:243
+#: builtin/help.c:248
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr "la version d'emacsclient '%d' est trop ancienne (<22)."
 
-#: builtin/help.c:261 builtin/help.c:283 builtin/help.c:293 builtin/help.c:301
+#: builtin/help.c:266 builtin/help.c:288 builtin/help.c:298 builtin/help.c:306
 #, c-format
 msgid "failed to exec '%s'"
 msgstr "échec de l'exécution de '%s'"
 
-#: builtin/help.c:339
+#: builtin/help.c:344
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -16864,7 +17323,7 @@ msgstr ""
 "'%s' : chemin pour l'utilitaire de visualisation de manuel non supporté.\n"
 "Veuillez utiliser plutôt 'man.<outil>.cmd'."
 
-#: builtin/help.c:351
+#: builtin/help.c:356
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -16873,42 +17332,59 @@ msgstr ""
 "'%s' : chemin pour l'utilitaire de visualisation de manuel supporté.\n"
 "Veuillez utiliser plutôt 'man.<outil>.cmd'."
 
-#: builtin/help.c:466
+#: builtin/help.c:471
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "'%s' : visualiseur de manuel inconnu."
 
-#: builtin/help.c:482
+#: builtin/help.c:487
 msgid "no man viewer handled the request"
 msgstr "aucun visualiseur de manuel n'a pris en charge la demande"
 
-#: builtin/help.c:489
+#: builtin/help.c:494
 msgid "no info viewer handled the request"
 msgstr "aucun visualiseur de 'info' n'a pris en charge la demande"
 
-#: builtin/help.c:550 builtin/help.c:561 git.c:348
+#: builtin/help.c:555 builtin/help.c:566 git.c:348
 #, c-format
 msgid "'%s' is aliased to '%s'"
 msgstr "'%s' est un alias de '%s'"
 
-#: builtin/help.c:564 git.c:380
+#: builtin/help.c:569 git.c:380
 #, c-format
 msgid "bad alias.%s string: %s"
 msgstr "mauvais chaîne alias.%s : %s"
 
-#: builtin/help.c:580
-msgid "this option doesn't take any other arguments"
-msgstr "cette option n'accepte pas d'autre argument"
+#: builtin/help.c:611
+#, c-format
+msgid "the '%s' option doesn't take any non-option arguments"
+msgstr "l'option '%s' n'accepte pas d'argument sans option"
 
-#: builtin/help.c:601 builtin/help.c:628
+#: builtin/help.c:631
+msgid ""
+"the '--no-[external-commands|aliases]' options can only be used with '--all'"
+msgstr ""
+"les options '--no-[external-commands|aliases]' ne peuvent être utilisées "
+"qu'avec '--all'"
+
+#: builtin/help.c:643 builtin/help.c:671
 #, c-format
 msgid "usage: %s%s"
 msgstr "usage : %s%s"
 
-#: builtin/help.c:623
+#: builtin/help.c:666
 msgid "'git help config' for more information"
 msgstr "'git help config' pour plus d'information"
 
+#: builtin/hook.c:10
+msgid "git hook run [--ignore-missing] <hook-name> [-- <hook-args>]"
+msgstr ""
+"git hook run [--ignore-missing] <nom-de-crochet> [-- <arguments-de-crochet>]"
+
+#: builtin/hook.c:30
+msgid "silently ignore missing requested <hook-name>"
+msgstr "ignorer silencieusement le <nom-de-crochet> requis manquant"
+
 #: builtin/index-pack.c:221
 #, c-format
 msgid "object type mismatch at %s"
@@ -16943,245 +17419,246 @@ msgstr "erreur de lecture sur l'entrée"
 msgid "used more bytes than were available"
 msgstr "plus d'octets utilisés que disponibles"
 
-#: builtin/index-pack.c:324 builtin/pack-objects.c:756
+#: builtin/index-pack.c:324 builtin/pack-objects.c:754
 msgid "pack too large for current definition of off_t"
 msgstr "le paquet est trop grand pour la définition actuelle de off_t"
 
-#: builtin/index-pack.c:327 builtin/unpack-objects.c:95
-msgid "pack exceeds maximum allowed size"
-msgstr "le paquet dépasse la taille maximale permise"
+#: builtin/index-pack.c:329
+#, c-format
+msgid "pack exceeds maximum allowed size (%s)"
+msgstr "le paquet dépasse la taille maximale permise (%s)"
 
-#: builtin/index-pack.c:358
+#: builtin/index-pack.c:362
 msgid "pack signature mismatch"
 msgstr "la signature du paquet ne correspond pas"
 
-#: builtin/index-pack.c:360
+#: builtin/index-pack.c:364
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "la version de paquet %<PRIu32> non supportée"
 
-#: builtin/index-pack.c:376
+#: builtin/index-pack.c:380
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
 msgstr "le paquet a un mauvais objet à l'offset %<PRIuMAX> : %s"
 
-#: builtin/index-pack.c:482
+#: builtin/index-pack.c:485
 #, c-format
 msgid "inflate returned %d"
 msgstr "la décompression (inflate) a retourné %d"
 
-#: builtin/index-pack.c:531
+#: builtin/index-pack.c:534
 msgid "offset value overflow for delta base object"
 msgstr "dépassement de la valeur d'offset pour l'objet delta de base"
 
-#: builtin/index-pack.c:539
+#: builtin/index-pack.c:542
 msgid "delta base offset is out of bound"
 msgstr "l'objet delta de base est hors limite"
 
-#: builtin/index-pack.c:547
+#: builtin/index-pack.c:550
 #, c-format
 msgid "unknown object type %d"
 msgstr "type d'objet inconnu %d"
 
-#: builtin/index-pack.c:578
+#: builtin/index-pack.c:581
 msgid "cannot pread pack file"
 msgstr "impossible de lire (pread) le fichier paquet"
 
-#: builtin/index-pack.c:580
+#: builtin/index-pack.c:583
 #, c-format
 msgid "premature end of pack file, %<PRIuMAX> byte missing"
 msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
 msgstr[0] "fin prématurée du fichier paquet, %<PRIuMAX> octet lu"
 msgstr[1] "fin prématurée du fichier paquet, %<PRIuMAX> octets lus"
 
-#: builtin/index-pack.c:606
+#: builtin/index-pack.c:609
 msgid "serious inflate inconsistency"
 msgstr "grave incohérence dans la décompression (inflate)"
 
-#: builtin/index-pack.c:751 builtin/index-pack.c:757 builtin/index-pack.c:781
-#: builtin/index-pack.c:820 builtin/index-pack.c:829
+#: builtin/index-pack.c:754 builtin/index-pack.c:760 builtin/index-pack.c:784
+#: builtin/index-pack.c:823 builtin/index-pack.c:832
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "COLLISION SHA1 TROUVÉE AVEC %s !"
 
-#: builtin/index-pack.c:754 builtin/pack-objects.c:292
-#: builtin/pack-objects.c:352 builtin/pack-objects.c:458
+#: builtin/index-pack.c:757 builtin/pack-objects.c:290
+#: builtin/pack-objects.c:350 builtin/pack-objects.c:456
 #, c-format
 msgid "unable to read %s"
 msgstr "impossible de lire %s"
 
-#: builtin/index-pack.c:818
+#: builtin/index-pack.c:821
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr "impossible de lire l'information existante de l'objet %s"
 
-#: builtin/index-pack.c:826
+#: builtin/index-pack.c:829
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "impossible de lire l'objet existant %s"
 
-#: builtin/index-pack.c:840
+#: builtin/index-pack.c:843
 #, c-format
 msgid "invalid blob object %s"
 msgstr "objet blob invalide %s"
 
-#: builtin/index-pack.c:843 builtin/index-pack.c:862
+#: builtin/index-pack.c:846 builtin/index-pack.c:865
 msgid "fsck error in packed object"
 msgstr "erreur de fsck dans l'objet empaqueté"
 
-#: builtin/index-pack.c:864
+#: builtin/index-pack.c:867
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr "Tous les objets enfants de %s ne sont pas accessibles"
 
-#: builtin/index-pack.c:925 builtin/index-pack.c:972
+#: builtin/index-pack.c:928 builtin/index-pack.c:975
 msgid "failed to apply delta"
 msgstr "échec d'application du delta"
 
-#: builtin/index-pack.c:1156
+#: builtin/index-pack.c:1161
 msgid "Receiving objects"
 msgstr "Réception d'objets"
 
-#: builtin/index-pack.c:1156
+#: builtin/index-pack.c:1161
 msgid "Indexing objects"
 msgstr "Indexation d'objets"
 
-#: builtin/index-pack.c:1190
+#: builtin/index-pack.c:1195
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "le paquet est corrompu (SHA1 ne correspond pas)"
 
-#: builtin/index-pack.c:1195
+#: builtin/index-pack.c:1200
 msgid "cannot fstat packfile"
 msgstr "impossible d'obtenir le statut (fstat) du fichier paquet"
 
-#: builtin/index-pack.c:1198
+#: builtin/index-pack.c:1203
 msgid "pack has junk at the end"
 msgstr "le paquet est invalide à la fin"
 
-#: builtin/index-pack.c:1210
+#: builtin/index-pack.c:1215
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr "confusion extrême dans parse_pack_objects()"
 
-#: builtin/index-pack.c:1233
+#: builtin/index-pack.c:1238
 msgid "Resolving deltas"
 msgstr "Résolution des deltas"
 
-#: builtin/index-pack.c:1244 builtin/pack-objects.c:2905
+#: builtin/index-pack.c:1249 builtin/pack-objects.c:2913
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "impossible de créer le fil : %s"
 
-#: builtin/index-pack.c:1277
+#: builtin/index-pack.c:1282
 msgid "confusion beyond insanity"
 msgstr "confusion extrême"
 
-#: builtin/index-pack.c:1283
+#: builtin/index-pack.c:1288
 #, c-format
 msgid "completed with %d local object"
 msgid_plural "completed with %d local objects"
 msgstr[0] "complété avec %d objet local"
 msgstr[1] "complété avec %d objets locaux"
 
-#: builtin/index-pack.c:1295
+#: builtin/index-pack.c:1300
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
 msgstr ""
 "Somme de contrôle de fin inattendue pour %s (corruption sur le disque ?)"
 
-#: builtin/index-pack.c:1299
+#: builtin/index-pack.c:1304
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] "le paquet a %d delta non résolu"
 msgstr[1] "le paquet a %d deltas non résolus"
 
-#: builtin/index-pack.c:1323
+#: builtin/index-pack.c:1328
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr "impossible de compresser l'objet ajouté (%d)"
 
-#: builtin/index-pack.c:1419
+#: builtin/index-pack.c:1423
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "l'objet local %s est corrompu"
 
-#: builtin/index-pack.c:1440
+#: builtin/index-pack.c:1445
 #, c-format
 msgid "packfile name '%s' does not end with '.%s'"
 msgstr "le nom de fichier paquet '%s' ne se termine pas par '.%s'"
 
-#: builtin/index-pack.c:1464
+#: builtin/index-pack.c:1469
 #, c-format
 msgid "cannot write %s file '%s'"
 msgstr "impossible d'écrire le fichier %s '%s'"
 
-#: builtin/index-pack.c:1472
+#: builtin/index-pack.c:1477
 #, c-format
 msgid "cannot close written %s file '%s'"
 msgstr "impossible de fermer le fichier %s écrit '%s'"
 
-#: builtin/index-pack.c:1489
+#: builtin/index-pack.c:1494
 #, c-format
 msgid "unable to rename temporary '*.%s' file to '%s'"
 msgstr "impossible de renommer un fichier temporaire '*.%s' en '%s'"
 
-#: builtin/index-pack.c:1514
+#: builtin/index-pack.c:1519
 msgid "error while closing pack file"
 msgstr "erreur en fermeture du fichier paquet"
 
-#: builtin/index-pack.c:1573 builtin/pack-objects.c:3150
+#: builtin/index-pack.c:1578 builtin/pack-objects.c:3158
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "mauvais pack.indexversion=%<PRIu32>"
 
-#: builtin/index-pack.c:1643
+#: builtin/index-pack.c:1648
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "Impossible d'ouvrir le fichier paquet existant '%s'"
 
-#: builtin/index-pack.c:1645
+#: builtin/index-pack.c:1650
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr "Impossible d'ouvrir le fichier paquet d'index existant pour '%s'"
 
-#: builtin/index-pack.c:1693
+#: builtin/index-pack.c:1698
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] "pas un delta : %d objet"
 msgstr[1] "pas un delta : %d objets"
 
-#: builtin/index-pack.c:1700
+#: builtin/index-pack.c:1705
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] "longueur chaînée = %d : %lu objet"
 msgstr[1] "longueur chaînée = %d : %lu objets"
 
-#: builtin/index-pack.c:1742
+#: builtin/index-pack.c:1748
 msgid "Cannot come back to cwd"
 msgstr "Impossible de revenir au répertoire de travail courant"
 
-#: builtin/index-pack.c:1796 builtin/index-pack.c:1799
-#: builtin/index-pack.c:1819 builtin/index-pack.c:1823
+#: builtin/index-pack.c:1802 builtin/index-pack.c:1805
+#: builtin/index-pack.c:1825 builtin/index-pack.c:1829
 #, c-format
 msgid "bad %s"
 msgstr "mauvais %s"
 
-#: builtin/index-pack.c:1829 builtin/init-db.c:379 builtin/init-db.c:614
+#: builtin/index-pack.c:1835 builtin/init-db.c:379 builtin/init-db.c:614
 #, c-format
 msgid "unknown hash algorithm '%s'"
 msgstr "algorithme d'empreinte inconnu '%s'"
 
-#: builtin/index-pack.c:1850
+#: builtin/index-pack.c:1856
 msgid "--stdin requires a git repository"
 msgstr "--stdin requiert un dépôt git"
 
-#: builtin/index-pack.c:1867
+#: builtin/index-pack.c:1873
 msgid "--verify with no packfile name given"
 msgstr "--verify sans nom de fichier paquet donné"
 
-#: builtin/index-pack.c:1933 builtin/unpack-objects.c:584
+#: builtin/index-pack.c:1939 builtin/unpack-objects.c:584
 msgid "fsck error in pack objects"
 msgstr "erreur de fsck dans les objets paquets"
 
@@ -17390,40 +17867,40 @@ msgstr "--trailer n'a aucune signification avec --only-input"
 msgid "no input file given for in-place editing"
 msgstr "aucun fichier en entrée pour l'éditon sur place"
 
-#: builtin/log.c:59
+#: builtin/log.c:60
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<options>] [<plage de révisions>] [[--] <chemin>...]"
 
-#: builtin/log.c:60
+#: builtin/log.c:61
 msgid "git show [<options>] <object>..."
 msgstr "git show [<options>] <objet>..."
 
-#: builtin/log.c:113
+#: builtin/log.c:114
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "option --decorate invalide : %s"
 
-#: builtin/log.c:180
+#: builtin/log.c:181
 msgid "show source"
 msgstr "afficher la source"
 
-#: builtin/log.c:181
+#: builtin/log.c:182
 msgid "use mail map file"
 msgstr "utiliser le fichier de correspondance de mail"
 
-#: builtin/log.c:184
+#: builtin/log.c:185
 msgid "only decorate refs that match <pattern>"
 msgstr "décorer seulement les références correspondant à <motif>"
 
-#: builtin/log.c:186
+#: builtin/log.c:187
 msgid "do not decorate refs that match <pattern>"
 msgstr "ne pas décorer les références correspondant à <motif>"
 
-#: builtin/log.c:187
+#: builtin/log.c:188
 msgid "decorate options"
 msgstr "décorer les options"
 
-#: builtin/log.c:190
+#: builtin/log.c:191
 msgid ""
 "trace the evolution of line range <start>,<end> or function :<funcname> in "
 "<file>"
@@ -17431,90 +17908,94 @@ msgstr ""
 "tracer l'évolution d'une plage <début>,<fin> ou d'une fonction <nom-de-"
 "fonction> dans <fichier>"
 
-#: builtin/log.c:213
+#: builtin/log.c:214
 msgid "-L<range>:<file> cannot be used with pathspec"
 msgstr ""
 "-L<plage>:<fichier> ne peut pas être utilisé avec une spécificateur de chemin"
 
-#: builtin/log.c:321
+#: builtin/log.c:322
 #, c-format
 msgid "Final output: %d %s\n"
-msgstr "Sortie finale : %d %s\n"
+msgstr "Sortie finale : %d %s\n"
+
+#: builtin/log.c:429
+msgid "unable to create temporary object directory"
+msgstr "impossible de créer un répertoire d'objets temporaire"
 
-#: builtin/log.c:586
+#: builtin/log.c:599
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s : fichier incorrect"
 
-#: builtin/log.c:601 builtin/log.c:691
+#: builtin/log.c:614 builtin/log.c:706
 #, c-format
 msgid "could not read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: builtin/log.c:716
+#: builtin/log.c:731
 #, c-format
 msgid "unknown type: %d"
 msgstr "type inconnu : %d"
 
-#: builtin/log.c:861
+#: builtin/log.c:880
 #, c-format
 msgid "%s: invalid cover from description mode"
 msgstr "%s : couverture invalide pour le mode de description"
 
-#: builtin/log.c:868
+#: builtin/log.c:887
 msgid "format.headers without value"
 msgstr "format.headers sans valeur"
 
-#: builtin/log.c:997
+#: builtin/log.c:1016
 #, c-format
 msgid "cannot open patch file %s"
 msgstr "impossible d'ouvrir le fichier correctif %s"
 
-#: builtin/log.c:1014
+#: builtin/log.c:1033
 msgid "need exactly one range"
 msgstr "exactement une plage nécessaire"
 
-#: builtin/log.c:1024
+#: builtin/log.c:1043
 msgid "not a range"
 msgstr "ceci n'est pas une plage"
 
-#: builtin/log.c:1188
+#: builtin/log.c:1207
 msgid "cover letter needs email format"
 msgstr "la lettre de motivation doit être au format courriel"
 
-#: builtin/log.c:1194
+#: builtin/log.c:1213
 msgid "failed to create cover-letter file"
 msgstr "échec de création du fichier de lettre de motivation"
 
-#: builtin/log.c:1281
+#: builtin/log.c:1300
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to aberrant : %s"
 
-#: builtin/log.c:1308
+#: builtin/log.c:1327
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<options>] [<depuis> | <plage de révisions>]"
 
-#: builtin/log.c:1366
+#: builtin/log.c:1385
 msgid "two output directories?"
 msgstr "deux répertoires de sortie ?"
 
-#: builtin/log.c:1517 builtin/log.c:2344 builtin/log.c:2346 builtin/log.c:2358
+#: builtin/log.c:1536 builtin/log.c:2369 builtin/log.c:2371 builtin/log.c:2383
 #, c-format
 msgid "unknown commit %s"
 msgstr "commit inconnu %s"
 
-#: builtin/log.c:1528 builtin/replace.c:58 builtin/replace.c:207
+#: builtin/log.c:1547 builtin/replace.c:58 builtin/replace.c:207
 #: builtin/replace.c:210
 #, c-format
 msgid "failed to resolve '%s' as a valid ref"
 msgstr "échec à résoudre '%s' comme une référence valide"
 
-#: builtin/log.c:1537
+#: builtin/log.c:1556
 msgid "could not find exact merge base"
 msgstr "impossible de trouver la base de fusion exacte"
 
-#: builtin/log.c:1547
+#: builtin/log.c:1566
 msgid ""
 "failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
@@ -17527,285 +18008,289 @@ msgstr ""
 "Ou vous pouvez spécifier le commit de base par --base=<id-du-commit-de-base> "
 "manuellement"
 
-#: builtin/log.c:1570
+#: builtin/log.c:1589
 msgid "failed to find exact merge base"
 msgstr "échec à trouver la base de fusion exacte"
 
-#: builtin/log.c:1587
+#: builtin/log.c:1606
 msgid "base commit should be the ancestor of revision list"
 msgstr "le commit de base devrait être l'ancêtre de la liste de révisions"
 
-#: builtin/log.c:1597
+#: builtin/log.c:1616
 msgid "base commit shouldn't be in revision list"
 msgstr "le commit de base ne devrait pas faire partie de la liste de révisions"
 
-#: builtin/log.c:1655
+#: builtin/log.c:1674
 msgid "cannot get patch id"
 msgstr "impossible d'obtenir l'id du patch"
 
-#: builtin/log.c:1718
+#: builtin/log.c:1737
 msgid "failed to infer range-diff origin of current series"
 msgstr ""
 "échec d'inférence de l'origine de différence d'intervalles de la série "
 "actuelle"
 
-#: builtin/log.c:1720
+#: builtin/log.c:1739
 #, c-format
 msgid "using '%s' as range-diff origin of current series"
 msgstr ""
 "utilisation de '%s' comme une différence d'intervalle pour la série actuelle"
 
-#: builtin/log.c:1764
+#: builtin/log.c:1783
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "utiliser [PATCH n/m] même avec un patch unique"
 
-#: builtin/log.c:1767
+#: builtin/log.c:1786
 msgid "use [PATCH] even with multiple patches"
 msgstr "utiliser [PATCH] même avec des patchs multiples"
 
-#: builtin/log.c:1771
+#: builtin/log.c:1790
 msgid "print patches to standard out"
 msgstr "afficher les patchs sur la sortie standard"
 
-#: builtin/log.c:1773
+#: builtin/log.c:1792
 msgid "generate a cover letter"
 msgstr "générer une lettre de motivation"
 
-#: builtin/log.c:1775
+#: builtin/log.c:1794
 msgid "use simple number sequence for output file names"
 msgstr ""
 "utiliser une séquence simple de nombres pour les nom des fichiers de sortie"
 
-#: builtin/log.c:1776
+#: builtin/log.c:1795
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1777
+#: builtin/log.c:1796
 msgid "use <sfx> instead of '.patch'"
 msgstr "utiliser <sfx> au lieu de '.patch'"
 
-#: builtin/log.c:1779
+#: builtin/log.c:1798
 msgid "start numbering patches at <n> instead of 1"
 msgstr "démarrer la numérotation des patchs à <n> au lieu de 1"
 
-#: builtin/log.c:1780
+#: builtin/log.c:1799
 msgid "reroll-count"
 msgstr "reroll-count"
 
-#: builtin/log.c:1781
+#: builtin/log.c:1800
 msgid "mark the series as Nth re-roll"
 msgstr "marquer la série comme une Nième réédition"
 
-#: builtin/log.c:1783
+#: builtin/log.c:1802
 msgid "max length of output filename"
 msgstr "taille maximum du nom du fichier de sortie"
 
-#: builtin/log.c:1785
+#: builtin/log.c:1804
 msgid "use [RFC PATCH] instead of [PATCH]"
 msgstr "utiliser [RFC PATCH] au lieu de [PATCH]"
 
-#: builtin/log.c:1788
+#: builtin/log.c:1807
 msgid "cover-from-description-mode"
 msgstr "cover-from-description-mode"
 
-#: builtin/log.c:1789
+#: builtin/log.c:1808
 msgid "generate parts of a cover letter based on a branch's description"
 msgstr ""
 "générer des parties de la lettre d'introduction à partir de la description "
 "de la branche"
 
-#: builtin/log.c:1791
+#: builtin/log.c:1810
 msgid "use [<prefix>] instead of [PATCH]"
 msgstr "utiliser [<préfixe>] au lieu de [PATCH]"
 
-#: builtin/log.c:1794
+#: builtin/log.c:1813
 msgid "store resulting files in <dir>"
 msgstr "stocker les fichiers résultats dans <répertoire>"
 
-#: builtin/log.c:1797
+#: builtin/log.c:1816
 msgid "don't strip/add [PATCH]"
 msgstr "ne pas retirer/ajouter [PATCH]"
 
-#: builtin/log.c:1800
+#: builtin/log.c:1819
 msgid "don't output binary diffs"
 msgstr "ne pas imprimer les diffs binaires"
 
-#: builtin/log.c:1802
+#: builtin/log.c:1821
 msgid "output all-zero hash in From header"
 msgstr "écrire une empreinte à zéro dans l'entête From"
 
-#: builtin/log.c:1804
+#: builtin/log.c:1823
 msgid "don't include a patch matching a commit upstream"
 msgstr "ne pas inclure un patch correspondant à un commit amont"
 
-#: builtin/log.c:1806
+#: builtin/log.c:1825
 msgid "show patch format instead of default (patch + stat)"
 msgstr "afficher le format du patch au lieu du défaut (patch + stat)"
 
-#: builtin/log.c:1808
+#: builtin/log.c:1827
 msgid "Messaging"
 msgstr "Communication"
 
-#: builtin/log.c:1809
+#: builtin/log.c:1828
 msgid "header"
 msgstr "en-tête"
 
-#: builtin/log.c:1810
+#: builtin/log.c:1829
 msgid "add email header"
 msgstr "ajouter l'en-tête de courriel"
 
-#: builtin/log.c:1811 builtin/log.c:1812
+#: builtin/log.c:1830 builtin/log.c:1831
 msgid "email"
 msgstr "courriel"
 
-#: builtin/log.c:1811
+#: builtin/log.c:1830
 msgid "add To: header"
 msgstr "ajouter l'en-tête \"To:\""
 
-#: builtin/log.c:1812
+#: builtin/log.c:1831
 msgid "add Cc: header"
 msgstr "ajouter l'en-tête \"Cc:\""
 
-#: builtin/log.c:1813
+#: builtin/log.c:1832
 msgid "ident"
 msgstr "ident"
 
-#: builtin/log.c:1814
+#: builtin/log.c:1833
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
 "renseigner l'adresse From à <ident> (ou à l'ident du validateur si absent)"
 
-#: builtin/log.c:1816
+#: builtin/log.c:1835
 msgid "message-id"
 msgstr "id-message"
 
-#: builtin/log.c:1817
+#: builtin/log.c:1836
 msgid "make first mail a reply to <message-id>"
 msgstr "répondre dans le premier message à <id-message>"
 
-#: builtin/log.c:1818 builtin/log.c:1821
+#: builtin/log.c:1837 builtin/log.c:1840
 msgid "boundary"
 msgstr "limite"
 
-#: builtin/log.c:1819
+#: builtin/log.c:1838
 msgid "attach the patch"
 msgstr "attacher le patch"
 
-#: builtin/log.c:1822
+#: builtin/log.c:1841
 msgid "inline the patch"
 msgstr "patch à l'intérieur"
 
-#: builtin/log.c:1826
+#: builtin/log.c:1845
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
 "activer l'enfilage de message, styles : shallow (superficiel), deep (profond)"
 
-#: builtin/log.c:1828
+#: builtin/log.c:1847
 msgid "signature"
 msgstr "signature"
 
-#: builtin/log.c:1829
+#: builtin/log.c:1848
 msgid "add a signature"
 msgstr "ajouter une signature"
 
-#: builtin/log.c:1830
+#: builtin/log.c:1849
 msgid "base-commit"
 msgstr "commit-de-base"
 
-#: builtin/log.c:1831
+#: builtin/log.c:1850
 msgid "add prerequisite tree info to the patch series"
 msgstr "ajouter un arbre prérequis à la série de patchs"
 
-#: builtin/log.c:1834
+#: builtin/log.c:1853
 msgid "add a signature from a file"
 msgstr "ajouter une signature depuis un fichier"
 
-#: builtin/log.c:1835
+#: builtin/log.c:1854
 msgid "don't print the patch filenames"
 msgstr "ne pas afficher les noms de fichiers des patchs"
 
-#: builtin/log.c:1837
+#: builtin/log.c:1856
 msgid "show progress while generating patches"
 msgstr ""
 "afficher la barre de progression durant la phase de génération des patchs"
 
-#: builtin/log.c:1839
+#: builtin/log.c:1858
 msgid "show changes against <rev> in cover letter or single patch"
 msgstr ""
 "afficher les modifications par rapport à <rév> dans la première page ou une "
 "rustine"
 
-#: builtin/log.c:1842
+#: builtin/log.c:1861
 msgid "show changes against <refspec> in cover letter or single patch"
 msgstr ""
 "afficher les modifications par rapport à <refspec> dans la première page ou "
 "une rustine"
 
-#: builtin/log.c:1844 builtin/range-diff.c:28
+#: builtin/log.c:1863 builtin/range-diff.c:28
 msgid "percentage by which creation is weighted"
 msgstr "pourcentage par lequel la création est pondérée"
 
-#: builtin/log.c:1931
+#: builtin/log.c:1953
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "ligne d'identification invalide : %s"
 
-#: builtin/log.c:1956
+#: builtin/log.c:1978
 msgid "--name-only does not make sense"
 msgstr "--name-only n'a pas de sens"
 
-#: builtin/log.c:1958
+#: builtin/log.c:1980
 msgid "--name-status does not make sense"
 msgstr "--name-status n'a pas de sens"
 
-#: builtin/log.c:1960
+#: builtin/log.c:1982
 msgid "--check does not make sense"
 msgstr "--check n'a pas de sens"
 
-#: builtin/log.c:2104
+#: builtin/log.c:1984
+msgid "--remerge-diff does not make sense"
+msgstr "--remerge-diff n'a pas de sens"
+
+#: builtin/log.c:2129
 msgid "--interdiff requires --cover-letter or single patch"
 msgstr "--interdiff requiert --cover-letter ou une rustine unique"
 
-#: builtin/log.c:2108
+#: builtin/log.c:2133
 msgid "Interdiff:"
 msgstr "Interdiff :"
 
-#: builtin/log.c:2109
+#: builtin/log.c:2134
 #, c-format
 msgid "Interdiff against v%d:"
 msgstr "Interdiff contre v%d :"
 
-#: builtin/log.c:2119
+#: builtin/log.c:2144
 msgid "--range-diff requires --cover-letter or single patch"
 msgstr "--range-diff requiert --cover-letter ou une rustine unique"
 
-#: builtin/log.c:2127
+#: builtin/log.c:2152
 msgid "Range-diff:"
 msgstr "Diff-intervalle :"
 
-#: builtin/log.c:2128
+#: builtin/log.c:2153
 #, c-format
 msgid "Range-diff against v%d:"
 msgstr "Diff-intervalle contre v%d :"
 
-#: builtin/log.c:2139
+#: builtin/log.c:2164
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "lecture du fichier de signature '%s' impossible"
 
-#: builtin/log.c:2175
+#: builtin/log.c:2200
 msgid "Generating patches"
 msgstr "Génération des patchs"
 
-#: builtin/log.c:2219
+#: builtin/log.c:2244
 msgid "failed to create output files"
 msgstr "échec de création des fichiers en sortie"
 
-#: builtin/log.c:2279
+#: builtin/log.c:2304
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<branche_amont> [<head> [<limite>]]]"
 
-#: builtin/log.c:2333
+#: builtin/log.c:2358
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -17902,10 +18387,6 @@ msgstr "ajouter les exclusions git standard"
 msgid "make the output relative to the project top directory"
 msgstr "afficher en relatif par rapport au répertoire racine du projet"
 
-#: builtin/ls-files.c:667
-msgid "recurse through submodules"
-msgstr "parcourir récursivement les sous-modules"
-
 #: builtin/ls-files.c:669
 msgid "if any <file> is not in the index, treat this as an error"
 msgstr "si un <fichier> n'est pas dans l'index, traiter cela comme une erreur"
@@ -17946,7 +18427,7 @@ msgstr ""
 msgid "do not print remote URL"
 msgstr "ne pas afficher les URL distantes"
 
-#: builtin/ls-remote.c:61 builtin/ls-remote.c:63 builtin/rebase.c:1103
+#: builtin/ls-remote.c:61 builtin/ls-remote.c:63 builtin/rebase.c:1131
 msgid "exec"
 msgstr "exécutable"
 
@@ -17980,44 +18461,74 @@ msgstr ""
 msgid "show underlying ref in addition to the object pointed by it"
 msgstr "afficher la réf sous-jacente en plus de l'objet pointé par elle"
 
-#: builtin/ls-tree.c:30
+#: builtin/ls-tree.c:36
 msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
 msgstr "git ls-tree [<options>] <arbre ou apparenté> [<chemin>...]"
 
-#: builtin/ls-tree.c:128
+#: builtin/ls-tree.c:54
+#, c-format
+msgid "could not get object info about '%s'"
+msgstr "impossible d'obtenir l'information d'objet pour '%s'"
+
+#: builtin/ls-tree.c:79
+#, c-format
+msgid "bad ls-tree format: element '%s' does not start with '('"
+msgstr "mauvais format ls-tree : l'élément '%s' ne commence pas par '('"
+
+#: builtin/ls-tree.c:83
+#, c-format
+msgid "bad ls-tree format: element '%s' does not end in ')'"
+msgstr "mauvais format ls-tree : l'élément '%s' ne se termine pas ')'"
+
+#: builtin/ls-tree.c:109
+#, c-format
+msgid "bad ls-tree format: %%%.*s"
+msgstr "mauvais format ls-tree : %%%.*s"
+
+#: builtin/ls-tree.c:336
 msgid "only show trees"
 msgstr "afficher seulement les arbres"
 
-#: builtin/ls-tree.c:130
+#: builtin/ls-tree.c:338
 msgid "recurse into subtrees"
 msgstr "parcourir les sous-arbres"
 
-#: builtin/ls-tree.c:132
+#: builtin/ls-tree.c:340
 msgid "show trees when recursing"
 msgstr "afficher les arbres en les parcourant"
 
-#: builtin/ls-tree.c:135
+#: builtin/ls-tree.c:343
 msgid "terminate entries with NUL byte"
 msgstr "terminer les éléments avec un octet NUL"
 
-#: builtin/ls-tree.c:136
+#: builtin/ls-tree.c:344
 msgid "include object size"
 msgstr "inclure la taille d'objet"
 
-#: builtin/ls-tree.c:138 builtin/ls-tree.c:140
+#: builtin/ls-tree.c:346 builtin/ls-tree.c:348
 msgid "list only filenames"
 msgstr "afficher seulement les noms de fichiers"
 
-#: builtin/ls-tree.c:143
+#: builtin/ls-tree.c:350
+msgid "list only objects"
+msgstr "ne lister que les objets"
+
+#: builtin/ls-tree.c:353
 msgid "use full path names"
 msgstr "utiliser les noms de chemins complets"
 
-#: builtin/ls-tree.c:145
+#: builtin/ls-tree.c:355
 msgid "list entire tree; not just current directory (implies --full-name)"
 msgstr ""
 "afficher l'arbre entier ; pas seulement le répertoire courant (implique --"
 "full-name)"
 
+#: builtin/ls-tree.c:391
+msgid "--format can't be combined with other format-altering options"
+msgstr ""
+"--format ne peut pas être combiné avec d'autres options de modification de "
+"format"
+
 #. TRANSLATORS: keep <> in "<" mail ">" info.
 #: builtin/mailinfo.c:14
 msgid "git mailinfo [<options>] <msg> <patch> < mail >info"
@@ -18067,7 +18578,11 @@ msgstr "action lorsqu'un CR cité est trouvé"
 msgid "use headers in message's body"
 msgstr "utiliser l'entête dans le corps de message"
 
-#: builtin/mailsplit.c:239
+#: builtin/mailsplit.c:227
+msgid "reading patches from stdin/tty..."
+msgstr "lecture les mises à jour depuis l'entrée standard/la console..."
+
+#: builtin/mailsplit.c:242
 #, c-format
 msgid "empty mbox: '%s'"
 msgstr "mbox vide : '%s'"
@@ -18092,23 +18607,23 @@ msgstr "git merge-base --is-ancestor <validation> <validation>"
 msgid "git merge-base --fork-point <ref> [<commit>]"
 msgstr "git merge-base --fork-point <référence> [<validation>]"
 
-#: builtin/merge-base.c:143
+#: builtin/merge-base.c:144
 msgid "output all common ancestors"
 msgstr "afficher tous les ancêtres communs"
 
-#: builtin/merge-base.c:145
+#: builtin/merge-base.c:146
 msgid "find ancestors for a single n-way merge"
 msgstr "trouver les ancêtres pour une fusion simple à n points"
 
-#: builtin/merge-base.c:147
+#: builtin/merge-base.c:148
 msgid "list revs not reachable from others"
 msgstr "afficher les révisions inaccessibles depuis les autres"
 
-#: builtin/merge-base.c:149
+#: builtin/merge-base.c:150
 msgid "is the first one ancestor of the other?"
 msgstr "est le premier ancêtre de l'autre ?"
 
-#: builtin/merge-base.c:151
+#: builtin/merge-base.c:152
 msgid "find where <commit> forked from reflog of <ref>"
 msgstr "trouver où <validation> a divergé du reflog de <référence>"
 
@@ -18258,7 +18773,7 @@ msgid "verify that the named commit has a valid GPG signature"
 msgstr "vérifier que le commit nommé a une signature GPG valide"
 
 #: builtin/merge.c:280 builtin/notes.c:785 builtin/pull.c:172
-#: builtin/rebase.c:1117 builtin/revert.c:114
+#: builtin/rebase.c:1145 builtin/revert.c:114
 msgid "strategy"
 msgstr "stratégie"
 
@@ -18395,74 +18910,74 @@ msgstr ""
 "Les lignes commençant par '%c' seront ignorées, et un message vide\n"
 "abandonne la validation.\n"
 
-#: builtin/merge.c:894
+#: builtin/merge.c:900
 msgid "Empty commit message."
 msgstr "Message de validation vide."
 
-#: builtin/merge.c:909
+#: builtin/merge.c:915
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Merveilleux.\n"
 
-#: builtin/merge.c:970
+#: builtin/merge.c:976
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr ""
 "La fusion automatique a échoué ; réglez les conflits et validez le "
 "résultat.\n"
 
-#: builtin/merge.c:1009
+#: builtin/merge.c:1015
 msgid "No current branch."
 msgstr "Pas de branche courante."
 
-#: builtin/merge.c:1011
+#: builtin/merge.c:1017
 msgid "No remote for the current branch."
 msgstr "Pas de branche distante pour la branche courante."
 
-#: builtin/merge.c:1013
+#: builtin/merge.c:1019
 msgid "No default upstream defined for the current branch."
 msgstr "Pas de branche amont par défaut définie pour la branche courante."
 
-#: builtin/merge.c:1018
+#: builtin/merge.c:1024
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Pas de branche de suivi pour %s depuis %s"
 
-#: builtin/merge.c:1075
+#: builtin/merge.c:1081
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr "Mauvaise valeur '%s' dans l'environnement '%s'"
 
-#: builtin/merge.c:1177
+#: builtin/merge.c:1183
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr "pas possible de fusionner ceci dans %s : %s"
 
-#: builtin/merge.c:1211
+#: builtin/merge.c:1217
 msgid "not something we can merge"
 msgstr "pas possible de fusionner ceci"
 
-#: builtin/merge.c:1324
+#: builtin/merge.c:1330
 msgid "--abort expects no arguments"
 msgstr "--abort n'accepte pas d'argument"
 
-#: builtin/merge.c:1328
+#: builtin/merge.c:1334
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr "Il n'y a pas de fusion à abandonner (MERGE_HEAD manquant)."
 
-#: builtin/merge.c:1346
+#: builtin/merge.c:1352
 msgid "--quit expects no arguments"
 msgstr "--quit n'accepte pas d'argument"
 
-#: builtin/merge.c:1359
+#: builtin/merge.c:1365
 msgid "--continue expects no arguments"
 msgstr "--continue ne supporte aucun argument"
 
-#: builtin/merge.c:1363
+#: builtin/merge.c:1369
 msgid "There is no merge in progress (MERGE_HEAD missing)."
 msgstr "Il n'y a pas de fusion en cours (MERGE_HEAD manquant)."
 
-#: builtin/merge.c:1379
+#: builtin/merge.c:1385
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -18470,7 +18985,7 @@ msgstr ""
 "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe).\n"
 "Veuillez valider vos modifications avant de pouvoir fusionner."
 
-#: builtin/merge.c:1386
+#: builtin/merge.c:1392
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -18478,87 +18993,83 @@ msgstr ""
 "Vous n'avez pas terminé votre picorage (CHERRY_PICK_HEAD existe).\n"
 "Veuillez valider vos modifications avant de pouvoir fusionner."
 
-#: builtin/merge.c:1389
+#: builtin/merge.c:1395
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr "Vous n'avez pas terminé votre picorage (CHERRY_PICK_HEAD existe)."
 
-#: builtin/merge.c:1421
+#: builtin/merge.c:1427
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr ""
 "Pas de validation spécifiée et merge.defaultToUpstream n'est pas défini."
 
-#: builtin/merge.c:1438
+#: builtin/merge.c:1444
 msgid "Squash commit into empty head not supported yet"
 msgstr "La validation compressée vers une tête vide n'est pas encore supportée"
 
-#: builtin/merge.c:1440
+#: builtin/merge.c:1446
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr "Une validation sans avance rapide n'a pas de sens dans une tête vide"
 
-#: builtin/merge.c:1445
+#: builtin/merge.c:1451
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - pas possible de fusionner ceci"
 
-#: builtin/merge.c:1447
+#: builtin/merge.c:1453
 msgid "Can merge only exactly one commit into empty head"
 msgstr ""
 "Possible de fusionner exactement une seule validation dans une tête vide"
 
-#: builtin/merge.c:1534
+#: builtin/merge.c:1540
 msgid "refusing to merge unrelated histories"
 msgstr "refus de fusionner des historiques sans relation"
 
-#: builtin/merge.c:1553
+#: builtin/merge.c:1559
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Mise à jour %s..%s\n"
 
-#: builtin/merge.c:1601
+#: builtin/merge.c:1606
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "Essai de fusion vraiment triviale dans l'index...\n"
 
-#: builtin/merge.c:1608
+#: builtin/merge.c:1613
 #, c-format
 msgid "Nope.\n"
 msgstr "Non.\n"
 
-#: builtin/merge.c:1667 builtin/merge.c:1733
+#: builtin/merge.c:1671 builtin/merge.c:1737
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "Retour de l'arbre à l'original...\n"
 
-#: builtin/merge.c:1671
+#: builtin/merge.c:1675
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Essai de la stratégie de fusion %s...\n"
 
-#: builtin/merge.c:1723
+#: builtin/merge.c:1727
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "Aucune stratégie de fusion n'a pris en charge la fusion.\n"
 
-#: builtin/merge.c:1725
+#: builtin/merge.c:1729
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "La fusion avec la stratégie %s a échoué.\n"
 
-#: builtin/merge.c:1735
+#: builtin/merge.c:1739
 #, c-format
 msgid "Using the %s strategy to prepare resolving by hand.\n"
 msgstr "Utilisation de %s pour préparer la résolution à la main.\n"
 
-#: builtin/merge.c:1749
+#: builtin/merge.c:1753
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
 "La fusion automatique a réussi ; stoppée avant la validation comme demandé\n"
 
-#: builtin/mktag.c:10
-msgid "git mktag"
-msgstr "git mktag"
-
 #: builtin/mktag.c:27
 #, c-format
 msgid "warning: tag input does not pass fsck: %s"
@@ -18584,22 +19095,18 @@ msgstr "impossible de lire l'objet étiqueté '%s'"
 msgid "object '%s' tagged as '%s', but is a '%s' type"
 msgstr "l'objet '%s' étiqueté comme '%s', mais est de type '%s'"
 
-#: builtin/mktag.c:98
+#: builtin/mktag.c:97
 msgid "tag on stdin did not pass our strict fsck check"
 msgstr "l'étiquette sur stdin n'a pas passé le test strict fsck"
 
-#: builtin/mktag.c:101
+#: builtin/mktag.c:100
 msgid "tag on stdin did not refer to a valid object"
 msgstr "l'étiquette sur stdin ne pointe pas sur un objet valide"
 
-#: builtin/mktag.c:104 builtin/tag.c:242
+#: builtin/mktag.c:103 builtin/tag.c:243
 msgid "unable to write tag file"
 msgstr "impossible d'écrire le fichier d'étiquettes"
 
-#: builtin/mktree.c:66
-msgid "git mktree [-z] [--missing] [--batch]"
-msgstr "git mktree [-z] [--missing] [--batch]"
-
 #: builtin/mktree.c:154
 msgid "input is NUL terminated"
 msgstr "l'entrée se termine par NUL"
@@ -18759,54 +19266,58 @@ msgstr "%s, source=%s, destination=%s"
 msgid "Renaming %s to %s\n"
 msgstr "Renommage de %s en %s\n"
 
-#: builtin/mv.c:314 builtin/remote.c:790 builtin/repack.c:857
+#: builtin/mv.c:314 builtin/remote.c:812 builtin/repack.c:861
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "le renommage de '%s' a échoué"
 
-#: builtin/name-rev.c:474
+#: builtin/name-rev.c:524
 msgid "git name-rev [<options>] <commit>..."
 msgstr "git name-rev [<options>] <validation>..."
 
-#: builtin/name-rev.c:475
+#: builtin/name-rev.c:525
 msgid "git name-rev [<options>] --all"
 msgstr "git name-rev [<options>] --all"
 
-#: builtin/name-rev.c:476
-msgid "git name-rev [<options>] --stdin"
-msgstr "git name-rev [<options>] --stdin"
+#: builtin/name-rev.c:526
+msgid "git name-rev [<options>] --annotate-stdin"
+msgstr "git name-rev [<options>] --annotate-stdin"
 
-#: builtin/name-rev.c:533
+#: builtin/name-rev.c:583
 msgid "print only ref-based names (no object names)"
 msgstr ""
 "afficher seulement les noms basés sur des références (pas de nom d'objet)"
 
-#: builtin/name-rev.c:534
+#: builtin/name-rev.c:584
 msgid "only use tags to name the commits"
 msgstr "utiliser seulement les étiquettes pour nommer les validations"
 
-#: builtin/name-rev.c:536
+#: builtin/name-rev.c:586
 msgid "only use refs matching <pattern>"
 msgstr "utiliser seulement les références correspondant à <motif>"
 
-#: builtin/name-rev.c:538
+#: builtin/name-rev.c:588
 msgid "ignore refs matching <pattern>"
 msgstr "ignorer les références correspondant à <motif>"
 
-#: builtin/name-rev.c:540
+#: builtin/name-rev.c:590
 msgid "list all commits reachable from all refs"
 msgstr ""
 "afficher toutes les validations accessibles depuis toutes les références"
 
-#: builtin/name-rev.c:541
-msgid "read from stdin"
-msgstr "lire depuis l'entrée standard"
+#: builtin/name-rev.c:591
+msgid "deprecated: use annotate-stdin instead"
+msgstr "obsolète : utilisez annotate-stdin à la place"
 
-#: builtin/name-rev.c:542
+#: builtin/name-rev.c:592
+msgid "annotate text from stdin"
+msgstr "annoter le texte depuis l'entrée standard"
+
+#: builtin/name-rev.c:593
 msgid "allow to print `undefined` names (default)"
 msgstr "autoriser l'affichage des noms `non définis` (par défaut)"
 
-#: builtin/name-rev.c:548
+#: builtin/name-rev.c:599
 msgid "dereference tags in the input (internal use)"
 msgstr "déréférencer les étiquettes en entrée (usage interne)"
 
@@ -18850,14 +19361,6 @@ msgstr ""
 "git notes [--ref <références-notes>] merge [-v | -q] [-s <stratégie> ] "
 "<références-notes>"
 
-#: builtin/notes.c:35
-msgid "git notes merge --commit [-v | -q]"
-msgstr "git notes merge --commit [-v | -q]"
-
-#: builtin/notes.c:36
-msgid "git notes merge --abort [-v | -q]"
-msgstr "git notes merge --abort [-v | -q]"
-
 #: builtin/notes.c:37
 msgid "git notes [--ref <notes-ref>] remove [<object>...]"
 msgstr "git notes [--ref <références-notes>] remove [<objet>...]"
@@ -18918,10 +19421,6 @@ msgstr "git notes remove [<objet>]"
 msgid "git notes prune [<options>]"
 msgstr "git notes prune [<options>]"
 
-#: builtin/notes.c:92
-msgid "git notes get-ref"
-msgstr "git notes get-ref"
-
 #: builtin/notes.c:97
 msgid "Write/edit the notes for the following object:"
 msgstr "Écrire/éditer les notes pour l'objet suivant :"
@@ -18953,7 +19452,7 @@ msgstr "impossible d'écrire l'objet note"
 msgid "the note contents have been left in %s"
 msgstr "le contenu de la note a été laissé dans %s"
 
-#: builtin/notes.c:240 builtin/tag.c:581
+#: builtin/notes.c:240 builtin/tag.c:582
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "impossible d'ouvrir ou lire '%s'"
@@ -18993,13 +19492,6 @@ msgstr "impossible de copier les notes de '%s' vers '%s'"
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
 msgstr "refus de faire %s sur des notes dans %s (hors de refs/notes/)"
 
-#: builtin/notes.c:374 builtin/notes.c:429 builtin/notes.c:507
-#: builtin/notes.c:519 builtin/notes.c:596 builtin/notes.c:663
-#: builtin/notes.c:813 builtin/notes.c:965 builtin/notes.c:987
-#: builtin/prune-packed.c:25 builtin/receive-pack.c:2487 builtin/tag.c:591
-msgid "too many arguments"
-msgstr "trop d'arguments"
-
 #: builtin/notes.c:387 builtin/notes.c:676
 #, c-format
 msgid "no note found for object %s."
@@ -19188,7 +19680,7 @@ msgstr ""
 "validez le résultat avec 'git notes merges --commit', ou abandonnez la "
 "fusion avec 'git notes merge --abort'.\n"
 
-#: builtin/notes.c:899 builtin/tag.c:594
+#: builtin/notes.c:899 builtin/tag.c:595
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "Impossible de résoudre '%s' comme une référence valide."
@@ -19207,7 +19699,7 @@ msgstr ""
 msgid "read object names from the standard input"
 msgstr "lire les noms d'objet depuis l'entrée standard"
 
-#: builtin/notes.c:956 builtin/prune.c:144 builtin/worktree.c:147
+#: builtin/notes.c:956 builtin/prune.c:144 builtin/worktree.c:148
 msgid "do not remove, show only"
 msgstr "ne pas supprimer, afficher seulement"
 
@@ -19223,7 +19715,7 @@ msgstr "références-notes"
 msgid "use notes from <notes-ref>"
 msgstr "utiliser les notes depuis <références-notes>"
 
-#: builtin/notes.c:1036 builtin/stash.c:1818
+#: builtin/notes.c:1036 builtin/stash.c:1802
 #, c-format
 msgid "unknown subcommand: %s"
 msgstr "sous-commande inconnue : %s"
@@ -19242,7 +19734,7 @@ msgstr ""
 "git pack-objects [options...] base-name [< <liste-références> | < <liste-"
 "objets>]"
 
-#: builtin/pack-objects.c:572
+#: builtin/pack-objects.c:570
 #, c-format
 msgid ""
 "write_reuse_object: could not locate %s, expected at offset %<PRIuMAX> in "
@@ -19251,115 +19743,115 @@ msgstr ""
 "write_reuse_object : impossible de localiser %s, attendu à l'offset "
 "%<PRIuMAX> dans le paquet %s"
 
-#: builtin/pack-objects.c:580
+#: builtin/pack-objects.c:578
 #, c-format
 msgid "bad packed object CRC for %s"
 msgstr "mauvais CRC d'objet empaqueté pour %s"
 
-#: builtin/pack-objects.c:591
+#: builtin/pack-objects.c:589
 #, c-format
 msgid "corrupt packed object for %s"
 msgstr "objet empaqueté corrompu pour %s"
 
-#: builtin/pack-objects.c:722
+#: builtin/pack-objects.c:720
 #, c-format
 msgid "recursive delta detected for object %s"
 msgstr "delta récursif détecté pour l'objet %s"
 
-#: builtin/pack-objects.c:941
+#: builtin/pack-objects.c:939
 #, c-format
 msgid "ordered %u objects, expected %<PRIu32>"
 msgstr "%u objets commandés, %<PRIu32> attendus"
 
-#: builtin/pack-objects.c:1036
+#: builtin/pack-objects.c:1034
 #, c-format
 msgid "expected object at offset %<PRIuMAX> in pack %s"
 msgstr "objet attendu à l'offset %<PRIuMAX> dans le paquet %s"
 
-#: builtin/pack-objects.c:1160
+#: builtin/pack-objects.c:1158
 msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
 msgstr ""
 "désactivation de l'écriture en bitmap, les fichiers paquets sont scindés à "
 "cause de pack.packSizeLimit"
 
-#: builtin/pack-objects.c:1173
+#: builtin/pack-objects.c:1171
 msgid "Writing objects"
 msgstr "Écriture des objets"
 
-#: builtin/pack-objects.c:1235 builtin/update-index.c:90
+#: builtin/pack-objects.c:1243 builtin/update-index.c:90
 #, c-format
 msgid "failed to stat %s"
 msgstr "échec du stat de %s"
 
-#: builtin/pack-objects.c:1268
+#: builtin/pack-objects.c:1276
 msgid "failed to write bitmap index"
 msgstr "écrire un index de bitmap"
 
-#: builtin/pack-objects.c:1294
+#: builtin/pack-objects.c:1302
 #, c-format
 msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
 msgstr "%<PRIu32> objets écrits, %<PRIu32> attendus"
 
-#: builtin/pack-objects.c:1536
+#: builtin/pack-objects.c:1544
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr ""
 "désactivation de l'écriture en bitmap car certains objets ne sont pas "
 "compressés"
 
-#: builtin/pack-objects.c:1984
+#: builtin/pack-objects.c:1992
 #, c-format
 msgid "delta base offset overflow in pack for %s"
 msgstr "dépassement de décalage de base de delta pour %s"
 
-#: builtin/pack-objects.c:1993
+#: builtin/pack-objects.c:2001
 #, c-format
 msgid "delta base offset out of bound for %s"
 msgstr "décalage de base de delta est hors limite pour %s"
 
-#: builtin/pack-objects.c:2274
+#: builtin/pack-objects.c:2282
 msgid "Counting objects"
 msgstr "Décompte des objets"
 
-#: builtin/pack-objects.c:2439
+#: builtin/pack-objects.c:2447
 #, c-format
 msgid "unable to parse object header of %s"
 msgstr "impossible d'analyser l'entête d'objet de %s"
 
-#: builtin/pack-objects.c:2509 builtin/pack-objects.c:2525
-#: builtin/pack-objects.c:2535
+#: builtin/pack-objects.c:2517 builtin/pack-objects.c:2533
+#: builtin/pack-objects.c:2543
 #, c-format
 msgid "object %s cannot be read"
 msgstr "l'objet %s ne peut être lu"
 
-#: builtin/pack-objects.c:2512 builtin/pack-objects.c:2539
+#: builtin/pack-objects.c:2520 builtin/pack-objects.c:2547
 #, c-format
 msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
 msgstr ""
 "objet %s longueur de l'objet inconsistante (%<PRIuMAX> contre %<PRIuMAX>)"
 
-#: builtin/pack-objects.c:2549
+#: builtin/pack-objects.c:2557
 msgid "suboptimal pack - out of memory"
 msgstr "paquet sous-optimal - mémoire insuffisante"
 
-#: builtin/pack-objects.c:2864
+#: builtin/pack-objects.c:2872
 #, c-format
 msgid "Delta compression using up to %d threads"
 msgstr "Compression par delta en utilisant jusqu'à %d fils d'exécution"
 
-#: builtin/pack-objects.c:3003
+#: builtin/pack-objects.c:3011
 #, c-format
 msgid "unable to pack objects reachable from tag %s"
 msgstr "impossible d'empaqueter les objets joignables depuis l'étiquette %s"
 
-#: builtin/pack-objects.c:3089
+#: builtin/pack-objects.c:3097
 msgid "Compressing objects"
 msgstr "Compression des objets"
 
-#: builtin/pack-objects.c:3095
+#: builtin/pack-objects.c:3103
 msgid "inconsistency with delta count"
 msgstr "inconsistance dans le compte de delta"
 
-#: builtin/pack-objects.c:3174
+#: builtin/pack-objects.c:3182
 #, c-format
 msgid ""
 "value of uploadpack.blobpackfileuri must be of the form '<object-hash> <pack-"
@@ -19368,7 +19860,7 @@ msgstr ""
 "la valeur de uploadpack.blobpackfileuri doit être de la forme '<empreinte-d-"
 "objet> <empreinte-de-pack> <uri>' ('%s' reçu)"
 
-#: builtin/pack-objects.c:3177
+#: builtin/pack-objects.c:3185
 #, c-format
 msgid ""
 "object already configured in another uploadpack.blobpackfileuri (got '%s')"
@@ -19376,18 +19868,18 @@ msgstr ""
 "l'objet est déjà configuré dans un autre uploadpack.blobpackfileuri ('%s' "
 "reçu)"
 
-#: builtin/pack-objects.c:3212
+#: builtin/pack-objects.c:3220
 #, c-format
 msgid "could not get type of object %s in pack %s"
 msgstr "impossible d'obtenir le type de l'objet %s dans le paquet %s"
 
-#: builtin/pack-objects.c:3340 builtin/pack-objects.c:3351
-#: builtin/pack-objects.c:3365
+#: builtin/pack-objects.c:3348 builtin/pack-objects.c:3359
+#: builtin/pack-objects.c:3373
 #, c-format
 msgid "could not find pack '%s'"
 msgstr "impossible de trouver le paquet '%s'"
 
-#: builtin/pack-objects.c:3408
+#: builtin/pack-objects.c:3416
 #, c-format
 msgid ""
 "expected edge object ID, got garbage:\n"
@@ -19396,7 +19888,7 @@ msgstr ""
 "ID d'objet de bord attendu, reçu des données illisibles :\n"
 "%s"
 
-#: builtin/pack-objects.c:3414
+#: builtin/pack-objects.c:3422
 #, c-format
 msgid ""
 "expected object ID, got garbage:\n"
@@ -19405,252 +19897,248 @@ msgstr ""
 "ID d'objet attendu, reçu des données illisibles :\n"
 "%s"
 
-#: builtin/pack-objects.c:3507
-msgid "invalid value for --missing"
-msgstr "valeur invalide pour --missing"
-
-#: builtin/pack-objects.c:3532 builtin/pack-objects.c:3619
+#: builtin/pack-objects.c:3540 builtin/pack-objects.c:3627
 msgid "cannot open pack index"
 msgstr "impossible d'ouvrir l'index de paquet"
 
-#: builtin/pack-objects.c:3541
+#: builtin/pack-objects.c:3549
 #, c-format
 msgid "loose object at %s could not be examined"
 msgstr "l'objet libre à %s n'a pas pu être examiné"
 
-#: builtin/pack-objects.c:3627
+#: builtin/pack-objects.c:3635
 msgid "unable to force loose object"
 msgstr "impossible de forcer l'objet libre"
 
-#: builtin/pack-objects.c:3757
+#: builtin/pack-objects.c:3763
 #, c-format
 msgid "not a rev '%s'"
 msgstr "'%s' n'est pas une révision"
 
-#: builtin/pack-objects.c:3760 builtin/rev-parse.c:1061
+#: builtin/pack-objects.c:3766 builtin/rev-parse.c:1061
 #, c-format
 msgid "bad revision '%s'"
 msgstr "mauvaise révision '%s'"
 
-#: builtin/pack-objects.c:3788
+#: builtin/pack-objects.c:3794
 msgid "unable to add recent objects"
 msgstr "impossible d'ajouter les objets récents"
 
-#: builtin/pack-objects.c:3841
+#: builtin/pack-objects.c:3847
 #, c-format
 msgid "unsupported index version %s"
 msgstr "version d'index non supportée %s"
 
-#: builtin/pack-objects.c:3845
+#: builtin/pack-objects.c:3851
 #, c-format
 msgid "bad index version '%s'"
 msgstr "mauvaise version d'index '%s'"
 
-#: builtin/pack-objects.c:3884
+#: builtin/pack-objects.c:3907
 msgid "<version>[,<offset>]"
 msgstr "<version>[,<décalage>]"
 
-#: builtin/pack-objects.c:3885
+#: builtin/pack-objects.c:3908
 msgid "write the pack index file in the specified idx format version"
 msgstr ""
 "écrire le fichier d'index du paquet dans le format d'index de version "
 "spécifié"
 
-#: builtin/pack-objects.c:3888
+#: builtin/pack-objects.c:3911
 msgid "maximum size of each output pack file"
 msgstr "taille maximum de chaque fichier paquet en sortie"
 
-#: builtin/pack-objects.c:3890
+#: builtin/pack-objects.c:3913
 msgid "ignore borrowed objects from alternate object store"
 msgstr "ignorer les objets empruntés à un autre magasin d'objets"
 
-#: builtin/pack-objects.c:3892
+#: builtin/pack-objects.c:3915
 msgid "ignore packed objects"
 msgstr "ignorer les objets empaquetés"
 
-#: builtin/pack-objects.c:3894
+#: builtin/pack-objects.c:3917
 msgid "limit pack window by objects"
 msgstr "limiter la fenêtre d'empaquetage par objets"
 
-#: builtin/pack-objects.c:3896
+#: builtin/pack-objects.c:3919
 msgid "limit pack window by memory in addition to object limit"
 msgstr ""
 "limiter la fenêtre d'empaquetage par mémoire en plus de la limite d'objets"
 
-#: builtin/pack-objects.c:3898
+#: builtin/pack-objects.c:3921
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr ""
 "longueur maximum de la chaîne de delta autorisée dans le paquet résultant"
 
-#: builtin/pack-objects.c:3900
+#: builtin/pack-objects.c:3923
 msgid "reuse existing deltas"
 msgstr "réutiliser les deltas existants"
 
-#: builtin/pack-objects.c:3902
+#: builtin/pack-objects.c:3925
 msgid "reuse existing objects"
 msgstr "réutiliser les objets existants"
 
-#: builtin/pack-objects.c:3904
+#: builtin/pack-objects.c:3927
 msgid "use OFS_DELTA objects"
 msgstr "utiliser les objets OFS_DELTA"
 
-#: builtin/pack-objects.c:3906
+#: builtin/pack-objects.c:3929
 msgid "use threads when searching for best delta matches"
 msgstr ""
 "utiliser des fils lors de la recherche pour une meilleure correspondance des "
 "deltas"
 
-#: builtin/pack-objects.c:3908
+#: builtin/pack-objects.c:3931
 msgid "do not create an empty pack output"
 msgstr "ne pas créer un paquet vide"
 
-#: builtin/pack-objects.c:3910
+#: builtin/pack-objects.c:3933
 msgid "read revision arguments from standard input"
 msgstr "lire les paramètres de révision depuis l'entrée standard"
 
-#: builtin/pack-objects.c:3912
+#: builtin/pack-objects.c:3935
 msgid "limit the objects to those that are not yet packed"
 msgstr "limiter les objets à ceux qui ne sont pas encore empaquetés"
 
-#: builtin/pack-objects.c:3915
+#: builtin/pack-objects.c:3938
 msgid "include objects reachable from any reference"
 msgstr "inclure les objets accessibles depuis toute référence"
 
-#: builtin/pack-objects.c:3918
+#: builtin/pack-objects.c:3941
 msgid "include objects referred by reflog entries"
 msgstr "inclure les objets référencés par les éléments de reflog"
 
-#: builtin/pack-objects.c:3921
+#: builtin/pack-objects.c:3944
 msgid "include objects referred to by the index"
 msgstr "inclure les objets référencés par l'index"
 
-#: builtin/pack-objects.c:3924
+#: builtin/pack-objects.c:3947
 msgid "read packs from stdin"
 msgstr "lire les paquets depuis l'entrée standard"
 
-#: builtin/pack-objects.c:3926
+#: builtin/pack-objects.c:3949
 msgid "output pack to stdout"
 msgstr "afficher l'empaquetage sur la sortie standard"
 
-#: builtin/pack-objects.c:3928
+#: builtin/pack-objects.c:3951
 msgid "include tag objects that refer to objects to be packed"
 msgstr "inclure les objets d'étiquettes qui réfèrent à des objets à empaqueter"
 
-#: builtin/pack-objects.c:3930
+#: builtin/pack-objects.c:3953
 msgid "keep unreachable objects"
 msgstr "garder les objets inaccessibles"
 
-#: builtin/pack-objects.c:3932
+#: builtin/pack-objects.c:3955
 msgid "pack loose unreachable objects"
 msgstr "empaqueter les objets inaccessibles détachés"
 
-#: builtin/pack-objects.c:3934
+#: builtin/pack-objects.c:3957
 msgid "unpack unreachable objects newer than <time>"
 msgstr "dépaqueter les objets inaccessibles plus récents que <heure>"
 
-#: builtin/pack-objects.c:3937
+#: builtin/pack-objects.c:3960
 msgid "use the sparse reachability algorithm"
 msgstr "utiliser l'algorithme de joignabilité creuse"
 
-#: builtin/pack-objects.c:3939
+#: builtin/pack-objects.c:3962
 msgid "create thin packs"
 msgstr "créer des paquets légers"
 
-#: builtin/pack-objects.c:3941
+#: builtin/pack-objects.c:3964
 msgid "create packs suitable for shallow fetches"
 msgstr "créer des paquets permettant des récupérations superficielles"
 
-#: builtin/pack-objects.c:3943
+#: builtin/pack-objects.c:3966
 msgid "ignore packs that have companion .keep file"
 msgstr "ignorer les paquets qui ont un fichier .keep"
 
-#: builtin/pack-objects.c:3945
+#: builtin/pack-objects.c:3968
 msgid "ignore this pack"
 msgstr "ignorer ce paquet"
 
-#: builtin/pack-objects.c:3947
+#: builtin/pack-objects.c:3970
 msgid "pack compression level"
 msgstr "niveau de compression du paquet"
 
-#: builtin/pack-objects.c:3949
+#: builtin/pack-objects.c:3972
 msgid "do not hide commits by grafts"
 msgstr "ne pas cacher les validations par greffes"
 
-#: builtin/pack-objects.c:3951
+#: builtin/pack-objects.c:3974
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr ""
 "utiliser un index en bitmap si disponible pour accélerer le décompte des "
 "objets"
 
-#: builtin/pack-objects.c:3953
+#: builtin/pack-objects.c:3976
 msgid "write a bitmap index together with the pack index"
 msgstr "écrire un index en bitmap associé à l'index de paquet"
 
-#: builtin/pack-objects.c:3957
+#: builtin/pack-objects.c:3980
 msgid "write a bitmap index if possible"
 msgstr "écrire un index de bitmap si possible"
 
-#: builtin/pack-objects.c:3961
+#: builtin/pack-objects.c:3984
 msgid "handling for missing objects"
 msgstr "gestion des objets manquants"
 
-#: builtin/pack-objects.c:3964
+#: builtin/pack-objects.c:3987
 msgid "do not pack objects in promisor packfiles"
 msgstr "ne pas empaqueter les objets dans les fichiers paquets prometteurs"
 
-#: builtin/pack-objects.c:3966
+#: builtin/pack-objects.c:3989
 msgid "respect islands during delta compression"
 msgstr "respecter les îlots pendant la compression des deltas"
 
-#: builtin/pack-objects.c:3968
+#: builtin/pack-objects.c:3991
 msgid "protocol"
 msgstr "protocole"
 
-#: builtin/pack-objects.c:3969
+#: builtin/pack-objects.c:3992
 msgid "exclude any configured uploadpack.blobpackfileuri with this protocol"
 msgstr "exclure tout uploadpack.blobpackfileuri configuré avec ce protocole"
 
-#: builtin/pack-objects.c:4002
+#: builtin/pack-objects.c:4027
 #, c-format
 msgid "delta chain depth %d is too deep, forcing %d"
 msgstr "la profondeur %d de chaîne de delta est trop grande, forcée à %d"
 
-#: builtin/pack-objects.c:4007
+#: builtin/pack-objects.c:4032
 #, c-format
 msgid "pack.deltaCacheLimit is too high, forcing %d"
 msgstr "pack.deltaCacheLimit est trop grand, forcé à %d"
 
-#: builtin/pack-objects.c:4063
+#: builtin/pack-objects.c:4088
 msgid "--max-pack-size cannot be used to build a pack for transfer"
 msgstr ""
 "--max-pack-size ne peut pas être utilisé pour construire un paquet à "
 "transférer"
 
-#: builtin/pack-objects.c:4065
+#: builtin/pack-objects.c:4090
 msgid "minimum pack size limit is 1 MiB"
 msgstr "la taille limite minimale d'un paquet est 1 MiB"
 
-#: builtin/pack-objects.c:4070
+#: builtin/pack-objects.c:4095
 msgid "--thin cannot be used to build an indexable pack"
 msgstr "--thin ne peut pas être utilisé pour construire un paquet indexable"
 
-#: builtin/pack-objects.c:4079
+#: builtin/pack-objects.c:4104
 msgid "cannot use --filter without --stdout"
 msgstr "impossible d'utiliser --filter sans --stdout"
 
-#: builtin/pack-objects.c:4081
+#: builtin/pack-objects.c:4106
 msgid "cannot use --filter with --stdin-packs"
 msgstr "impossible d'utiliser --filter avec --stdin-packs"
 
-#: builtin/pack-objects.c:4085
+#: builtin/pack-objects.c:4110
 msgid "cannot use internal rev list with --stdin-packs"
 msgstr "impossible d'utiliser un liste interne de révisions avec --stdin-packs"
 
-#: builtin/pack-objects.c:4144
+#: builtin/pack-objects.c:4169
 msgid "Enumerating objects"
 msgstr "Énumération des objets"
 
-#: builtin/pack-objects.c:4180
+#: builtin/pack-objects.c:4210
 #, c-format
 msgid ""
 "Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>), pack-"
@@ -19685,10 +20173,6 @@ msgstr "empaqueter tout"
 msgid "prune loose refs (default)"
 msgstr "éliminer les références perdues (défaut)"
 
-#: builtin/prune-packed.c:6
-msgid "git prune-packed [-n | --dry-run] [-q | --quiet]"
-msgstr "git prune-packed [-n | --dry-run] [-q | --quiet]"
-
 #: builtin/prune.c:14
 msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
 msgstr "git prune [-n] [-v] [--progress] [--expire <heure>] [--] [<head>…]"
@@ -19709,11 +20193,6 @@ msgstr "limiter la traversée aux objets hors des fichiers paquets prometteurs"
 msgid "cannot prune in a precious-objects repo"
 msgstr "impossible de nettoyer dans un dépôt d'objets précieux"
 
-#: builtin/pull.c:45 builtin/pull.c:47
-#, c-format
-msgid "Invalid value for %s: %s"
-msgstr "Valeur invalide pour %s : %s"
-
 #: builtin/pull.c:67
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
 msgstr "git pull [<options>] [<dépôt> [<spécification-de-référence>...]]"
@@ -19738,7 +20217,7 @@ msgstr "autoriser l'avance rapide"
 msgid "control use of pre-merge-commit and commit-msg hooks"
 msgstr "contrôler l'utilisation des crochets pre-merge-commit et commit-msg"
 
-#: builtin/pull.c:171 parse-options.h:340
+#: builtin/pull.c:171 parse-options.h:371
 msgid "automatically stash/stash pop before and after"
 msgstr "remiser et réappliquer automatiquement avant et après"
 
@@ -19754,11 +20233,6 @@ msgstr "forcer l'écrasement de la branche locale"
 msgid "number of submodules pulled in parallel"
 msgstr "nombre de sous-modules tirés en parallèle"
 
-#: builtin/pull.c:321
-#, c-format
-msgid "Invalid value for pull.ff: %s"
-msgstr "Valeur invalide pour pull.ff : %s"
-
 #: builtin/pull.c:449
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
@@ -19794,7 +20268,7 @@ msgstr ""
 "configuration\n"
 "pour la branche actuelle, vous devez spécifier la branche avec la commande."
 
-#: builtin/pull.c:460 builtin/rebase.c:951
+#: builtin/pull.c:460 builtin/rebase.c:978
 msgid "You are not currently on a branch."
 msgstr "Vous n'êtes actuellement sur aucune branche."
 
@@ -19811,16 +20285,16 @@ msgid "See git-pull(1) for details."
 msgstr "Référez-vous à git-pull(1) pour de plus amples détails."
 
 #: builtin/pull.c:467 builtin/pull.c:473 builtin/pull.c:482
-#: builtin/rebase.c:957
+#: builtin/rebase.c:984
 msgid "<remote>"
 msgstr "<distant>"
 
 #: builtin/pull.c:467 builtin/pull.c:482 builtin/pull.c:487
-#: contrib/scalar/scalar.c:375
+#: contrib/scalar/scalar.c:374
 msgid "<branch>"
 msgstr "<branche>"
 
-#: builtin/pull.c:475 builtin/rebase.c:949
+#: builtin/pull.c:475 builtin/rebase.c:976
 msgid "There is no tracking information for the current branch."
 msgstr "Pas d'information de suivi distant pour la branche actuelle."
 
@@ -19879,21 +20353,21 @@ msgstr ""
 "passer --rebase, --no-rebase ou --ff-only sur la ligne de commande pour\n"
 "remplacer à l'invocation la valeur par défaut configurée.\n"
 
-#: builtin/pull.c:1046
+#: builtin/pull.c:1047
 msgid "Updating an unborn branch with changes added to the index."
 msgstr ""
 "Mise à jour d'une branche non encore créée avec les changements ajoutés dans "
 "l'index."
 
-#: builtin/pull.c:1050
+#: builtin/pull.c:1051
 msgid "pull with rebase"
 msgstr "tirer avec un rebasage"
 
-#: builtin/pull.c:1051
+#: builtin/pull.c:1052
 msgid "please commit or stash them."
 msgstr "veuillez les valider ou les remiser."
 
-#: builtin/pull.c:1076
+#: builtin/pull.c:1077
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -19904,7 +20378,7 @@ msgstr ""
 "avance rapide de votre copie de travail\n"
 "depuis le commit %s."
 
-#: builtin/pull.c:1082
+#: builtin/pull.c:1083
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -19921,23 +20395,23 @@ msgstr ""
 "$ git reset --hard\n"
 "pour régénérer."
 
-#: builtin/pull.c:1097
+#: builtin/pull.c:1098
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Impossible de fusionner de multiples branches sur une tête vide."
 
-#: builtin/pull.c:1102
+#: builtin/pull.c:1103
 msgid "Cannot rebase onto multiple branches."
 msgstr "Impossible de rebaser sur de multiples branches."
 
-#: builtin/pull.c:1104
+#: builtin/pull.c:1105
 msgid "Cannot fast-forward to multiple branches."
 msgstr "Impossible d'aller en avance rapide sur de multiples branches."
 
-#: builtin/pull.c:1119
+#: builtin/pull.c:1120
 msgid "Need to specify how to reconcile divergent branches."
 msgstr "Besoin de spécifier comment réconcilier des branches divergentes."
 
-#: builtin/pull.c:1133
+#: builtin/pull.c:1134
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 "impossible de rebaser avec des modifications de sous-modules enregistrées "
@@ -20130,7 +20604,7 @@ msgstr "Poussée vers %s\n"
 msgid "failed to push some refs to '%s'"
 msgstr "impossible de pousser des références vers '%s'"
 
-#: builtin/push.c:544 builtin/submodule--helper.c:3259
+#: builtin/push.c:544 builtin/submodule--helper.c:3377
 msgid "repository"
 msgstr "dépôt"
 
@@ -20375,11 +20849,11 @@ msgstr "déboguer unpack-trees"
 msgid "suppress feedback messages"
 msgstr "supprimer les messages d'information de suivi"
 
-#: builtin/read-tree.c:183
+#: builtin/read-tree.c:190
 msgid "You need to resolve your current index first"
 msgstr "Vous devez d'abord résoudre votre index courant"
 
-#: builtin/rebase.c:35
+#: builtin/rebase.c:36
 msgid ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <newbase> | --keep-base] "
 "[<upstream> [<branch>]]"
@@ -20387,55 +20861,51 @@ msgstr ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <nouvelle-base> | --keep-"
 "base] [<amont> [<branche>]]"
 
-#: builtin/rebase.c:37
+#: builtin/rebase.c:38
 msgid ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
 msgstr ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <nouvelle-base>] --root "
 "[<branche>]"
 
-#: builtin/rebase.c:39
-msgid "git rebase --continue | --abort | --skip | --edit-todo"
-msgstr "git rebase --continue | --abort | --skip | --edit-todo"
-
-#: builtin/rebase.c:230
+#: builtin/rebase.c:231
 #, c-format
 msgid "could not create temporary %s"
 msgstr "impossible de créer un fichier temporaire %s"
 
-#: builtin/rebase.c:236
+#: builtin/rebase.c:237
 msgid "could not mark as interactive"
 msgstr "impossible de marquer comme interactif"
 
-#: builtin/rebase.c:289
+#: builtin/rebase.c:290
 msgid "could not generate todo list"
 msgstr "impossible de générer la liste à-faire"
 
-#: builtin/rebase.c:331
+#: builtin/rebase.c:332
 msgid "a base commit must be provided with --upstream or --onto"
 msgstr "un commit de base doit être fourni avec --upstream ou --onto"
 
-#: builtin/rebase.c:390
+#: builtin/rebase.c:391
 #, c-format
 msgid "%s requires the merge backend"
 msgstr "%s requiert un moteur de fusion"
 
-#: builtin/rebase.c:432
+#: builtin/rebase.c:433
 #, c-format
 msgid "could not get 'onto': '%s'"
 msgstr "impossible d'accéder 'onto' : '%s'"
 
-#: builtin/rebase.c:449
+#: builtin/rebase.c:450
 #, c-format
 msgid "invalid orig-head: '%s'"
 msgstr "orig-head invalide : '%s'"
 
-#: builtin/rebase.c:474
+#: builtin/rebase.c:475
 #, c-format
 msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
 msgstr "allow_rerere_autoupdate invalide ignoré : '%s'"
 
-#: builtin/rebase.c:597
+#: builtin/rebase.c:600
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -20449,7 +20919,7 @@ msgstr ""
 "arrêter\n"
 "et revenir à l'état antérieur à la commande, lancez \"git rebase --abort\"."
 
-#: builtin/rebase.c:680
+#: builtin/rebase.c:685
 #, c-format
 msgid ""
 "\n"
@@ -20468,16 +20938,21 @@ msgstr ""
 "\n"
 "Résultat, git ne peut pas les rebaser."
 
-#: builtin/rebase.c:925
+#: builtin/rebase.c:836
+#, c-format
+msgid "could not switch to %s"
+msgstr "impossible de basculer vers %s"
+
+#: builtin/rebase.c:952
 #, c-format
 msgid ""
-"unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and \"ask"
-"\"."
+"unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and "
+"\"ask\"."
 msgstr ""
 "type vide non connu '%s' ; les valeurs valides sont \"drop\" (abandonner), "
 "\"keep\" (garder) et \"ask\" (demander)."
 
-#: builtin/rebase.c:943
+#: builtin/rebase.c:970
 #, c-format
 msgid ""
 "%s\n"
@@ -20494,7 +20969,7 @@ msgstr ""
 "    git rebase '<branche>'\n"
 "\n"
 
-#: builtin/rebase.c:959
+#: builtin/rebase.c:986
 #, c-format
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:\n"
@@ -20508,183 +20983,183 @@ msgstr ""
 "    git branch --set-upstream-to=%s/<branche> %s\n"
 "\n"
 
-#: builtin/rebase.c:989
+#: builtin/rebase.c:1016
 msgid "exec commands cannot contain newlines"
 msgstr "les commandes exec ne peut pas contenir de retour à la ligne"
 
-#: builtin/rebase.c:993
+#: builtin/rebase.c:1020
 msgid "empty exec command"
 msgstr "commande exec vide"
 
-#: builtin/rebase.c:1023
+#: builtin/rebase.c:1051
 msgid "rebase onto given branch instead of upstream"
 msgstr "rebaser sur la branche %s au lieu de la branche amont"
 
-#: builtin/rebase.c:1025
+#: builtin/rebase.c:1053
 msgid "use the merge-base of upstream and branch as the current base"
 msgstr ""
 "utiliser la base de fusion de l'amont et la branche comme base actuelle"
 
-#: builtin/rebase.c:1027
+#: builtin/rebase.c:1055
 msgid "allow pre-rebase hook to run"
 msgstr "permettre le lancement du crochet pre-rebase"
 
-#: builtin/rebase.c:1029
+#: builtin/rebase.c:1057
 msgid "be quiet. implies --no-stat"
 msgstr "être silencieux. implique --no-stat"
 
-#: builtin/rebase.c:1032
+#: builtin/rebase.c:1060
 msgid "display a diffstat of what changed upstream"
 msgstr "afficher un diffstat de ce qui a changé en amont"
 
-#: builtin/rebase.c:1035
+#: builtin/rebase.c:1063
 msgid "do not show diffstat of what changed upstream"
 msgstr "ne pas afficher un diffstat de ce qui a changé en amont"
 
-#: builtin/rebase.c:1038
+#: builtin/rebase.c:1066
 msgid "add a Signed-off-by trailer to each commit"
 msgstr "ajouter une ligne Signed-off-by à chaque message de validation"
 
-#: builtin/rebase.c:1041
+#: builtin/rebase.c:1069
 msgid "make committer date match author date"
 msgstr "mettre la date de validateur à la date auteur"
 
-#: builtin/rebase.c:1043
+#: builtin/rebase.c:1071
 msgid "ignore author date and use current date"
 msgstr "ignorer la date d'auteur et utilise la date actuelle"
 
-#: builtin/rebase.c:1045
+#: builtin/rebase.c:1073
 msgid "synonym of --reset-author-date"
 msgstr "synonyme pour --reset-author-date"
 
-#: builtin/rebase.c:1047 builtin/rebase.c:1051
+#: builtin/rebase.c:1075 builtin/rebase.c:1079
 msgid "passed to 'git apply'"
 msgstr "passé jusqu'à git apply"
 
-#: builtin/rebase.c:1049
+#: builtin/rebase.c:1077
 msgid "ignore changes in whitespace"
 msgstr "ignorer des modifications d'espaces"
 
-#: builtin/rebase.c:1053 builtin/rebase.c:1056
+#: builtin/rebase.c:1081 builtin/rebase.c:1084
 msgid "cherry-pick all commits, even if unchanged"
 msgstr "picorer tous les commits, même sans modifiant"
 
-#: builtin/rebase.c:1058
+#: builtin/rebase.c:1086
 msgid "continue"
 msgstr "continuer"
 
-#: builtin/rebase.c:1061
+#: builtin/rebase.c:1089
 msgid "skip current patch and continue"
 msgstr "sauter le patch courant et continuer"
 
-#: builtin/rebase.c:1063
+#: builtin/rebase.c:1091
 msgid "abort and check out the original branch"
 msgstr "abandonner et extraire la branche d'origine"
 
-#: builtin/rebase.c:1066
+#: builtin/rebase.c:1094
 msgid "abort but keep HEAD where it is"
 msgstr "abandonne mais garde HEAD où il est"
 
-#: builtin/rebase.c:1067
+#: builtin/rebase.c:1095
 msgid "edit the todo list during an interactive rebase"
 msgstr "éditer la liste à faire lors d'un rebasage interactif"
 
-#: builtin/rebase.c:1070
+#: builtin/rebase.c:1098
 msgid "show the patch file being applied or merged"
 msgstr "afficher le patch en cours d'application ou de fusion"
 
-#: builtin/rebase.c:1073
+#: builtin/rebase.c:1101
 msgid "use apply strategies to rebase"
 msgstr "utiliser des stratégies d'application pour rebaser"
 
-#: builtin/rebase.c:1077
+#: builtin/rebase.c:1105
 msgid "use merging strategies to rebase"
 msgstr "utiliser des stratégies de fusion pour rebaser"
 
-#: builtin/rebase.c:1081
+#: builtin/rebase.c:1109
 msgid "let the user edit the list of commits to rebase"
 msgstr "laisser l'utilisateur éditer la liste des commits à rebaser"
 
-#: builtin/rebase.c:1085
+#: builtin/rebase.c:1113
 msgid "(DEPRECATED) try to recreate merges instead of ignoring them"
 msgstr "(DÉCONSEILLÉ) essayer de recréer les fusions au lieu de les ignorer"
 
-#: builtin/rebase.c:1090
+#: builtin/rebase.c:1118
 msgid "how to handle commits that become empty"
 msgstr "comment gérer les commits qui deviennent vides"
 
-#: builtin/rebase.c:1093
+#: builtin/rebase.c:1121
 msgid "keep commits which start empty"
 msgstr "conserver les commits qui commencent vides"
 
-#: builtin/rebase.c:1097
+#: builtin/rebase.c:1125
 msgid "move commits that begin with squash!/fixup! under -i"
 msgstr "déplace les commits qui commencent par squash!/fixup! sous -i"
 
-#: builtin/rebase.c:1104
+#: builtin/rebase.c:1132
 msgid "add exec lines after each commit of the editable list"
 msgstr "ajouter les lignes exec après chaque commit de la liste éditable"
 
-#: builtin/rebase.c:1108
+#: builtin/rebase.c:1136
 msgid "allow rebasing commits with empty messages"
 msgstr "autoriser les commits de rebasage avec des messages vides"
 
-#: builtin/rebase.c:1112
+#: builtin/rebase.c:1140
 msgid "try to rebase merges instead of skipping them"
 msgstr "essayer de rebaser les fusions au lieu de les garder"
 
-#: builtin/rebase.c:1115
+#: builtin/rebase.c:1143
 msgid "use 'merge-base --fork-point' to refine upstream"
 msgstr "utiliser 'merge-base --fork-point' pour raffiner l'amont"
 
-#: builtin/rebase.c:1117
+#: builtin/rebase.c:1145
 msgid "use the given merge strategy"
 msgstr "utiliser la stratégie de fusion indiquée"
 
-#: builtin/rebase.c:1119 builtin/revert.c:115
+#: builtin/rebase.c:1147 builtin/revert.c:115
 msgid "option"
 msgstr "option"
 
-#: builtin/rebase.c:1120
+#: builtin/rebase.c:1148
 msgid "pass the argument through to the merge strategy"
 msgstr "passer les arguments jusqu'à la stratégie de fusion"
 
-#: builtin/rebase.c:1123
+#: builtin/rebase.c:1151
 msgid "rebase all reachable commits up to the root(s)"
 msgstr "rebaser tous les objets inatteignables depuis les racines"
 
-#: builtin/rebase.c:1126
+#: builtin/rebase.c:1154
 msgid "automatically re-schedule any `exec` that fails"
 msgstr "re-planifier automatiquement tout `exec` qui échoue"
 
-#: builtin/rebase.c:1128
+#: builtin/rebase.c:1156
 msgid "apply all changes, even those already present upstream"
 msgstr ""
 "appliquer toutes les modifications, même celles déjà présentes en amont"
 
-#: builtin/rebase.c:1149
+#: builtin/rebase.c:1177
 msgid "It looks like 'git am' is in progress. Cannot rebase."
 msgstr "Il semble que 'git am' soit en cours. Impossible de rebaser."
 
-#: builtin/rebase.c:1180
+#: builtin/rebase.c:1208
 msgid "--preserve-merges was replaced by --rebase-merges"
 msgstr "--preserve-merges a été remplacé par --rebase-merges"
 
-#: builtin/rebase.c:1202
+#: builtin/rebase.c:1230
 msgid "No rebase in progress?"
 msgstr "Pas de rebasage en cours ?"
 
-#: builtin/rebase.c:1206
+#: builtin/rebase.c:1234
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
 "L'action --edit-todo peut seulement être utilisée lors d'un rebasage "
 "interactif."
 
-#: builtin/rebase.c:1229 t/helper/test-fast-rebase.c:122
+#: builtin/rebase.c:1257 t/helper/test-fast-rebase.c:122
 msgid "Cannot read HEAD"
 msgstr "Impossible de lire HEAD"
 
-#: builtin/rebase.c:1241
+#: builtin/rebase.c:1269
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -20692,16 +21167,16 @@ msgstr ""
 "Vous devez éditer tous les conflits de fusion et\n"
 "les marquer comme résolus avec git add"
 
-#: builtin/rebase.c:1260
+#: builtin/rebase.c:1287
 msgid "could not discard worktree changes"
 msgstr "impossible de supprimer les changements de l'arbre de travail"
 
-#: builtin/rebase.c:1279
+#: builtin/rebase.c:1308
 #, c-format
 msgid "could not move back to %s"
 msgstr "impossible de revenir à %s"
 
-#: builtin/rebase.c:1325
+#: builtin/rebase.c:1354
 #, c-format
 msgid ""
 "It seems that there is already a %s directory, and\n"
@@ -20723,125 +21198,120 @@ msgstr ""
 "chose\n"
 "d'important ici.\n"
 
-#: builtin/rebase.c:1353
+#: builtin/rebase.c:1382
 msgid "switch `C' expects a numerical value"
 msgstr "l'option `C' attend un valeur numérique"
 
-#: builtin/rebase.c:1395
+#: builtin/rebase.c:1424
 #, c-format
 msgid "Unknown mode: %s"
 msgstr "Mode inconnu : %s"
 
-#: builtin/rebase.c:1434
+#: builtin/rebase.c:1463
 msgid "--strategy requires --merge or --interactive"
 msgstr "--strategy requiert --merge ou --interactive"
 
-#: builtin/rebase.c:1463
+#: builtin/rebase.c:1492
 msgid "apply options and merge options cannot be used together"
 msgstr ""
 "Les options d'apply et celles de merge ne peuvent pas être utilisées ensemble"
 
-#: builtin/rebase.c:1476
+#: builtin/rebase.c:1505
 #, c-format
 msgid "Unknown rebase backend: %s"
 msgstr "Backend de rebasage inconnu : %s"
 
-#: builtin/rebase.c:1505
+#: builtin/rebase.c:1534
 msgid "--reschedule-failed-exec requires --exec or --interactive"
 msgstr "--reschedule-failed-exec requiert --exec ou --interactive"
 
-#: builtin/rebase.c:1536
+#: builtin/rebase.c:1565
 #, c-format
 msgid "invalid upstream '%s'"
 msgstr "amont invalide '%s'"
 
-#: builtin/rebase.c:1542
+#: builtin/rebase.c:1571
 msgid "Could not create new root commit"
 msgstr "Impossible de créer un nouveau commit racine"
 
-#: builtin/rebase.c:1568
+#: builtin/rebase.c:1597
 #, c-format
 msgid "'%s': need exactly one merge base with branch"
 msgstr "'%s': exactement une base de fusion nécessaire avec une branche"
 
-#: builtin/rebase.c:1571
+#: builtin/rebase.c:1600
 #, c-format
 msgid "'%s': need exactly one merge base"
 msgstr "'%s': exactement une base de fusion nécessaire"
 
-#: builtin/rebase.c:1580
+#: builtin/rebase.c:1609
 #, c-format
 msgid "Does not point to a valid commit '%s'"
 msgstr "Ne pointe pas sur une validation valide : '%s'"
 
-#: builtin/rebase.c:1607
+#: builtin/rebase.c:1636
 #, c-format
 msgid "no such branch/commit '%s'"
 msgstr "pas de branche ou commit '%s'"
 
-#: builtin/rebase.c:1618 builtin/submodule--helper.c:39
-#: builtin/submodule--helper.c:2659
+#: builtin/rebase.c:1647 builtin/submodule--helper.c:43
+#: builtin/submodule--helper.c:2477
 #, c-format
 msgid "No such ref: %s"
 msgstr "Référence inexistante : %s"
 
-#: builtin/rebase.c:1629
+#: builtin/rebase.c:1658
 msgid "Could not resolve HEAD to a revision"
 msgstr "Impossible de résoudre le commit HEAD vers un révision"
 
-#: builtin/rebase.c:1650
+#: builtin/rebase.c:1679
 msgid "Please commit or stash them."
 msgstr "Veuillez les valider ou les remiser."
 
-#: builtin/rebase.c:1686
-#, c-format
-msgid "could not switch to %s"
-msgstr "impossible de basculer vers %s"
-
-#: builtin/rebase.c:1697
+#: builtin/rebase.c:1714
 msgid "HEAD is up to date."
 msgstr "HEAD est à jour."
 
-#: builtin/rebase.c:1699
+#: builtin/rebase.c:1716
 #, c-format
 msgid "Current branch %s is up to date.\n"
 msgstr "La branche courante %s est à jour.\n"
 
-#: builtin/rebase.c:1707
+#: builtin/rebase.c:1724
 msgid "HEAD is up to date, rebase forced."
 msgstr "HEAD est à jour, rebasage forcé."
 
-#: builtin/rebase.c:1709
+#: builtin/rebase.c:1726
 #, c-format
 msgid "Current branch %s is up to date, rebase forced.\n"
 msgstr "La branche courante %s est à jour, rebasage forcé.\n"
 
-#: builtin/rebase.c:1717
+#: builtin/rebase.c:1734
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Le crochet pre-rebase a refusé de rebaser."
 
-#: builtin/rebase.c:1724
+#: builtin/rebase.c:1741
 #, c-format
 msgid "Changes to %s:\n"
 msgstr "Changements vers %s :\n"
 
-#: builtin/rebase.c:1727
+#: builtin/rebase.c:1744
 #, c-format
 msgid "Changes from %s to %s:\n"
 msgstr "Changements de %s sur %s :\n"
 
-#: builtin/rebase.c:1752
+#: builtin/rebase.c:1769
 #, c-format
 msgid "First, rewinding head to replay your work on top of it...\n"
 msgstr ""
 "Rembobinage préalable de head pour pouvoir rejouer votre travail par-"
 "dessus...\n"
 
-#: builtin/rebase.c:1761
+#: builtin/rebase.c:1781
 msgid "Could not detach HEAD"
 msgstr "Impossible de détacher HEAD"
 
-#: builtin/rebase.c:1770
+#: builtin/rebase.c:1790
 #, c-format
 msgid "Fast-forwarded %s to %s.\n"
 msgstr "Avance rapide de %s sur %s.\n"
@@ -20850,7 +21320,7 @@ msgstr "Avance rapide de %s sur %s.\n"
 msgid "git receive-pack <git-dir>"
 msgstr "git receive-pack <répertoire-git>"
 
-#: builtin/receive-pack.c:1275
+#: builtin/receive-pack.c:1263
 msgid ""
 "By default, updating the current branch in a non-bare repository\n"
 "is denied, because it will make the index and work tree inconsistent\n"
@@ -20880,7 +21350,7 @@ msgstr ""
 "Pour éliminer ce message et conserver le comportement par défaut,\n"
 "réglez « receive.denyCurrentBranch » à 'refuse'."
 
-#: builtin/receive-pack.c:1295
+#: builtin/receive-pack.c:1283
 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"
@@ -20900,79 +21370,115 @@ msgstr ""
 "\n"
 "Pour éliminer ce message, réglez-le à 'refuse'."
 
-#: builtin/receive-pack.c:2474
+#: builtin/receive-pack.c:2476
 msgid "quiet"
 msgstr "quiet"
 
-#: builtin/receive-pack.c:2489
+#: builtin/receive-pack.c:2491
 msgid "you must specify a directory"
 msgstr "Vous devez spécifier un répertoire"
 
-#: builtin/reflog.c:17
+#: builtin/reflog.c:9
+msgid "git reflog [show] [<log-options>] [<ref>]"
+msgstr "git reflog [show] [<options-de-journal>] [<réf>]"
+
+#: builtin/reflog.c:12
 msgid ""
-"git reflog expire [--expire=<time>] [--expire-unreachable=<time>] [--"
-"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
-"<refs>..."
+"git reflog expire [--expire=<time>] [--expire-unreachable=<time>]\n"
+"                  [--rewrite] [--updateref] [--stale-fix]\n"
+"                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
+"<refs>...]"
 msgstr ""
-"git reflog expire [--expire=<date>] [--expire-unreachable=<date>] [--"
-"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
-"<réferences>..."
+"git reflog expire [--expire=<temps>] [--expire-unreachable=<temps>]\n"
+"                  [--rewrite] [--updateref] [--stale-fix]\n"
+"                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
+"<réfs>...]"
 
-#: builtin/reflog.c:22
+#: builtin/reflog.c:17
 msgid ""
-"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
-"<refs>..."
+"git reflog delete [--rewrite] [--updateref]\n"
+"                  [--dry-run | -n] [--verbose] <ref>@{<specifier>}..."
 msgstr ""
-"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
-"<références>..."
+"git reflog delete [--rewrite] [--updateref]\n"
+"                  [--dry-run | -n] [--verbose] <réf>@{<spécificateur>}..."
 
-#: builtin/reflog.c:25
+#: builtin/reflog.c:21
 msgid "git reflog exists <ref>"
 msgstr "git reflog exists <référence>"
 
-#: builtin/reflog.c:585 builtin/reflog.c:590
+#: builtin/reflog.c:197 builtin/reflog.c:211
 #, c-format
-msgid "'%s' is not a valid timestamp"
-msgstr "'%s' n'est pas un horodatage valide"
+msgid "invalid timestamp '%s' given to '--%s'"
+msgstr "horodatage invalide '%s' fourni à '--%s'"
+
+#: builtin/reflog.c:240 builtin/reflog.c:359
+msgid "do not actually prune any entries"
+msgstr "ne pas réellement élaguer des entrées"
+
+#: builtin/reflog.c:243 builtin/reflog.c:362
+msgid ""
+"rewrite the old SHA1 with the new SHA1 of the entry that now precedes it"
+msgstr ""
+"réécrire l'ancien SHA1 avec le nouveau SHA1 de l'entrée qui la précède "
+"maintenant"
+
+#: builtin/reflog.c:246 builtin/reflog.c:365
+msgid "update the reference to the value of the top reflog entry"
+msgstr ""
+"mettre à jour la référence avec la valeur de l'entrée en tête de reflog"
 
-#: builtin/reflog.c:631
+#: builtin/reflog.c:248 builtin/reflog.c:367
+msgid "print extra information on screen"
+msgstr "Afficher de l'informations supplémentaires"
+
+#: builtin/reflog.c:249 builtin/reflog.c:253
+msgid "timestamp"
+msgstr "horodatage"
+
+#: builtin/reflog.c:250
+msgid "prune entries older than the specified time"
+msgstr "élaguer les entrées plus vieilles que <temps>"
+
+#: builtin/reflog.c:254
+msgid ""
+"prune entries older than <time> that are not reachable from the current tip "
+"of the branch"
+msgstr ""
+"élaguer les entrées plus anciennes que <temps> qui ne sont pas joignables "
+"depuis le sommet actuel de la branche"
+
+#: builtin/reflog.c:258
+msgid "prune any reflog entries that point to broken commits"
+msgstr "élaguer les entrées de reflog qui pointent sur des commits cassés"
+
+#: builtin/reflog.c:259
+msgid "process the reflogs of all references"
+msgstr "traiter les reflogs de toutes les références"
+
+#: builtin/reflog.c:261
+msgid "limits processing to reflogs from the current worktree only"
+msgstr "limite le traitement des reflogs seulement à l'arbre de travail actuel"
+
+#: builtin/reflog.c:294
 #, c-format
 msgid "Marking reachable objects..."
 msgstr "Marquage des objets inaccessibles..."
 
-#: builtin/reflog.c:675
+#: builtin/reflog.c:338
 #, c-format
 msgid "%s points nowhere!"
 msgstr "%s ne pointe nulle part !"
 
-#: builtin/reflog.c:731
+#: builtin/reflog.c:374
 msgid "no reflog specified to delete"
 msgstr "pas de journal de références à supprimer spécifié"
 
-#: builtin/reflog.c:742
-#, c-format
-msgid "not a reflog: %s"
-msgstr "'%s' n'est pas un journal de références"
-
-#: builtin/reflog.c:747
-#, c-format
-msgid "no reflog for '%s'"
-msgstr "pas de journal de références pour '%s'"
-
-#: builtin/reflog.c:794
+#: builtin/reflog.c:396
 #, c-format
 msgid "invalid ref format: %s"
 msgstr "format de référence invalide : %s"
 
-#: builtin/reflog.c:803
-msgid "git reflog [ show | expire | delete | exists ]"
-msgstr "git reflog [ show | expire | delete | exists ]"
-
-#: builtin/remote.c:17
-msgid "git remote [-v | --verbose]"
-msgstr "git remote [-v | --verbose]"
-
-#: builtin/remote.c:18
+#: builtin/remote.c:19
 msgid ""
 "git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <name> <url>"
@@ -20980,88 +21486,88 @@ msgstr ""
 "git remote add [-t <branche>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <nom> <url>"
 
-#: builtin/remote.c:19 builtin/remote.c:39
-msgid "git remote rename <old> <new>"
-msgstr "git remote rename <ancienne> <nouvelle>"
+#: builtin/remote.c:20 builtin/remote.c:40
+msgid "git remote rename [--[no-]progress] <old> <new>"
+msgstr "git remote rename [--[no-]progress] <ancien> <nouveau>"
 
-#: builtin/remote.c:20 builtin/remote.c:44
+#: builtin/remote.c:21 builtin/remote.c:45
 msgid "git remote remove <name>"
 msgstr "git remote remove <nom>"
 
-#: builtin/remote.c:21 builtin/remote.c:49
+#: builtin/remote.c:22 builtin/remote.c:50
 msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
 msgstr "git remote set-head <nom> (-a | --auto | -d | --delete | <branche>)"
 
-#: builtin/remote.c:22
+#: builtin/remote.c:23
 msgid "git remote [-v | --verbose] show [-n] <name>"
 msgstr "git remote [-v | --verbose] show [-n] <nom>"
 
-#: builtin/remote.c:23
+#: builtin/remote.c:24
 msgid "git remote prune [-n | --dry-run] <name>"
 msgstr "git remote prune [-n | --dry-run] <nom>"
 
-#: builtin/remote.c:24
+#: builtin/remote.c:25
 msgid ""
 "git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
 msgstr ""
 "git remote [-v | --verbose] update [-p | --prune] [(<groupe> | "
 "<distante>)...]"
 
-#: builtin/remote.c:25
+#: builtin/remote.c:26
 msgid "git remote set-branches [--add] <name> <branch>..."
 msgstr "git remote set-branches [--add] <nom> <branche>..."
 
-#: builtin/remote.c:26 builtin/remote.c:75
+#: builtin/remote.c:27 builtin/remote.c:76
 msgid "git remote get-url [--push] [--all] <name>"
 msgstr "git remote get-url [--push] [--all] <nom>"
 
-#: builtin/remote.c:27 builtin/remote.c:80
+#: builtin/remote.c:28 builtin/remote.c:81
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
 msgstr "git remote set-url [--push] <nom> <nouvelle-URL> [<ancienne-URL>]"
 
-#: builtin/remote.c:28 builtin/remote.c:81
+#: builtin/remote.c:29 builtin/remote.c:82
 msgid "git remote set-url --add <name> <newurl>"
 msgstr "git remote set-url --add <nom> <nouvelle-URL>"
 
-#: builtin/remote.c:29 builtin/remote.c:82
+#: builtin/remote.c:30 builtin/remote.c:83
 msgid "git remote set-url --delete <name> <url>"
 msgstr "git remote set-url --delete <nom> <url>"
 
-#: builtin/remote.c:34
+#: builtin/remote.c:35
 msgid "git remote add [<options>] <name> <url>"
 msgstr "git remote add [<options>] <nom> <URL>"
 
-#: builtin/remote.c:54
+#: builtin/remote.c:55
 msgid "git remote set-branches <name> <branch>..."
 msgstr "git remote set-branches <nom> <branche>..."
 
-#: builtin/remote.c:55
+#: builtin/remote.c:56
 msgid "git remote set-branches --add <name> <branch>..."
 msgstr "git remote set-branches --add <nom> <branche>..."
 
-#: builtin/remote.c:60
+#: builtin/remote.c:61
 msgid "git remote show [<options>] <name>"
 msgstr "git remote show [<options>] <nom>"
 
-#: builtin/remote.c:65
+#: builtin/remote.c:66
 msgid "git remote prune [<options>] <name>"
 msgstr "git remote prune [<options>] <nom>"
 
-#: builtin/remote.c:70
+#: builtin/remote.c:71
 msgid "git remote update [<options>] [<group> | <remote>]..."
 msgstr "git remote update [<options>] [<groupe> | <distante>]..."
 
-#: builtin/remote.c:99
+#: builtin/remote.c:100
 #, c-format
 msgid "Updating %s"
 msgstr "Mise à jour de %s"
 
-#: builtin/remote.c:101
+#: builtin/remote.c:102
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Impossible de récupérer %s"
 
-#: builtin/remote.c:131
+#: builtin/remote.c:132
 msgid ""
 "--mirror is dangerous and deprecated; please\n"
 "\t use --mirror=fetch or --mirror=push instead"
@@ -21069,83 +21575,83 @@ msgstr ""
 "--mirror est dangereux et obsolète ; merci\n"
 "\t d'utiliser --mirror=fetch ou --mirror=push à la place"
 
-#: builtin/remote.c:148
+#: builtin/remote.c:149
 #, c-format
 msgid "unknown mirror argument: %s"
 msgstr "argument miroir inconnu : %s"
 
-#: builtin/remote.c:164
+#: builtin/remote.c:165
 msgid "fetch the remote branches"
 msgstr "rapatrier les branches distantes"
 
-#: builtin/remote.c:166
+#: builtin/remote.c:167
 msgid "import all tags and associated objects when fetching"
 msgstr ""
 "importer toutes les étiquettes et les objets associés lors du rapatriement"
 
-#: builtin/remote.c:169
+#: builtin/remote.c:170
 msgid "or do not fetch any tag at all (--no-tags)"
 msgstr "ou ne rapatrier aucune étiquette (--no-tags)"
 
-#: builtin/remote.c:171
+#: builtin/remote.c:172
 msgid "branch(es) to track"
 msgstr "branche(s) à suivre"
 
-#: builtin/remote.c:172
+#: builtin/remote.c:173
 msgid "master branch"
 msgstr "branche maîtresse"
 
-#: builtin/remote.c:174
+#: builtin/remote.c:175
 msgid "set up remote as a mirror to push to or fetch from"
 msgstr ""
 "paramétrer la distante comme miroir pour pousser ou pour rapatrier depuis"
 
-#: builtin/remote.c:186
+#: builtin/remote.c:187
 msgid "specifying a master branch makes no sense with --mirror"
 msgstr "spécifier une branche maîtresse n'a pas de sens avec --mirror"
 
-#: builtin/remote.c:188
+#: builtin/remote.c:189
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr ""
 "spécifier les branches à suivre n'a de sens qu'avec des miroirs de "
 "rapatriement"
 
-#: builtin/remote.c:195 builtin/remote.c:705
+#: builtin/remote.c:196 builtin/remote.c:716
 #, c-format
 msgid "remote %s already exists."
 msgstr "la distante %s existe déjà."
 
-#: builtin/remote.c:240
+#: builtin/remote.c:241
 #, c-format
 msgid "Could not setup master '%s'"
 msgstr "Impossible de paramétrer la maîtresse '%s'"
 
-#: builtin/remote.c:322
+#: builtin/remote.c:323
 #, c-format
 msgid "unhandled branch.%s.rebase=%s; assuming 'true'"
 msgstr "branch.%s.rebase=%s non géré ; 'true' supposé"
 
-#: builtin/remote.c:366
+#: builtin/remote.c:367
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr ""
 "Impossible d'obtenir une correspondance distante pour la spécification de "
 "référence %s"
 
-#: builtin/remote.c:460 builtin/remote.c:468
+#: builtin/remote.c:461 builtin/remote.c:469
 msgid "(matching)"
 msgstr "(correspond)"
 
-#: builtin/remote.c:472
+#: builtin/remote.c:473
 msgid "(delete)"
 msgstr "(supprimer)"
 
-#: builtin/remote.c:660
+#: builtin/remote.c:664
 #, c-format
 msgid "could not set '%s'"
 msgstr "impossible d'assigner '%s'"
 
-#: builtin/remote.c:665
+#: builtin/remote.c:669
 #, c-format
 msgid ""
 "The %s configuration remote.pushDefault in:\n"
@@ -21156,17 +21662,17 @@ msgstr ""
 "\t%s%d\n"
 "nomme à présent le distant inexistant '%s'"
 
-#: builtin/remote.c:696 builtin/remote.c:841 builtin/remote.c:948
+#: builtin/remote.c:707 builtin/remote.c:866 builtin/remote.c:973
 #, c-format
 msgid "No such remote: '%s'"
 msgstr "Pas de serveur remote : '%s'"
 
-#: builtin/remote.c:715
+#: builtin/remote.c:726
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr "Impossible de renommer la section de configuration '%s' en '%s'"
 
-#: builtin/remote.c:735
+#: builtin/remote.c:746
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -21177,17 +21683,21 @@ msgstr ""
 "\t%s\n"
 "\tVeuillez mettre à jour la configuration manuellement si nécessaire."
 
-#: builtin/remote.c:775
+#: builtin/remote.c:783
+msgid "Renaming remote references"
+msgstr "Renommage des références distantes"
+
+#: builtin/remote.c:794
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "échec de suppression de '%s'"
 
-#: builtin/remote.c:809
+#: builtin/remote.c:832
 #, c-format
 msgid "creating '%s' failed"
 msgstr "échec de création de '%s'"
 
-#: builtin/remote.c:887
+#: builtin/remote.c:912
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -21202,118 +21712,118 @@ msgstr[1] ""
 "supprimées ;\n"
 "pour les supprimer, utilisez :"
 
-#: builtin/remote.c:901
+#: builtin/remote.c:926
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr "Impossible de supprimer la section de configuration '%s'"
 
-#: builtin/remote.c:1009
+#: builtin/remote.c:1034
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr " nouveau (le prochain rapatriement (fetch) stockera dans remotes/%s)"
 
-#: builtin/remote.c:1012
+#: builtin/remote.c:1037
 msgid " tracked"
 msgstr " suivi"
 
-#: builtin/remote.c:1014
+#: builtin/remote.c:1039
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " dépassé (utilisez 'git remote prune' pour supprimer)"
 
-#: builtin/remote.c:1016
+#: builtin/remote.c:1041
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:1057
+#: builtin/remote.c:1082
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr "branch.%s.merge invalide ; ne peut pas rebaser sur plus d'une branche"
 
-#: builtin/remote.c:1066
+#: builtin/remote.c:1091
 #, c-format
 msgid "rebases interactively onto remote %s"
 msgstr "rebase de manière interactive sur la distante %s"
 
-#: builtin/remote.c:1068
+#: builtin/remote.c:1093
 #, c-format
 msgid "rebases interactively (with merges) onto remote %s"
 msgstr "rebase de manière interactive (avec fusions) sur la distante %s"
 
-#: builtin/remote.c:1071
+#: builtin/remote.c:1096
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "rebase sur la distante %s"
 
-#: builtin/remote.c:1075
+#: builtin/remote.c:1100
 #, c-format
 msgid " merges with remote %s"
 msgstr " fusionne avec la distante %s"
 
-#: builtin/remote.c:1078
+#: builtin/remote.c:1103
 #, c-format
 msgid "merges with remote %s"
 msgstr "fusionne avec la distante %s"
 
-#: builtin/remote.c:1081
+#: builtin/remote.c:1106
 #, c-format
 msgid "%-*s    and with remote %s\n"
 msgstr "%-*s    et avec la distante %s\n"
 
-#: builtin/remote.c:1124
+#: builtin/remote.c:1149
 msgid "create"
 msgstr "créer"
 
-#: builtin/remote.c:1127
+#: builtin/remote.c:1152
 msgid "delete"
 msgstr "supprimer"
 
-#: builtin/remote.c:1131
+#: builtin/remote.c:1156
 msgid "up to date"
 msgstr "à jour"
 
-#: builtin/remote.c:1134
+#: builtin/remote.c:1159
 msgid "fast-forwardable"
 msgstr "peut être mis à jour en avance rapide"
 
-#: builtin/remote.c:1137
+#: builtin/remote.c:1162
 msgid "local out of date"
 msgstr "le local n'est pas à jour"
 
-#: builtin/remote.c:1144
+#: builtin/remote.c:1169
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s force vers %-*s (%s)"
 
-#: builtin/remote.c:1147
+#: builtin/remote.c:1172
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s pousse vers %-*s (%s)"
 
-#: builtin/remote.c:1151
+#: builtin/remote.c:1176
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s force vers %s"
 
-#: builtin/remote.c:1154
+#: builtin/remote.c:1179
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s pousse vers %s"
 
-#: builtin/remote.c:1222
+#: builtin/remote.c:1247
 msgid "do not query remotes"
 msgstr "ne pas interroger les distantes"
 
-#: builtin/remote.c:1243
+#: builtin/remote.c:1268
 #, c-format
 msgid "* remote %s"
 msgstr "* distant %s"
 
-#: builtin/remote.c:1244
+#: builtin/remote.c:1269
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  URL de rapatriement : %s"
 
-#: builtin/remote.c:1245 builtin/remote.c:1261 builtin/remote.c:1398
+#: builtin/remote.c:1270 builtin/remote.c:1286 builtin/remote.c:1423
 msgid "(no URL)"
 msgstr "(pas d'URL)"
 
@@ -21321,25 +21831,25 @@ msgstr "(pas d'URL)"
 #. with the one in " Fetch URL: %s"
 #. translation.
 #.
-#: builtin/remote.c:1259 builtin/remote.c:1261
+#: builtin/remote.c:1284 builtin/remote.c:1286
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  URL push : %s"
 
-#: builtin/remote.c:1263 builtin/remote.c:1265 builtin/remote.c:1267
+#: builtin/remote.c:1288 builtin/remote.c:1290 builtin/remote.c:1292
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Branche HEAD : %s"
 
-#: builtin/remote.c:1263
+#: builtin/remote.c:1288
 msgid "(not queried)"
 msgstr "(non demandé)"
 
-#: builtin/remote.c:1265
+#: builtin/remote.c:1290
 msgid "(unknown)"
 msgstr "(inconnu)"
 
-#: builtin/remote.c:1269
+#: builtin/remote.c:1294
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
@@ -21347,166 +21857,166 @@ msgstr ""
 "  Branche HEAD (la HEAD distante est ambiguë, peut être l'une des "
 "suivantes) :\n"
 
-#: builtin/remote.c:1281
+#: builtin/remote.c:1306
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Branche distante :%s"
 msgstr[1] "  Branches distantes :%s"
 
-#: builtin/remote.c:1284 builtin/remote.c:1310
+#: builtin/remote.c:1309 builtin/remote.c:1335
 msgid " (status not queried)"
 msgstr " (état non demandé)"
 
-#: builtin/remote.c:1293
+#: builtin/remote.c:1318
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  Branche locale configurée pour 'git pull' :"
 msgstr[1] "  Branches locales configurées pour 'git pull' :"
 
-#: builtin/remote.c:1301
+#: builtin/remote.c:1326
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  Les références locales seront reflétées par 'git push'"
 
-#: builtin/remote.c:1307
+#: builtin/remote.c:1332
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  Référence locale configurée pour 'git push'%s :"
 msgstr[1] "  Références locales configurées pour 'git push'%s :"
 
-#: builtin/remote.c:1328
+#: builtin/remote.c:1353
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "définir refs/remotes/<nom>/HEAD selon la distante"
 
-#: builtin/remote.c:1330
+#: builtin/remote.c:1355
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "supprimer refs/remotes/<nom>/HEAD"
 
-#: builtin/remote.c:1344
+#: builtin/remote.c:1369
 msgid "Cannot determine remote HEAD"
 msgstr "Impossible de déterminer la HEAD distante"
 
-#: builtin/remote.c:1346
+#: builtin/remote.c:1371
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr ""
 "Il y a de multiples branches HEAD distantes. Veuillez en choisir une "
 "explicitement avec :"
 
-#: builtin/remote.c:1356
+#: builtin/remote.c:1381
 #, c-format
 msgid "Could not delete %s"
 msgstr "Impossible de supprimer %s"
 
-#: builtin/remote.c:1364
+#: builtin/remote.c:1389
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Référence non valide : %s"
 
-#: builtin/remote.c:1366
+#: builtin/remote.c:1391
 #, c-format
 msgid "Could not setup %s"
 msgstr "Impossible de paramétrer %s"
 
-#: builtin/remote.c:1384
+#: builtin/remote.c:1409
 #, c-format
 msgid " %s will become dangling!"
 msgstr " %s se retrouvera en suspens !"
 
-#: builtin/remote.c:1385
+#: builtin/remote.c:1410
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s se retrouve en suspens !"
 
-#: builtin/remote.c:1394
+#: builtin/remote.c:1419
 #, c-format
 msgid "Pruning %s"
 msgstr "Élimination de %s"
 
-#: builtin/remote.c:1395
+#: builtin/remote.c:1420
 #, c-format
 msgid "URL: %s"
 msgstr "URL : %s"
 
-#: builtin/remote.c:1411
+#: builtin/remote.c:1436
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [serait éliminé] %s"
 
-#: builtin/remote.c:1414
+#: builtin/remote.c:1439
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [éliminé] %s"
 
-#: builtin/remote.c:1459
+#: builtin/remote.c:1484
 msgid "prune remotes after fetching"
 msgstr "éliminer les distants après le rapatriement"
 
-#: builtin/remote.c:1523 builtin/remote.c:1579 builtin/remote.c:1649
+#: builtin/remote.c:1548 builtin/remote.c:1604 builtin/remote.c:1674
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Pas de serveur remote '%s'"
 
-#: builtin/remote.c:1541
+#: builtin/remote.c:1566
 msgid "add branch"
 msgstr "ajouter une branche"
 
-#: builtin/remote.c:1548
+#: builtin/remote.c:1573
 msgid "no remote specified"
 msgstr "pas de serveur distant spécifié"
 
-#: builtin/remote.c:1565
+#: builtin/remote.c:1590
 msgid "query push URLs rather than fetch URLs"
 msgstr "interroger les URLs de poussée plutôt que les URLs de récupération"
 
-#: builtin/remote.c:1567
+#: builtin/remote.c:1592
 msgid "return all URLs"
 msgstr "retourner toutes les URLs"
 
-#: builtin/remote.c:1597
+#: builtin/remote.c:1622
 #, c-format
 msgid "no URLs configured for remote '%s'"
 msgstr "aucune URL configurée pour le dépôt distant '%s'"
 
-#: builtin/remote.c:1623
+#: builtin/remote.c:1648
 msgid "manipulate push URLs"
 msgstr "manipuler les URLs push"
 
-#: builtin/remote.c:1625
+#: builtin/remote.c:1650
 msgid "add URL"
 msgstr "ajouter une URL"
 
-#: builtin/remote.c:1627
+#: builtin/remote.c:1652
 msgid "delete URLs"
 msgstr "supprimer des URLs"
 
-#: builtin/remote.c:1634
+#: builtin/remote.c:1659
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete n'a aucun sens"
 
-#: builtin/remote.c:1675
+#: builtin/remote.c:1700
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Motif d'URL ancien invalide : %s"
 
-#: builtin/remote.c:1683
+#: builtin/remote.c:1708
 #, c-format
 msgid "No such URL found: %s"
 msgstr "Pas d'URL trouvée : %s"
 
-#: builtin/remote.c:1685
+#: builtin/remote.c:1710
 msgid "Will not delete all non-push URLs"
 msgstr "Pas de suppression de toutes les URLs non-push"
 
-#: builtin/remote.c:1702
+#: builtin/remote.c:1727
 msgid "be verbose; must be placed before a subcommand"
 msgstr "être verbeux : doit être placé avant une sous-commande"
 
-#: builtin/repack.c:28
+#: builtin/repack.c:29
 msgid "git repack [<options>]"
 msgstr "git repack [<options>]"
 
-#: builtin/repack.c:33
+#: builtin/repack.c:34
 msgid ""
 "Incremental repacks are incompatible with bitmap indexes.  Use\n"
 "--no-write-bitmap-index or disable the pack.writebitmaps configuration."
@@ -21515,152 +22025,152 @@ msgstr ""
 "Utilisez\n"
 "--no-write-bitmap-index ou désactivez le paramètre pack.writebitmaps."
 
-#: builtin/repack.c:201
+#: builtin/repack.c:206
 msgid "could not start pack-objects to repack promisor objects"
 msgstr ""
 "ne pas démarrer pack-objects pour ré-empaqueter les objects de prometteur"
 
-#: builtin/repack.c:275 builtin/repack.c:820
+#: builtin/repack.c:280 builtin/repack.c:824
 msgid "repack: Expecting full hex object ID lines only from pack-objects."
 msgstr ""
 "repack : attente de lignes d'Id d'objets en hexa complet seulement depuis "
 "les objects de paquet."
 
-#: builtin/repack.c:299
+#: builtin/repack.c:304
 msgid "could not finish pack-objects to repack promisor objects"
 msgstr ""
 "impossible de terminer pack-objects  pour ré-empaqueter les objets de "
 "prometteur"
 
-#: builtin/repack.c:314
+#: builtin/repack.c:319
 #, c-format
 msgid "cannot open index for %s"
 msgstr "impossible d'ouvrir l'index pour %s"
 
-#: builtin/repack.c:373
+#: builtin/repack.c:378
 #, c-format
 msgid "pack %s too large to consider in geometric progression"
 msgstr ""
 "le paquet %s est trop gros pour être pris en compte dans un progression "
 "géométrique"
 
-#: builtin/repack.c:406 builtin/repack.c:413 builtin/repack.c:418
+#: builtin/repack.c:411 builtin/repack.c:418 builtin/repack.c:423
 #, c-format
 msgid "pack %s too large to roll up"
 msgstr "le paquet %s est trop gros à enrouler"
 
-#: builtin/repack.c:498
+#: builtin/repack.c:503
 #, c-format
 msgid "could not open tempfile %s for writing"
 msgstr "impossible d'ouvrir le fichier temporaire %s en écriture"
 
-#: builtin/repack.c:516
+#: builtin/repack.c:521
 msgid "could not close refs snapshot tempfile"
 msgstr "impossible de fermer le fichier temporaire d'instantané des réfs"
 
-#: builtin/repack.c:630
+#: builtin/repack.c:634
 msgid "pack everything in a single pack"
 msgstr "empaqueter tout dans un seul paquet"
 
-#: builtin/repack.c:632
+#: builtin/repack.c:636
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "identique à -a et transformer les objets inaccessibles en suspens"
 
-#: builtin/repack.c:635
+#: builtin/repack.c:639
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "supprimer les paquets redondants et lancer git-prune-packed"
 
-#: builtin/repack.c:637
+#: builtin/repack.c:641
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "passer --no-reuse-delta à git-pack-objects"
 
-#: builtin/repack.c:639
+#: builtin/repack.c:643
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "passer --no-reuse-object à git-pack-objects"
 
-#: builtin/repack.c:641
+#: builtin/repack.c:645
 msgid "do not run git-update-server-info"
 msgstr "ne pas lancer git-update-server-info"
 
-#: builtin/repack.c:644
+#: builtin/repack.c:648
 msgid "pass --local to git-pack-objects"
 msgstr "passer --local à git-pack-objects"
 
-#: builtin/repack.c:646
+#: builtin/repack.c:650
 msgid "write bitmap index"
 msgstr "écrire un index en bitmap"
 
-#: builtin/repack.c:648
+#: builtin/repack.c:652
 msgid "pass --delta-islands to git-pack-objects"
 msgstr "passer --delta-islands à git-pack-objects"
 
-#: builtin/repack.c:649
+#: builtin/repack.c:653
 msgid "approxidate"
 msgstr "date approximative"
 
-#: builtin/repack.c:650
+#: builtin/repack.c:654
 msgid "with -A, do not loosen objects older than this"
 msgstr "avec -A, ne pas suspendre les objets plus vieux que celui-ci"
 
-#: builtin/repack.c:652
+#: builtin/repack.c:656
 msgid "with -a, repack unreachable objects"
 msgstr "avec -a, repaquétiser les objets inaccessibles"
 
-#: builtin/repack.c:654
+#: builtin/repack.c:658
 msgid "size of the window used for delta compression"
 msgstr "taille de la fenêtre utilisée pour la compression des deltas"
 
-#: builtin/repack.c:655 builtin/repack.c:661
+#: builtin/repack.c:659 builtin/repack.c:665
 msgid "bytes"
 msgstr "octets"
 
-#: builtin/repack.c:656
+#: builtin/repack.c:660
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr ""
 "idem ci-dessus, mais limiter la taille mémoire au lieu du nombre d'éléments"
 
-#: builtin/repack.c:658
+#: builtin/repack.c:662
 msgid "limits the maximum delta depth"
 msgstr "limite la profondeur maximale des deltas"
 
-#: builtin/repack.c:660
+#: builtin/repack.c:664
 msgid "limits the maximum number of threads"
 msgstr "limite le nombre maximal de fils"
 
-#: builtin/repack.c:662
+#: builtin/repack.c:666
 msgid "maximum size of each packfile"
 msgstr "taille maximum de chaque fichier paquet"
 
-#: builtin/repack.c:664
+#: builtin/repack.c:668
 msgid "repack objects in packs marked with .keep"
 msgstr "réempaqueter les objets dans des paquets marqués avec .keep"
 
-#: builtin/repack.c:666
+#: builtin/repack.c:670
 msgid "do not repack this pack"
 msgstr "ne pas rempaqueter ce paquet"
 
-#: builtin/repack.c:668
+#: builtin/repack.c:672
 msgid "find a geometric progression with factor <N>"
 msgstr "trouver une progression géométrique avec un facteur <N>"
 
-#: builtin/repack.c:670
+#: builtin/repack.c:674
 msgid "write a multi-pack index of the resulting packs"
 msgstr "écrire un index de multi-paquet des paquets résultants"
 
-#: builtin/repack.c:680
+#: builtin/repack.c:684
 msgid "cannot delete packs in a precious-objects repo"
 msgstr "impossible de supprimer les paquets dans un dépôt d'objets précieux"
 
-#: builtin/repack.c:829
+#: builtin/repack.c:833
 msgid "Nothing new to pack."
 msgstr "Rien de neuf à empaqueter."
 
-#: builtin/repack.c:859
+#: builtin/repack.c:863
 #, c-format
 msgid "missing required file: %s"
 msgstr "fichier nécessaire manquant : %s"
 
-#: builtin/repack.c:861
+#: builtin/repack.c:865
 #, c-format
 msgid "could not unlink: %s"
 msgstr "impossible de délier : '%s'"
@@ -21677,10 +22187,6 @@ msgstr "git replace [-f] --edit <objet>"
 msgid "git replace [-f] --graft <commit> [<parent>...]"
 msgstr "git replace [-f] --graft <commit> [<parent>...]"
 
-#: builtin/replace.c:25
-msgid "git replace [-f] --convert-graft-file"
-msgstr "git replace [-f] --convert-graft-file"
-
 #: builtin/replace.c:26
 msgid "git replace -d <object>..."
 msgstr "git replace -d <objet>..."
@@ -21984,101 +22490,96 @@ msgstr "Impossible de trouver l'arbre pour %s."
 msgid "HEAD is now at %s"
 msgstr "HEAD est maintenant à %s"
 
-#: builtin/reset.c:299
+#: builtin/reset.c:304
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "Impossible de faire un \"reset %s\" au milieu d'une fusion."
 
-#: builtin/reset.c:396 builtin/stash.c:606 builtin/stash.c:680
-#: builtin/stash.c:704
+#: builtin/reset.c:402 builtin/stash.c:606 builtin/stash.c:669
+#: builtin/stash.c:693
 msgid "be quiet, only report errors"
 msgstr "être silencieux, afficher seulement les erreurs"
 
-#: builtin/reset.c:398
+#: builtin/reset.c:404
+msgid "skip refreshing the index after reset"
+msgstr "sauter le rafraîchissement de l'index après la réinitialisation"
+
+#: builtin/reset.c:406
 msgid "reset HEAD and index"
 msgstr "réinitialiser HEAD et l'index"
 
-#: builtin/reset.c:399
+#: builtin/reset.c:407
 msgid "reset only HEAD"
 msgstr "réinitialiser seulement HEAD"
 
-#: builtin/reset.c:401 builtin/reset.c:403
+#: builtin/reset.c:409 builtin/reset.c:411
 msgid "reset HEAD, index and working tree"
 msgstr "réinitialiser HEAD, l'index et la copie de travail"
 
-#: builtin/reset.c:405
+#: builtin/reset.c:413
 msgid "reset HEAD but keep local changes"
 msgstr "réinitialiser HEAD mais garder les changements locaux"
 
-#: builtin/reset.c:411
+#: builtin/reset.c:419
 msgid "record only the fact that removed paths will be added later"
 msgstr ""
 "enregistrer seulement le fait que les chemins effacés seront ajoutés plus "
 "tard"
 
-#: builtin/reset.c:445
+#: builtin/reset.c:452
 #, c-format
 msgid "Failed to resolve '%s' as a valid revision."
 msgstr "Échec de résolution de '%s' comme une révision valide."
 
-#: builtin/reset.c:453
+#: builtin/reset.c:460
 #, c-format
 msgid "Failed to resolve '%s' as a valid tree."
 msgstr "Échec de résolution de '%s' comme un arbre valide."
 
-#: builtin/reset.c:472
+#: builtin/reset.c:479
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr ""
 "--mixed avec des chemins est obsolète ; utilisez 'git reset -- <paths>' à la "
 "place."
 
-#: builtin/reset.c:474
+#: builtin/reset.c:481
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "Impossible de faire un \"%s reset\" avec des chemins."
 
-#: builtin/reset.c:489
+#: builtin/reset.c:496
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr "Le \"%s reset\" n'est pas permis dans un dépôt nu"
 
-#: builtin/reset.c:520
+#: builtin/reset.c:527
 msgid "Unstaged changes after reset:"
 msgstr "Modifications non indexées après reset :"
 
-#: builtin/reset.c:523
+#: builtin/reset.c:530
 #, c-format
 msgid ""
-"\n"
-"It took %.2f seconds to enumerate unstaged changes after reset.  You can\n"
-"use '--quiet' to avoid this.  Set the config setting reset.quiet to true\n"
-"to make this the default.\n"
+"It took %.2f seconds to refresh the index after reset.  You can use\n"
+"'--no-refresh' to avoid this."
 msgstr ""
-"\n"
-"Les modifications non-indexées ont pris %.2f secondes à énumérer après "
-"reset.\n"
-"Vous pouvez utiliser '--quiet' pour éviter ce message. Réglez le paramètre "
-"de\n"
-"config reset.quiet à true pour avoir ce comportement en permanence.\n"
+"%.2f secondes ont été nécessaires pour rafraîchir l'index après la "
+"réinitialisation.\n"
+"Vous pouvez utiliser '--no-refresh' pour éviter ceci."
 
-#: builtin/reset.c:541
+#: builtin/reset.c:547
 #, c-format
 msgid "Could not reset index file to revision '%s'."
 msgstr "Impossible de réinitialiser le fichier d'index à la révision '%s'."
 
-#: builtin/reset.c:546
+#: builtin/reset.c:552
 msgid "Could not write new index file."
 msgstr "Impossible d'écrire le nouveau fichier d'index."
 
-#: builtin/rev-list.c:602
-msgid "object filtering requires --objects"
-msgstr "le filtrage d'objet exige --objects"
-
-#: builtin/rev-list.c:674
+#: builtin/rev-list.c:659
 msgid "rev-list does not support display of notes"
 msgstr "rev-list ne supporte l'affichage des notes"
 
-#: builtin/rev-list.c:679
+#: builtin/rev-list.c:664
 #, c-format
 msgid "marked counting and '%s' cannot be used together"
 msgstr "le comptage marqué et '%s' ne peuvent pas être utilisés ensemble"
@@ -22431,11 +22932,11 @@ msgstr "champ"
 msgid "group by field"
 msgstr "grouper par champ"
 
-#: builtin/shortlog.c:394
+#: builtin/shortlog.c:395
 msgid "too many arguments given outside repository"
 msgstr "trop d'arguments fournis hors d'un dépôt"
 
-#: builtin/show-branch.c:13
+#: builtin/show-branch.c:14
 msgid ""
 "git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
 "                [--current] [--color[=<when>] | --no-color] [--sparse]\n"
@@ -22447,121 +22948,121 @@ msgstr ""
 "                [--more=<n> | --list | --independent | --merge-base]\n"
 "                [--no-name | --sha1-name] [--topics] [(<rév> | <glob>)...]"
 
-#: builtin/show-branch.c:17
+#: builtin/show-branch.c:18
 msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
 msgstr "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<référence>]"
 
-#: builtin/show-branch.c:395
+#: builtin/show-branch.c:396
 #, c-format
 msgid "ignoring %s; cannot handle more than %d ref"
 msgid_plural "ignoring %s; cannot handle more than %d refs"
 msgstr[0] "%s ignoré; impossible de gérer plus de %d référence"
 msgstr[1] "%s ignoré; impossible de gérer plus de %d références"
 
-#: builtin/show-branch.c:547
+#: builtin/show-branch.c:548
 #, c-format
 msgid "no matching refs with %s"
 msgstr "aucune référence correspond à %s"
 
-#: builtin/show-branch.c:644
+#: builtin/show-branch.c:645
 msgid "show remote-tracking and local branches"
 msgstr "afficher les branches de suivi distantes et les branches locales"
 
-#: builtin/show-branch.c:646
+#: builtin/show-branch.c:647
 msgid "show remote-tracking branches"
 msgstr "afficher les branches de suivi distantes"
 
-#: builtin/show-branch.c:648
+#: builtin/show-branch.c:649
 msgid "color '*!+-' corresponding to the branch"
 msgstr "couleur '*!+-' correspondant à la branche"
 
-#: builtin/show-branch.c:650
+#: builtin/show-branch.c:651
 msgid "show <n> more commits after the common ancestor"
 msgstr "afficher <n> validations de plus après l'ancêtre commun"
 
-#: builtin/show-branch.c:652
+#: builtin/show-branch.c:653
 msgid "synonym to more=-1"
 msgstr "synonyme de more=-1"
 
-#: builtin/show-branch.c:653
+#: builtin/show-branch.c:654
 msgid "suppress naming strings"
 msgstr "supprimer les chaînes de nommage"
 
-#: builtin/show-branch.c:655
+#: builtin/show-branch.c:656
 msgid "include the current branch"
 msgstr "inclure la branche courante"
 
-#: builtin/show-branch.c:657
+#: builtin/show-branch.c:658
 msgid "name commits with their object names"
 msgstr "nommer les validations avec leurs noms d'objet"
 
-#: builtin/show-branch.c:659
+#: builtin/show-branch.c:660
 msgid "show possible merge bases"
 msgstr "afficher les bases possibles de fusion"
 
-#: builtin/show-branch.c:661
+#: builtin/show-branch.c:662
 msgid "show refs unreachable from any other ref"
 msgstr "afficher les références inaccessibles depuis toute autre référence"
 
-#: builtin/show-branch.c:663
+#: builtin/show-branch.c:664
 msgid "show commits in topological order"
 msgstr "afficher les validations dans l'ordre topologique"
 
-#: builtin/show-branch.c:666
+#: builtin/show-branch.c:667
 msgid "show only commits not on the first branch"
 msgstr ""
 "afficher seulement les validations qui ne sont pas sur la première branche"
 
-#: builtin/show-branch.c:668
+#: builtin/show-branch.c:669
 msgid "show merges reachable from only one tip"
 msgstr "afficher les fusions accessibles depuis une seule pointe"
 
-#: builtin/show-branch.c:670
+#: builtin/show-branch.c:671
 msgid "topologically sort, maintaining date order where possible"
 msgstr "tri topologique, maintenant l'ordre par date si possible"
 
-#: builtin/show-branch.c:673
+#: builtin/show-branch.c:674
 msgid "<n>[,<base>]"
 msgstr "<n>[,<base>]"
 
-#: builtin/show-branch.c:674
+#: builtin/show-branch.c:675
 msgid "show <n> most recent ref-log entries starting at base"
 msgstr ""
 "afficher les <n> plus récents éléments de ref-log en commençant à la base"
 
-#: builtin/show-branch.c:734
+#: builtin/show-branch.c:735
 msgid "no branches given, and HEAD is not valid"
 msgstr "aucune branche spécifiée, et HEAD est invalide"
 
-#: builtin/show-branch.c:737
+#: builtin/show-branch.c:738
 msgid "--reflog option needs one branch name"
 msgstr "--reflog requiert un nom de branche"
 
-#: builtin/show-branch.c:740
+#: builtin/show-branch.c:741
 #, c-format
 msgid "only %d entry can be shown at one time."
 msgid_plural "only %d entries can be shown at one time."
 msgstr[0] "%d entrée seulement ne peut être montrée en même temps."
 msgstr[1] "%d entrées seulement ne peuvent être montrée en même temps."
 
-#: builtin/show-branch.c:744
+#: builtin/show-branch.c:745
 #, c-format
 msgid "no such ref %s"
 msgstr "référence inexistante %s"
 
-#: builtin/show-branch.c:830
+#: builtin/show-branch.c:831
 #, c-format
 msgid "cannot handle more than %d rev."
 msgid_plural "cannot handle more than %d revs."
 msgstr[0] "impossible de gérer plus de %d révision."
 msgstr[1] "impossible de gérer plus de %d révisions."
 
-#: builtin/show-branch.c:834
+#: builtin/show-branch.c:835
 #, c-format
 msgid "'%s' is not a valid ref."
 msgstr "'%s' n'est pas une référence valide."
 
-#: builtin/show-branch.c:837
+#: builtin/show-branch.c:838
 #, c-format
 msgid "cannot find commit %s (%s)"
 msgstr "impossible de trouver le commit %s (%s)"
@@ -22623,25 +23124,21 @@ msgstr ""
 "afficher les références de l'entrée standard qui ne sont pas dans le dépôt "
 "local"
 
-#: builtin/sparse-checkout.c:22
+#: builtin/sparse-checkout.c:23
 msgid "git sparse-checkout (init|list|set|add|reapply|disable) <options>"
 msgstr "git sparse-checkout (init|list|set|add|reapply|disable) <options>"
 
-#: builtin/sparse-checkout.c:46
-msgid "git sparse-checkout list"
-msgstr "git sparse-checkout list"
-
-#: builtin/sparse-checkout.c:60
+#: builtin/sparse-checkout.c:61
 msgid "this worktree is not sparse"
 msgstr "cet arbre de travail n'est pas clairsemé"
 
-#: builtin/sparse-checkout.c:75
+#: builtin/sparse-checkout.c:76
 msgid "this worktree is not sparse (sparse-checkout file may not exist)"
 msgstr ""
 "cet arbre de travail n'est pas clairsemé (le fichier sparse-checkout "
 "pourrait ne pas exister)"
 
-#: builtin/sparse-checkout.c:176
+#: builtin/sparse-checkout.c:177
 #, c-format
 msgid ""
 "directory '%s' contains untracked files, but is not in the sparse-checkout "
@@ -22650,102 +23147,137 @@ msgstr ""
 "le dossier '%s' contient des fichiers non-suivis, mais n'est pas dans le "
 "cone d'extraction clairsemée"
 
-#: builtin/sparse-checkout.c:184
+#: builtin/sparse-checkout.c:185
 #, c-format
 msgid "failed to remove directory '%s'"
 msgstr "échec de suppression du répertoire '%s'"
 
-#: builtin/sparse-checkout.c:324
+#: builtin/sparse-checkout.c:327
 msgid "failed to create directory for sparse-checkout file"
 msgstr ""
 "échec de la création du répertoire pour le fichier d'extraction clairsemée"
 
-#: builtin/sparse-checkout.c:365
-msgid "unable to upgrade repository format to enable worktreeConfig"
-msgstr ""
-"impossible de mettre à jour le format de dépôt pour activer worktreeConfig"
-
-#: builtin/sparse-checkout.c:367
-msgid "failed to set extensions.worktreeConfig setting"
-msgstr "échec de paramétrage extensions.worktreeConfig"
+#: builtin/sparse-checkout.c:366
+msgid "failed to initialize worktree config"
+msgstr "échec lors de l'initialisation de la configuration d'arbre de travail"
 
 #: builtin/sparse-checkout.c:411
 msgid "failed to modify sparse-index config"
 msgstr "impossible de modifier la configuration d'index clairsemé"
 
-#: builtin/sparse-checkout.c:422
-msgid "git sparse-checkout init [--cone] [--[no-]sparse-index]"
-msgstr "git sparse-checkout init [--cone] [--[no-]sparse-index]"
-
-#: builtin/sparse-checkout.c:441 builtin/sparse-checkout.c:729
-#: builtin/sparse-checkout.c:778
+#: builtin/sparse-checkout.c:441 builtin/sparse-checkout.c:793
+#: builtin/sparse-checkout.c:847
 msgid "initialize the sparse-checkout in cone mode"
 msgstr "initialiser l'extraction clairsemée en mode cone"
 
-#: builtin/sparse-checkout.c:443 builtin/sparse-checkout.c:731
-#: builtin/sparse-checkout.c:780
+#: builtin/sparse-checkout.c:443 builtin/sparse-checkout.c:795
+#: builtin/sparse-checkout.c:849
 msgid "toggle the use of a sparse index"
 msgstr "bascule l'utilisation d'index clairsemé"
 
-#: builtin/sparse-checkout.c:476
+#: builtin/sparse-checkout.c:479
 #, c-format
 msgid "failed to open '%s'"
 msgstr "échec à l'ouverture de '%s'"
 
-#: builtin/sparse-checkout.c:528
+#: builtin/sparse-checkout.c:531
 #, c-format
 msgid "could not normalize path %s"
 msgstr "impossible de normaliser le chemin '%s'"
 
-#: builtin/sparse-checkout.c:557
+#: builtin/sparse-checkout.c:560
 #, c-format
 msgid "unable to unquote C-style string '%s'"
 msgstr "impossible de décoter la chaîne en style C '%s'"
 
-#: builtin/sparse-checkout.c:612 builtin/sparse-checkout.c:640
+#: builtin/sparse-checkout.c:615 builtin/sparse-checkout.c:643
 msgid "unable to load existing sparse-checkout patterns"
 msgstr "impossible de charger les motifs de l'extraction clairsemée existants"
 
-#: builtin/sparse-checkout.c:616
+#: builtin/sparse-checkout.c:619
 msgid "existing sparse-checkout patterns do not use cone mode"
 msgstr ""
 "les motifs de l'extraction clairsemée existants n'utilisent pas le mode cone"
 
-#: builtin/sparse-checkout.c:682
-msgid "git sparse-checkout add (--stdin | <patterns>)"
-msgstr "git sparse-checkout add (--stdin | <motifs>)"
+#: builtin/sparse-checkout.c:707
+msgid "please run from the toplevel directory in non-cone mode"
+msgstr ""
+"veuillez lancer depuis le répertoire de niveau supérieur en mode non-cone"
 
-#: builtin/sparse-checkout.c:694 builtin/sparse-checkout.c:733
+#: builtin/sparse-checkout.c:712
+msgid "specify directories rather than patterns (no leading slash)"
+msgstr ""
+"spécifier les répertoires plutôt que les motifs (sans barre oblique au début)"
+
+#: builtin/sparse-checkout.c:714
+msgid ""
+"specify directories rather than patterns.  If your directory starts with a "
+"'!', pass --skip-checks"
+msgstr ""
+"spécifier les répertoires plutôt que les motifs. Si votre répertoire "
+"commence par un '!', passez --skip-checks"
+
+#: builtin/sparse-checkout.c:716
+msgid ""
+"specify directories rather than patterns.  If your directory really has any "
+"of '*?[]\\' in it, pass --skip-checks"
+msgstr ""
+"spécifier les répertoires plutôt que les motifs. Si votre répertoire "
+"contient au moins caractère '*?[]\\\\', passez --skip-checks"
+
+#: builtin/sparse-checkout.c:732
+#, c-format
+msgid ""
+"'%s' is not a directory; to treat it as a directory anyway, rerun with --"
+"skip-checks"
+msgstr ""
+"'%s' n'est pas un répertoire ; pour le traiter tout de même comme un "
+"répertoire, relancez avec --skip-checks"
+
+#: builtin/sparse-checkout.c:734
+#, c-format
+msgid ""
+"pass a leading slash before paths such as '%s' if you want a single file "
+"(see NON-CONE PROBLEMS in the git-sparse-checkout manual)."
+msgstr ""
+"passez une barre oblique en préfixe de chemins tels que '%s' si vous voulez "
+"un seul fichier (voir PROBLÈMES DE NON-CONE dans la page de manuel de git-"
+"sparse-checkout)."
+
+#: builtin/sparse-checkout.c:739
+msgid "git sparse-checkout add [--skip-checks] (--stdin | <patterns>)"
+msgstr "git sparse-checkout add [--skip-checks] (--stdin | <motifs>)"
+
+#: builtin/sparse-checkout.c:752 builtin/sparse-checkout.c:797
+msgid ""
+"skip some sanity checks on the given paths that might give false positives"
+msgstr ""
+"sauter certaines vérifications sanitaires sur les chemins indiqués qui "
+"pourraient provoquer ds faux positifs"
+
+#: builtin/sparse-checkout.c:755 builtin/sparse-checkout.c:800
 msgid "read patterns from standard in"
 msgstr "lire les motifs depuis l'entrée standard"
 
-#: builtin/sparse-checkout.c:699
+#: builtin/sparse-checkout.c:760
 msgid "no sparse-checkout to add to"
 msgstr "aucun sparse-checkout auquel on peut ajouter"
 
-#: builtin/sparse-checkout.c:712
+#: builtin/sparse-checkout.c:775
 msgid ""
-"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] (--stdin | "
-"<patterns>)"
+"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] [--skip-checks] "
+"(--stdin | <patterns>)"
 msgstr ""
-"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] (--stdin | "
-"<motifs>)"
-
-#: builtin/sparse-checkout.c:765
-msgid "git sparse-checkout reapply [--[no-]cone] [--[no-]sparse-index]"
-msgstr "git sparse-checkout reapply [--[no-]cone] [--[no-]sparse-index]"
+"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] [--skip-checks] "
+"(--stdin | <motifs>)"
 
-#: builtin/sparse-checkout.c:785
+#: builtin/sparse-checkout.c:854
 msgid "must be in a sparse-checkout to reapply sparsity patterns"
 msgstr ""
 "extraction clairsemée nécessaire pour pouvoir réappliquer les motifs de "
 "clairsemage"
 
-#: builtin/sparse-checkout.c:803
-msgid "git sparse-checkout disable"
-msgstr "git sparse-checkout disable"
-
-#: builtin/sparse-checkout.c:845
+#: builtin/sparse-checkout.c:914
 msgid "error while refreshing working directory"
 msgstr "erreur lors du rafraîchissement du répertoire de travail"
 
@@ -22888,170 +23420,154 @@ msgstr "L'index n'a pas été sorti de remise."
 msgid "could not restore untracked files from stash"
 msgstr "impossible de restaurer les fichiers non-suivis depuis le remisage"
 
-#: builtin/stash.c:608 builtin/stash.c:706
+#: builtin/stash.c:608 builtin/stash.c:695
 msgid "attempt to recreate the index"
 msgstr "tentative de recréer l'index"
 
-#: builtin/stash.c:652
+#: builtin/stash.c:641
 #, c-format
 msgid "Dropped %s (%s)"
 msgstr "%s supprimé (%s)"
 
-#: builtin/stash.c:655
+#: builtin/stash.c:644
 #, c-format
 msgid "%s: Could not drop stash entry"
 msgstr "%s : Impossible de supprimer l'élément de stash"
 
-#: builtin/stash.c:668
+#: builtin/stash.c:657
 #, c-format
 msgid "'%s' is not a stash reference"
 msgstr "'%s' n'est pas une référence de remisage"
 
-#: builtin/stash.c:718
+#: builtin/stash.c:707
 msgid "The stash entry is kept in case you need it again."
 msgstr ""
 "L'entrée de remisage est conservée au cas où vous en auriez encore besoin."
 
-#: builtin/stash.c:741
+#: builtin/stash.c:730
 msgid "No branch name specified"
 msgstr "Aucune branche spécifiée"
 
-#: builtin/stash.c:825
+#: builtin/stash.c:809
 msgid "failed to parse tree"
 msgstr "échec de l'analyse de l'arbre"
 
-#: builtin/stash.c:836
+#: builtin/stash.c:820
 msgid "failed to unpack trees"
 msgstr "échec du dépaquetage des arbres"
 
-#: builtin/stash.c:856
+#: builtin/stash.c:840
 msgid "include untracked files in the stash"
 msgstr "inclure les fichiers non suivis dans le remisage"
 
-#: builtin/stash.c:859
+#: builtin/stash.c:843
 msgid "only show untracked files in the stash"
 msgstr "ne montrer que les fichiers non suivis dans le remisage"
 
-#: builtin/stash.c:946 builtin/stash.c:983
+#: builtin/stash.c:930 builtin/stash.c:967
 #, c-format
 msgid "Cannot update %s with %s"
 msgstr "Impossible de mettre à jour %s avec %s"
 
-#: builtin/stash.c:964 builtin/stash.c:1678 builtin/stash.c:1750
+#: builtin/stash.c:948 builtin/stash.c:1667 builtin/stash.c:1739
 msgid "stash message"
 msgstr "message pour le remisage"
 
-#: builtin/stash.c:974
+#: builtin/stash.c:958
 msgid "\"git stash store\" requires one <commit> argument"
 msgstr "\"git stash store\" exige un argument <commit>"
 
-#: builtin/stash.c:1159
+#: builtin/stash.c:1143
 msgid "No staged changes"
 msgstr "Aucune modification indexée"
 
-#: builtin/stash.c:1220
+#: builtin/stash.c:1204
 msgid "No changes selected"
 msgstr "Aucun changement sélectionné"
 
-#: builtin/stash.c:1320
+#: builtin/stash.c:1304
 msgid "You do not have the initial commit yet"
 msgstr "Vous n'avez pas encore la validation initiale"
 
-#: builtin/stash.c:1347
+#: builtin/stash.c:1331
 msgid "Cannot save the current index state"
 msgstr "Impossible de sauver l'état courant de l'index"
 
-#: builtin/stash.c:1356
+#: builtin/stash.c:1340
 msgid "Cannot save the untracked files"
 msgstr "Impossible de sauver les fichiers non-suivis"
 
-#: builtin/stash.c:1367 builtin/stash.c:1386
+#: builtin/stash.c:1351 builtin/stash.c:1370
 msgid "Cannot save the current worktree state"
 msgstr "Impossible de sauver l'état courant de la copie de travail"
 
-#: builtin/stash.c:1377
+#: builtin/stash.c:1361
 msgid "Cannot save the current staged state"
 msgstr "Impossible de sauver l'état actuel de l'index"
 
-#: builtin/stash.c:1414
+#: builtin/stash.c:1398
 msgid "Cannot record working tree state"
 msgstr "Impossible d'enregistrer l'état de la copie de travail"
 
-#: builtin/stash.c:1463
+#: builtin/stash.c:1447
 msgid "Can't use --patch and --include-untracked or --all at the same time"
 msgstr ""
 "Impossible d'utiliser --patch et --include-untracked ou --all en même temps"
 
-#: builtin/stash.c:1474
+#: builtin/stash.c:1458
 msgid "Can't use --staged and --include-untracked or --all at the same time"
 msgstr ""
 "Impossible d'utiliser --staged et --include-untracked ou --all en même temps"
 
-#: builtin/stash.c:1492
+#: builtin/stash.c:1476
 msgid "Did you forget to 'git add'?"
 msgstr "Vous avez sûrement oublié 'git add' ?"
 
-#: builtin/stash.c:1507
+#: builtin/stash.c:1491
 msgid "No local changes to save"
 msgstr "Pas de modifications locales à sauver"
 
-#: builtin/stash.c:1514
+#: builtin/stash.c:1498
 msgid "Cannot initialize stash"
 msgstr "Impossible d'initialiser le remisage"
 
-#: builtin/stash.c:1529
+#: builtin/stash.c:1513
 msgid "Cannot save the current status"
 msgstr "Impossible de sauver l'état courant"
 
-#: builtin/stash.c:1534
+#: builtin/stash.c:1518
 #, c-format
 msgid "Saved working directory and index state %s"
 msgstr "Arbre de travail et état de l'index sauvegardés dans %s"
 
-#: builtin/stash.c:1627
+#: builtin/stash.c:1615
 msgid "Cannot remove worktree changes"
 msgstr "Impossible de supprimer les changements de la copie de travail"
 
-#: builtin/stash.c:1667 builtin/stash.c:1739
+#: builtin/stash.c:1656 builtin/stash.c:1728
 msgid "keep index"
 msgstr "conserver l'index"
 
-#: builtin/stash.c:1669 builtin/stash.c:1741
+#: builtin/stash.c:1658 builtin/stash.c:1730
 msgid "stash staged changes only"
 msgstr "remiser seulement les modifications indexées"
 
-#: builtin/stash.c:1671 builtin/stash.c:1743
+#: builtin/stash.c:1660 builtin/stash.c:1732
 msgid "stash in patch mode"
 msgstr "remiser une mode rustine"
 
-#: builtin/stash.c:1672 builtin/stash.c:1744
+#: builtin/stash.c:1661 builtin/stash.c:1733
 msgid "quiet mode"
 msgstr "mode silencieux"
 
-#: builtin/stash.c:1674 builtin/stash.c:1746
+#: builtin/stash.c:1663 builtin/stash.c:1735
 msgid "include untracked files in stash"
 msgstr "inclure les fichiers non suivis dans la remise"
 
-#: builtin/stash.c:1676 builtin/stash.c:1748
+#: builtin/stash.c:1665 builtin/stash.c:1737
 msgid "include ignore files"
 msgstr "inclure les fichiers ignorés"
 
-#: builtin/stash.c:1783
-msgid ""
-"the stash.useBuiltin support has been removed!\n"
-"See its entry in 'git help config' for details."
-msgstr ""
-"la prise en charge de stash.useBuiltin a été supprimée !\n"
-"Voir son entrée dans 'git help config' pour plus de détails."
-
-#: builtin/stripspace.c:18
-msgid "git stripspace [-s | --strip-comments]"
-msgstr "git stripspace [-s | --strip-comments]"
-
-#: builtin/stripspace.c:19
-msgid "git stripspace [-c | --comment-lines]"
-msgstr "git stripspace [-c | --comment-lines]"
-
 #: builtin/stripspace.c:37
 msgid "skip and remove all lines starting with comment character"
 msgstr ""
@@ -23062,21 +23578,17 @@ msgstr ""
 msgid "prepend comment character and space to each line"
 msgstr "ajouter devant chaque ligne le caractère de commentaire et un espace"
 
-#: builtin/submodule--helper.c:46 builtin/submodule--helper.c:2668
+#: builtin/submodule--helper.c:50 builtin/submodule--helper.c:2486
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr "Nom de référence complet attendu, %s obtenu"
 
-#: builtin/submodule--helper.c:63
-msgid "submodule--helper print-default-remote takes no arguments"
-msgstr "submodule--helper  print-default-remote n'accepte aucun argument"
-
-#: builtin/submodule--helper.c:101
+#: builtin/submodule--helper.c:103
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr "impossible de supprimer un composant de l'URL '%s'"
 
-#: builtin/submodule--helper.c:211
+#: builtin/submodule--helper.c:213
 #, c-format
 msgid ""
 "could not look up configuration '%s'. Assuming this repository is its own "
@@ -23085,26 +23597,26 @@ msgstr ""
 "impossible de trouver la configuration '%s'. Ce dépôt est considéré comme "
 "son propre amont d'autorité."
 
-#: builtin/submodule--helper.c:405 builtin/submodule--helper.c:1859
+#: builtin/submodule--helper.c:413 builtin/submodule--helper.c:1873
 msgid "alternative anchor for relative paths"
 msgstr "ancre alternative pour les chemins relatifs"
 
-#: builtin/submodule--helper.c:410
+#: builtin/submodule--helper.c:418
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper list [--prefix=<chemin>] [<chemin>...]"
 
-#: builtin/submodule--helper.c:468 builtin/submodule--helper.c:605
-#: builtin/submodule--helper.c:628
+#: builtin/submodule--helper.c:476 builtin/submodule--helper.c:617
+#: builtin/submodule--helper.c:640
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
 msgstr "URL non trouvée pour le chemin de sous-module '%s' dans .gitmodules"
 
-#: builtin/submodule--helper.c:520
+#: builtin/submodule--helper.c:528
 #, c-format
 msgid "Entering '%s'\n"
 msgstr "Entrée dans '%s'\n"
 
-#: builtin/submodule--helper.c:523
+#: builtin/submodule--helper.c:531
 #, c-format
 msgid ""
 "run_command returned non-zero status for %s\n"
@@ -23113,7 +23625,7 @@ msgstr ""
 "run_command a retourné un statut non-nul pour %s\n"
 "."
 
-#: builtin/submodule--helper.c:545
+#: builtin/submodule--helper.c:553
 #, c-format
 msgid ""
 "run_command returned non-zero status while recursing in the nested "
@@ -23124,74 +23636,74 @@ msgstr ""
 "modules inclus de %s\n"
 "."
 
-#: builtin/submodule--helper.c:561
+#: builtin/submodule--helper.c:569
 msgid "suppress output of entering each submodule command"
 msgstr ""
 "supprimer la sortie lors de l'entrée dans chaque commande de sous-module"
 
-#: builtin/submodule--helper.c:563 builtin/submodule--helper.c:864
-#: builtin/submodule--helper.c:1453
+#: builtin/submodule--helper.c:571 builtin/submodule--helper.c:876
+#: builtin/submodule--helper.c:1458
 msgid "recurse into nested submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:568
+#: builtin/submodule--helper.c:576
 msgid "git submodule--helper foreach [--quiet] [--recursive] [--] <command>"
 msgstr "git submodule--helper foreach [--quiet] [--recursive] [--] <commande>"
 
-#: builtin/submodule--helper.c:642
+#: builtin/submodule--helper.c:654
 #, c-format
 msgid "Failed to register url for submodule path '%s'"
 msgstr "Échec d'enregistrement de l'URL pour le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:646
+#: builtin/submodule--helper.c:658
 #, c-format
 msgid "Submodule '%s' (%s) registered for path '%s'\n"
 msgstr "Sous-module '%s' (%s) enregistré pour le chemin '%s'\n"
 
-#: builtin/submodule--helper.c:656
+#: builtin/submodule--helper.c:668
 #, c-format
 msgid "warning: command update mode suggested for submodule '%s'\n"
 msgstr ""
 "attention : nous vous suggérons de spécifier une commande de mode de mise à "
 "jour pour le sous-module '%s'\n"
 
-#: builtin/submodule--helper.c:663
+#: builtin/submodule--helper.c:675
 #, c-format
 msgid "Failed to register update mode for submodule path '%s'"
 msgstr ""
 "Échec d'enregistrement du mode de mise à jour pour le chemin de sous-module "
 "'%s'"
 
-#: builtin/submodule--helper.c:685
+#: builtin/submodule--helper.c:697
 msgid "suppress output for initializing a submodule"
 msgstr "supprimer la sortie lors de l'initialisation d'un sous-module"
 
-#: builtin/submodule--helper.c:690
+#: builtin/submodule--helper.c:702
 msgid "git submodule--helper init [<options>] [<path>]"
 msgstr "git submodule--helper init [<options>] [<chemin>]"
 
-#: builtin/submodule--helper.c:763 builtin/submodule--helper.c:898
+#: builtin/submodule--helper.c:775 builtin/submodule--helper.c:910
 #, c-format
 msgid "no submodule mapping found in .gitmodules for path '%s'"
 msgstr ""
 "pas de mise en correspondance du sous-module trouvé dans .gitmodules pour le "
 "chemin '%s'"
 
-#: builtin/submodule--helper.c:811
+#: builtin/submodule--helper.c:823
 #, c-format
 msgid "could not resolve HEAD ref inside the submodule '%s'"
 msgstr "impossible de résoudre HEAD dans le sous-module '%s'"
 
-#: builtin/submodule--helper.c:838 builtin/submodule--helper.c:1423
+#: builtin/submodule--helper.c:850 builtin/submodule--helper.c:1428
 #, c-format
 msgid "failed to recurse into submodule '%s'"
 msgstr "récursion impossible dans le sous-module '%s'"
 
-#: builtin/submodule--helper.c:862 builtin/submodule--helper.c:1590
+#: builtin/submodule--helper.c:874 builtin/submodule--helper.c:1595
 msgid "suppress submodule status output"
 msgstr "supprimer la sortie d'état du sous-module"
 
-#: builtin/submodule--helper.c:863
+#: builtin/submodule--helper.c:875
 msgid ""
 "use commit stored in the index instead of the one stored in the submodule "
 "HEAD"
@@ -23199,94 +23711,94 @@ msgstr ""
 "utiliser le commit stocké dans l'index au lieu de celui stocké dans la HEAD "
 "du sous-module"
 
-#: builtin/submodule--helper.c:869
+#: builtin/submodule--helper.c:881
 msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
 msgstr "git submodule status [--quiet] [--cached] [--recursive] [<chemin>...]"
 
-#: builtin/submodule--helper.c:893
+#: builtin/submodule--helper.c:905
 msgid "git submodule--helper name <path>"
 msgstr "git submodule--helper <nom> <chemin>"
 
-#: builtin/submodule--helper.c:965
+#: builtin/submodule--helper.c:977
 #, c-format
 msgid "* %s %s(blob)->%s(submodule)"
 msgstr "* %s %s(blob)->%s(submodule)"
 
-#: builtin/submodule--helper.c:968
+#: builtin/submodule--helper.c:980
 #, c-format
 msgid "* %s %s(submodule)->%s(blob)"
 msgstr "* %s %s(submodule)->%s(blob)"
 
-#: builtin/submodule--helper.c:981
+#: builtin/submodule--helper.c:993
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: builtin/submodule--helper.c:1031
+#: builtin/submodule--helper.c:1043
 #, c-format
 msgid "couldn't hash object from '%s'"
 msgstr "impossible de calculer l'empreinte de l'objet depuis '%s'"
 
-#: builtin/submodule--helper.c:1035
+#: builtin/submodule--helper.c:1047
 #, c-format
 msgid "unexpected mode %o\n"
 msgstr "mode %o inattendu\n"
 
-#: builtin/submodule--helper.c:1276
+#: builtin/submodule--helper.c:1288
 msgid "use the commit stored in the index instead of the submodule HEAD"
 msgstr ""
 "utiliser le commit stocké dans l'index au lieu de la HEAD du sous-module"
 
-#: builtin/submodule--helper.c:1278
+#: builtin/submodule--helper.c:1290
 msgid "compare the commit in the index with that in the submodule HEAD"
 msgstr "comparer le commit dans l'index avec celui dans la HEAD du sous-module"
 
-#: builtin/submodule--helper.c:1280
+#: builtin/submodule--helper.c:1292
 msgid "skip submodules with 'ignore_config' value set to 'all'"
 msgstr "sauter les sous-modules avec la valeur 'ignore_config' à 'all'"
 
-#: builtin/submodule--helper.c:1282
+#: builtin/submodule--helper.c:1294
 msgid "limit the summary size"
 msgstr "limiter la taille du résumé"
 
-#: builtin/submodule--helper.c:1287
+#: builtin/submodule--helper.c:1299
 msgid "git submodule--helper summary [<options>] [<commit>] [--] [<path>]"
 msgstr "git submodule--helper summary [<options>] [<commit>] [--] [<chemin>]"
 
-#: builtin/submodule--helper.c:1311
+#: builtin/submodule--helper.c:1323
 msgid "could not fetch a revision for HEAD"
 msgstr "impossible de récupérer une révision pour HEAD"
 
-#: builtin/submodule--helper.c:1373
+#: builtin/submodule--helper.c:1384
 #, c-format
 msgid "Synchronizing submodule url for '%s'\n"
 msgstr "Synchronisation de l'URL sous-module pour '%s'\n"
 
-#: builtin/submodule--helper.c:1379
+#: builtin/submodule--helper.c:1390
 #, c-format
 msgid "failed to register url for submodule path '%s'"
 msgstr "échec d'enregistrement de l'URL pour le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:1393
+#: builtin/submodule--helper.c:1399
 #, c-format
 msgid "failed to get the default remote for submodule '%s'"
 msgstr "échec d'obtention du dépôt distant par défaut pour le sous-module '%s'"
 
-#: builtin/submodule--helper.c:1404
+#: builtin/submodule--helper.c:1409
 #, c-format
 msgid "failed to update remote for submodule '%s'"
 msgstr "échec de mise à jour du dépôt distant pour le sous-module '%s'"
 
-#: builtin/submodule--helper.c:1451
+#: builtin/submodule--helper.c:1456
 msgid "suppress output of synchronizing submodule url"
 msgstr ""
 "supprimer la sortie lors de la synchronisation de l'URL d'un sous-module"
 
-#: builtin/submodule--helper.c:1458
+#: builtin/submodule--helper.c:1463
 msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
 msgstr "git submodule--helper sync [--quiet] [--recursive] [<chemin>]"
 
-#: builtin/submodule--helper.c:1508
+#: builtin/submodule--helper.c:1513
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains a .git directory. This will be replaced "
@@ -23295,7 +23807,7 @@ msgstr ""
 "L'arbre de travail du sous-module '%s' contient un répertoire .git. Il sera "
 "remplacé par un fichier .git en utilisant absorbgitdirs."
 
-#: builtin/submodule--helper.c:1525
+#: builtin/submodule--helper.c:1530
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains local modifications; use '-f' to discard "
@@ -23304,48 +23816,48 @@ msgstr ""
 "L'arbre de travail du sous-module '%s' contient des modifications locales ; "
 "utilisez '-f' pour les annuler"
 
-#: builtin/submodule--helper.c:1533
+#: builtin/submodule--helper.c:1538
 #, c-format
 msgid "Cleared directory '%s'\n"
 msgstr "Répertoire '%s' nettoyé\n"
 
-#: builtin/submodule--helper.c:1535
+#: builtin/submodule--helper.c:1540
 #, c-format
 msgid "Could not remove submodule work tree '%s'\n"
 msgstr "Impossible de supprimer l'arbre de travail du sous-module '%s'\n"
 
-#: builtin/submodule--helper.c:1546
+#: builtin/submodule--helper.c:1551
 #, c-format
 msgid "could not create empty submodule directory %s"
 msgstr "impossible de créer le répertoire vide du sous-module %s"
 
-#: builtin/submodule--helper.c:1562
+#: builtin/submodule--helper.c:1567
 #, c-format
 msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
 msgstr "Sous-module '%s' (%s) non enregistré pour le chemin '%s'\n"
 
-#: builtin/submodule--helper.c:1591
+#: builtin/submodule--helper.c:1596
 msgid "remove submodule working trees even if they contain local changes"
 msgstr ""
 "éliminer les arbres de travail des sous-modules même s'ils contiennent des "
 "modifications locales"
 
-#: builtin/submodule--helper.c:1592
+#: builtin/submodule--helper.c:1597
 msgid "unregister all submodules"
 msgstr "désenregistrer tous les sous-modules"
 
-#: builtin/submodule--helper.c:1597
+#: builtin/submodule--helper.c:1602
 msgid ""
 "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
 msgstr ""
 "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<chemin>...]]"
 
-#: builtin/submodule--helper.c:1611
+#: builtin/submodule--helper.c:1616
 msgid "Use '--all' if you really want to deinitialize all submodules"
 msgstr ""
 "Utilisez '--all' si vous voulez vraiment réinitialiser tous les sous-modules"
 
-#: builtin/submodule--helper.c:1656
+#: builtin/submodule--helper.c:1665
 msgid ""
 "An alternate computed from a superproject's alternate is invalid.\n"
 "To allow Git to clone without an alternate in such a case, set\n"
@@ -23357,104 +23869,101 @@ msgstr ""
 "submodule.alternateErrorStrategy à 'info', ou de manière équivalente,\n"
 "clonez avec '--reference-if-able' au lieu de '--reference'."
 
-#: builtin/submodule--helper.c:1701 builtin/submodule--helper.c:1704
+#: builtin/submodule--helper.c:1710 builtin/submodule--helper.c:1713
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
 msgstr "le sous-module '%s' ne peut pas ajouter d'alternative : %s"
 
-#: builtin/submodule--helper.c:1740
+#: builtin/submodule--helper.c:1749
 #, c-format
 msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
 msgstr ""
 "La valeur '%s' pour submodule.alternateErrorStrategy n'est pas reconnue"
 
-#: builtin/submodule--helper.c:1747
+#: builtin/submodule--helper.c:1756
 #, c-format
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
 msgstr "La valeur '%s' pour submodule.alternateLocation n'est pas reconnue"
 
-#: builtin/submodule--helper.c:1772
+#: builtin/submodule--helper.c:1781
 #, c-format
 msgid "refusing to create/use '%s' in another submodule's git dir"
 msgstr ""
 "refus de créer/utiliser '%s' dans un répertoire git d'un autre sous-module"
 
-#: builtin/submodule--helper.c:1813
+#: builtin/submodule--helper.c:1826
 #, c-format
 msgid "clone of '%s' into submodule path '%s' failed"
 msgstr "le clonage de '%s' dans le chemin de sous-module '%s' a échoué"
 
-#: builtin/submodule--helper.c:1818
+#: builtin/submodule--helper.c:1831
 #, c-format
 msgid "directory not empty: '%s'"
 msgstr "le répertoire n'est pas vide : '%s'"
 
-#: builtin/submodule--helper.c:1830
+#: builtin/submodule--helper.c:1843
 #, c-format
 msgid "could not get submodule directory for '%s'"
 msgstr "impossible de créer le répertoire de sous-module pour '%s'"
 
-#: builtin/submodule--helper.c:1862
+#: builtin/submodule--helper.c:1876
 msgid "where the new submodule will be cloned to"
 msgstr "emplacement où le sous-module sera cloné"
 
-#: builtin/submodule--helper.c:1865
+#: builtin/submodule--helper.c:1879
 msgid "name of the new submodule"
 msgstr "nom du nouveau sous-module"
 
-#: builtin/submodule--helper.c:1868
+#: builtin/submodule--helper.c:1882
 msgid "url where to clone the submodule from"
 msgstr "url depuis laquelle cloner le sous-module"
 
-#: builtin/submodule--helper.c:1876 builtin/submodule--helper.c:3265
+#: builtin/submodule--helper.c:1890 builtin/submodule--helper.c:3383
 msgid "depth for shallow clones"
 msgstr "profondeur de l'historique des clones superficiels"
 
-#: builtin/submodule--helper.c:1879 builtin/submodule--helper.c:2526
-#: builtin/submodule--helper.c:3258
+#: builtin/submodule--helper.c:1893 builtin/submodule--helper.c:2731
+#: builtin/submodule--helper.c:3376
 msgid "force cloning progress"
 msgstr "forcer l'affichage de la progression du clonage"
 
-#: builtin/submodule--helper.c:1881 builtin/submodule--helper.c:2528
+#: builtin/submodule--helper.c:1895 builtin/submodule--helper.c:2733
 msgid "disallow cloning into non-empty directory"
 msgstr "interdire de cloner dans un répertoire non-vide"
 
-#: builtin/submodule--helper.c:1888
+#: builtin/submodule--helper.c:1903
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
-"<repository>] [--name <name>] [--depth <depth>] [--single-branch] --url "
-"<url> --path <path>"
-msgstr ""
-"git submodule--helper clone [--prefix=<chemin>] [--quiet] [--reference "
-"<dépôt>] [--name <nom>] [--depth <profondeur>] [--single-branch] --url <url> "
-"--path <chemin>"
+"<repository>] [--name <name>] [--depth <depth>] [--single-branch] [--filter "
+"<filter-spec>] --url <url> --path <path>"
+msgstr "git submodule--helper clone [--prefix=<chemin>] [--quiet] [--reference <dépôt>] [--name <nom>] [--depth <profondeur>] [--single-branch] [--filter <spécificateur-de-filtre>]--url <url> --path <chemin>"
 
-#: builtin/submodule--helper.c:1925
+#: builtin/submodule--helper.c:1943
 #, c-format
 msgid "Invalid update mode '%s' for submodule path '%s'"
 msgstr "Mode de mise à jour '%s' invalide pour le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:1929
+#: builtin/submodule--helper.c:1947
 #, c-format
 msgid "Invalid update mode '%s' configured for submodule path '%s'"
 msgstr ""
 "Mode de mise à jour '%s'invalide configuré pour le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:2044
+#: builtin/submodule--helper.c:2041
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr "Le chemin de sous-module '%s' n'est pas initialisé"
 
-#: builtin/submodule--helper.c:2048
+#: builtin/submodule--helper.c:2045
 msgid "Maybe you want to use 'update --init'?"
 msgstr "Vous voudriez sûrement utiliser 'update --init' ?"
 
-#: builtin/submodule--helper.c:2078
+#: builtin/submodule--helper.c:2075
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr "Sous-module non fusionné %s non traité"
 
-#: builtin/submodule--helper.c:2107
+#: builtin/submodule--helper.c:2104
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr "Sous-module '%s' non traité"
@@ -23469,54 +23978,54 @@ msgstr "Impossible de cloner '%s'. Réessai prévu"
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr "Impossible de cloner '%s' pour la seconde fois, abandon"
 
-#: builtin/submodule--helper.c:2373
+#: builtin/submodule--helper.c:2371
 #, c-format
 msgid "Unable to checkout '%s' in submodule path '%s'"
 msgstr "Impossible d'extraire '%s' dans le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:2377
+#: builtin/submodule--helper.c:2375
 #, c-format
 msgid "Unable to rebase '%s' in submodule path '%s'"
 msgstr "Impossible de rebaser '%s' dans le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:2381
+#: builtin/submodule--helper.c:2379
 #, c-format
 msgid "Unable to merge '%s' in submodule path '%s'"
 msgstr "Impossible de fusionner '%s' dans le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:2385
+#: builtin/submodule--helper.c:2383
 #, c-format
 msgid "Execution of '%s %s' failed in submodule path '%s'"
 msgstr "L'exécution de '%s %s' a échoué dans le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:2409
+#: builtin/submodule--helper.c:2402
 #, c-format
 msgid "Submodule path '%s': checked out '%s'\n"
 msgstr "Chemin de sous-module '%s' : '%s' extrait\n"
 
-#: builtin/submodule--helper.c:2413
+#: builtin/submodule--helper.c:2406
 #, c-format
 msgid "Submodule path '%s': rebased into '%s'\n"
 msgstr "Chemin de sous-module '%s' : rebasé dans '%s'\n"
 
-#: builtin/submodule--helper.c:2417
+#: builtin/submodule--helper.c:2410
 #, c-format
 msgid "Submodule path '%s': merged in '%s'\n"
 msgstr "Chemin de sous-module '%s' : fusionné dans '%s'\n"
 
-#: builtin/submodule--helper.c:2421
+#: builtin/submodule--helper.c:2414
 #, c-format
 msgid "Submodule path '%s': '%s %s'\n"
 msgstr "Le chemin de sous-module '%s' : '%s %s'\n"
 
-#: builtin/submodule--helper.c:2445
+#: builtin/submodule--helper.c:2438
 #, c-format
 msgid "Unable to fetch in submodule path '%s'; trying to directly fetch %s:"
 msgstr ""
 "Impossible de rapatrier dans le chemin de sous-module '%s' ; essai de "
 "rapatriement direct de %s :"
 
-#: builtin/submodule--helper.c:2454
+#: builtin/submodule--helper.c:2447
 #, c-format
 msgid ""
 "Fetched in submodule path '%s', but it did not contain %s. Direct fetching "
@@ -23525,183 +24034,211 @@ msgstr ""
 "Chemin de sous-module '%s' récupéré, mais il ne contenait pas %s. La "
 "récupération directe de ce commit a échoué."
 
-#: builtin/submodule--helper.c:2505 builtin/submodule--helper.c:2575
-#: builtin/submodule--helper.c:2813
+#: builtin/submodule--helper.c:2481
+#, c-format
+msgid ""
+"Submodule (%s) branch configured to inherit branch from superproject, but "
+"the superproject is not on any branch"
+msgstr ""
+"La branche du sous-module %s est configurée pour hériter de la branche du "
+"superprojet, mais le superprojet n'est sur aucune branche"
+
+#: builtin/submodule--helper.c:2499
+#, c-format
+msgid "could not get a repository handle for submodule '%s'"
+msgstr "impossible de trouver une poignée de dépôt pour le sous-module '%s'"
+
+#: builtin/submodule--helper.c:2588
+#, c-format
+msgid "Unable to find current revision in submodule path '%s'"
+msgstr ""
+"Impossible de trouver la révision actuelle dans le chemin de sous-module '%s'"
+
+#: builtin/submodule--helper.c:2599
+#, c-format
+msgid "Unable to fetch in submodule path '%s'"
+msgstr "Impossible de rapatrier dans le chemin de sous-module '%s'"
+
+#: builtin/submodule--helper.c:2604
+#, c-format
+msgid "Unable to find %s revision in submodule path '%s'"
+msgstr ""
+"Impossible de trouver la révision %s dans le chemin de sous-module '%s'"
+
+#: builtin/submodule--helper.c:2640
+#, c-format
+msgid "Failed to recurse into submodule path '%s'"
+msgstr "Échec de la récursion dans le chemin de sous-module '%s'"
+
+#: builtin/submodule--helper.c:2699
+msgid "force checkout updates"
+msgstr "forcer les mises à jour d'extraction"
+
+#: builtin/submodule--helper.c:2701
+msgid "initialize uninitialized submodules before update"
+msgstr "initialiser les sous-modules non-initialisés avant la mise à jour"
+
+#: builtin/submodule--helper.c:2703
+msgid "use SHA-1 of submodule's remote tracking branch"
+msgstr "utiliser les SHA-1 de la branche de suivi distante du sous-module"
+
+#: builtin/submodule--helper.c:2705
+msgid "traverse submodules recursively"
+msgstr "traverser les sous-modules récursivement"
+
+#: builtin/submodule--helper.c:2707
+msgid "don't fetch new objects from the remote site"
+msgstr "ne pas récupérer les nouveaux objets depuis le site distant"
+
+#: builtin/submodule--helper.c:2710 builtin/submodule--helper.c:2892
 msgid "path into the working tree"
 msgstr "chemin dans la copie de travail"
 
-#: builtin/submodule--helper.c:2508 builtin/submodule--helper.c:2580
+#: builtin/submodule--helper.c:2713
 msgid "path into the working tree, across nested submodule boundaries"
 msgstr ""
 "chemin dans la copie de travail, traversant les frontières de sous-modules"
 
-#: builtin/submodule--helper.c:2512 builtin/submodule--helper.c:2578
+#: builtin/submodule--helper.c:2717
 msgid "rebase, merge, checkout or none"
 msgstr "valeurs possibles : rebase, merge, checkout ou none"
 
-#: builtin/submodule--helper.c:2518
+#: builtin/submodule--helper.c:2723
 msgid "create a shallow clone truncated to the specified number of revisions"
 msgstr "créer un clone superficiel tronqué au nombre de révisions spécifié"
 
-#: builtin/submodule--helper.c:2521
+#: builtin/submodule--helper.c:2726
 msgid "parallel jobs"
 msgstr "jobs parallèles"
 
-#: builtin/submodule--helper.c:2523
+#: builtin/submodule--helper.c:2728
 msgid "whether the initial clone should follow the shallow recommendation"
 msgstr "spécifie si le clonage initial doit être aussi superficiel"
 
-#: builtin/submodule--helper.c:2524
+#: builtin/submodule--helper.c:2729
 msgid "don't print cloning progress"
 msgstr "ne pas afficher la progression du clonage"
 
-#: builtin/submodule--helper.c:2535
-msgid "git submodule--helper update-clone [--prefix=<path>] [<path>...]"
-msgstr "git submodule--helper update-clone [--prefix=<chemin>] [<chemin>...]"
-
-#: builtin/submodule--helper.c:2548
-msgid "bad value for update parameter"
-msgstr "valeur invalide pour la mise à jour du paramètre"
-
-#: builtin/submodule--helper.c:2566
-msgid "suppress output for update by rebase or merge"
-msgstr ""
-"supprimer la sortie lors de la mise à jour par un rebasage ou une fusion"
-
-#: builtin/submodule--helper.c:2567
-msgid "force checkout updates"
-msgstr "forcer les mises à jour d'extraction"
-
-#: builtin/submodule--helper.c:2569
-msgid "don't fetch new objects from the remote site"
-msgstr "ne pas récupérer les nouveaux objets depuis le site distant"
-
-#: builtin/submodule--helper.c:2571
-msgid "overrides update mode in case the repository is a fresh clone"
-msgstr ""
-"passer outre le mode mise à jour dans le cas où le dépôt est un clone nouveau"
-
-#: builtin/submodule--helper.c:2572
-msgid "depth for shallow fetch"
-msgstr "profondeur pour une récupération superficielle"
-
-#: builtin/submodule--helper.c:2582
-msgid "sha1"
-msgstr "sha1"
-
-#: builtin/submodule--helper.c:2583
-msgid "SHA1 expected by superproject"
-msgstr "SHA1 attendu par le super-projet"
-
-#: builtin/submodule--helper.c:2585
-msgid "subsha1"
-msgstr "sous-sha1"
-
-#: builtin/submodule--helper.c:2586
-msgid "SHA1 of submodule's HEAD"
-msgstr "SHA1 de la HEAD du sous-module"
-
-#: builtin/submodule--helper.c:2592
-msgid "git submodule--helper run-update-procedure [<options>] <path>"
-msgstr "git submodule--helper run-update-procedure [<options>] <chemin>"
-
-#: builtin/submodule--helper.c:2663
-#, c-format
+#: builtin/submodule--helper.c:2741
 msgid ""
-"Submodule (%s) branch configured to inherit branch from superproject, but "
-"the superproject is not on any branch"
+"git submodule [--quiet] update [--init [--filter=<filter-spec>]] [--remote] "
+"[-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--[no-]recommend-"
+"shallow] [--reference <repository>] [--recursive] [--[no-]single-branch] "
+"[--] [<path>...]"
 msgstr ""
-"La branche du sous-module %s est configurée pour hériter de la branche du "
-"superprojet, mais le superprojet n'est sur aucune branche"
+"git submodule [--quiet] update [--init [--filter=<spécificateur-de-filtre>]] "
+"[--remote] [-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--"
+"[no-]recommend-shallow] [--reference <dépôt>] [--recursive] [--[no-]single-"
+"branch] [--] [<chemin>...]"
 
-#: builtin/submodule--helper.c:2781
-#, c-format
-msgid "could not get a repository handle for submodule '%s'"
-msgstr "impossible de trouver une poignée de dépôt pour le sous-module '%s'"
+#: builtin/submodule--helper.c:2767
+msgid "bad value for update parameter"
+msgstr "valeur invalide pour la mise à jour du paramètre"
 
-#: builtin/submodule--helper.c:2814
+#: builtin/submodule--helper.c:2893
 msgid "recurse into submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:2820
+#: builtin/submodule--helper.c:2899
 msgid "git submodule--helper absorb-git-dirs [<options>] [<path>...]"
 msgstr "git submodule--helper absorb-git-dirs [<options>] [<chemin>...]"
 
-#: builtin/submodule--helper.c:2876
+#: builtin/submodule--helper.c:2955
 msgid "check if it is safe to write to the .gitmodules file"
 msgstr "vérifier si écrire dans le fichier .gitmodules est sur"
 
-#: builtin/submodule--helper.c:2879
+#: builtin/submodule--helper.c:2958
 msgid "unset the config in the .gitmodules file"
 msgstr "désactiver la configuration dans le fichier .gitmodules"
 
-#: builtin/submodule--helper.c:2884
+#: builtin/submodule--helper.c:2963
 msgid "git submodule--helper config <name> [<value>]"
 msgstr "git submodule--helper config name [<valeur>]"
 
-#: builtin/submodule--helper.c:2885
+#: builtin/submodule--helper.c:2964
 msgid "git submodule--helper config --unset <name>"
 msgstr "git submodule--helper config --unset <nom>"
 
-#: builtin/submodule--helper.c:2886
-msgid "git submodule--helper config --check-writeable"
-msgstr "git submodule--helper config --check-writeable"
-
-#: builtin/submodule--helper.c:2905 builtin/submodule--helper.c:3121
-#: builtin/submodule--helper.c:3277
+#: builtin/submodule--helper.c:2984 builtin/submodule--helper.c:3238
+#: builtin/submodule--helper.c:3395
 msgid "please make sure that the .gitmodules file is in the working tree"
 msgstr ""
 "veuillez vous assurer que le fichier .gitmodules est dans l'arbre de travail"
 
-#: builtin/submodule--helper.c:2921
+#: builtin/submodule--helper.c:3000
 msgid "suppress output for setting url of a submodule"
 msgstr "supprimer la sortie lors du paramétrage de l'url d'un sous-module"
 
-#: builtin/submodule--helper.c:2925
+#: builtin/submodule--helper.c:3004
 msgid "git submodule--helper set-url [--quiet] <path> <newurl>"
 msgstr "git submodule--helper sync [--quiet] <chemin> <nouvelle-url>"
 
-#: builtin/submodule--helper.c:2958
+#: builtin/submodule--helper.c:3037
 msgid "set the default tracking branch to master"
 msgstr "régler la branche de suivi par défaut à master"
 
-#: builtin/submodule--helper.c:2960
+#: builtin/submodule--helper.c:3039
 msgid "set the default tracking branch"
 msgstr "régler la branche de suivi par défaut"
 
-#: builtin/submodule--helper.c:2964
+#: builtin/submodule--helper.c:3043
 msgid "git submodule--helper set-branch [-q|--quiet] (-d|--default) <path>"
 msgstr "git submodule--helper set-branch [-q|--quiet] (-d|--default) <chemin>"
 
-#: builtin/submodule--helper.c:2965
+#: builtin/submodule--helper.c:3044
 msgid ""
 "git submodule--helper set-branch [-q|--quiet] (-b|--branch) <branch> <path>"
 msgstr ""
 "git submodule--helper set-branch [-q|--quiet] (-b|--branch) <branche> "
 "<chemin>"
 
-#: builtin/submodule--helper.c:2972
+#: builtin/submodule--helper.c:3051
 msgid "--branch or --default required"
 msgstr "--branch ou --default requis"
 
-#: builtin/submodule--helper.c:3038
+#: builtin/submodule--helper.c:3072 builtin/submodule--helper.c:3375
+msgid "print only error messages"
+msgstr "afficher seulement les messages d'erreur"
+
+#: builtin/submodule--helper.c:3073
+msgid "force creation"
+msgstr "forcer la création"
+
+#: builtin/submodule--helper.c:3081
+msgid "show whether the branch would be created"
+msgstr "afficher si la branche serait créée"
+
+#: builtin/submodule--helper.c:3085
+msgid ""
+"git submodule--helper create-branch [-f|--force] [--create-reflog] [-q|--"
+"quiet] [-t|--track] [-n|--dry-run] <name> <start-oid> <start-name>"
+msgstr ""
+"git submodule--helper create-branch [-f|--force] [--create-reflog] [-q|--"
+"quiet] [-t|--track] [-n|--dry-run] <nom> <oid-départ> <nom-de-départ>"
+
+#: builtin/submodule--helper.c:3097
+#, c-format
+msgid "creating branch '%s'"
+msgstr "création de la branche '%s'"
+
+#: builtin/submodule--helper.c:3155
 #, c-format
 msgid "Adding existing repo at '%s' to the index\n"
 msgstr "Ajout du dépôt existant à '%s' dans l'index\n"
 
-#: builtin/submodule--helper.c:3041
+#: builtin/submodule--helper.c:3158
 #, c-format
 msgid "'%s' already exists and is not a valid git repo"
 msgstr "'%s' existe déjà et n'est pas un dépôt git valide"
 
-#: builtin/submodule--helper.c:3054
+#: builtin/submodule--helper.c:3171
 #, c-format
 msgid "A git directory for '%s' is found locally with remote(s):\n"
 msgstr ""
 "Un répertoire git pour '%s' est trouvé en local avec le(s) serveur(s) "
 "distant(s) :\n"
 
-#: builtin/submodule--helper.c:3061
+#: builtin/submodule--helper.c:3178
 #, c-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from\n"
@@ -23718,54 +24255,50 @@ msgstr ""
 "correct\n"
 "ou si ceci n'est pas clair, choisissez un autre nom avec l'option '--name'."
 
-#: builtin/submodule--helper.c:3073
+#: builtin/submodule--helper.c:3190
 #, c-format
 msgid "Reactivating local git directory for submodule '%s'\n"
 msgstr "Réactivation du répertoire git local pour le sous-module '%s'\n"
 
-#: builtin/submodule--helper.c:3110
+#: builtin/submodule--helper.c:3227
 #, c-format
 msgid "unable to checkout submodule '%s'"
 msgstr "Impossible d'extraire le sous-module '%s'"
 
-#: builtin/submodule--helper.c:3149
+#: builtin/submodule--helper.c:3266
 #, c-format
 msgid "Failed to add submodule '%s'"
 msgstr "Échec d'ajout du sous-module '%s'"
 
-#: builtin/submodule--helper.c:3153 builtin/submodule--helper.c:3158
-#: builtin/submodule--helper.c:3166
+#: builtin/submodule--helper.c:3270 builtin/submodule--helper.c:3275
+#: builtin/submodule--helper.c:3283
 #, c-format
 msgid "Failed to register submodule '%s'"
 msgstr "Échec d'enregistrement du sous-module '%s'"
 
-#: builtin/submodule--helper.c:3222
+#: builtin/submodule--helper.c:3339
 #, c-format
 msgid "'%s' already exists in the index"
 msgstr "'%s' existe déjà dans l'index"
 
-#: builtin/submodule--helper.c:3225
+#: builtin/submodule--helper.c:3342
 #, c-format
 msgid "'%s' already exists in the index and is not a submodule"
 msgstr "'%s' existe déjà dans l'index et n'est pas un sous-module"
 
-#: builtin/submodule--helper.c:3254
+#: builtin/submodule--helper.c:3372
 msgid "branch of repository to add as submodule"
 msgstr "la branche du dépôt à ajouter comme sous-module"
 
-#: builtin/submodule--helper.c:3255
+#: builtin/submodule--helper.c:3373
 msgid "allow adding an otherwise ignored submodule path"
 msgstr "permettre l'ajout des chemins de modules ignorés par ailleurs"
 
-#: builtin/submodule--helper.c:3257
-msgid "print only error messages"
-msgstr "afficher seulement les messages d'erreur"
-
-#: builtin/submodule--helper.c:3261
+#: builtin/submodule--helper.c:3379
 msgid "borrow the objects from reference repositories"
 msgstr "emprunter les objets depuis des dépôts de références"
 
-#: builtin/submodule--helper.c:3263
+#: builtin/submodule--helper.c:3381
 msgid ""
 "sets the submodule’s name to the given string instead of defaulting to its "
 "path"
@@ -23773,32 +24306,32 @@ msgstr ""
 "configurer le nom du sous-module avec la chaîne fournie au lieu d'utiliser "
 "par défaut son chemin"
 
-#: builtin/submodule--helper.c:3270
+#: builtin/submodule--helper.c:3388
 msgid "git submodule--helper add [<options>] [--] <repository> [<path>]"
 msgstr "git submodule--helper add [<options>] [--] <dépôt> [<chemin>]"
 
-#: builtin/submodule--helper.c:3298
+#: builtin/submodule--helper.c:3416
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 "Un chemin relatif ne peut être utilisé que depuis la racine de la copie de "
 "travail"
 
-#: builtin/submodule--helper.c:3306
+#: builtin/submodule--helper.c:3425
 #, c-format
 msgid "repo URL: '%s' must be absolute or begin with ./|../"
 msgstr "l'URL de dépôt : '%s' doit être absolu ou commencer par ./|../"
 
-#: builtin/submodule--helper.c:3341
+#: builtin/submodule--helper.c:3460
 #, c-format
 msgid "'%s' is not a valid submodule name"
 msgstr "'%s' n'est pas un nom valide de sous-module"
 
-#: builtin/submodule--helper.c:3405 git.c:452 git.c:726
+#: builtin/submodule--helper.c:3520 git.c:453 git.c:729
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr "%s ne gère pas --super-prefix"
 
-#: builtin/submodule--helper.c:3411
+#: builtin/submodule--helper.c:3526
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr "'%s' n'est pas une sous-commande valide de submodule--helper"
@@ -23832,7 +24365,7 @@ msgstr "raison"
 msgid "reason of the update"
 msgstr "raison de la mise à jour"
 
-#: builtin/tag.c:25
+#: builtin/tag.c:26
 msgid ""
 "git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]\n"
 "        <tagname> [<head>]"
@@ -23840,11 +24373,11 @@ msgstr ""
 "git tag [-a | -s | -u <id-clé>] [-f] [-m <msg> | -F <fichier>]\n"
 "        <nom-d-étiquette> [<tête>]"
 
-#: builtin/tag.c:27
+#: builtin/tag.c:28
 msgid "git tag -d <tagname>..."
 msgstr "git tag -d <nom-d-étiquette>..."
 
-#: builtin/tag.c:28
+#: builtin/tag.c:29
 msgid ""
 "git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
 "points-at <object>]\n"
@@ -23856,21 +24389,21 @@ msgstr ""
 "        [--format=<format>] [--merged <commit>] [--no-merged <commit>] "
 "[<motif>...]"
 
-#: builtin/tag.c:30
+#: builtin/tag.c:31
 msgid "git tag -v [--format=<format>] <tagname>..."
 msgstr "git tag -v [--format=<format>] <nom-d-étiquette>..."
 
-#: builtin/tag.c:100
+#: builtin/tag.c:101
 #, c-format
 msgid "tag '%s' not found."
 msgstr "étiquette '%s' non trouvée."
 
-#: builtin/tag.c:135
+#: builtin/tag.c:136
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr "Étiquette '%s' supprimée (elle était sur %s)\n"
 
-#: builtin/tag.c:170
+#: builtin/tag.c:171
 #, c-format
 msgid ""
 "\n"
@@ -23883,7 +24416,7 @@ msgstr ""
 "  %s\n"
 "Les lignes commençant par '%c' seront ignorées.\n"
 
-#: builtin/tag.c:174
+#: builtin/tag.c:175
 #, c-format
 msgid ""
 "\n"
@@ -23898,11 +24431,11 @@ msgstr ""
 "Les lignes commençant par '%c' seront gardées ; vous pouvez les retirer vous-"
 "même si vous le souhaitez.\n"
 
-#: builtin/tag.c:240
+#: builtin/tag.c:241
 msgid "unable to sign the tag"
 msgstr "impossible de signer l'étiquette"
 
-#: builtin/tag.c:258
+#: builtin/tag.c:259
 #, c-format
 msgid ""
 "You have created a nested tag. The object referred to by your new tag is\n"
@@ -23917,115 +24450,119 @@ msgstr ""
 "\n"
 "\tgit tag -f %s %s^{}"
 
-#: builtin/tag.c:274
+#: builtin/tag.c:275
 msgid "bad object type."
 msgstr "mauvais type d'objet."
 
-#: builtin/tag.c:325
+#: builtin/tag.c:326
 msgid "no tag message?"
 msgstr "pas de message pour l'étiquette ?"
 
-#: builtin/tag.c:332
+#: builtin/tag.c:333
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr "Le message pour l'étiquette a été laissé dans %s\n"
 
-#: builtin/tag.c:444
+#: builtin/tag.c:445
 msgid "list tag names"
 msgstr "afficher les noms des étiquettes"
 
-#: builtin/tag.c:446
+#: builtin/tag.c:447
 msgid "print <n> lines of each tag message"
 msgstr "affiche <n> lignes de chaque message d'étiquette"
 
-#: builtin/tag.c:448
+#: builtin/tag.c:449
 msgid "delete tags"
 msgstr "supprimer des étiquettes"
 
-#: builtin/tag.c:449
+#: builtin/tag.c:450
 msgid "verify tags"
 msgstr "vérifier des étiquettes"
 
-#: builtin/tag.c:451
+#: builtin/tag.c:452
 msgid "Tag creation options"
 msgstr "Options de création de l'étiquette"
 
-#: builtin/tag.c:453
+#: builtin/tag.c:454
 msgid "annotated tag, needs a message"
 msgstr "étiquette annotée, nécessite un message"
 
-#: builtin/tag.c:455
+#: builtin/tag.c:456
 msgid "tag message"
 msgstr "message pour l'étiquette"
 
-#: builtin/tag.c:457
+#: builtin/tag.c:458
 msgid "force edit of tag message"
 msgstr "forcer l'édition du message d'étiquetage"
 
-#: builtin/tag.c:458
+#: builtin/tag.c:459
 msgid "annotated and GPG-signed tag"
 msgstr "étiquette annotée et signée avec GPG"
 
-#: builtin/tag.c:461
+#: builtin/tag.c:462
 msgid "use another key to sign the tag"
 msgstr "utiliser une autre clé pour signer l'étiquette"
 
-#: builtin/tag.c:462
+#: builtin/tag.c:463
 msgid "replace the tag if exists"
 msgstr "remplacer l'étiquette si elle existe"
 
-#: builtin/tag.c:463 builtin/update-ref.c:511
+#: builtin/tag.c:464 builtin/update-ref.c:511
 msgid "create a reflog"
 msgstr "créer un reflog"
 
-#: builtin/tag.c:465
+#: builtin/tag.c:466
 msgid "Tag listing options"
 msgstr "Options d'affichage des étiquettes"
 
-#: builtin/tag.c:466
+#: builtin/tag.c:467
 msgid "show tag list in columns"
 msgstr "afficher la liste des étiquettes sous forme de colonnes"
 
-#: builtin/tag.c:467 builtin/tag.c:469
+#: builtin/tag.c:468 builtin/tag.c:470
 msgid "print only tags that contain the commit"
 msgstr "afficher seulement les étiquettes qui contiennent la validation"
 
-#: builtin/tag.c:468 builtin/tag.c:470
+#: builtin/tag.c:469 builtin/tag.c:471
 msgid "print only tags that don't contain the commit"
 msgstr "afficher seulement les étiquettes qui ne contiennent pas la validation"
 
-#: builtin/tag.c:471
+#: builtin/tag.c:472
 msgid "print only tags that are merged"
 msgstr "afficher seulement les étiquettes qui sont fusionnées"
 
-#: builtin/tag.c:472
+#: builtin/tag.c:473
 msgid "print only tags that are not merged"
 msgstr "afficher seulement les étiquettes qui ne sont pas fusionnées"
 
-#: builtin/tag.c:476
+#: builtin/tag.c:477
 msgid "print only tags of the object"
 msgstr "afficher seulement les étiquettes de l'objet"
 
-#: builtin/tag.c:558
+#: builtin/tag.c:559
 #, c-format
 msgid "the '%s' option is only allowed in list mode"
 msgstr "l'option '%s' est autorisée seulement en mode de liste"
 
-#: builtin/tag.c:597
+#: builtin/tag.c:598
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "'%s' n'est pas un nom d'étiquette valide."
 
-#: builtin/tag.c:602
+#: builtin/tag.c:603
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "l'étiquette '%s' existe déjà"
 
-#: builtin/tag.c:633
+#: builtin/tag.c:634
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Étiquette '%s' mise à jour (elle était sur %s)\n"
 
+#: builtin/unpack-objects.c:95
+msgid "pack exceeds maximum allowed size"
+msgstr "le paquet dépasse la taille maximale permise"
+
 #: builtin/unpack-objects.c:504
 msgid "Unpacking objects"
 msgstr "Dépaquetage des objets"
@@ -24091,164 +24628,164 @@ msgstr " OK"
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr "git update-index [<options>] [--] [<fichier>...]"
 
-#: builtin/update-index.c:974
+#: builtin/update-index.c:993
 msgid "continue refresh even when index needs update"
 msgstr "continuer de rafraîchir même si l'index a besoin d'une mise à jour"
 
-#: builtin/update-index.c:977
+#: builtin/update-index.c:996
 msgid "refresh: ignore submodules"
 msgstr "rafraîchir : ignorer les sous-modules"
 
-#: builtin/update-index.c:980
+#: builtin/update-index.c:999
 msgid "do not ignore new files"
 msgstr "ne pas ignorer les nouveaux fichiers"
 
-#: builtin/update-index.c:982
+#: builtin/update-index.c:1001
 msgid "let files replace directories and vice-versa"
 msgstr "laisser les fichiers remplacer des répertoires et vice-versa"
 
-#: builtin/update-index.c:984
+#: builtin/update-index.c:1003
 msgid "notice files missing from worktree"
 msgstr "aviser des fichiers manquants dans la copie de travail"
 
-#: builtin/update-index.c:986
+#: builtin/update-index.c:1005
 msgid "refresh even if index contains unmerged entries"
 msgstr "rafraîchir même si l'index contient des éléments non fusionnés"
 
-#: builtin/update-index.c:989
+#: builtin/update-index.c:1008
 msgid "refresh stat information"
 msgstr "rafraîchir l'information de stat"
 
-#: builtin/update-index.c:993
+#: builtin/update-index.c:1012
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "comme --refresh, mais en ignorant l'option assume-unchanged"
 
-#: builtin/update-index.c:997
+#: builtin/update-index.c:1016
 msgid "<mode>,<object>,<path>"
 msgstr "<mode>, <objet>, <chemin>"
 
-#: builtin/update-index.c:998
+#: builtin/update-index.c:1017
 msgid "add the specified entry to the index"
 msgstr "ajouter l'élément spécifié dans l'index"
 
-#: builtin/update-index.c:1008
+#: builtin/update-index.c:1027
 msgid "mark files as \"not changing\""
 msgstr "marquer les fichiers comme \"non changeants\""
 
-#: builtin/update-index.c:1011
+#: builtin/update-index.c:1030
 msgid "clear assumed-unchanged bit"
 msgstr "mettre à zéro le bit supposé-non-modifié"
 
-#: builtin/update-index.c:1014
+#: builtin/update-index.c:1033
 msgid "mark files as \"index-only\""
 msgstr "marquer les fichiers comme \"index seulement\""
 
-#: builtin/update-index.c:1017
+#: builtin/update-index.c:1036
 msgid "clear skip-worktree bit"
 msgstr "mettre à zéro le bit sauter-la-copie-de travail"
 
-#: builtin/update-index.c:1020
+#: builtin/update-index.c:1039
 msgid "do not touch index-only entries"
 msgstr "ne pas toucher aux entrées restreintes à l'index"
 
-#: builtin/update-index.c:1022
+#: builtin/update-index.c:1041
 msgid "add to index only; do not add content to object database"
 msgstr ""
 "ajouter seulement à l'index ; ne pas ajouter le contenu dans la base de "
 "données des objets"
 
-#: builtin/update-index.c:1024
+#: builtin/update-index.c:1043
 msgid "remove named paths even if present in worktree"
 msgstr ""
 "supprimer les chemins nommés même s'ils sont présents dans la copie de "
 "travail"
 
-#: builtin/update-index.c:1026
+#: builtin/update-index.c:1045
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr "avec --stdin : les lignes en entrée sont terminées par des octets nuls"
 
-#: builtin/update-index.c:1028
+#: builtin/update-index.c:1047
 msgid "read list of paths to be updated from standard input"
 msgstr "lire la liste des chemins à mettre à jour depuis l'entrée standard"
 
-#: builtin/update-index.c:1032
+#: builtin/update-index.c:1051
 msgid "add entries from standard input to the index"
 msgstr "ajouter les éléments depuis l'entrée standard à l'index"
 
-#: builtin/update-index.c:1036
+#: builtin/update-index.c:1055
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr "repeupler les étapes n°2 et n°3 pour les chemins listés"
 
-#: builtin/update-index.c:1040
+#: builtin/update-index.c:1059
 msgid "only update entries that differ from HEAD"
 msgstr "mettre à jour seulement les éléments qui diffèrent de HEAD"
 
-#: builtin/update-index.c:1044
+#: builtin/update-index.c:1063
 msgid "ignore files missing from worktree"
 msgstr "ignorer les fichiers manquants dans la copie de travail"
 
-#: builtin/update-index.c:1047
+#: builtin/update-index.c:1066
 msgid "report actions to standard output"
 msgstr "afficher les actions sur la sortie standard"
 
-#: builtin/update-index.c:1049
+#: builtin/update-index.c:1068
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr "(pour porcelaines) oublier les conflits sauvés et non résolus"
 
-#: builtin/update-index.c:1053
+#: builtin/update-index.c:1072
 msgid "write index in this format"
 msgstr "écrire l'index dans ce format"
 
-#: builtin/update-index.c:1055
+#: builtin/update-index.c:1074
 msgid "enable or disable split index"
-msgstr "activer ou désactiver l'index divisé"
+msgstr "activer ou désactiver l'index scindé"
 
-#: builtin/update-index.c:1057
+#: builtin/update-index.c:1076
 msgid "enable/disable untracked cache"
 msgstr "activer ou désactiver le cache de non-suivis"
 
-#: builtin/update-index.c:1059
+#: builtin/update-index.c:1078
 msgid "test if the filesystem supports untracked cache"
 msgstr "tester si le système de fichier supporte le cache de non-suivis"
 
-#: builtin/update-index.c:1061
+#: builtin/update-index.c:1080
 msgid "enable untracked cache without testing the filesystem"
 msgstr "activer le cache de non-suivis sans tester le système de fichier"
 
-#: builtin/update-index.c:1063
+#: builtin/update-index.c:1082
 msgid "write out the index even if is not flagged as changed"
 msgstr "écrire l'index même s'il n'est pas marqué comme modifié"
 
-#: builtin/update-index.c:1065
+#: builtin/update-index.c:1084
 msgid "enable or disable file system monitor"
 msgstr ""
 "activer ou désactiver la surveillance du système de fichier (fsmonitor)"
 
-#: builtin/update-index.c:1067
+#: builtin/update-index.c:1086
 msgid "mark files as fsmonitor valid"
 msgstr "marquer les fichiers comme valides pour fsmonitor"
 
-#: builtin/update-index.c:1070
+#: builtin/update-index.c:1089
 msgid "clear fsmonitor valid bit"
 msgstr "effacer le bit de validité fsmonitor"
 
-#: builtin/update-index.c:1173
+#: builtin/update-index.c:1195
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
 msgstr ""
 "core.splitIndex est réglé à false ; supprimez-le ou changez-le si vous "
-"souhaitez vraiment activer l'index coupé"
+"souhaitez vraiment activer l'index scindé"
 
-#: builtin/update-index.c:1182
+#: builtin/update-index.c:1204
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
 msgstr ""
 "core.splitIndex est réglé à vrai ; supprimez-le ou changez-le si vous "
-"souhaitez vraiment désactiver l'index coupé"
+"souhaitez vraiment désactiver l'index scindé"
 
-#: builtin/update-index.c:1194
+#: builtin/update-index.c:1216
 msgid ""
 "core.untrackedCache is set to true; remove or change it, if you really want "
 "to disable the untracked cache"
@@ -24256,11 +24793,11 @@ msgstr ""
 "core.untrackedCache est réglé à true ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment désactiver le cache des fichiers non-suivis"
 
-#: builtin/update-index.c:1198
+#: builtin/update-index.c:1220
 msgid "Untracked cache disabled"
 msgstr "Le cache non suivi est désactivé"
 
-#: builtin/update-index.c:1206
+#: builtin/update-index.c:1228
 msgid ""
 "core.untrackedCache is set to false; remove or change it, if you really want "
 "to enable the untracked cache"
@@ -24268,29 +24805,29 @@ msgstr ""
 "core.untrackedCache est réglé à false ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment activer le cache des fichiers non-suivis"
 
-#: builtin/update-index.c:1210
+#: builtin/update-index.c:1232
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr "Le cache non suivi est activé pour '%s'"
 
-#: builtin/update-index.c:1218
+#: builtin/update-index.c:1241
 msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
 msgstr ""
 "core.fsmonitor est réglé à false ; changez-le si vous souhaitez vraiment "
 "activer la surveillance du système de fichiers"
 
-#: builtin/update-index.c:1222
+#: builtin/update-index.c:1246
 msgid "fsmonitor enabled"
 msgstr "fsmonitor activé"
 
-#: builtin/update-index.c:1225
+#: builtin/update-index.c:1250
 msgid ""
 "core.fsmonitor is set; remove it if you really want to disable fsmonitor"
 msgstr ""
 "core.fsmonitor est réglé à true ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment désactiver la surveillance du système de fichiers"
 
-#: builtin/update-index.c:1229
+#: builtin/update-index.c:1254
 msgid "fsmonitor disabled"
 msgstr "fsmonitor désactivé"
 
@@ -24324,10 +24861,6 @@ msgstr "l'entrée standard a des arguments qui se terminent par NUL"
 msgid "read updates from stdin"
 msgstr "lire les mises à jour depuis l'entrée standard"
 
-#: builtin/update-server-info.c:7
-msgid "git update-server-info [--force]"
-msgstr "git update-server-info [--force]"
-
 #: builtin/update-server-info.c:15
 msgid "update the info files from scratch"
 msgstr "mettre à jour les fichiers d'information à partir de zéro"
@@ -24410,33 +24943,37 @@ msgid "git worktree remove [<options>] <worktree>"
 msgstr "git worktree remove [<options>] <arbre-de-travail>"
 
 #: builtin/worktree.c:25
+msgid "git worktree repair [<path>...]"
+msgstr "git worktree repair [<chemin>...]"
+
+#: builtin/worktree.c:26
 msgid "git worktree unlock <path>"
 msgstr "git worktree unlock <chemin>"
 
-#: builtin/worktree.c:75
+#: builtin/worktree.c:76
 #, c-format
 msgid "Removing %s/%s: %s"
 msgstr "Suppression de %s/%s : %s"
 
-#: builtin/worktree.c:148
+#: builtin/worktree.c:149
 msgid "report pruned working trees"
 msgstr "afficher les arbres de travail éliminés"
 
-#: builtin/worktree.c:150
+#: builtin/worktree.c:151
 msgid "expire working trees older than <time>"
 msgstr "faire expirer les arbres de travail plus vieux que <temps>"
 
-#: builtin/worktree.c:220
+#: builtin/worktree.c:221
 #, c-format
 msgid "'%s' already exists"
 msgstr "'%s' existe déjà"
 
-#: builtin/worktree.c:229
+#: builtin/worktree.c:230
 #, c-format
 msgid "unusable worktree destination '%s'"
 msgstr "arbre de travail destination '%s' inutilisable"
 
-#: builtin/worktree.c:234
+#: builtin/worktree.c:235
 #, c-format
 msgid ""
 "'%s' is a missing but locked worktree;\n"
@@ -24446,7 +24983,7 @@ msgstr ""
 "utilisez '%s -f -f' pour passer outre, ou 'unlock' et 'prune' ou 'remove' "
 "pour corriger"
 
-#: builtin/worktree.c:236
+#: builtin/worktree.c:237
 #, c-format
 msgid ""
 "'%s' is a missing but already registered worktree;\n"
@@ -24455,137 +24992,159 @@ msgstr ""
 "'%s' est un arbre de travail manquant mais déjà enregistré ;\n"
 "utilisez '%s -f' pour passer outre, ou 'prune' ou 'remove' pour corriger"
 
-#: builtin/worktree.c:287
+#: builtin/worktree.c:248
+#, c-format
+msgid "failed to copy '%s' to '%s'; sparse-checkout may not work correctly"
+msgstr ""
+"échec de la copie de '%s' vers '%s' ; les extractions clairsemées pourraient "
+"ne pas fonctionner correctement"
+
+#: builtin/worktree.c:268
+#, c-format
+msgid "failed to copy worktree config from '%s' to '%s'"
+msgstr ""
+"impossible de copier la configuration d'arbre de travail de '%s' vers '%s'"
+
+#: builtin/worktree.c:280 builtin/worktree.c:285
+#, c-format
+msgid "failed to unset '%s' in '%s'"
+msgstr "échec de désinitialisation de '%s' dans '%s'"
+
+#: builtin/worktree.c:356
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "impossible de créer le répertoire de '%s'"
 
-#: builtin/worktree.c:309
+#: builtin/worktree.c:378
 msgid "initializing"
 msgstr "initialisation"
 
-#: builtin/worktree.c:420 builtin/worktree.c:426
+#: builtin/worktree.c:492 builtin/worktree.c:498
 #, c-format
 msgid "Preparing worktree (new branch '%s')"
 msgstr "Préparation de l'arbre de travail (nouvelle branche '%s')"
 
-#: builtin/worktree.c:422
+#: builtin/worktree.c:494
 #, c-format
 msgid "Preparing worktree (resetting branch '%s'; was at %s)"
 msgstr ""
 "Préparation de l'arbre de travail (réinitialisation de la branche '%s' ; "
 "précédemment sur %s)"
 
-#: builtin/worktree.c:431
+#: builtin/worktree.c:503
 #, c-format
 msgid "Preparing worktree (checking out '%s')"
 msgstr "Préparation de l'arbre de travail (extraction de '%s')"
 
-#: builtin/worktree.c:437
+#: builtin/worktree.c:509
 #, c-format
 msgid "Preparing worktree (detached HEAD %s)"
 msgstr "Préparation de l'arbre de travail (HEAD détachée %s)"
 
-#: builtin/worktree.c:482
+#: builtin/worktree.c:554
 msgid "checkout <branch> even if already checked out in other worktree"
 msgstr ""
 "extraire la <branche> même si elle est déjà extraite dans une autre copie de "
 "travail"
 
-#: builtin/worktree.c:485
+#: builtin/worktree.c:557
 msgid "create a new branch"
 msgstr "créer une nouvelle branche"
 
-#: builtin/worktree.c:487
+#: builtin/worktree.c:559
 msgid "create or reset a branch"
 msgstr "créer ou réinitialiser une branche"
 
-#: builtin/worktree.c:489
+#: builtin/worktree.c:561
 msgid "populate the new working tree"
 msgstr "remplissage de la nouvelle copie de travail"
 
-#: builtin/worktree.c:490
+#: builtin/worktree.c:562
 msgid "keep the new working tree locked"
 msgstr "conserver le verrou sur le nouvel arbre de travail"
 
-#: builtin/worktree.c:492 builtin/worktree.c:729
+#: builtin/worktree.c:564 builtin/worktree.c:809
 msgid "reason for locking"
 msgstr "raison du verrouillage"
 
-#: builtin/worktree.c:495
+#: builtin/worktree.c:567
 msgid "set up tracking mode (see git-branch(1))"
 msgstr "régler le mode de suivi (voir git-branch(1))"
 
-#: builtin/worktree.c:498
+#: builtin/worktree.c:570
 msgid "try to match the new branch name with a remote-tracking branch"
 msgstr "essayer de nommer la nouvelle branche comme la branche amont"
 
-#: builtin/worktree.c:512
+#: builtin/worktree.c:584
 msgid "added with --lock"
 msgstr "ajouté avec --lock"
 
-#: builtin/worktree.c:574
+#: builtin/worktree.c:646
 msgid "--[no-]track can only be used if a new branch is created"
 msgstr ""
 "--[no-]track ne peut être utilisé qu'à la création d'une nouvelle branche"
 
-#: builtin/worktree.c:691
+#: builtin/worktree.c:766
 msgid "show extended annotations and reasons, if available"
 msgstr "afficher les annotations étendues et les raisons, si disponible"
 
-#: builtin/worktree.c:693
+#: builtin/worktree.c:768
 msgid "add 'prunable' annotation to worktrees older than <time>"
 msgstr ""
 "ajouter l'annotation 'prunable' aux arbres de travail plus vieux que <temps>"
 
-#: builtin/worktree.c:741 builtin/worktree.c:774 builtin/worktree.c:848
-#: builtin/worktree.c:972
+#: builtin/worktree.c:770
+msgid "terminate records with a NUL character"
+msgstr "terminer les enregistrements par un caractère NUL"
+
+#: builtin/worktree.c:821 builtin/worktree.c:854 builtin/worktree.c:928
+#: builtin/worktree.c:1052
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "'%s' n'est pas une copie de travail"
 
-#: builtin/worktree.c:743 builtin/worktree.c:776
+#: builtin/worktree.c:823 builtin/worktree.c:856
 msgid "The main working tree cannot be locked or unlocked"
 msgstr ""
 "La copie de travail principale ne peut pas être verrouillée ou déverrouillée"
 
-#: builtin/worktree.c:748
+#: builtin/worktree.c:828
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr "'%s' est déjà verrouillé, car '%s'"
 
-#: builtin/worktree.c:750
+#: builtin/worktree.c:830
 #, c-format
 msgid "'%s' is already locked"
 msgstr "'%s' est déjà verrouillé"
 
-#: builtin/worktree.c:778
+#: builtin/worktree.c:858
 #, c-format
 msgid "'%s' is not locked"
 msgstr "'%s' n'est pas verrouillé"
 
-#: builtin/worktree.c:819
+#: builtin/worktree.c:899
 msgid "working trees containing submodules cannot be moved or removed"
 msgstr ""
 "les arbres de travail contenant des sous-modules ne peuvent pas être "
 "déplacés ou supprimés"
 
-#: builtin/worktree.c:827
+#: builtin/worktree.c:907
 msgid "force move even if worktree is dirty or locked"
 msgstr ""
 "forcer le déplacement même si l'arbre de travail est sale ou verrouillé"
 
-#: builtin/worktree.c:850 builtin/worktree.c:974
+#: builtin/worktree.c:930 builtin/worktree.c:1054
 #, c-format
 msgid "'%s' is a main working tree"
 msgstr "'%s' est un arbre de travail principal"
 
-#: builtin/worktree.c:855
+#: builtin/worktree.c:935
 #, c-format
 msgid "could not figure out destination name from '%s'"
 msgstr "impossible de trouver le nom de la destination à partir de '%s'"
 
-#: builtin/worktree.c:868
+#: builtin/worktree.c:948
 #, c-format
 msgid ""
 "cannot move a locked working tree, lock reason: %s\n"
@@ -24595,7 +25154,7 @@ msgstr ""
 "verrouillage : %s\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:870
+#: builtin/worktree.c:950
 msgid ""
 "cannot move a locked working tree;\n"
 "use 'move -f -f' to override or unlock first"
@@ -24603,39 +25162,39 @@ msgstr ""
 "impossible de déplacer un arbre de travail verrouillé;\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:873
+#: builtin/worktree.c:953
 #, c-format
 msgid "validation failed, cannot move working tree: %s"
 msgstr "la validation a échoué, impossible de déplacer l'arbre de travail : %s"
 
-#: builtin/worktree.c:878
+#: builtin/worktree.c:958
 #, c-format
 msgid "failed to move '%s' to '%s'"
 msgstr "échec au déplacement de '%s' vers '%s'"
 
-#: builtin/worktree.c:924
+#: builtin/worktree.c:1004
 #, c-format
 msgid "failed to run 'git status' on '%s'"
 msgstr "échec du lancement de 'git status' sur '%s'"
 
-#: builtin/worktree.c:928
+#: builtin/worktree.c:1008
 #, c-format
 msgid "'%s' contains modified or untracked files, use --force to delete it"
 msgstr ""
 "'%s' contient des fichiers modifiés ou non-suivis, utilisez --force pour le "
 "supprimer"
 
-#: builtin/worktree.c:933
+#: builtin/worktree.c:1013
 #, c-format
 msgid "failed to run 'git status' on '%s', code %d"
 msgstr "impossible de lancer 'git status' sur '%s', code %d"
 
-#: builtin/worktree.c:956
+#: builtin/worktree.c:1036
 msgid "force removal even if worktree is dirty or locked"
 msgstr ""
 "forcer la suppression même si l'arbre de travail est sale ou verrouillé"
 
-#: builtin/worktree.c:979
+#: builtin/worktree.c:1059
 #, c-format
 msgid ""
 "cannot remove a locked working tree, lock reason: %s\n"
@@ -24645,7 +25204,7 @@ msgstr ""
 "verrouillage : %s\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:981
+#: builtin/worktree.c:1061
 msgid ""
 "cannot remove a locked working tree;\n"
 "use 'remove -f -f' to override or unlock first"
@@ -24653,18 +25212,18 @@ msgstr ""
 "impossible de supprimer un arbre de travail verrouillé;\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:984
+#: builtin/worktree.c:1064
 #, c-format
 msgid "validation failed, cannot remove working tree: %s"
 msgstr ""
 "la validation a échoué, impossible de supprimer l'arbre de travail : %s"
 
-#: builtin/worktree.c:1008
+#: builtin/worktree.c:1088
 #, c-format
 msgid "repair: %s: %s"
 msgstr "réparation : %s : '%s'"
 
-#: builtin/worktree.c:1011
+#: builtin/worktree.c:1091
 #, c-format
 msgid "error: %s: %s"
 msgstr "erreur : %s : %s"
@@ -24771,29 +25330,29 @@ msgstr "alias vide pour %s"
 msgid "recursive alias: %s"
 msgstr "alias recursif : %s"
 
-#: git.c:479
+#: git.c:480
 msgid "write failure on standard output"
 msgstr "échec d'écriture sur la sortie standard"
 
-#: git.c:481
+#: git.c:482
 msgid "unknown write failure on standard output"
 msgstr "échec inconnu d'écriture sur la sortie standard"
 
-#: git.c:483
+#: git.c:484
 msgid "close failed on standard output"
 msgstr "échec de fermeture de la sortie standard"
 
-#: git.c:835
+#: git.c:838
 #, c-format
 msgid "alias loop detected: expansion of '%s' does not terminate:%s"
 msgstr "boucle d'alias détectée : l'expansion de '%s' ne finit jamais : %s"
 
-#: git.c:885
+#: git.c:888
 #, c-format
 msgid "cannot handle %s as a builtin"
 msgstr "impossible d'utiliser %s comme une fonction intégrée"
 
-#: git.c:898
+#: git.c:901
 #, c-format
 msgid ""
 "usage: %s\n"
@@ -24802,13 +25361,13 @@ msgstr ""
 "usage : %s\n"
 "\n"
 
-#: git.c:918
+#: git.c:921
 #, c-format
 msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
 msgstr ""
 "l'expansion de l'alias '%s' a échoué : '%s' n'est pas une commande git\n"
 
-#: git.c:930
+#: git.c:933
 #, c-format
 msgid "failed to run command '%s': %s\n"
 msgstr "échec au lancement de la commande '%s' : %s\n"
@@ -24969,142 +25528,142 @@ msgstr ""
 "      demandé : %s\n"
 "  redirection : %s"
 
-#: remote-curl.c:183
+#: remote-curl.c:184
 #, c-format
 msgid "invalid quoting in push-option value: '%s'"
 msgstr "citation invalide dans la valeur push-option : '%s'"
 
-#: remote-curl.c:304
+#: remote-curl.c:308
 #, c-format
 msgid "%sinfo/refs not valid: is this a git repository?"
 msgstr "%sinfo/refs n'est pas valide : est-ce bien un dépôt git ?"
 
-#: remote-curl.c:405
+#: remote-curl.c:409
 msgid "invalid server response; expected service, got flush packet"
 msgstr "réponse du serveur invalide ; service attendu, paquet de vidage reçu"
 
-#: remote-curl.c:436
+#: remote-curl.c:440
 #, c-format
 msgid "invalid server response; got '%s'"
 msgstr "réponse du serveur invalide ; '%s' reçu"
 
-#: remote-curl.c:496
+#: remote-curl.c:500
 #, c-format
 msgid "repository '%s' not found"
 msgstr "dépôt '%s' non trouvé"
 
-#: remote-curl.c:500
+#: remote-curl.c:504
 #, c-format
 msgid "Authentication failed for '%s'"
 msgstr "Échec d'authentification pour '%s'"
 
-#: remote-curl.c:504
+#: remote-curl.c:508
 #, c-format
 msgid "unable to access '%s' with http.pinnedPubkey configuration: %s"
 msgstr ""
 "impossible d'accéder à '%s' avec la configuration http.pinnedPubkey : %s"
 
-#: remote-curl.c:508
+#: remote-curl.c:512
 #, c-format
 msgid "unable to access '%s': %s"
 msgstr "impossible d'accéder à '%s' : %s"
 
-#: remote-curl.c:514
+#: remote-curl.c:518
 #, c-format
 msgid "redirecting to %s"
 msgstr "redirection vers %s"
 
-#: remote-curl.c:645
+#: remote-curl.c:649
 msgid "shouldn't have EOF when not gentle on EOF"
 msgstr "ne devrait pas recevoir OEF quand on n'est pas gentil sur EOF"
 
-#: remote-curl.c:657
+#: remote-curl.c:661
 msgid "remote server sent unexpected response end packet"
 msgstr "le serveur distant a envoyé un paquet de fin de réponse inattendu"
 
-#: remote-curl.c:726
+#: remote-curl.c:730
 msgid "unable to rewind rpc post data - try increasing http.postBuffer"
 msgstr ""
 "impossible de rembobiner le données post rpc - essayer d'augmenter http."
 "postBuffer"
 
-#: remote-curl.c:755
+#: remote-curl.c:759
 #, c-format
 msgid "remote-curl: bad line length character: %.4s"
 msgstr "remote-curl : mauvais caractère de longueur de ligne : %.4s"
 
-#: remote-curl.c:757
+#: remote-curl.c:761
 msgid "remote-curl: unexpected response end packet"
 msgstr "remote-curl : paquet de fin de réponse inattendu"
 
-#: remote-curl.c:833
+#: remote-curl.c:837
 #, c-format
 msgid "RPC failed; %s"
 msgstr "échec RPC ; %s"
 
-#: remote-curl.c:873
+#: remote-curl.c:877
 msgid "cannot handle pushes this big"
 msgstr "impossible de gérer des poussées aussi grosses"
 
-#: remote-curl.c:986
+#: remote-curl.c:990
 #, c-format
 msgid "cannot deflate request; zlib deflate error %d"
 msgstr "impossible de compresser la requête ; erreur de compression zlib %d"
 
-#: remote-curl.c:990
+#: remote-curl.c:994
 #, c-format
 msgid "cannot deflate request; zlib end error %d"
 msgstr "impossible de compresser la requête ; erreur de fin zlib %d"
 
-#: remote-curl.c:1040
+#: remote-curl.c:1044
 #, c-format
 msgid "%d bytes of length header were received"
 msgstr "%d octets de longueur d'entête ont été reçus"
 
-#: remote-curl.c:1042
+#: remote-curl.c:1046
 #, c-format
 msgid "%d bytes of body are still expected"
 msgstr "%d octets de corps sont encore attendus"
 
-#: remote-curl.c:1131
+#: remote-curl.c:1135
 msgid "dumb http transport does not support shallow capabilities"
 msgstr "le protocole http idiot ne supporte la capacité superficielle"
 
-#: remote-curl.c:1146
+#: remote-curl.c:1150
 msgid "fetch failed."
 msgstr "échec du récupération."
 
-#: remote-curl.c:1192
+#: remote-curl.c:1198
 msgid "cannot fetch by sha1 over smart http"
 msgstr "impossible de récupérer par sha1 sur http intelligent"
 
-#: remote-curl.c:1236 remote-curl.c:1242
+#: remote-curl.c:1242 remote-curl.c:1248
 #, c-format
 msgid "protocol error: expected sha/ref, got '%s'"
 msgstr "erreur de protocole : sha/ref attendu, '%s' trouvé"
 
-#: remote-curl.c:1254 remote-curl.c:1372
+#: remote-curl.c:1260 remote-curl.c:1378
 #, c-format
 msgid "http transport does not support %s"
 msgstr "le transport http ne supporte pas %s"
 
-#: remote-curl.c:1290
+#: remote-curl.c:1296
 msgid "git-http-push failed"
 msgstr "échec de git-http-push"
 
-#: remote-curl.c:1478
+#: remote-curl.c:1485
 msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
 msgstr "remote-curl: usage: git remote-curl <distant> [<url>]"
 
-#: remote-curl.c:1510
+#: remote-curl.c:1517
 msgid "remote-curl: error reading command stream from git"
 msgstr "remote-curl : erreur de lecture du flux de commande depuis git"
 
-#: remote-curl.c:1517
+#: remote-curl.c:1524
 msgid "remote-curl: fetch attempted without a local repo"
 msgstr "remote-curl : récupération tentée sans dépôt local"
 
-#: remote-curl.c:1558
+#: remote-curl.c:1565
 #, c-format
 msgid "remote-curl: unknown command '%s' from git"
 msgstr "remote-curl : commande inconnue '%s' depuis git"
@@ -25117,123 +25676,123 @@ msgstr "répertoire de travail nécessaire"
 msgid "could not find enlistment root"
 msgstr "impossible de trouver la racine d'enrôlement"
 
-#: contrib/scalar/scalar.c:89 contrib/scalar/scalar.c:351
-#: contrib/scalar/scalar.c:436 contrib/scalar/scalar.c:579
+#: contrib/scalar/scalar.c:89 contrib/scalar/scalar.c:350
+#: contrib/scalar/scalar.c:435 contrib/scalar/scalar.c:578
 #, c-format
 msgid "could not switch to '%s'"
 msgstr "impossible de basculer vers '%s'"
 
-#: contrib/scalar/scalar.c:180
+#: contrib/scalar/scalar.c:179
 #, c-format
 msgid "could not configure %s=%s"
 msgstr "impossible de configurer %s=%s"
 
-#: contrib/scalar/scalar.c:198
+#: contrib/scalar/scalar.c:197
 msgid "could not configure log.excludeDecoration"
 msgstr "impossible de configurer log.excludeDecoration"
 
-#: contrib/scalar/scalar.c:219
+#: contrib/scalar/scalar.c:218
 msgid "Scalar enlistments require a worktree"
 msgstr "Les enrôlements scalaires requièrent un arbre de travail"
 
-#: contrib/scalar/scalar.c:311
+#: contrib/scalar/scalar.c:310
 #, c-format
 msgid "remote HEAD is not a branch: '%.*s'"
 msgstr "la HEAD distante n'est pas une branche : '%.*s'"
 
-#: contrib/scalar/scalar.c:317
+#: contrib/scalar/scalar.c:316
 msgid "failed to get default branch name from remote; using local default"
 msgstr ""
 "échec de récupération de la branche par défaut depuis le distant ; "
 "utilisation de la valeur par défaut locale"
 
-#: contrib/scalar/scalar.c:330
+#: contrib/scalar/scalar.c:329
 msgid "failed to get default branch name"
 msgstr "échec de l'obtention du nom de branche par défaut"
 
-#: contrib/scalar/scalar.c:341
+#: contrib/scalar/scalar.c:340
 msgid "failed to unregister repository"
 msgstr "échec du désenregistrement du dépôt"
 
-#: contrib/scalar/scalar.c:356
+#: contrib/scalar/scalar.c:355
 msgid "failed to delete enlistment directory"
 msgstr "échec de la suppression du répertoire d'enrôlement"
 
-#: contrib/scalar/scalar.c:376
+#: contrib/scalar/scalar.c:375
 msgid "branch to checkout after clone"
 msgstr "branche à extraire après le clonage"
 
-#: contrib/scalar/scalar.c:378
+#: contrib/scalar/scalar.c:377
 msgid "when cloning, create full working directory"
 msgstr "lors d'un clonage, créer un répertoire de travail complet"
 
-#: contrib/scalar/scalar.c:380
+#: contrib/scalar/scalar.c:379
 msgid "only download metadata for the branch that will be checked out"
 msgstr "ne télécharger les méta-données que pour la branche qui sera extraite"
 
-#: contrib/scalar/scalar.c:385
+#: contrib/scalar/scalar.c:384
 msgid "scalar clone [<options>] [--] <repo> [<dir>]"
 msgstr "scalar clone [<options>] [--] <dépôt> [<répertoire>]"
 
-#: contrib/scalar/scalar.c:410
+#: contrib/scalar/scalar.c:409
 #, c-format
 msgid "cannot deduce worktree name from '%s'"
 msgstr "impossible de déduire le nom de l'arbre de travail depuis '%s'"
 
-#: contrib/scalar/scalar.c:419
+#: contrib/scalar/scalar.c:418
 #, c-format
 msgid "directory '%s' exists already"
 msgstr "le répertoire '%s' existe déjà"
 
-#: contrib/scalar/scalar.c:446
+#: contrib/scalar/scalar.c:445
 #, c-format
 msgid "failed to get default branch for '%s'"
 msgstr "échec d'obtention de la branche par défaut pour '%s'"
 
-#: contrib/scalar/scalar.c:457
+#: contrib/scalar/scalar.c:456
 #, c-format
 msgid "could not configure remote in '%s'"
 msgstr "impossible de paramétrer le distant dans '%s'"
 
-#: contrib/scalar/scalar.c:466
+#: contrib/scalar/scalar.c:465
 #, c-format
 msgid "could not configure '%s'"
 msgstr "impossible de configurer '%s'"
 
-#: contrib/scalar/scalar.c:469
+#: contrib/scalar/scalar.c:468
 msgid "partial clone failed; attempting full clone"
 msgstr "échec du clonage partiel ; tentative de clonage complet"
 
-#: contrib/scalar/scalar.c:473
+#: contrib/scalar/scalar.c:472
 msgid "could not configure for full clone"
 msgstr "impossible de configurer pour le clonage complet"
 
-#: contrib/scalar/scalar.c:505
+#: contrib/scalar/scalar.c:504
 msgid "`scalar list` does not take arguments"
 msgstr "`scalar list` n'accepte pas d'argument"
 
-#: contrib/scalar/scalar.c:518
+#: contrib/scalar/scalar.c:517
 msgid "scalar register [<enlistment>]"
 msgstr "scalar register [<enrôlement>]"
 
-#: contrib/scalar/scalar.c:545
+#: contrib/scalar/scalar.c:544
 msgid "reconfigure all registered enlistments"
 msgstr "reconfigurer tous les enrôlements enregistrés"
 
-#: contrib/scalar/scalar.c:549
+#: contrib/scalar/scalar.c:548
 msgid "scalar reconfigure [--all | <enlistment>]"
 msgstr "scala reconfigure [--all|<enrôlement>]"
 
-#: contrib/scalar/scalar.c:567
+#: contrib/scalar/scalar.c:566
 msgid "--all or <enlistment>, but not both"
 msgstr "--all ou <enrôlement>, mais pas les deux"
 
-#: contrib/scalar/scalar.c:582
+#: contrib/scalar/scalar.c:581
 #, c-format
 msgid "git repository gone in '%s'"
 msgstr "dépôt git parti dans '%s'"
 
-#: contrib/scalar/scalar.c:622
+#: contrib/scalar/scalar.c:621
 msgid ""
 "scalar run <task> [<enlistment>]\n"
 "Tasks:\n"
@@ -25241,42 +25800,55 @@ msgstr ""
 "scalar run <tâche> [<enrôlement>]\n"
 "Tâches :\n"
 
-#: contrib/scalar/scalar.c:640
+#: contrib/scalar/scalar.c:639
 #, c-format
 msgid "no such task: '%s'"
 msgstr "pas de tâche : '%s'"
 
-#: contrib/scalar/scalar.c:690
+#: contrib/scalar/scalar.c:689
 msgid "scalar unregister [<enlistment>]"
 msgstr "scalar unregister [<enrôlement>]"
 
-#: contrib/scalar/scalar.c:737
+#: contrib/scalar/scalar.c:736
 msgid "scalar delete <enlistment>"
 msgstr "scalar delete <enrôlement>"
 
-#: contrib/scalar/scalar.c:752
+#: contrib/scalar/scalar.c:751
 msgid "refusing to delete current working directory"
 msgstr "refus de la suppression du répertoire de travail actuel"
 
-#: contrib/scalar/scalar.c:767
+#: contrib/scalar/scalar.c:766
 msgid "include Git version"
 msgstr "inclure la version Git"
 
-#: contrib/scalar/scalar.c:769
+#: contrib/scalar/scalar.c:768
 msgid "include Git's build options"
 msgstr "inclure les options de construction de Git"
 
-#: contrib/scalar/scalar.c:773
+#: contrib/scalar/scalar.c:772
 msgid "scalar verbose [-v | --verbose] [--build-options]"
 msgstr "scalar verbose [-v | --verbose] [--build-options]"
 
+#: contrib/scalar/scalar.c:813
+msgid "-C requires a <directory>"
+msgstr "-C requiert un <répertoire>"
+
+#: contrib/scalar/scalar.c:815
+#, c-format
+msgid "could not change to '%s'"
+msgstr "échec de modification en '%s'"
+
 #: contrib/scalar/scalar.c:821
+msgid "-c requires a <key>=<value> argument"
+msgstr "-c exige un argument <clé>=<valeur>"
+
+#: contrib/scalar/scalar.c:839
 msgid ""
-"scalar <command> [<options>]\n"
+"scalar [-C <directory>] [-c <key>=<value>] <command> [<options>]\n"
 "\n"
 "Commands:\n"
 msgstr ""
-"scalar <commande> [<options>]\n"
+"scalar [-C <répertoire>] [-c <clé>=<valeur>] <commande> [<options>]\n"
 "\n"
 "Commandes :\n"
 
@@ -25288,43 +25860,43 @@ msgstr "aucune information de compilateur disponible\n"
 msgid "no libc information available\n"
 msgstr "aucune information de libc disponible\n"
 
-#: list-objects-filter-options.h:94
+#: list-objects-filter-options.h:126
 msgid "args"
 msgstr "args"
 
-#: list-objects-filter-options.h:95
+#: list-objects-filter-options.h:127
 msgid "object filtering"
 msgstr "filtrage d'objet"
 
-#: parse-options.h:183
+#: parse-options.h:188
 msgid "expiry-date"
 msgstr "date-d'expiration"
 
-#: parse-options.h:197
+#: parse-options.h:202
 msgid "no-op (backward compatibility)"
 msgstr "sans action (rétrocompatibilité)"
 
-#: parse-options.h:310
+#: parse-options.h:341
 msgid "be more verbose"
 msgstr "être plus verbeux"
 
-#: parse-options.h:312
+#: parse-options.h:343
 msgid "be more quiet"
 msgstr "être plus silencieux"
 
-#: parse-options.h:318
+#: parse-options.h:349
 msgid "use <n> digits to display object names"
 msgstr "utiliser <n> chiffres pour afficher les noms des objets"
 
-#: parse-options.h:337
+#: parse-options.h:368
 msgid "how to strip spaces and #comments from message"
 msgstr "comment éliminer les espaces et les commentaires # du message"
 
-#: parse-options.h:338
+#: parse-options.h:369
 msgid "read pathspec from file"
 msgstr "lire les spécificateurs de fichier depuis fichier"
 
-#: parse-options.h:339
+#: parse-options.h:370
 msgid ""
 "with --pathspec-from-file, pathspec elements are separated with NUL character"
 msgstr ""
@@ -25589,461 +26161,465 @@ msgid "Display help information about Git"
 msgstr "Afficher l'information d'aide à propos de Git"
 
 #: command-list.h:108
+msgid "Run git hooks"
+msgstr "Lance les crochets git"
+
+#: command-list.h:109
 msgid "Server side implementation of Git over HTTP"
 msgstr "Implantation côté serveur de Git sur HTTP"
 
-#: command-list.h:109
+#: command-list.h:110
 msgid "Download from a remote Git repository via HTTP"
 msgstr "Télécharger depuis un dépôt Git distant via HTTP"
 
-#: command-list.h:110
+#: command-list.h:111
 msgid "Push objects over HTTP/DAV to another repository"
 msgstr "Pousser les objets sur un autre dépôt via HTTP/DAV"
 
-#: command-list.h:111
+#: command-list.h:112
 msgid "Send a collection of patches from stdin to an IMAP folder"
 msgstr "Envoyer un ensemble de rustines depuis stdin vers un répertoire IMAP"
 
-#: command-list.h:112
+#: command-list.h:113
 msgid "Build pack index file for an existing packed archive"
 msgstr ""
 "Construire un fichier d'index pack depuis une archive compactée existante"
 
-#: command-list.h:113
+#: command-list.h:114
 msgid "Create an empty Git repository or reinitialize an existing one"
 msgstr "Créer un dépôt Git vide ou réinitialiser un existant"
 
-#: command-list.h:114
+#: command-list.h:115
 msgid "Instantly browse your working repository in gitweb"
 msgstr "Naviguer instantanément votre dépôt de travail dans gitweb"
 
-#: command-list.h:115
+#: command-list.h:116
 msgid "Add or parse structured information in commit messages"
 msgstr ""
 "Ajouter ou analyser l'information structurée dans les messages de validation"
 
-#: command-list.h:116
+#: command-list.h:117
 msgid "Show commit logs"
 msgstr "Afficher l'historique des validations"
 
-#: command-list.h:117
+#: command-list.h:118
 msgid "Show information about files in the index and the working tree"
 msgstr ""
 "Afficher l'information à propos des fichiers dans l'index ou l'arbre de "
 "travail"
 
-#: command-list.h:118
+#: command-list.h:119
 msgid "List references in a remote repository"
 msgstr "Lister les références dans un dépôt distant"
 
-#: command-list.h:119
+#: command-list.h:120
 msgid "List the contents of a tree object"
 msgstr "Afficher le contenu d'un objet arbre"
 
-#: command-list.h:120
+#: command-list.h:121
 msgid "Extracts patch and authorship from a single e-mail message"
 msgstr ""
 "Extraire le patch et l'information de d'auteur depuis un simple message de "
 "courriel"
 
-#: command-list.h:121
+#: command-list.h:122
 msgid "Simple UNIX mbox splitter program"
 msgstr "Programme simple de découpage de mbox UNIX"
 
-#: command-list.h:122
+#: command-list.h:123
 msgid "Run tasks to optimize Git repository data"
 msgstr "Lancer les tâches pour optimiser les données du depôt Git"
 
-#: command-list.h:123
+#: command-list.h:124
 msgid "Join two or more development histories together"
 msgstr "Fusionner deux ou plusieurs historiques de développement ensemble"
 
-#: command-list.h:124
+#: command-list.h:125
 msgid "Find as good common ancestors as possible for a merge"
 msgstr "Trouver un ancêtre aussi bon que possible pour une fusion"
 
-#: command-list.h:125
+#: command-list.h:126
 msgid "Run a three-way file merge"
 msgstr "Lancer une fusion à 3 points"
 
-#: command-list.h:126
+#: command-list.h:127
 msgid "Run a merge for files needing merging"
 msgstr "Lancer une fusion à 3 points pour les fichiers à fusionner"
 
-#: command-list.h:127
+#: command-list.h:128
 msgid "The standard helper program to use with git-merge-index"
 msgstr "Le programme assistant standard à utiliser avec git-merge-index"
 
-#: command-list.h:128
+#: command-list.h:129
 msgid "Show three-way merge without touching index"
 msgstr "Afficher la fusion à trois points sans modifier l'index"
 
-#: command-list.h:129
+#: command-list.h:130
 msgid "Run merge conflict resolution tools to resolve merge conflicts"
 msgstr ""
 "Lancer les outils de résolution de conflit de fusion pour résoudre les "
 "conflits de fusion"
 
-#: command-list.h:130
+#: command-list.h:131
 msgid "Creates a tag object with extra validation"
 msgstr "Créer un objet étiquette avec validation supplémentaire"
 
-#: command-list.h:131
+#: command-list.h:132
 msgid "Build a tree-object from ls-tree formatted text"
 msgstr "Construire un objet arbre depuis une texte formaté comme ls-tree"
 
-#: command-list.h:132
+#: command-list.h:133
 msgid "Write and verify multi-pack-indexes"
 msgstr "Écrire et vérifier les index multi-paquet"
 
-#: command-list.h:133
+#: command-list.h:134
 msgid "Move or rename a file, a directory, or a symlink"
 msgstr "Déplacer ou renommer un fichier, un répertoire, ou un lien symbolique"
 
-#: command-list.h:134
+#: command-list.h:135
 msgid "Find symbolic names for given revs"
 msgstr "Trouver les noms symboliques pour des révisions données"
 
-#: command-list.h:135
+#: command-list.h:136
 msgid "Add or inspect object notes"
 msgstr "Ajouter ou inspecter les notes d'un objet"
 
-#: command-list.h:136
+#: command-list.h:137
 msgid "Import from and submit to Perforce repositories"
 msgstr "Importer et soumettre à des dépôt Perforce"
 
-#: command-list.h:137
+#: command-list.h:138
 msgid "Create a packed archive of objects"
 msgstr "Créer une archive compactée d'objets"
 
-#: command-list.h:138
+#: command-list.h:139
 msgid "Find redundant pack files"
 msgstr "Trouver les fichiers pack redondants"
 
-#: command-list.h:139
+#: command-list.h:140
 msgid "Pack heads and tags for efficient repository access"
 msgstr "Empaqueter les têtes et les étiquettes pour un accès efficace au dépôt"
 
-#: command-list.h:140
+#: command-list.h:141
 msgid "Compute unique ID for a patch"
 msgstr "Calculer l'ID unique d'un patch"
 
-#: command-list.h:141
+#: command-list.h:142
 msgid "Prune all unreachable objects from the object database"
 msgstr ""
 "Éliminer les objets inatteignables depuis la base de données des objets"
 
-#: command-list.h:142
+#: command-list.h:143
 msgid "Remove extra objects that are already in pack files"
 msgstr "Éliminer les objets qui sont déjà présents dans les fichiers pack"
 
-#: command-list.h:143
+#: command-list.h:144
 msgid "Fetch from and integrate with another repository or a local branch"
 msgstr "Rapatrier et intégrer un autre dépôt ou une branche locale"
 
-#: command-list.h:144
+#: command-list.h:145
 msgid "Update remote refs along with associated objects"
 msgstr "Mettre à jour les références distantes ainsi que les objets associés"
 
-#: command-list.h:145
+#: command-list.h:146
 msgid "Applies a quilt patchset onto the current branch"
 msgstr "Appliquer un patchset quilt sur la branche courante"
 
-#: command-list.h:146
+#: command-list.h:147
 msgid "Compare two commit ranges (e.g. two versions of a branch)"
 msgstr ""
 "Comparer deux plages de commits (par exemple deux versions d'une branche)"
 
-#: command-list.h:147
+#: command-list.h:148
 msgid "Reads tree information into the index"
 msgstr "Lire l'information d'arbre dans l'index"
 
-#: command-list.h:148
+#: command-list.h:149
 msgid "Reapply commits on top of another base tip"
 msgstr "Réapplication des commits sur le sommet de l'autre base"
 
-#: command-list.h:149
+#: command-list.h:150
 msgid "Receive what is pushed into the repository"
 msgstr "Recevoir ce qui est poussé dans le dépôt"
 
-#: command-list.h:150
+#: command-list.h:151
 msgid "Manage reflog information"
 msgstr "Gérer l'information de reflog"
 
-#: command-list.h:151
+#: command-list.h:152
 msgid "Manage set of tracked repositories"
 msgstr "Gérer un ensemble de dépôts suivis"
 
-#: command-list.h:152
+#: command-list.h:153
 msgid "Pack unpacked objects in a repository"
 msgstr "Empaqueter les objets non-empaquetés d'un dépôt"
 
-#: command-list.h:153
+#: command-list.h:154
 msgid "Create, list, delete refs to replace objects"
 msgstr "Créer, lister, supprimer des référence pour remplacer des objets"
 
-#: command-list.h:154
+#: command-list.h:155
 msgid "Generates a summary of pending changes"
 msgstr "Générer une résumé des modifications en attentes"
 
-#: command-list.h:155
+#: command-list.h:156
 msgid "Reuse recorded resolution of conflicted merges"
 msgstr "Réutiliser une résolution enregistrée de fusions conflictuelles"
 
-#: command-list.h:156
+#: command-list.h:157
 msgid "Reset current HEAD to the specified state"
 msgstr "Réinitialiser la HEAD courante à l'état spécifié"
 
-#: command-list.h:157
+#: command-list.h:158
 msgid "Restore working tree files"
 msgstr "Restaurer les fichiers l'arbre de travail"
 
-#: command-list.h:158
+#: command-list.h:159
 msgid "Lists commit objects in reverse chronological order"
 msgstr "Afficher les objets commit dans l'ordre chronologique inverse"
 
-#: command-list.h:159
+#: command-list.h:160
 msgid "Pick out and massage parameters"
 msgstr "Analyser et préparer les paramètres"
 
-#: command-list.h:160
+#: command-list.h:161
 msgid "Revert some existing commits"
 msgstr "Inverser des commits existants"
 
-#: command-list.h:161
+#: command-list.h:162
 msgid "Remove files from the working tree and from the index"
 msgstr "Supprimer des fichiers de la copie de travail et de l'index"
 
-#: command-list.h:162
+#: command-list.h:163
 msgid "Send a collection of patches as emails"
 msgstr "Envoyer un ensemble de patchs comme courriels"
 
-#: command-list.h:163
+#: command-list.h:164
 msgid "Push objects over Git protocol to another repository"
 msgstr "Pousser les objets sur un autre dépôt via le protocole Git"
 
-#: command-list.h:164
+#: command-list.h:165
 msgid "Git's i18n setup code for shell scripts"
 msgstr "Le code d'initialisation i18n pour les scripts shell"
 
-#: command-list.h:165
+#: command-list.h:166
 msgid "Common Git shell script setup code"
 msgstr "Le code d'initialisation commun aux scripts shell Git"
 
-#: command-list.h:166
+#: command-list.h:167
 msgid "Restricted login shell for Git-only SSH access"
 msgstr "Shell de login restreint pour un accès SSH vers Git seulement"
 
-#: command-list.h:167
+#: command-list.h:168
 msgid "Summarize 'git log' output"
 msgstr "Résumer la sortie de 'git log'"
 
-#: command-list.h:168
+#: command-list.h:169
 msgid "Show various types of objects"
 msgstr "Afficher différents types d'objets"
 
-#: command-list.h:169
+#: command-list.h:170
 msgid "Show branches and their commits"
 msgstr "Afficher les branches et leurs commits"
 
-#: command-list.h:170
+#: command-list.h:171
 msgid "Show packed archive index"
 msgstr "Afficher l'index de l'archive empaquetée"
 
-#: command-list.h:171
+#: command-list.h:172
 msgid "List references in a local repository"
 msgstr "Lister les références du dépôt local"
 
-#: command-list.h:172
-msgid "Initialize and modify the sparse-checkout"
-msgstr "Initialiser et modifier l'extraction clairsemée"
-
 #: command-list.h:173
+msgid "Reduce your working tree to a subset of tracked files"
+msgstr "Réduit votre arbre de travail à un sous-ensemble de fichiers suivis"
+
+#: command-list.h:174
 msgid "Add file contents to the staging area"
 msgstr "Ajouter le contenu de fichiers à l'index"
 
-#: command-list.h:174
+#: command-list.h:175
 msgid "Stash the changes in a dirty working directory away"
 msgstr "Remiser les modifications d'un répertoire de travail sale"
 
-#: command-list.h:175
+#: command-list.h:176
 msgid "Show the working tree status"
 msgstr "Afficher l'état de la copie de travail"
 
-#: command-list.h:176
+#: command-list.h:177
 msgid "Remove unnecessary whitespace"
 msgstr "Retirer les espaces inutiles"
 
-#: command-list.h:177
+#: command-list.h:178
 msgid "Initialize, update or inspect submodules"
 msgstr "Initialiser, mettre à jour et inspecter les sous-modules"
 
-#: command-list.h:178
+#: command-list.h:179
 msgid "Bidirectional operation between a Subversion repository and Git"
 msgstr "Opération Bidirectionnelle entre un dépôt Subversion et Git"
 
-#: command-list.h:179
+#: command-list.h:180
 msgid "Switch branches"
 msgstr "Basculer de branche"
 
-#: command-list.h:180
+#: command-list.h:181
 msgid "Read, modify and delete symbolic refs"
 msgstr "Lire, modifier et supprimer les références symboliques"
 
-#: command-list.h:181
+#: command-list.h:182
 msgid "Create, list, delete or verify a tag object signed with GPG"
 msgstr ""
 "Créer, lister, supprimer ou vérifier un objet d'étiquette signé avec GPG"
 
-#: command-list.h:182
+#: command-list.h:183
 msgid "Creates a temporary file with a blob's contents"
 msgstr "Créer un fichier temporaire avec le contenu d'un blob"
 
-#: command-list.h:183
+#: command-list.h:184
 msgid "Unpack objects from a packed archive"
 msgstr "Dépaqueter les objets depuis une archive empaquetée"
 
-#: command-list.h:184
+#: command-list.h:185
 msgid "Register file contents in the working tree to the index"
 msgstr "Enregistrer le contenu d'un fichier de l'arbre de travail dans l'index"
 
-#: command-list.h:185
+#: command-list.h:186
 msgid "Update the object name stored in a ref safely"
 msgstr ""
 "Mettre à jour le nom d'objet stocké dans une référence en toute sécurité"
 
-#: command-list.h:186
+#: command-list.h:187
 msgid "Update auxiliary info file to help dumb servers"
 msgstr ""
 "Mettre à jour le fichier d'informations auxiliaires pour aider les serveurs "
 "idiots"
 
-#: command-list.h:187
+#: command-list.h:188
 msgid "Send archive back to git-archive"
 msgstr "Renvoyer une archive dans git-archive"
 
-#: command-list.h:188
+#: command-list.h:189
 msgid "Send objects packed back to git-fetch-pack"
 msgstr "Renvoyer des objets empaquetés dans git-fetch-pack"
 
-#: command-list.h:189
+#: command-list.h:190
 msgid "Show a Git logical variable"
 msgstr "Afficher un variable logique de Git"
 
-#: command-list.h:190
+#: command-list.h:191
 msgid "Check the GPG signature of commits"
 msgstr "Vérifier la signature GPG de commits"
 
-#: command-list.h:191
+#: command-list.h:192
 msgid "Validate packed Git archive files"
 msgstr "Valider des fichiers d'archive Git empaquetés"
 
-#: command-list.h:192
+#: command-list.h:193
 msgid "Check the GPG signature of tags"
 msgstr "Vérifier la signature GPG d'étiquettes"
 
-#: command-list.h:193
+#: command-list.h:194
 msgid "Show logs with difference each commit introduces"
 msgstr "Afficher les journaux avec la différence que chaque commit introduit"
 
-#: command-list.h:194
+#: command-list.h:195
 msgid "Manage multiple working trees"
 msgstr "Gérer des arbres de travail multiples"
 
-#: command-list.h:195
+#: command-list.h:196
 msgid "Create a tree object from the current index"
 msgstr "Créer un objet arbre depuis l'index courant"
 
-#: command-list.h:196
+#: command-list.h:197
 msgid "Defining attributes per path"
 msgstr "Définition des attributs par chemin"
 
-#: command-list.h:197
+#: command-list.h:198
 msgid "Git command-line interface and conventions"
 msgstr "Interface en ligne de commande et conventions de Git"
 
-#: command-list.h:198
+#: command-list.h:199
 msgid "A Git core tutorial for developers"
 msgstr "Tutoriel du cœur de Git pour les développeurs"
 
-#: command-list.h:199
+#: command-list.h:200
 msgid "Providing usernames and passwords to Git"
 msgstr "Fourniture des noms d'utilisateurs et des mots de passe à Git"
 
-#: command-list.h:200
+#: command-list.h:201
 msgid "Git for CVS users"
 msgstr "Git pour les utilisateurs de CVS"
 
-#: command-list.h:201
+#: command-list.h:202
 msgid "Tweaking diff output"
 msgstr "Bidouillage de la sortie diff"
 
-#: command-list.h:202
+#: command-list.h:203
 msgid "A useful minimum set of commands for Everyday Git"
 msgstr "Un ensemble minimal utile des commandes de Git pour tous les jours"
 
-#: command-list.h:203
+#: command-list.h:204
 msgid "Frequently asked questions about using Git"
 msgstr "Foire aux questions sur l'utilisation de Git"
 
-#: command-list.h:204
+#: command-list.h:205
 msgid "A Git Glossary"
 msgstr "Un glossaire Git"
 
-#: command-list.h:205
+#: command-list.h:206
 msgid "Hooks used by Git"
 msgstr "Crochets utilisés par Git"
 
-#: command-list.h:206
+#: command-list.h:207
 msgid "Specifies intentionally untracked files to ignore"
 msgstr "Spécifie les fichiers non-suivis à ignorer intentionnellement"
 
-#: command-list.h:207
+#: command-list.h:208
 msgid "The Git repository browser"
 msgstr "Le navigateur de dépôt Git"
 
-#: command-list.h:208
+#: command-list.h:209
 msgid "Map author/committer names and/or E-Mail addresses"
 msgstr ""
 "Fait correspondre les noms d'auteur/validateur avec les adresses de courriel"
 
-#: command-list.h:209
+#: command-list.h:210
 msgid "Defining submodule properties"
 msgstr "Définition des propriétés de sous-module"
 
-#: command-list.h:210
+#: command-list.h:211
 msgid "Git namespaces"
 msgstr "Espaces de nom de Git"
 
-#: command-list.h:211
+#: command-list.h:212
 msgid "Helper programs to interact with remote repositories"
 msgstr "Programmes assistants pour interagir avec des dépôts distants"
 
-#: command-list.h:212
+#: command-list.h:213
 msgid "Git Repository Layout"
 msgstr "Disposition d'un dépôt Git"
 
-#: command-list.h:213
+#: command-list.h:214
 msgid "Specifying revisions and ranges for Git"
 msgstr "Spécification des révisions et portées pour Git"
 
-#: command-list.h:214
+#: command-list.h:215
 msgid "Mounting one repository inside another"
 msgstr "Montage d'un dépôt dans un autre dépôt"
 
-#: command-list.h:215
+#: command-list.h:216
 msgid "A tutorial introduction to Git"
 msgstr "Une introduction pratique à Git"
 
-#: command-list.h:216
+#: command-list.h:217
 msgid "A tutorial introduction to Git: part two"
 msgstr "Une introduction pratique à Git : deuxième partie"
 
-#: command-list.h:217
+#: command-list.h:218
 msgid "Git web interface (web frontend to Git repositories)"
 msgstr "Interface web de Git"
 
-#: command-list.h:218
+#: command-list.h:219
 msgid "An overview of recommended workflows with Git"
 msgstr "Un aperçu des flux de travail recommandés avec Git"
 
@@ -26087,76 +26663,50 @@ msgstr "Essai de fusion simple avec $pretty_name"
 msgid "Simple merge did not work, trying automatic merge."
 msgstr "La fusion simple a échoué, essai avec la fusion automatique."
 
-#: git-submodule.sh:401
-#, sh-format
-msgid "Unable to find current revision in submodule path '$displaypath'"
-msgstr ""
-"Impossible de trouver la révision courante dans le chemin de sous-module "
-"'$displaypath'"
-
-#: git-submodule.sh:411
-#, sh-format
-msgid "Unable to fetch in submodule path '$sm_path'"
-msgstr "Impossible de rapatrier dans le chemin de sous-module '$sm_path'"
-
-#: git-submodule.sh:416
-#, sh-format
-msgid ""
-"Unable to find current ${remote_name}/${branch} revision in submodule path "
-"'$sm_path'"
-msgstr ""
-"Impossible de trouver la révision courante ${remote_name}/${branch} dans le "
-"chemin de sous-module '$sm_path'"
-
-#: git-submodule.sh:464
-#, sh-format
-msgid "Failed to recurse into submodule path '$displaypath'"
-msgstr "Échec de parcours dans le chemin du sous-module '$displaypath'"
-
 #: git-sh-setup.sh:89 git-sh-setup.sh:94
 #, sh-format
 msgid "usage: $dashless $USAGE"
 msgstr "usage : $dashless $USAGE"
 
-#: git-sh-setup.sh:183
+#: git-sh-setup.sh:182
 #, sh-format
 msgid "Cannot chdir to $cdup, the toplevel of the working tree"
 msgstr ""
 "Impossible de se placer dans le répertoire $cdup, la racine de la copie de "
 "travail"
 
-#: git-sh-setup.sh:192 git-sh-setup.sh:199
+#: git-sh-setup.sh:191 git-sh-setup.sh:198
 #, sh-format
 msgid "fatal: $program_name cannot be used without a working tree."
 msgstr "fatal : $program_name ne peut pas être utilisé sans copie de travail."
 
-#: git-sh-setup.sh:213
+#: git-sh-setup.sh:212
 msgid "Cannot rewrite branches: You have unstaged changes."
 msgstr ""
 "Impossible de réécrire les branches : vous avez des modifications non "
 "indexées."
 
-#: git-sh-setup.sh:216
+#: git-sh-setup.sh:215
 #, sh-format
 msgid "Cannot $action: You have unstaged changes."
 msgstr "$action est impossible : vous avez des modifications non indexées."
 
-#: git-sh-setup.sh:227
+#: git-sh-setup.sh:226
 #, sh-format
 msgid "Cannot $action: Your index contains uncommitted changes."
 msgstr ""
 "$action est impossible : votre index contient des modifications non validées."
 
-#: git-sh-setup.sh:229
+#: git-sh-setup.sh:228
 msgid "Additionally, your index contains uncommitted changes."
 msgstr "De plus, votre index contient des modifications non validées."
 
-#: git-sh-setup.sh:349
+#: git-sh-setup.sh:348
 msgid "You need to run this command from the toplevel of the working tree."
 msgstr ""
 "Vous devez lancer cette commande depuis la racine de votre copie de travail."
 
-#: git-sh-setup.sh:354
+#: git-sh-setup.sh:353
 msgid "Unable to determine absolute path of git directory"
 msgstr "Impossible de déterminer le chemin absolu du répertoire git"
 
@@ -26846,23 +27396,23 @@ msgstr "impossible d'envoyer un message comme 7bit"
 msgid "invalid transfer encoding"
 msgstr "codage de transfert invalide"
 
-#: git-send-email.perl:2095
+#: git-send-email.perl:2100
 #, perl-format
 msgid ""
-"fatal: %s: rejected by sendemail-validate hook\n"
+"fatal: %s: rejected by %s hook\n"
 "%s\n"
 "warning: no patches were sent\n"
 msgstr ""
-"fatal : %s : rejeté par le crochet sendemail-validate\n"
+"fatal : %s : rejeté par le crochet %s\n"
 "%s\n"
 "attention : aucun patch envoyé\n"
 
-#: git-send-email.perl:2105 git-send-email.perl:2158 git-send-email.perl:2168
+#: git-send-email.perl:2110 git-send-email.perl:2163 git-send-email.perl:2173
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr "impossible d'ouvrir %s :%s\n"
 
-#: git-send-email.perl:2108
+#: git-send-email.perl:2113
 #, perl-format
 msgid ""
 "fatal: %s:%d is longer than 998 characters\n"
@@ -26871,17 +27421,291 @@ msgstr ""
 "fatal : %s : %d est plus long que 998 caractères \n"
 "attention : aucun patch envoyé\n"
 
-#: git-send-email.perl:2126
+#: git-send-email.perl:2131
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
 msgstr "%s sauté avec un suffix de sauvegarde '%s'.\n"
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:2130
+#: git-send-email.perl:2135
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
 msgstr "Souhaitez-vous réellement envoyer %s ?[y|N] : "
 
+#, perl-format
+#~ msgid "fatal: %s: rejected by %s hook\n"
+#~ msgstr "fatal : %s : rejetée par le crocher %s\n"
+
+#~ msgid "git archive --list"
+#~ msgstr "git archive --list"
+
+#, c-format
+#~ msgid "unknown value for --diff-merges: %s"
+#~ msgstr "valeur inconnue pour --diff-merges : %s"
+
+#, c-format
+#~ msgid "invalid value '%s' for lsrefs.unborn"
+#~ msgstr "valeur invalide '%s' pour lsrefs.unborn"
+
+#~ msgid "backend for `git stash -p`"
+#~ msgstr "backend pour `git stash -p`"
+
+#, c-format
+#~ msgid "Invalid value for --empty: %s"
+#~ msgstr "Valeur invalide pour --empty : %s"
+
+#, c-format
+#~ msgid "Invalid value for --patch-format: %s"
+#~ msgstr "Valeur invalide pour --patch-format : %s"
+
+#, c-format
+#~ msgid "Invalid value for --show-current-patch: %s"
+#~ msgstr "Valeur invalide pour --show-current-patch : %s"
+
+#~ msgid ""
+#~ "git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad "
+#~ "| --term-new]"
+#~ msgstr ""
+#~ "git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad "
+#~ "| --term-new]"
+
+#~ msgid "git bisect--helper --bisect-next"
+#~ msgstr "git bisect--helper --bisect-next"
+
+#~ msgid "git bisect--helper --bisect-visualize"
+#~ msgstr "git bisect--helper --bisect-visualize"
+
+#, c-format
+#~ msgid "invalid color '%s' in color.blame.repeatedLines"
+#~ msgstr "couleur invalide '%s' dans color.blame.repeatedLines"
+
+#~ msgid "invalid value for blame.coloring"
+#~ msgstr "valeur invalide pour blame.coloring"
+
+#~ msgid ""
+#~ "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e "
+#~ "| -p | <type> | --textconv | --filters) [--path=<path>] <object>"
+#~ msgstr ""
+#~ "git cat-file (-t [--allow-unknow-type] | -s [--allow-unknow-type] | -e | -"
+#~ "p | <type> | --textconv | --filters) [--path=<chemin>] <objet>"
+
+#~ msgid "show object type"
+#~ msgstr "afficher le type de l'objet"
+
+#~ msgid "exit with zero when there's no error"
+#~ msgstr "sortir avec un code d'erreur nul quand il n'y a aucune erreur"
+
+#~ msgid "show info and content of objects fed from the standard input"
+#~ msgstr ""
+#~ "afficher l'information et le contenu des objets passés en entrée standard"
+
+#~ msgid "show info about objects fed from the standard input"
+#~ msgstr "afficher l'information des objets passés en entrée standard"
+
+#~ msgid "follow in-tree symlinks (used with --batch or --batch-check)"
+#~ msgstr ""
+#~ "suivre les liens symbolique internes à la copie de travail (utilisé avec "
+#~ "--batch ou --batch-check)"
+
+#~ msgid "show all objects with --batch or --batch-check"
+#~ msgstr "montrer tous les objets avec --batch ou --batch-check"
+
+#~ msgid "do not order --batch-all-objects output"
+#~ msgstr "ne pas ordonner la sortie de --batch-all-objects"
+
+#~ msgid "set up tracking mode (see git-pull(1))"
+#~ msgstr "régler le mode de suivi (voir git-pull(1))"
+
+#~ msgid "Using both --reset-author and --author does not make sense"
+#~ msgstr ""
+#~ "L'utilisation simultanée de --reset-author et --author n'a pas de sens"
+
+#~ msgid "Options --squash and --fixup cannot be used together"
+#~ msgstr ""
+#~ "Les options --squash et --fixup ne peuvent pas être utilisées ensemble"
+
+#~ msgid "Only one of -c/-C/-F/--fixup can be used."
+#~ msgstr "Une seule option parmi -c/-C/-F/--fixup peut être utilisée."
+
+#~ msgid "Option -m cannot be combined with -c/-C/-F."
+#~ msgstr "L'option -m ne peut pas être combinée avec -c/-C/-F."
+
+#~ msgid ""
+#~ "Only one of --include/--only/--all/--interactive/--patch can be used."
+#~ msgstr ""
+#~ "Une seule option parmi --include/--only/--all/--interactive/--patch peut "
+#~ "être utilisée."
+
+#~ msgid "git count-objects [-v] [-H | --human-readable]"
+#~ msgstr "git count-objects [-v] [-H | --human-readable]"
+
+#, c-format
+#~ msgid "configuration fetch.output contains invalid value %s"
+#~ msgstr ""
+#~ "le paramètre de configuration fetch.output contient une valeur invalide %s"
+
+#~ msgid "--cached or --untracked cannot be used with --no-index"
+#~ msgstr ""
+#~ "--cached ou --untracked ne peuvent pas être utilisés avec --no-index"
+
+#~ msgid "--untracked cannot be used with --cached"
+#~ msgstr "--untracked ne peut pas être utilisé avec --cached"
+
+#~ msgid "git hash-object  --stdin-paths"
+#~ msgstr "git hash-object  --stdin-paths"
+
+#~ msgid "git help [-g|--guides]"
+#~ msgstr "git help [-g|--guides]"
+
+#~ msgid "git help [-c|--config]"
+#~ msgstr "git help [-c|--config]"
+
+#~ msgid "git mktag"
+#~ msgstr "git mktag"
+
+#~ msgid "git mktree [-z] [--missing] [--batch]"
+#~ msgstr "git mktree [-z] [--missing] [--batch]"
+
+#~ msgid "read from stdin"
+#~ msgstr "lire depuis l'entrée standard"
+
+#~ msgid "git notes merge --commit [-v | -q]"
+#~ msgstr "git notes merge --commit [-v | -q]"
+
+#~ msgid "git notes merge --abort [-v | -q]"
+#~ msgstr "git notes merge --abort [-v | -q]"
+
+#~ msgid "git notes get-ref"
+#~ msgstr "git notes get-ref"
+
+#~ msgid "invalid value for --missing"
+#~ msgstr "valeur invalide pour --missing"
+
+#~ msgid "git prune-packed [-n | --dry-run] [-q | --quiet]"
+#~ msgstr "git prune-packed [-n | --dry-run] [-q | --quiet]"
+
+#, c-format
+#~ msgid "Invalid value for %s: %s"
+#~ msgstr "Valeur invalide pour %s : %s"
+
+#, c-format
+#~ msgid "Invalid value for pull.ff: %s"
+#~ msgstr "Valeur invalide pour pull.ff : %s"
+
+#~ msgid "git rebase --continue | --abort | --skip | --edit-todo"
+#~ msgstr "git rebase --continue | --abort | --skip | --edit-todo"
+
+#, c-format
+#~ msgid "'%s' is not a valid timestamp"
+#~ msgstr "'%s' n'est pas un horodatage valide"
+
+#~ msgid "git reflog [ show | expire | delete | exists ]"
+#~ msgstr "git reflog [ show | expire | delete | exists ]"
+
+#~ msgid "git remote [-v | --verbose]"
+#~ msgstr "git remote [-v | --verbose]"
+
+#~ msgid "git replace [-f] --convert-graft-file"
+#~ msgstr "git replace [-f] --convert-graft-file"
+
+#, c-format
+#~ msgid ""
+#~ "\n"
+#~ "It took %.2f seconds to enumerate unstaged changes after reset.  You can\n"
+#~ "use '--quiet' to avoid this.  Set the config setting reset.quiet to true\n"
+#~ "to make this the default.\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Les modifications non-indexées ont pris %.2f secondes à énumérer après "
+#~ "reset.\n"
+#~ "Vous pouvez utiliser '--quiet' pour éviter ce message. Réglez le "
+#~ "paramètre de\n"
+#~ "config reset.quiet à true pour avoir ce comportement en permanence.\n"
+
+#~ msgid "git sparse-checkout list"
+#~ msgstr "git sparse-checkout list"
+
+#~ msgid "unable to upgrade repository format to enable worktreeConfig"
+#~ msgstr ""
+#~ "impossible de mettre à jour le format de dépôt pour activer worktreeConfig"
+
+#~ msgid "git sparse-checkout init [--cone] [--[no-]sparse-index]"
+#~ msgstr "git sparse-checkout init [--cone] [--[no-]sparse-index]"
+
+#~ msgid "git sparse-checkout reapply [--[no-]cone] [--[no-]sparse-index]"
+#~ msgstr "git sparse-checkout reapply [--[no-]cone] [--[no-]sparse-index]"
+
+#~ msgid "git sparse-checkout disable"
+#~ msgstr "git sparse-checkout disable"
+
+#~ msgid ""
+#~ "the stash.useBuiltin support has been removed!\n"
+#~ "See its entry in 'git help config' for details."
+#~ msgstr ""
+#~ "la prise en charge de stash.useBuiltin a été supprimée !\n"
+#~ "Voir son entrée dans 'git help config' pour plus de détails."
+
+#~ msgid "git stripspace [-s | --strip-comments]"
+#~ msgstr "git stripspace [-s | --strip-comments]"
+
+#~ msgid "git stripspace [-c | --comment-lines]"
+#~ msgstr "git stripspace [-c | --comment-lines]"
+
+#~ msgid "submodule--helper print-default-remote takes no arguments"
+#~ msgstr "submodule--helper  print-default-remote n'accepte aucun argument"
+
+#~ msgid "git submodule--helper update-clone [--prefix=<path>] [<path>...]"
+#~ msgstr ""
+#~ "git submodule--helper update-clone [--prefix=<chemin>] [<chemin>...]"
+
+#~ msgid "suppress output for update by rebase or merge"
+#~ msgstr ""
+#~ "supprimer la sortie lors de la mise à jour par un rebasage ou une fusion"
+
+#~ msgid "overrides update mode in case the repository is a fresh clone"
+#~ msgstr ""
+#~ "passer outre le mode mise à jour dans le cas où le dépôt est un clone "
+#~ "nouveau"
+
+#~ msgid "depth for shallow fetch"
+#~ msgstr "profondeur pour une récupération superficielle"
+
+#~ msgid "sha1"
+#~ msgstr "sha1"
+
+#~ msgid "SHA1 expected by superproject"
+#~ msgstr "SHA1 attendu par le super-projet"
+
+#~ msgid "subsha1"
+#~ msgstr "sous-sha1"
+
+#~ msgid "SHA1 of submodule's HEAD"
+#~ msgstr "SHA1 de la HEAD du sous-module"
+
+#~ msgid "git submodule--helper run-update-procedure [<options>] <path>"
+#~ msgstr "git submodule--helper run-update-procedure [<options>] <chemin>"
+
+#~ msgid "git submodule--helper config --check-writeable"
+#~ msgstr "git submodule--helper config --check-writeable"
+
+#~ msgid "git update-server-info [--force]"
+#~ msgstr "git update-server-info [--force]"
+
+#~ msgid "Initialize and modify the sparse-checkout"
+#~ msgstr "Initialiser et modifier l'extraction clairsemée"
+
+#, sh-format
+#~ msgid ""
+#~ "Unable to find current ${remote_name}/${branch} revision in submodule "
+#~ "path '$sm_path'"
+#~ msgstr ""
+#~ "Impossible de trouver la révision courante ${remote_name}/${branch} dans "
+#~ "le chemin de sous-module '$sm_path'"
+
+#, sh-format
+#~ msgid "Failed to recurse into submodule path '$displaypath'"
+#~ msgstr "Échec de parcours dans le chemin du sous-module '$displaypath'"
+
 #~ msgid "--index outside a repository"
 #~ msgstr "--index hors d'un dépôt"