l10n: fr.po v2.17.0 round 1
authorJean-Noël Avila <jn.avila@free.fr>
Fri, 16 Mar 2018 22:39:49 +0000 (23:39 +0100)
committerJean-Noël Avila <jn.avila@free.fr>
Sat, 17 Mar 2018 15:21:34 +0000 (16:21 +0100)
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
po/fr.po

index 3aa1e3c..4351262 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -74,8 +74,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2018-01-07 07:50+0800\n"
-"PO-Revision-Date: 2018-01-07 18:53+0100\n"
+"POT-Creation-Date: 2018-03-16 07:29+0800\n"
+"PO-Revision-Date: 2018-03-17 16:20+0100\n"
 "Last-Translator: Jean-Noël Avila <jn.avila@free.fr>\n"
 "Language-Team: Jean-Noël Avila <jn.avila@free.fr>\n"
 "Language: fr\n"
@@ -126,7 +126,7 @@ msgstr ""
 msgid "Exiting because of an unresolved conflict."
 msgstr "Abandon à cause de conflit non résolu."
 
-#: advice.c:121 builtin/merge.c:1213
+#: advice.c:121 builtin/merge.c:1251
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe)."
 
@@ -546,7 +546,7 @@ msgstr "le mode change pour %s, qui n'est pas dans la HEAD actuelle"
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "l'information de sha1 est manquante ou inutilisable (%s)."
 
-#: apply.c:4095 builtin/checkout.c:236 builtin/reset.c:148
+#: apply.c:4095 builtin/checkout.c:235 builtin/reset.c:140
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "échec de make_cache_entry pour le chemin '%s'"
@@ -624,7 +624,7 @@ msgstr[1] "Application du patch %%s avec %d rejets..."
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "troncature du nom de fichier .rej en %.*s.rej"
 
-#: apply.c:4545 builtin/fetch.c:761 builtin/fetch.c:1011
+#: apply.c:4545 builtin/fetch.c:775 builtin/fetch.c:1025
 #, c-format
 msgid "cannot open %s"
 msgstr "impossible d'ouvrir %s"
@@ -682,11 +682,11 @@ msgstr[1] "%d lignes ajoutées après correction des erreurs d'espace."
 msgid "Unable to write new index file"
 msgstr "Impossible d'écrire le nouveau fichier d'index"
 
-#: apply.c:4921 apply.c:4924 builtin/am.c:2220 builtin/am.c:2223
-#: builtin/clone.c:116 builtin/fetch.c:116 builtin/pull.c:193
-#: builtin/submodule--helper.c:369 builtin/submodule--helper.c:860
-#: builtin/submodule--helper.c:863 builtin/submodule--helper.c:1230
-#: builtin/submodule--helper.c:1233 builtin/submodule--helper.c:1450
+#: apply.c:4921 apply.c:4924 builtin/am.c:2254 builtin/am.c:2257
+#: builtin/clone.c:118 builtin/fetch.c:127 builtin/pull.c:193
+#: builtin/submodule--helper.c:403 builtin/submodule--helper.c:1197
+#: builtin/submodule--helper.c:1200 builtin/submodule--helper.c:1567
+#: builtin/submodule--helper.c:1570 builtin/submodule--helper.c:1787
 #: git-add--interactive.perl:197
 msgid "path"
 msgstr "chemin"
@@ -699,7 +699,7 @@ msgstr "ne pas appliquer les modifications qui correspondent au chemin donné"
 msgid "apply changes matching the given path"
 msgstr "appliquer les modifications qui correspondent au chemin donné"
 
-#: apply.c:4927 builtin/am.c:2229
+#: apply.c:4927 builtin/am.c:2263
 msgid "num"
 msgstr "num"
 
@@ -740,80 +740,80 @@ msgstr "appliquer les patch sans toucher à la copie de travail"
 msgid "accept a patch that touches outside the working area"
 msgstr "accepter un patch qui touche hors de la copie de travail"
 
-#: apply.c:4949
+#: apply.c:4950
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "appliquer aussi le patch (à utiliser avec ---stat/--summary/--check)"
 
-#: apply.c:4951
+#: apply.c:4952
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "tenter une fusion à 3 points si le patch ne s'applique pas proprement"
 
-#: apply.c:4953
+#: apply.c:4954
 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:4956 builtin/checkout-index.c:168 builtin/ls-files.c:515
+#: apply.c:4957 builtin/checkout-index.c:168 builtin/ls-files.c:515
 msgid "paths are separated with NUL character"
 msgstr "les chemins sont séparés par un caractère NUL"
 
-#: apply.c:4958
+#: apply.c:4959
 msgid "ensure at least <n> lines of context match"
 msgstr "s'assurer d'au moins <n> lignes de correspondance de contexte"
 
-#: apply.c:4959 builtin/am.c:2208 builtin/interpret-trailers.c:95
+#: apply.c:4960 builtin/am.c:2242 builtin/interpret-trailers.c:95
 #: builtin/interpret-trailers.c:97 builtin/interpret-trailers.c:99
-#: builtin/pack-objects.c:3009
+#: builtin/pack-objects.c:3035
 msgid "action"
 msgstr "action"
 
-#: apply.c:4960
+#: apply.c:4961
 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:4963 apply.c:4966
+#: apply.c:4964 apply.c:4967
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignorer des modifications d'espace lors de la recherche de contexte"
 
-#: apply.c:4969
+#: apply.c:4970
 msgid "apply the patch in reverse"
 msgstr "appliquer le patch en sens inverse"
 
-#: apply.c:4971
+#: apply.c:4972
 msgid "don't expect at least one line of context"
 msgstr "ne pas s'attendre à au moins une ligne de contexte"
 
-#: apply.c:4973
+#: apply.c:4974
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "laisser les sections rejetées dans les fichiers *.rej correspondants"
 
-#: apply.c:4975
+#: apply.c:4976
 msgid "allow overlapping hunks"
 msgstr "accepter les recouvrements de sections"
 
-#: apply.c:4976 builtin/add.c:292 builtin/check-ignore.c:21
-#: builtin/commit.c:1361 builtin/count-objects.c:96 builtin/fsck.c:640
-#: builtin/log.c:1896 builtin/mv.c:123 builtin/read-tree.c:125
+#: apply.c:4977 builtin/add.c:292 builtin/check-ignore.c:21
+#: builtin/commit.c:1276 builtin/count-objects.c:96 builtin/fsck.c:665
+#: builtin/log.c:1901 builtin/mv.c:123 builtin/read-tree.c:125
 msgid "be verbose"
 msgstr "mode verbeux"
 
-#: apply.c:4978
+#: apply.c:4979
 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:4981
+#: apply.c:4982
 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:4983 builtin/am.c:2217
+#: apply.c:4984 builtin/am.c:2251
 msgid "root"
 msgstr "racine"
 
-#: apply.c:4984
+#: apply.c:4985
 msgid "prepend <root> to all filenames"
 msgstr "préfixer tous les noms de fichier avec <root>"
 
@@ -849,7 +849,7 @@ msgstr "fmt"
 msgid "archive format"
 msgstr "format d'archive"
 
-#: archive.c:437 builtin/log.c:1459
+#: archive.c:437 builtin/log.c:1462
 msgid "prefix"
 msgstr "préfixe"
 
@@ -857,11 +857,11 @@ msgstr "préfixe"
 msgid "prepend prefix to each pathname in the archive"
 msgstr "préfixer chaque chemin de fichier dans l'archive"
 
-#: archive.c:439 builtin/blame.c:693 builtin/blame.c:694 builtin/config.c:62
-#: builtin/fast-export.c:1005 builtin/fast-export.c:1007 builtin/grep.c:861
-#: builtin/hash-object.c:102 builtin/ls-files.c:551 builtin/ls-files.c:554
+#: archive.c:439 builtin/blame.c:702 builtin/blame.c:703 builtin/config.c:62
+#: builtin/fast-export.c:1005 builtin/fast-export.c:1007 builtin/grep.c:869
+#: builtin/hash-object.c:103 builtin/ls-files.c:551 builtin/ls-files.c:554
 #: builtin/notes.c:405 builtin/notes.c:568 builtin/read-tree.c:120
-#: parse-options.h:153
+#: parse-options.h:165
 msgid "file"
 msgstr "fichier"
 
@@ -893,8 +893,8 @@ msgstr "compression efficace"
 msgid "list supported archive formats"
 msgstr "afficher les formats d'archive supportés"
 
-#: archive.c:458 builtin/archive.c:90 builtin/clone.c:106 builtin/clone.c:109
-#: builtin/submodule--helper.c:872 builtin/submodule--helper.c:1239
+#: archive.c:458 builtin/archive.c:90 builtin/clone.c:108 builtin/clone.c:111
+#: builtin/submodule--helper.c:1209 builtin/submodule--helper.c:1576
 msgid "repo"
 msgstr "dépôt"
 
@@ -945,22 +945,22 @@ msgstr ""
 "Les motifs de négation sont ignorés dans les attributs git\n"
 "Utilisez '\\!' pour un point d'exclamation littéral."
 
-#: bisect.c:458
+#: bisect.c:460
 #, c-format
 msgid "Badly quoted content in file '%s': %s"
 msgstr "Contenu mal cité dans le fichier '%s' : %s"
 
-#: bisect.c:666
+#: bisect.c:668
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr "Impossible de pousser la bissection plus loin !\n"
 
-#: bisect.c:720
+#: bisect.c:722
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr "%s n'est pas un nom de commit valide"
 
-#: bisect.c:744
+#: bisect.c:746
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -969,7 +969,7 @@ msgstr ""
 "La base de fusion %s est mauvaise.\n"
 "Cela signifie que le bogue été corrigé entre %s et [%s].\n"
 
-#: bisect.c:749
+#: bisect.c:751
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -978,7 +978,7 @@ msgstr ""
 "La base de fusion %s est nouvelle.\n"
 "La propriété a changé entre %s et [%s].\n"
 
-#: bisect.c:754
+#: bisect.c:756
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -987,7 +987,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:762
+#: bisect.c:764
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -998,7 +998,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:775
+#: bisect.c:777
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -1015,31 +1015,31 @@ msgstr ""
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "Bissection : une base de fusion doit être testée\n"
 
-#: bisect.c:862
+#: bisect.c:850
 #, c-format
 msgid "a %s revision is needed"
 msgstr "une révision %s est nécessaire"
 
-#: bisect.c:879 builtin/notes.c:175 builtin/tag.c:234
+#: bisect.c:869 builtin/notes.c:175 builtin/tag.c:235
 #, c-format
 msgid "could not create file '%s'"
 msgstr "impossible de créer le fichier '%s'"
 
-#: bisect.c:930
+#: bisect.c:920
 #, c-format
 msgid "could not read file '%s'"
 msgstr "impossible de lire le fichier '%s'"
 
-#: bisect.c:960
+#: bisect.c:950
 msgid "reading bisect refs failed"
 msgstr "impossible de lire les références de bissection"
 
-#: bisect.c:979
+#: bisect.c:969
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s était à la fois %s et %s\n"
 
-#: bisect.c:987
+#: bisect.c:977
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -1048,7 +1048,7 @@ msgstr ""
 "Aucun commit testable n'a été trouvé\n"
 "Peut-être avez-vous démarré avec un mauvais paramètre de chemin ?\n"
 
-#: bisect.c:1006
+#: bisect.c:996
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -1058,47 +1058,47 @@ msgstr[1] "(à peu près %d étapes)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1012
+#: bisect.c:1002
 #, 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 cette %s\n"
 msgstr[1] "Bissection : %d révisions à tester après cette %s\n"
 
-#: blame.c:1757
+#: blame.c:1758
 msgid "--contents and --reverse do not blend well."
 msgstr "--contents et --reverse ne font pas bon ménage."
 
-#: blame.c:1768
+#: blame.c:1769
 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:1788
+#: blame.c:1789
 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:1797 bundle.c:169 ref-filter.c:1981 sequencer.c:1177
-#: sequencer.c:2370 builtin/commit.c:1066 builtin/log.c:364 builtin/log.c:918
-#: builtin/log.c:1368 builtin/log.c:1697 builtin/log.c:1945 builtin/merge.c:369
+#: blame.c:1798 bundle.c:160 ref-filter.c:1978 sequencer.c:1699
+#: sequencer.c:2901 builtin/commit.c:976 builtin/log.c:366 builtin/log.c:920
+#: builtin/log.c:1371 builtin/log.c:1702 builtin/log.c:1950 builtin/merge.c:370
 #: builtin/shortlog.c:191
 msgid "revision walk setup failed"
 msgstr "échec de la préparation du parcours des révisions"
 
-#: blame.c:1815
+#: blame.c:1816
 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:1826
+#: blame.c:1827
 #, c-format
 msgid "no such path %s in %s"
 msgstr "pas de chemin %s dans %s"
 
-#: blame.c:1837
+#: blame.c:1838
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "impossible de lire le blob %s  pour le chemin %s"
@@ -1261,76 +1261,75 @@ msgstr "'%s' ne semble pas être un fichier bundle v2"
 msgid "unrecognized header: %s%s (%d)"
 msgstr "en-tête non reconnu : %s%s (%d)"
 
-#: bundle.c:88 sequencer.c:1360 sequencer.c:1807 sequencer.c:2637
-#: sequencer.c:2663 sequencer.c:2754 sequencer.c:2856 builtin/commit.c:782
+#: bundle.c:88 sequencer.c:1879 sequencer.c:2337 builtin/commit.c:750
 #, c-format
 msgid "could not open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: bundle.c:140
+#: bundle.c:139
 msgid "Repository lacks these prerequisite commits:"
 msgstr "Le dépôt ne dispose pas des commits prérequis suivants :"
 
-#: bundle.c:193
+#: bundle.c:190
 #, 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 :"
 
-#: bundle.c:200
+#: bundle.c:197
 msgid "The bundle records a complete history."
 msgstr "Le colis enregistre l'historique complet."
 
-#: bundle.c:202
+#: bundle.c:199
 #, 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 :"
 
-#: bundle.c:261
+#: bundle.c:258
 msgid "Could not spawn pack-objects"
 msgstr "Impossible de créer des objets groupés"
 
-#: bundle.c:272
+#: bundle.c:269
 msgid "pack-objects died"
 msgstr "les objets groupés ont disparu"
 
-#: bundle.c:314
+#: bundle.c:311
 msgid "rev-list died"
 msgstr "rev-list a disparu"
 
-#: bundle.c:363
+#: bundle.c:360
 #, 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:453 builtin/log.c:181 builtin/log.c:1604 builtin/shortlog.c:296
+#: bundle.c:450 builtin/log.c:183 builtin/log.c:1607 builtin/shortlog.c:296
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "argument non reconnu : %s"
 
-#: bundle.c:461
+#: bundle.c:458
 msgid "Refusing to create empty bundle."
 msgstr "Refus de créer un colis vide."
 
-#: bundle.c:473
+#: bundle.c:470
 #, c-format
 msgid "cannot create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: bundle.c:501
+#: bundle.c:498
 msgid "index-pack died"
 msgstr "l'index de groupe a disparu"
 
-#: color.c:301
+#: color.c:296
 #, c-format
 msgid "invalid color value: %.*s"
 msgstr "Valeur invalide de couleur : %.*s"
 
-#: commit.c:41 sequencer.c:1614 builtin/am.c:421 builtin/am.c:465
-#: builtin/am.c:1434 builtin/am.c:2069
+#: commit.c:41 sequencer.c:2141 builtin/am.c:421 builtin/am.c:465
+#: builtin/am.c:1436 builtin/am.c:2072
 #, c-format
 msgid "could not parse %s"
 msgstr "impossible d'analyser %s"
@@ -1340,7 +1339,7 @@ msgstr "impossible d'analyser %s"
 msgid "%s %s is not a commit!"
 msgstr "%s %s n'est pas un commit !"
 
-#: commit.c:1524
+#: commit.c:1506
 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"
@@ -1461,71 +1460,71 @@ msgstr "'%s' pour '%s' n'est pas un horodatage valide"
 msgid "bad zlib compression level %d"
 msgstr "niveau de compression zlib incorrect %d"
 
-#: config.c:1222
+#: config.c:1225
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr "mode invalide pour la création d'objet : %s"
 
-#: config.c:1378
+#: config.c:1386
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "niveau de compression du paquet %d"
 
-#: config.c:1574
+#: config.c:1582
 msgid "unable to parse command-line config"
 msgstr "lecture de la configuration de ligne de commande impossible"
 
-#: config.c:1906
+#: config.c:1914
 msgid "unknown error occurred while reading the configuration files"
 msgstr "erreur inconnue pendant la lecture des fichiers de configuration"
 
-#: config.c:2093
+#: config.c:2101
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s invalide : '%s'"
 
-#: config.c:2136
+#: config.c:2144
 #, c-format
 msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
 msgstr ""
 "valeur '%s' de core.untrackedCache inconnue ; utilisation de 'keep' par "
 "défaut"
 
-#: config.c:2162
+#: config.c:2170
 #, 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:2187
+#: config.c:2195
 #, 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:2189
+#: config.c:2197
 #, 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:2248
+#: config.c:2256
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s a des valeurs multiples"
 
-#: config.c:2591 config.c:2808
+#: config.c:2599 config.c:2816
 #, c-format
 msgid "fstat on %s failed"
 msgstr "échec de fstat sur %s"
 
-#: config.c:2698
+#: config.c:2706
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "impossible de régler '%s' à '%s'"
 
-#: config.c:2700 builtin/remote.c:776
+#: config.c:2708 builtin/remote.c:776
 #, c-format
 msgid "could not unset '%s'"
 msgstr "impossible de désinitialiser '%s'"
@@ -1546,24 +1545,29 @@ msgstr ""
 "Veuillez vérifier que vous avez les droits d'accès\n"
 "et que le dépôt existe."
 
-#: connected.c:64 builtin/fsck.c:183 builtin/prune.c:141
+#: connected.c:66 builtin/fsck.c:198 builtin/prune.c:144
 msgid "Checking connectivity"
 msgstr "Vérification de la connectivité"
 
-#: connected.c:76
+#: connected.c:78
 msgid "Could not run 'git rev-list'"
 msgstr "Impossible de lancer 'git rev-list'"
 
-#: connected.c:96
+#: connected.c:98
 msgid "failed write to rev-list"
 msgstr "impossible d'écrire dans la rev-list"
 
-#: connected.c:103
+#: connected.c:105
 msgid "failed to close rev-list's stdin"
 msgstr "impossible de fermer l'entrée standard du rev-list"
 
 #: convert.c:205
 #, c-format
+msgid "CRLF would be replaced by LF in %s."
+msgstr "Les CRLF seraient remplacés par des LF dans %s."
+
+#: convert.c:207
+#, c-format
 msgid ""
 "CRLF will be replaced by LF in %s.\n"
 "The file will have its original line endings in your working directory."
@@ -1572,12 +1576,12 @@ msgstr ""
 "Le fichier conservera ses fins de ligne d'origine dans votre copie de "
 "travail."
 
-#: convert.c:209
+#: convert.c:215
 #, c-format
-msgid "CRLF would be replaced by LF in %s."
-msgstr "Les CRLF seraient remplacés par des LF dans %s."
+msgid "LF would be replaced by CRLF in %s"
+msgstr "Les LF seraient remplacés par des CRLF dans %s"
 
-#: convert.c:215
+#: convert.c:217
 #, c-format
 msgid ""
 "LF will be replaced by CRLF in %s.\n"
@@ -1587,11 +1591,6 @@ msgstr ""
 "Le fichier conservera ses fins de ligne d'origine dans votre copie de "
 "travail."
 
-#: convert.c:219
-#, c-format
-msgid "LF would be replaced by CRLF in %s"
-msgstr "Les LF seraient remplacés par des CRLF dans %s"
-
 #: date.c:116
 msgid "in the future"
 msgstr "dans le futur"
@@ -1708,20 +1707,24 @@ msgstr ""
 "Erreurs dans la variable de configuration 'diff.dirstat' :\n"
 "%s"
 
-#: diff.c:3799
+#: diff.c:3822
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "l'application de diff externe a disparu, arrêt à %s"
 
-#: diff.c:4127
+#: diff.c:4146
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr "--name-only, --name-status, --check et -s sont mutuellement exclusifs"
 
-#: diff.c:4215
+#: diff.c:4149
+msgid "-G, -S and --find-object are mutually exclusive"
+msgstr "-G, -S et --find-object sont mutuellement exclusifs"
+
+#: diff.c:4237
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow a besoin d'une spécification de chemin unique"
 
-#: diff.c:4381
+#: diff.c:4403
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -1730,24 +1733,24 @@ msgstr ""
 "Impossible d'analyser le paramètre de l'option --dirstat/-X :\n"
 "%s"
 
-#: diff.c:4395
+#: diff.c:4417
 #, c-format
 msgid "Failed to parse --submodule option parameter: '%s'"
 msgstr "Impossible d'analyser le paramètre de l'option --submodule : '%s'"
 
-#: diff.c:5446
+#: diff.c:5493
 msgid "inexact rename detection was skipped due to too many files."
 msgstr ""
 "détection de renommage inexact annulée à cause d'un trop grand nombre de "
 "fichiers."
 
-#: diff.c:5449
+#: diff.c:5496
 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:5452
+#: diff.c:5499
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -1755,20 +1758,25 @@ msgstr ""
 "vous souhaitez peut-être régler la variable %s à au moins %d et réessayer le "
 "commande."
 
-#: dir.c:2100
+#: dir.c:1866
+#, c-format
+msgid "could not open directory '%s'"
+msgstr "impossible d'ouvrir le répertoire '%s'"
+
+#: dir.c:2108
 msgid "failed to get kernel name and information"
 msgstr "echec de l'obtention d'information de kernel"
 
-#: dir.c:2219
+#: dir.c:2232
 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:3002 dir.c:3007
+#: dir.c:3024 dir.c:3029
 #, c-format
 msgid "could not create directories for %s"
 msgstr "impossible de créer les répertoires pour %s"
 
-#: dir.c:3032
+#: dir.c:3054
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr "impossible de migrer le répertoire git de '%s' vers '%s'"
@@ -1789,184 +1797,192 @@ msgstr "Filtrage du contenu"
 msgid "could not stat file '%s'"
 msgstr "impossible de stat le fichier '%s'"
 
-#: fetch-pack.c:252
+#: fetch-object.c:17
+msgid "Remote with no URL"
+msgstr "Dépôt distant sans URL"
+
+#: fetch-pack.c:253
 msgid "git fetch-pack: expected shallow list"
 msgstr "git fetch-pack : list courte attendue"
 
-#: fetch-pack.c:264
-msgid "git fetch-pack: expected ACK/NAK, got EOF"
-msgstr "git fetch-pack : ACK/NACK attendu, EOF reçu"
+#: fetch-pack.c:265
+msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
+msgstr "git fetch-pack : ACK/NACK attendu, paquet de nettoyage reçu"
 
-#: fetch-pack.c:283 builtin/archive.c:63
+#: fetch-pack.c:284 builtin/archive.c:63
 #, c-format
 msgid "remote error: %s"
 msgstr "erreur distante : %s"
 
-#: fetch-pack.c:284
+#: fetch-pack.c:285
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr "git fetch-pack : ACK/NACK attendu, '%s' reçu"
 
-#: fetch-pack.c:336
+#: fetch-pack.c:337
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc nécessite multi_ack_detailed"
 
-#: fetch-pack.c:422
+#: fetch-pack.c:428
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "ligne de superficiel invalide : %s"
 
-#: fetch-pack.c:428
+#: fetch-pack.c:434
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "ligne de fin de superficiel invalide : %s"
 
-#: fetch-pack.c:430
+#: fetch-pack.c:436
 #, c-format
 msgid "object not found: %s"
 msgstr "objet non trouvé : %s"
 
-#: fetch-pack.c:433
+#: fetch-pack.c:439
 #, c-format
 msgid "error in object: %s"
 msgstr "Erreur dans l'objet : %s"
 
-#: fetch-pack.c:435
+#: fetch-pack.c:441
 #, c-format
 msgid "no shallow found: %s"
 msgstr "Pas de superficiel trouvé : %s"
 
-#: fetch-pack.c:438
+#: fetch-pack.c:444
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "superficiel/non superficiel attendu, %s trouvé"
 
-#: fetch-pack.c:477
+#: fetch-pack.c:485
 #, c-format
 msgid "got %s %d %s"
 msgstr "réponse %s %d %s"
 
-#: fetch-pack.c:491
+#: fetch-pack.c:499
 #, c-format
 msgid "invalid commit %s"
 msgstr "commit invalide %s"
 
-#: fetch-pack.c:524
+#: fetch-pack.c:532
 msgid "giving up"
 msgstr "abandon"
 
-#: fetch-pack.c:534 progress.c:229
+#: fetch-pack.c:542 progress.c:229
 msgid "done"
 msgstr "fait"
 
-#: fetch-pack.c:546
+#: fetch-pack.c:554
 #, c-format
 msgid "got %s (%d) %s"
 msgstr "%s trouvé (%d) %s"
 
-#: fetch-pack.c:592
+#: fetch-pack.c:600
 #, c-format
 msgid "Marking %s as complete"
 msgstr "Marquage de %s comme terminé"
 
-#: fetch-pack.c:777
+#: fetch-pack.c:788
 #, c-format
 msgid "already have %s (%s)"
 msgstr "%s déjà possédé (%s)"
 
-#: fetch-pack.c:815
+#: fetch-pack.c:829
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr "fetch-pack : impossible de dupliquer le démultiplexeur latéral"
 
-#: fetch-pack.c:823
+#: fetch-pack.c:837
 msgid "protocol error: bad pack header"
 msgstr "erreur de protocole : mauvais entête de paquet"
 
-#: fetch-pack.c:879
+#: fetch-pack.c:895
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack : impossible de dupliquer %s"
 
-#: fetch-pack.c:895
+#: fetch-pack.c:911
 #, c-format
 msgid "%s failed"
 msgstr "échec de %s"
 
-#: fetch-pack.c:897
+#: fetch-pack.c:913
 msgid "error in sideband demultiplexer"
 msgstr "erreur dans le démultiplexer latéral"
 
-#: fetch-pack.c:924
+#: fetch-pack.c:940
 msgid "Server does not support shallow clients"
 msgstr "Le serveur ne supporte les clients superficiels"
 
-#: fetch-pack.c:928
+#: fetch-pack.c:944
 msgid "Server supports multi_ack_detailed"
 msgstr "Le serveur supporte multi_ack_detailed"
 
-#: fetch-pack.c:931
+#: fetch-pack.c:947
 msgid "Server supports no-done"
 msgstr "Le serveur support no-done"
 
-#: fetch-pack.c:937
+#: fetch-pack.c:953
 msgid "Server supports multi_ack"
 msgstr "Le serveur supporte multi_ack"
 
-#: fetch-pack.c:941
+#: fetch-pack.c:957
 msgid "Server supports side-band-64k"
 msgstr "Le serveur supporte side-band-64k"
 
-#: fetch-pack.c:945
+#: fetch-pack.c:961
 msgid "Server supports side-band"
 msgstr "Le serveru supporte side-band"
 
-#: fetch-pack.c:949
+#: fetch-pack.c:965
 msgid "Server supports allow-tip-sha1-in-want"
 msgstr "Le serveur supporte allow-tip-sha1-in-want"
 
-#: fetch-pack.c:953
+#: fetch-pack.c:969
 msgid "Server supports allow-reachable-sha1-in-want"
 msgstr "Le serveur supporte allow-reachable-sha1-in-want"
 
-#: fetch-pack.c:963
+#: fetch-pack.c:979
 msgid "Server supports ofs-delta"
-msgstr "Le serveur support ofs-delta"
+msgstr "Le serveur supporte ofs-delta"
 
-#: fetch-pack.c:970
+#: fetch-pack.c:985
+msgid "Server supports filter"
+msgstr "Le serveur supporte filter"
+
+#: fetch-pack.c:993
 #, c-format
 msgid "Server version is %.*s"
 msgstr "La version du serveur est %.*s"
 
-#: fetch-pack.c:976
+#: fetch-pack.c:999
 msgid "Server does not support --shallow-since"
 msgstr "Le receveur ne gère pas --shallow-since"
 
-#: fetch-pack.c:980
+#: fetch-pack.c:1003
 msgid "Server does not support --shallow-exclude"
 msgstr "Le receveur ne gère pas --shallow-exclude"
 
-#: fetch-pack.c:982
+#: fetch-pack.c:1005
 msgid "Server does not support --deepen"
 msgstr "Le receveur ne gère pas --deepen"
 
-#: fetch-pack.c:993
+#: fetch-pack.c:1016
 msgid "no common commits"
 msgstr "pas de commit commun"
 
-#: fetch-pack.c:1005
+#: fetch-pack.c:1028
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack : échec de le récupération."
 
-#: fetch-pack.c:1167
+#: fetch-pack.c:1190
 msgid "no matching remote head"
 msgstr "pas de HEAD distante correspondante"
 
-#: fetch-pack.c:1189
+#: fetch-pack.c:1212
 #, c-format
 msgid "no such remote ref %s"
 msgstr "référence distante inconnue %s"
 
-#: fetch-pack.c:1192
+#: fetch-pack.c:1215
 #, 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é"
@@ -1989,17 +2005,18 @@ msgstr "impossible d'écrire la signature détachée dans '%s'"
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr "couleur invalide '%.*s' ignorée dans log.graphColors"
 
-#: grep.c:2017
+#: grep.c:2022
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "'%s' : lecture de %s impossible"
 
-#: grep.c:2034 builtin/clone.c:404 builtin/diff.c:81 builtin/rm.c:134
+#: grep.c:2039 setup.c:163 builtin/clone.c:407 builtin/diff.c:81
+#: builtin/rm.c:134
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "échec du stat de '%s'"
 
-#: grep.c:2045
+#: grep.c:2050
 #, c-format
 msgid "'%s': short read"
 msgstr "'%s' : lecture tronquée"
@@ -2143,19 +2160,18 @@ msgstr "nom d'identifiant vide (pour <%s>) non permis"
 msgid "name consists only of disallowed characters: %s"
 msgstr "le nom n'est constitué que de caractères interdits : %s"
 
-#: ident.c:416 builtin/commit.c:616
+#: ident.c:416 builtin/commit.c:582
 #, c-format
 msgid "invalid date format: %s"
 msgstr "format de date invalide : %s"
 
-#: list-objects-filter-options.c:30
-msgid "multiple object filter types cannot be combined"
-msgstr "impossible de combiner des types multiples de filtre d'objets"
+#: list-objects-filter-options.c:36
+msgid "multiple filter-specs cannot be combined"
+msgstr "impossible de combiner des spécificateurs multiples de filtre"
 
-#: list-objects-filter-options.c:41 list-objects-filter-options.c:68
-#, c-format
-msgid "invalid filter-spec expression '%s'"
-msgstr "expression de filtre invalide : '%s'"
+#: list-objects-filter-options.c:126
+msgid "cannot change partial clone promisor remote"
+msgstr "impossible de modifier le prometteur distant de clone partiel"
 
 #: lockfile.c:151
 #, c-format
@@ -2185,8 +2201,8 @@ msgstr "Impossible de créer '%s.lock' : %s"
 msgid "failed to read the cache"
 msgstr "impossible de lire le cache"
 
-#: merge.c:128 builtin/am.c:1943 builtin/am.c:1977 builtin/checkout.c:379
-#: builtin/checkout.c:600 builtin/clone.c:754
+#: merge.c:134 builtin/am.c:1946 builtin/am.c:1980 builtin/checkout.c:378
+#: builtin/checkout.c:599 builtin/clone.c:759
 msgid "unable to write new index file"
 msgstr "impossible d'écrire le nouveau fichier d'index"
 
@@ -2203,60 +2219,60 @@ msgstr "échec de addinfo_cache pour le chemin '%s'"
 msgid "error building trees"
 msgstr "erreur de construction des arbres"
 
-#: merge-recursive.c:752
+#: merge-recursive.c:771
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "impossible de créer le chemin '%s' %s"
 
-#: merge-recursive.c:763
+#: merge-recursive.c:782
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr "Suppression de %s pour faire de la place pour le sous-répertoire\n"
 
-#: merge-recursive.c:777 merge-recursive.c:796
+#: merge-recursive.c:796 merge-recursive.c:815
 msgid ": perhaps a D/F conflict?"
 msgstr ": peut-être un conflit D/F ?"
 
-#: merge-recursive.c:786
+#: merge-recursive.c:805
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "refus de perdre le fichier non suivi '%s'"
 
-#: merge-recursive.c:828 builtin/cat-file.c:37
+#: merge-recursive.c:847 builtin/cat-file.c:37
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "impossible de lire l'objet %s '%s'"
 
-#: merge-recursive.c:830
+#: merge-recursive.c:849
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "blob attendu pour %s '%s'"
 
-#: merge-recursive.c:854
+#: merge-recursive.c:873
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr "échec à l'ouverture de '%s' : %s"
 
-#: merge-recursive.c:865
+#: merge-recursive.c:884
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr "échec à la création du lien symbolique '%s' : %s"
 
-#: merge-recursive.c:870
+#: merge-recursive.c:889
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "ne sait pas traiter %06o %s '%s'"
 
-#: merge-recursive.c:1010
+#: merge-recursive.c:1029
 msgid "Failed to execute internal merge"
 msgstr "Échec à l'exécution de la fusion interne"
 
-#: merge-recursive.c:1014
+#: merge-recursive.c:1034
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Impossible d'ajouter %s à la base de données"
 
-#: merge-recursive.c:1117
+#: merge-recursive.c:1146
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -2265,7 +2281,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:1122
+#: merge-recursive.c:1151
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -2274,7 +2290,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:1129
+#: merge-recursive.c:1158
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -2283,7 +2299,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:1134
+#: merge-recursive.c:1163
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -2292,20 +2308,20 @@ 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:1168
+#: merge-recursive.c:1197
 msgid "rename"
 msgstr "renommage"
 
-#: merge-recursive.c:1168
+#: merge-recursive.c:1197
 msgid "renamed"
 msgstr "renommé"
 
-#: merge-recursive.c:1225
+#: merge-recursive.c:1254
 #, 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:1250
+#: merge-recursive.c:1279
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -2314,142 +2330,142 @@ msgstr ""
 "CONFLIT (renommage/renommage) : Renommage de \"%s\"->\"%s\" dans la branche "
 "\"%s\" et renommage \"%s\"->\"%s\" dans \"%s\"%s"
 
-#: merge-recursive.c:1255
+#: merge-recursive.c:1284
 msgid " (left unresolved)"
 msgstr " (laissé non résolu)"
 
-#: merge-recursive.c:1317
+#: merge-recursive.c:1346
 #, 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:1350
+#: merge-recursive.c:1379
 #, c-format
 msgid "Renaming %s to %s and %s to %s instead"
 msgstr "Renommage de %s en %s et de %s en %s à la place"
 
-#: merge-recursive.c:1553
+#: merge-recursive.c:1582
 #, c-format
 msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
 msgstr ""
 "CONFLIT (renommage/ajout) : Renommage de %s->%s dans %s. %s ajouté dans %s"
 
-#: merge-recursive.c:1568
+#: merge-recursive.c:1597
 #, c-format
 msgid "Adding merged %s"
 msgstr "Ajout de %s fusionné"
 
-#: merge-recursive.c:1575 merge-recursive.c:1805
+#: merge-recursive.c:1604 merge-recursive.c:1834
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Ajout plutôt comme %s"
 
-#: merge-recursive.c:1632
+#: merge-recursive.c:1661
 #, c-format
 msgid "cannot read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: merge-recursive.c:1635
+#: merge-recursive.c:1664
 #, c-format
 msgid "object %s is not a blob"
 msgstr "l'objet %s n'est pas un blob"
 
-#: merge-recursive.c:1704
+#: merge-recursive.c:1733
 msgid "modify"
 msgstr "modification"
 
-#: merge-recursive.c:1704
+#: merge-recursive.c:1733
 msgid "modified"
 msgstr "modifié"
 
-#: merge-recursive.c:1714
+#: merge-recursive.c:1743
 msgid "content"
 msgstr "contenu"
 
-#: merge-recursive.c:1721
+#: merge-recursive.c:1750
 msgid "add/add"
 msgstr "ajout/ajout"
 
-#: merge-recursive.c:1757
+#: merge-recursive.c:1786
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "%s sauté (fusion identique à l'existant)"
 
-#: merge-recursive.c:1771
+#: merge-recursive.c:1800
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Fusion automatique de %s"
 
-#: merge-recursive.c:1775 git-submodule.sh:932
+#: merge-recursive.c:1804 git-submodule.sh:879
 msgid "submodule"
 msgstr "sous-module"
 
-#: merge-recursive.c:1776
+#: merge-recursive.c:1805
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLIT (%s) : Conflit de fusion dans %s"
 
-#: merge-recursive.c:1870
+#: merge-recursive.c:1899
 #, c-format
 msgid "Removing %s"
 msgstr "Suppression de %s"
 
-#: merge-recursive.c:1896
+#: merge-recursive.c:1925
 msgid "file/directory"
 msgstr "fichier/répertoire"
 
-#: merge-recursive.c:1902
+#: merge-recursive.c:1931
 msgid "directory/file"
 msgstr "répertoire/fichier"
 
-#: merge-recursive.c:1909
+#: merge-recursive.c:1938
 #, 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:1918
+#: merge-recursive.c:1947
 #, c-format
 msgid "Adding %s"
 msgstr "Ajout de %s"
 
-#: merge-recursive.c:1958
+#: merge-recursive.c:1987
 #, c-format
 msgid "Dirty index: cannot merge (dirty: %s)"
 msgstr "Index sale : fusion impossible (sales : %s)"
 
-#: merge-recursive.c:1962
+#: merge-recursive.c:1991
 msgid "Already up to date!"
 msgstr "Déjà à jour !"
 
-#: merge-recursive.c:1971
+#: merge-recursive.c:2000
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "échec de fusion des arbres %s et %s"
 
-#: merge-recursive.c:2068
+#: merge-recursive.c:2097
 msgid "Merging:"
 msgstr "Fusion :"
 
-#: merge-recursive.c:2081
+#: merge-recursive.c:2110
 #, 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:2120
+#: merge-recursive.c:2149
 msgid "merge returned no commit"
 msgstr "la fusion n'a pas retourné de commit"
 
-#: merge-recursive.c:2183
+#: merge-recursive.c:2212
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Impossible d'analyser l'objet '%s'"
 
-#: merge-recursive.c:2197 builtin/merge.c:656 builtin/merge.c:815
+#: merge-recursive.c:2228 builtin/merge.c:657 builtin/merge.c:816
 msgid "Unable to write index."
 msgstr "Impossible d'écrire l'index."
 
@@ -2469,16 +2485,16 @@ msgstr ""
 msgid "You have not concluded your notes merge (%s exists)."
 msgstr "Vous n'avez pas terminé votre fusion de notes (%s existe)."
 
-#: notes-utils.c:42
+#: notes-utils.c:43
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr "Impossible de valider un arbre de notes non initialisé/référencé"
 
-#: notes-utils.c:101
+#: notes-utils.c:102
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr "Mauvaise valeur de notes.rewriteMode : '%s'"
 
-#: notes-utils.c:111
+#: notes-utils.c:112
 #, c-format
 msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
 msgstr "Refus de réécrire des notes dans %s (hors de refs/notes/)"
@@ -2487,7 +2503,7 @@ msgstr "Refus de réécrire des notes dans %s (hors de refs/notes/)"
 #. the environment variable, the second %s is
 #. its value.
 #.
-#: notes-utils.c:141
+#: notes-utils.c:142
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr "Mauvaise valeur de %s : '%s'"
@@ -2497,26 +2513,26 @@ msgstr "Mauvaise valeur de %s : '%s'"
 msgid "unable to parse object: %s"
 msgstr "impossible d'analyser l'objet : %s"
 
-#: packfile.c:556
+#: packfile.c:561
 msgid "offset before end of packfile (broken .idx?)"
 msgstr "offset avant la fin du fichier paquet (.idx cassé ?)"
 
-#: packfile.c:1683
+#: packfile.c:1694
 #, c-format
 msgid "offset before start of pack index for %s (corrupt index?)"
 msgstr "offset avant le début de l'index de paquet pour %s (index corrompu ?)"
 
-#: packfile.c:1687
+#: packfile.c:1698
 #, c-format
 msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
 "offset au delà de la fin de l'index de paquet pour %s (index tronqué ?)"
 
-#: parse-options.c:573
+#: parse-options.c:619
 msgid "..."
 msgstr "..."
 
-#: parse-options.c:592
+#: parse-options.c:638
 #, c-format
 msgid "usage: %s"
 msgstr "usage : %s"
@@ -2524,17 +2540,17 @@ msgstr "usage : %s"
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation.
 #.
-#: parse-options.c:598
+#: parse-options.c:644
 #, c-format
 msgid "   or: %s"
 msgstr "   ou : %s"
 
-#: parse-options.c:601
+#: parse-options.c:647
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: parse-options.c:640
+#: parse-options.c:686
 msgid "-NUM"
 msgstr "-NUM"
 
@@ -2631,7 +2647,7 @@ msgstr "le chemin '%s' est au-delà d'un lien symbolique"
 msgid "unable to parse --pretty format"
 msgstr "impossible d'analyser le format --pretty"
 
-#: read-cache.c:1472
+#: read-cache.c:1473
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -2640,7 +2656,7 @@ msgstr ""
 "version d'index renseignée, mais la valeur est invalide.\n"
 "Utilisation de la version %i"
 
-#: read-cache.c:1482
+#: read-cache.c:1483
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -2649,22 +2665,22 @@ msgstr ""
 "GIT_INDEX_VERSION est renseigné, mais la valeur est invalide.\n"
 "Utilisation de la version %i"
 
-#: read-cache.c:2370 sequencer.c:2731 wrapper.c:658 builtin/merge.c:1048
+#: read-cache.c:2375 sequencer.c:3248 wrapper.c:658 builtin/merge.c:1049
 #, c-format
 msgid "could not close '%s'"
 msgstr "impossible de fermer '%s'"
 
-#: read-cache.c:2442 sequencer.c:1369 sequencer.c:2096
+#: read-cache.c:2448 sequencer.c:1900 sequencer.c:2627
 #, c-format
 msgid "could not stat '%s'"
 msgstr "stat impossible de '%s'"
 
-#: read-cache.c:2455
+#: read-cache.c:2461
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr "impossible d'ouvrir le répertoire git : %s"
 
-#: read-cache.c:2467
+#: read-cache.c:2473
 #, c-format
 msgid "unable to unlink: %s"
 msgstr "échec lors de l'unlink : %s"
@@ -2683,19 +2699,19 @@ msgstr "mises à jour des références interdites en environnement de quarantain
 msgid "could not remove reference %s"
 msgstr "impossible de supprimer la référence %s"
 
-#: refs/files-backend.c:1203 refs/packed-backend.c:1524
-#: refs/packed-backend.c:1534
+#: refs/files-backend.c:1203 refs/packed-backend.c:1528
+#: refs/packed-backend.c:1538
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr "Impossible de supprimer la référence %s : %s"
 
-#: refs/files-backend.c:1206 refs/packed-backend.c:1537
+#: refs/files-backend.c:1206 refs/packed-backend.c:1541
 #, c-format
 msgid "could not delete references: %s"
 msgstr "impossible de supprimer les références : %s"
 
 # à priori on parle d'une branche ici
-#: ref-filter.c:35 wt-status.c:1816
+#: ref-filter.c:35 wt-status.c:1842
 msgid "gone"
 msgstr "disparue"
 
@@ -2889,131 +2905,141 @@ msgstr "(HEAD détachée depuis %s)"
 msgid "(no branch)"
 msgstr "(aucune branche)"
 
-#: ref-filter.c:1488 ref-filter.c:1519
+#: ref-filter.c:1364
 #, c-format
 msgid "missing object %s for %s"
 msgstr "objet manquant %s pour %s"
 
-#: ref-filter.c:1491 ref-filter.c:1522
+#: ref-filter.c:1367
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "echec de parse_object_buffer sur %s pour %s"
 
-#: ref-filter.c:1822
+#: ref-filter.c:1819
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "objet malformé à '%s'"
 
-#: ref-filter.c:1889
+#: ref-filter.c:1886
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "réf avec un nom cassé %s ignoré"
 
-#: ref-filter.c:1894
+#: ref-filter.c:1891
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "réf cassé %s ignoré"
 
-#: ref-filter.c:2156
+#: ref-filter.c:2152
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "format: atome %%(end) manquant"
 
-#: ref-filter.c:2250
+#: ref-filter.c:2246
 #, c-format
 msgid "malformed object name %s"
 msgstr "nom d'objet malformé %s"
 
-#: remote.c:780
+#: remote.c:795
 #, 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:784
+#: remote.c:799
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s suit habituellement %s, pas %s"
 
-#: remote.c:788
+#: remote.c:803
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s suit à la fois %s et %s"
 
-#: remote.c:796
+#: remote.c:811
 msgid "Internal error"
 msgstr "Erreur interne"
 
-#: remote.c:1711 remote.c:1813
+#: remote.c:1726 remote.c:1828
 msgid "HEAD does not point to a branch"
 msgstr "HEAD ne pointe pas sur une branche"
 
-#: remote.c:1720
+#: remote.c:1735
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "pas de branche '%s'"
 
-#: remote.c:1723
+#: remote.c:1738
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "aucune branche amont configurée pour la branche '%s'"
 
-#: remote.c:1729
+#: remote.c:1744
 #, 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:1744
+#: remote.c:1759
 #, 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:1756
+#: remote.c:1771
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "la branche '%s' n'a aucune branche distante de poussée"
 
-#: remote.c:1767
+#: remote.c:1782
 #, 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:1780
+#: remote.c:1795
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "la poussée n'a pas de destination (push.default vaut 'nothing')"
 
-#: remote.c:1802
+#: remote.c:1817
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr ""
 "impossible de résoudre une poussée 'simple' pour une destination unique"
 
-#: remote.c:2106
+#: remote.c:2132
 #, 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:2110
+#: remote.c:2136
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (utilisez \"git branch --unset-upstream\" pour corriger)\n"
 
-#: remote.c:2113
+#: remote.c:2139
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr "Votre branche est à jour avec '%s'.\n"
 
-#: remote.c:2117
+#: remote.c:2143
+#, 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:2146
+#, c-format, fuzzy
+msgid "  (use \"%s\" for details)\n"
+msgstr "  (utilisez \"%s\" pour plus de détails)\n"
+
+#: remote.c:2150
 #, 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:2123
+#: remote.c:2156
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (utilisez \"git push\" pour publier vos commits locaux)\n"
 
-#: remote.c:2126
+#: remote.c:2159
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -3025,11 +3051,11 @@ msgstr[1] ""
 "Votre branche est en retard sur '%s' de %d commits, et peut être mise à jour "
 "en avance rapide.\n"
 
-#: remote.c:2134
+#: remote.c:2167
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (utilisez \"git pull\" pour mettre à jour votre branche locale)\n"
 
-#: remote.c:2137
+#: remote.c:2170
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -3044,29 +3070,29 @@ msgstr[1] ""
 "Votre branche et '%s' ont divergé,\n"
 "et ont %d et %d commits différents chacune respectivement.\n"
 
-#: remote.c:2147
+#: remote.c:2180
 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"
 
-#: revision.c:2268
+#: revision.c:2277
 msgid "your current branch appears to be broken"
 msgstr "votre branche actuelle semble cassée"
 
-#: revision.c:2271
+#: revision.c:2280
 #, 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:2465
+#: revision.c:2477
 msgid "--first-parent is incompatible with --bisect"
 msgstr "--first-parent est incompatible avec --bisect"
 
-#: run-command.c:645
+#: run-command.c:731
 msgid "open /dev/null failed"
 msgstr "échec de l'ouverture de /dev/null"
 
-#: run-command.c:1188
+#: run-command.c:1274
 #, c-format
 msgid ""
 "The '%s' hook was ignored because it's not set as executable.\n"
@@ -3077,24 +3103,28 @@ msgstr ""
 "false`."
 
 #: send-pack.c:141
+msgid "unexpected flush packet while reading remote unpack status"
+msgstr "paquet de nettoyage inattendu pendant la lecture de l'état de dépaquetage distant"
+
+#: send-pack.c:143
 #, c-format
 msgid "unable to parse remote unpack status: %s"
 msgstr "impossible d'analyser l'état de dépaquetage distant : %s"
 
-#: send-pack.c:143
+#: send-pack.c:145
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr "le dépaquetage a échoué : %s"
 
-#: send-pack.c:306
+#: send-pack.c:308
 msgid "failed to sign the push certificate"
 msgstr "impossible de signer le certificat de poussée"
 
-#: send-pack.c:419
+#: send-pack.c:421
 msgid "the receiving end does not support --signed push"
 msgstr "Le receveur ne gère pas les poussées avec --signed"
 
-#: send-pack.c:421
+#: send-pack.c:423
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
@@ -3102,32 +3132,37 @@ msgstr ""
 "pas d'envoi de certificat de poussée car le receveur ne gère pas les "
 "poussées avec --signed"
 
-#: send-pack.c:433
+#: send-pack.c:435
 msgid "the receiving end does not support --atomic push"
 msgstr "Le receveur ne gère pas les poussées avec --atomic"
 
-#: send-pack.c:438
+#: send-pack.c:440
 msgid "the receiving end does not support push options"
 msgstr "Le receveur ne gère pas les options de poussées"
 
-#: sequencer.c:218
+#: sequencer.c:158
+#, c-format
+msgid "invalid commit message cleanup mode '%s'"
+msgstr "mode de nettoyage invalide de message de validation '%s'"
+
+#: sequencer.c:267
 msgid "revert"
 msgstr "revert"
 
-#: sequencer.c:220
+#: sequencer.c:269
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:222
+#: sequencer.c:271
 msgid "rebase -i"
 msgstr "rebase -i"
 
-#: sequencer.c:224
+#: sequencer.c:273
 #, c-format
 msgid "Unknown action: %d"
 msgstr "Action inconnue : %d"
 
-#: sequencer.c:281
+#: sequencer.c:330
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -3135,7 +3170,7 @@ msgstr ""
 "après résolution des conflits, marquez les chemins corrigés\n"
 "avec 'git add <chemins>' ou 'git rm <chemins>'"
 
-#: sequencer.c:284
+#: sequencer.c:333
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -3145,43 +3180,43 @@ msgstr ""
 "avec 'git add <chemins>' ou 'git rm <chemins>'\n"
 "puis validez le résultat avec 'git commit'"
 
-#: sequencer.c:297 sequencer.c:1718
+#: sequencer.c:346 sequencer.c:2245
 #, c-format
 msgid "could not lock '%s'"
 msgstr "impossible de verrouiller '%s'"
 
-#: sequencer.c:300 sequencer.c:1595 sequencer.c:1723 sequencer.c:1737
-#: sequencer.c:2729 sequencer.c:2800 wrapper.c:656
+#: sequencer.c:349 sequencer.c:2124 sequencer.c:2250 sequencer.c:2264
+#: sequencer.c:3246 sequencer.c:3310 wrapper.c:656
 #, c-format
 msgid "could not write to '%s'"
 msgstr "impossible d'écrire dans '%s'"
 
-#: sequencer.c:304
+#: sequencer.c:353
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "impossible d'écrire la fin de ligne dans '%s'"
 
-#: sequencer.c:308 sequencer.c:1600 sequencer.c:1725
+#: sequencer.c:356 sequencer.c:2128 sequencer.c:2252
 #, c-format
-msgid "failed to finalize '%s'."
-msgstr "échec lors de la finalisation de '%s'."
+msgid "failed to finalize '%s'"
+msgstr "échec lors de la finalisation de '%s'"
 
-#: sequencer.c:332 sequencer.c:829 sequencer.c:1621 builtin/am.c:259
-#: builtin/commit.c:754 builtin/merge.c:1046
+#: sequencer.c:379 sequencer.c:1340 sequencer.c:2148 builtin/am.c:259
+#: builtin/commit.c:722 builtin/merge.c:1047
 #, c-format
 msgid "could not read '%s'"
 msgstr "impossible de lire '%s'"
 
-#: sequencer.c:358
+#: sequencer.c:405
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "vos modifications locales seraient écrasées par %s."
 
-#: sequencer.c:362
+#: sequencer.c:409
 msgid "commit your changes or stash them to proceed."
 msgstr "validez vos modifications ou les remiser pour continuer."
 
-#: sequencer.c:391
+#: sequencer.c:438
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s : avance rapide"
@@ -3189,20 +3224,20 @@ msgstr "%s : avance rapide"
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase -i".
 #.
-#: sequencer.c:477
+#: sequencer.c:526
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: Impossible d'écrire le nouveau fichier index"
 
-#: sequencer.c:496
+#: sequencer.c:542
 msgid "could not resolve HEAD commit"
 msgstr "impossible de résoudre le commit HEAD"
 
-#: sequencer.c:516
+#: sequencer.c:562
 msgid "unable to update cache tree"
 msgstr "impossible de mettre à jour l'arbre de cache"
 
-#: sequencer.c:600
+#: sequencer.c:658
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -3231,17 +3266,126 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:702
+#: sequencer.c:915
+msgid "'prepare-commit-msg' hook failed"
+msgstr "échec du crochet 'prepare-commit-msg'"
+
+#: sequencer.c:922
+msgid ""
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly. Run the\n"
+"following command and follow the instructions in your editor to edit\n"
+"your configuration file:\n"
+"\n"
+"    git config --global --edit\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
+msgstr ""
+"Votre nom et votre adresse courriel ont été configurés automatiquement en "
+"se\n"
+"fondant sur votre nom d'utilisateur et le nom de votre machine. Veuillez \n"
+"vérifier qu'ils sont corrects. Vous pouvez supprimer ce message en les \n"
+"paramétrant explicitement. Lancez les commandes suivantes et suivez les\n"
+"instruction dans votre éditeur pour éditer votre fichier de configuration :\n"
+"\n"
+"    git config --global --edit\n"
+"\n"
+"Après ceci, vous pouvez corriger l'identité utilisée pour cette validation "
+"avec :\n"
+"\n"
+"    git commit --amend --reset-author\n"
+
+#: sequencer.c:935
+msgid ""
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly:\n"
+"\n"
+"    git config --global user.name \"Your Name\"\n"
+"    git config --global user.email you@example.com\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
+msgstr ""
+"Votre nom et votre adresse courriel ont été configurés automatiquement en se "
+"fondant\n"
+"sur votre nom d'utilisateur et le nom de votre machine. Veuillez vérifier "
+"qu'ils sont corrects.\n"
+"Vous pouvez supprimer ce message en les paramétrant explicitement :\n"
+"\n"
+"    git config --global user.name \"Votre Nom\"\n"
+"    git config --global user.email vous@exemple.com\n"
+"\n"
+"Après ceci, vous pouvez corriger l'identité utilisée pour ce commit avec :\n"
+"\n"
+"    git commit --amend --reset-author\n"
+
+#: sequencer.c:975
+msgid "couldn't look up newly created commit"
+msgstr "impossible de retrouver le commit nouvellement créé"
+
+#: sequencer.c:977
+msgid "could not parse newly created commit"
+msgstr "impossible d'analyser le commit nouvellement créé"
+
+#: sequencer.c:1023
+msgid "unable to resolve HEAD after creating commit"
+msgstr "impossible de résoudre HEAD après création du commit"
+
+#: sequencer.c:1025
+msgid "detached HEAD"
+msgstr "HEAD détachée"
+
+#: sequencer.c:1029
+msgid " (root-commit)"
+msgstr " (commit racine)"
+
+#: sequencer.c:1050
+msgid "could not parse HEAD"
+msgstr "impossible de lire HEAD"
+
+#: sequencer.c:1052
+#, c-format
+msgid "HEAD %s is not a commit!"
+msgstr "HEAD %s n'est pas un commit !"
+
+#: sequencer.c:1056 builtin/commit.c:1491
+msgid "could not parse HEAD commit"
+msgstr "impossible d'analyser le commit HEAD"
+
+#: sequencer.c:1107 sequencer.c:1673
+msgid "unable to parse commit author"
+msgstr "impossible d'analyser l'auteur du commit"
+
+#: sequencer.c:1117 builtin/am.c:1630 builtin/merge.c:643
+msgid "git write-tree failed to write a tree"
+msgstr "git write-tree a échoué à écrire un arbre"
+
+#: sequencer.c:1134 sequencer.c:1186
+#, c-format
+msgid "unable to read commit message from '%s'"
+msgstr "impossible de lire le message de validation de '%s'"
+
+#: sequencer.c:1154 builtin/am.c:1650 builtin/commit.c:1594 builtin/merge.c:826
+#: builtin/merge.c:851
+msgid "failed to write commit object"
+msgstr "échec de l'écriture de l'objet commit"
+
+#: sequencer.c:1213
 #, c-format
 msgid "could not parse commit %s"
 msgstr "impossible d'analyser le commit %s"
 
-#: sequencer.c:707
+#: sequencer.c:1218
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr "impossible d'analyser le commit parent %s"
 
-#: sequencer.c:836
+#: sequencer.c:1347
 #, c-format
 msgid ""
 "unexpected 1st line of squash message:\n"
@@ -3252,7 +3396,7 @@ msgstr ""
 "\n"
 "\t%.*s"
 
-#: sequencer.c:842
+#: sequencer.c:1353
 #, c-format
 msgid ""
 "invalid 1st line of squash message:\n"
@@ -3263,243 +3407,247 @@ msgstr ""
 "\n"
 "\t%.*s"
 
-#: sequencer.c:848 sequencer.c:873
+#: sequencer.c:1359 sequencer.c:1384
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Ceci est la combinaison de %d commits."
 
-#: sequencer.c:857 sequencer.c:2748
+#: sequencer.c:1368 sequencer.c:3265
 msgid "need a HEAD to fixup"
 msgstr "une HEAD est nécessaire à la correction"
 
-#: sequencer.c:859
+#: sequencer.c:1370
 msgid "could not read HEAD"
 msgstr "Impossible de lire HEAD"
 
-#: sequencer.c:861
+#: sequencer.c:1372
 msgid "could not read HEAD's commit message"
 msgstr "impossible de lire le message de validation de HEAD"
 
-#: sequencer.c:867
+#: sequencer.c:1378
 #, c-format
 msgid "cannot write '%s'"
 msgstr "impossible d'écrire '%s'"
 
-#: sequencer.c:876 git-rebase--interactive.sh:446
+#: sequencer.c:1387 git-rebase--interactive.sh:452
 msgid "This is the 1st commit message:"
 msgstr "Ceci est le premier message de validation :"
 
-#: sequencer.c:884
+#: sequencer.c:1395
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "impossible de lire le message de validation de %s"
 
-#: sequencer.c:891
+#: sequencer.c:1402
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Ceci est le message de validation numéro %d :"
 
-#: sequencer.c:896
+#: sequencer.c:1407
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Le message de validation %d sera ignoré :"
 
-#: sequencer.c:901
+#: sequencer.c:1412
 #, c-format
 msgid "unknown command: %d"
 msgstr "commande inconnue : %d"
 
-#: sequencer.c:967
+#: sequencer.c:1479
 msgid "your index file is unmerged."
 msgstr "votre fichier d'index n'est pas fusionné."
 
-#: sequencer.c:986
+#: sequencer.c:1498
 #, 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:994
+#: sequencer.c:1506
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "le commit %s n'a pas de parent %d"
 
-#: sequencer.c:998
+#: sequencer.c:1510
 #, c-format
 msgid "mainline was specified but commit %s is not a merge."
 msgstr ""
 "une branche principale a été spécifiée mais le commit %s n'est pas une "
 "fusion."
 
-#: sequencer.c:1004
+#: sequencer.c:1516
 #, 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:1023
+#: sequencer.c:1535
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s : impossible d'analyser le commit parent %s"
 
-#: sequencer.c:1086 sequencer.c:1867
+#: sequencer.c:1600 sequencer.c:2397
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "impossible de renommer '%s' en '%s'"
 
-#: sequencer.c:1137
+#: sequencer.c:1654
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "impossible d'annuler %s... %s"
 
-#: sequencer.c:1138
+#: sequencer.c:1655
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "impossible d'appliquer %s... %s"
 
-#: sequencer.c:1180
+#: sequencer.c:1702
 msgid "empty commit set passed"
 msgstr "l'ensemble de commits spécifié est vide"
 
-#: sequencer.c:1190
+#: sequencer.c:1712
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s : échec à la lecture de l'index"
 
-#: sequencer.c:1196
+#: sequencer.c:1718
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s : échec du rafraîchissement de l'index"
 
-#: sequencer.c:1270
+#: sequencer.c:1792
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s n'accepte pas d'argument : '%s'"
 
-#: sequencer.c:1279
+#: sequencer.c:1801
 #, c-format
 msgid "missing arguments for %s"
 msgstr "argument manquant pour %s"
 
-#: sequencer.c:1322
+#: sequencer.c:1844
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "ligne %d invalide : %.*s"
 
-#: sequencer.c:1330
+#: sequencer.c:1852
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "'%s' impossible avec le commit précédent"
 
-#: sequencer.c:1363 sequencer.c:2525 sequencer.c:2560 sequencer.c:2642
-#: sequencer.c:2668 sequencer.c:2758 sequencer.c:2859
+#: sequencer.c:1883 sequencer.c:3056 sequencer.c:3091
 #, c-format
 msgid "could not read '%s'."
 msgstr "impossible de lire '%s'."
 
-#: sequencer.c:1375
+#: sequencer.c:1906
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "veuillez corriger ceci en utilisant 'git rebase --edit-todo'."
 
-#: sequencer.c:1377
+#: sequencer.c:1908
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "feuille d'instruction inutilisable : '%s'"
 
-#: sequencer.c:1382
+#: sequencer.c:1913
 msgid "no commits parsed."
 msgstr "aucun commit analysé."
 
-#: sequencer.c:1393
+#: sequencer.c:1924
 msgid "cannot cherry-pick during a revert."
 msgstr "impossible de picorer pendant l'annulation d'un commit."
 
-#: sequencer.c:1395
+#: sequencer.c:1926
 msgid "cannot revert during a cherry-pick."
 msgstr "impossible d'annuler un commit pendant un picorage."
 
-#: sequencer.c:1462
+#: sequencer.c:1993
 #, c-format
 msgid "invalid key: %s"
 msgstr "clé invalide : %s"
 
-#: sequencer.c:1465
+#: sequencer.c:1996
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "valeur invalide pour %s : %s"
 
-#: sequencer.c:1531
+#: sequencer.c:2062
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "feuille d'options malformée : %s"
 
-#: sequencer.c:1569
+#: sequencer.c:2100
 msgid "a cherry-pick or revert is already in progress"
 msgstr "un picorage ou un retour est déjà en cours"
 
-#: sequencer.c:1570
+#: sequencer.c:2101
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr "essayez \"git cherry-pick (--continue|--quit|-- abort)\""
 
-#: sequencer.c:1573
+#: sequencer.c:2104
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "impossible de créer le répertoire de séquenceur '%s'"
 
-#: sequencer.c:1588
+#: sequencer.c:2118
 msgid "could not lock HEAD"
 msgstr "impossible de verrouiller HEAD"
 
-#: sequencer.c:1646 sequencer.c:2230
+#: sequencer.c:2173 sequencer.c:2761
 msgid "no cherry-pick or revert in progress"
 msgstr "aucun picorage ou retour en cours"
 
-#: sequencer.c:1648
+#: sequencer.c:2175
 msgid "cannot resolve HEAD"
 msgstr "impossible de résoudre HEAD"
 
-#: sequencer.c:1650 sequencer.c:1685
+#: sequencer.c:2177 sequencer.c:2212
 msgid "cannot abort from a branch yet to be born"
 msgstr "impossible d'abandonner depuis une branche non encore créée"
 
-#: sequencer.c:1671 builtin/grep.c:713
+#: sequencer.c:2198 builtin/grep.c:720
 #, c-format
 msgid "cannot open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: sequencer.c:1673
+#: sequencer.c:2200
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "impossible de lire '%s' : %s"
 
-#: sequencer.c:1674
+#: sequencer.c:2201
 msgid "unexpected end of file"
 msgstr "fin de fichier inattendue"
 
-#: sequencer.c:1680
+#: sequencer.c:2207
 #, 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:1691
+#: sequencer.c:2218
 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:1832 sequencer.c:2128
+#: sequencer.c:2324 sequencer.c:2679
+#, c-format
+msgid "could not update %s"
+msgstr "impossible de mettre à jour %s"
+
+#: sequencer.c:2362 sequencer.c:2659
 msgid "cannot read HEAD"
 msgstr "impossible de lire HEAD"
 
-#: sequencer.c:1872 builtin/difftool.c:639
+#: sequencer.c:2402 builtin/difftool.c:639
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "impossible de copier '%s' vers '%s'"
 
-#: sequencer.c:1891
+#: sequencer.c:2421
 msgid "could not read index"
 msgstr "impossible de lire l'index"
 
-#: sequencer.c:1896
+#: sequencer.c:2426
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -3514,11 +3662,11 @@ msgstr ""
 "git rebase --continue\n"
 "\n"
 
-#: sequencer.c:1902
+#: sequencer.c:2432
 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:1908
+#: sequencer.c:2438
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -3535,17 +3683,17 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:1967
+#: sequencer.c:2497
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Autoremisage appliqué.\n"
 
-#: sequencer.c:1979
+#: sequencer.c:2509
 #, c-format
 msgid "cannot store %s"
 msgstr "impossible de stocker %s"
 
-#: sequencer.c:1982 git-rebase.sh:175
+#: sequencer.c:2512 git-rebase.sh:178
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -3556,57 +3704,52 @@ 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:2064
+#: sequencer.c:2595
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "arrêt à %s... %.*s\n"
 
-#: sequencer.c:2106
+#: sequencer.c:2637
 #, c-format
 msgid "unknown command %d"
 msgstr "commande inconnue %d"
 
-#: sequencer.c:2136
+#: sequencer.c:2667
 msgid "could not read orig-head"
 msgstr "impossible de lire orig-head"
 
-#: sequencer.c:2141 sequencer.c:2745
+#: sequencer.c:2672 sequencer.c:3262
 msgid "could not read 'onto'"
 msgstr "impossible de lire 'onto'"
 
-#: sequencer.c:2148
-#, c-format
-msgid "could not update %s"
-msgstr "impossible de mettre à jour %s"
-
-#: sequencer.c:2155
+#: sequencer.c:2686
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "impossible de mettre à jour HEAD sur %s"
 
-#: sequencer.c:2239
+#: sequencer.c:2770
 msgid "cannot rebase: You have unstaged changes."
 msgstr "impossible de rebaser : vous avez des modifications non indexées."
 
-#: sequencer.c:2244
+#: sequencer.c:2775
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "impossible de supprimer CHERRY_PICK_HEAD"
 
-#: sequencer.c:2253
+#: sequencer.c:2784
 msgid "cannot amend non-existing commit"
 msgstr "impossible de corriger un commit non-existant"
 
-#: sequencer.c:2255
+#: sequencer.c:2786
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "fichier invalide : '%s'"
 
-#: sequencer.c:2257
+#: sequencer.c:2788
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "contenu invalide : '%s'"
 
-#: sequencer.c:2260
+#: sequencer.c:2791
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -3616,45 +3759,45 @@ 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:2270
+#: sequencer.c:2801
 msgid "could not commit staged changes."
 msgstr "impossible de valider les modifications indexées."
 
-#: sequencer.c:2350
+#: sequencer.c:2881
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s : impossible de picorer un %s"
 
-#: sequencer.c:2354
+#: sequencer.c:2885
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s : mauvaise révision"
 
-#: sequencer.c:2387
+#: sequencer.c:2918
 msgid "can't revert as initial commit"
 msgstr "impossible d'annuler en tant que commit initial"
 
-#: sequencer.c:2492
+#: sequencer.c:3023
 msgid "make_script: unhandled options"
 msgstr "make_script : options non gérées"
 
-#: sequencer.c:2495
+#: sequencer.c:3026
 msgid "make_script: error preparing revisions"
 msgstr "make_script : erreur lors de la préparation des révisions"
 
-#: sequencer.c:2529 sequencer.c:2564
+#: sequencer.c:3060 sequencer.c:3095
 #, c-format
 msgid "unusable todo list: '%s'"
 msgstr "liste à faire inutilisable : '%s'"
 
-#: sequencer.c:2615
+#: sequencer.c:3146
 #, c-format
 msgid ""
 "unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
 msgstr ""
 "paramètre non reconnu %s pour l'option rebase.missingCommitsCheck. Ignoré."
 
-#: sequencer.c:2695
+#: sequencer.c:3212
 #, c-format
 msgid ""
 "Warning: some commits may have been dropped accidentally.\n"
@@ -3663,7 +3806,7 @@ msgstr ""
 "Attention : certains commits ont pu être accidentellement supprimés.\n"
 "Commits supprimés (du plus jeune au plus vieux) :\n"
 
-#: sequencer.c:2702
+#: sequencer.c:3219
 #, c-format
 msgid ""
 "To avoid this message, use \"drop\" to explicitly remove a commit.\n"
@@ -3681,7 +3824,7 @@ msgstr ""
 "Les comportements disponibles sont : ignore, warn, error.\n"
 "\n"
 
-#: sequencer.c:2714
+#: sequencer.c:3231
 #, c-format
 msgid ""
 "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
@@ -3692,21 +3835,26 @@ msgstr ""
 "rebase --continue'.\n"
 "Ou vous pouvez abandonner le rebasage avec 'git rebase --abort'.\n"
 
-#: sequencer.c:2727 sequencer.c:2794 wrapper.c:225 wrapper.c:395
+#: sequencer.c:3244 sequencer.c:3304 wrapper.c:225 wrapper.c:395
 #: builtin/am.c:779
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "impossible d'ouvrir '%s' en écriture"
 
-#: sequencer.c:2775
+#: sequencer.c:3285
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr "impossible d'analyser le commit '%s'"
 
-#: sequencer.c:2897
+#: sequencer.c:3401
 msgid "the script was already rearranged."
 msgstr "le script a déjà été réarrangé."
 
+#: setup.c:122
+#, c-format
+msgid "'%s' is outside repository"
+msgstr "'%s' est hors du dépôt"
+
 #: setup.c:171
 #, c-format
 msgid ""
@@ -3728,6 +3876,11 @@ msgstr ""
 "Utilisez '--' pour séparer les chemins des révisions, comme ceci :\n"
 "'git <commande> [<révision>...] -- [<chemin>...]'"
 
+#: setup.c:233
+#, 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:252
 #, c-format
 msgid ""
@@ -3739,77 +3892,144 @@ msgstr ""
 "Utilisez '--' pour séparer les chemins des révisions, comme ceci :\n"
 "'git <commande> [<révision>...] -- [<chemin>...]'"
 
-#: setup.c:501
+#: setup.c:388
+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:395
+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:506
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr "Version attendue du dépôt git <= %d, %d trouvée"
 
-#: setup.c:509
+#: setup.c:514
 msgid "unknown repository extensions found:"
 msgstr "extensions de dépôt inconnues trouvées :"
 
-#: setup.c:811
+#: setup.c:533
 #, 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"
+msgid "error opening '%s'"
+msgstr "erreur à l'ouverture de '%s'"
 
-#: setup.c:813 builtin/index-pack.c:1653
-msgid "Cannot come back to cwd"
-msgstr "Impossible de revenir au répertoire de travail courant"
+#: setup.c:535
+#, c-format
+msgid "too large to be a .git file: '%s'"
+msgstr "trop gros pour être une fichier .git : '%s'"
+
+#: setup.c:537
+#, c-format
+msgid "error reading %s"
+msgstr "erreur à la lecture de %s"
+
+#: setup.c:539
+#, c-format
+msgid "invalid gitfile format: %s"
+msgstr "format de fichier git invalide : %s"
+
+#: setup.c:541
+#, c-format
+msgid "no path in gitfile: %s"
+msgstr "aucun chemin dans le fichier git : %s"
+
+#: setup.c:543
+#, c-format
+msgid "not a git repository: %s"
+msgstr "ce n'est pas un dépôt git : %s"
+
+#: setup.c:642
+#, c-format
+msgid "'$%s' too big"
+msgstr "'$%s' trop gros"
+
+#: setup.c:656
+#, c-format
+msgid "not a git repository: '%s'"
+msgstr "ce n'est pas un dépôt git : '%s'"
+
+#: setup.c:685 setup.c:687 setup.c:718
+#, c-format
+msgid "cannot chdir to '%s'"
+msgstr "impossible de se déplacer vers le répertoire (chdir) '%s'"
+
+#: setup.c:690 setup.c:746 setup.c:756 setup.c:795 setup.c:803 setup.c:818
+msgid "cannot come back to cwd"
+msgstr "impossible de revenir au répertoire de travail courant"
+
+#: setup.c:816
+#, 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:1052
+#: setup.c:827
+#, c-format
+msgid "failed to stat '%*s%s%s'"
+msgstr "échec du stat de '%*s%s%s'"
+
+#: setup.c:1057
 msgid "Unable to read current working directory"
 msgstr "Impossible d'accéder au répertoire de travail courant"
 
-#: setup.c:1064 setup.c:1070
+#: setup.c:1069 setup.c:1075
 #, c-format
-msgid "Cannot change to '%s'"
-msgstr "Impossible de modifié en '%s'"
+msgid "cannot change to '%s'"
+msgstr "impossible de modifier en '%s'"
 
-#: setup.c:1083
+#: setup.c:1088
 #, c-format
 msgid ""
-"Not a git repository (or any parent up to mount point %s)\n"
+"not a git repository (or any parent up to mount point %s)\n"
 "Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."
 msgstr ""
-"Ni ceci ni aucun de ses répertoires parents (jusqu'au point de montage %s) "
-"n'est un dépôt git\n"
-"Arrêt à la limite du système de fichiers (GIT_DISCOVERY_ACROSS_FILESYSTEM "
-"n'est pas activé)."
+"ni ceci ni aucun de ses répertoires parents (jusqu'au point de montage %s) n'est un dépôt git\n"
+"Arrêt à la limite du système de fichiers (GIT_DISCOVERY_ACROSS_FILESYSTEM n'est pas défini)."
 
-#: setup.c:1167
+#: setup.c:1172
 #, c-format
 msgid ""
-"Problem with core.sharedRepository filemode value (0%.3o).\n"
+"problem with core.sharedRepository filemode value (0%.3o).\n"
 "The owner of files must always have read and write permissions."
 msgstr ""
-"Problème avec la valeur de core.sharedRepository (0%.3o).\n"
-"Le propriétaire des fichiers doit toujours avoir les droits en lecture et "
-"écriture."
+"problème avec la valeur de core.sharedRepository (0%.3o).\n"
+"Le propriétaire des fichiers doit toujours avoir les droits en lecture et écriture."
+
+#: setup.c:1215
+msgid "open /dev/null or dup failed"
+msgstr "échec de l'ouverture ou au dup de /dev/null"
+
+#: setup.c:1230
+msgid "fork failed"
+msgstr "échec de la bifurcation"
 
-#: sha1_file.c:598
+#: setup.c:1235
+msgid "setsid failed"
+msgstr "échec du setsid"
+
+#: sha1_file.c:592
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "le chemin '%s' n'existe pas"
 
-#: sha1_file.c:624
+#: sha1_file.c:618
 #, 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é."
 
-#: sha1_file.c:630
+#: sha1_file.c:624
 #, 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."
 
-#: sha1_file.c:636
+#: sha1_file.c:630
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "le dépôt de référence '%s' est superficiel"
 
-#: sha1_file.c:644
+#: sha1_file.c:638
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "le dépôt de référence '%s' est greffé"
@@ -3889,7 +4109,7 @@ msgstr "Le chemin '%s' est dans le sous-module '%.*s'"
 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:1065 builtin/branch.c:648 builtin/submodule--helper.c:1387
+#: submodule.c:1065 builtin/branch.c:648 builtin/submodule--helper.c:1724
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Échec de résolution de HEAD comme référence valide."
 
@@ -3913,7 +4133,7 @@ msgstr "impossible de lancer 'git status' dans le sous-module '%s'"
 msgid "submodule '%s' has dirty index"
 msgstr "le sous-module '%s' a un index sale"
 
-#: submodule.c:1876
+#: submodule.c:1878
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -3921,18 +4141,18 @@ msgstr ""
 "relocate_gitdir pour le sous-module '%s' avec plus d'un arbre de travail "
 "n'est pas supporté"
 
-#: submodule.c:1888 submodule.c:1944
+#: submodule.c:1890 submodule.c:1946
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "impossible de trouve le nom pour le sous-module '%s'"
 
-#: submodule.c:1892 builtin/submodule--helper.c:909
-#: builtin/submodule--helper.c:919
+#: submodule.c:1894 builtin/submodule--helper.c:1246
+#: builtin/submodule--helper.c:1256
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "impossible de créer le répertoire '%s'"
 
-#: submodule.c:1895
+#: submodule.c:1897
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -3943,20 +4163,20 @@ msgstr ""
 "'%s' sur\n"
 "'%s'\n"
 
-#: submodule.c:1979
+#: submodule.c:1981
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr "récursion impossible dans le sous-module '%s'"
 
-#: submodule.c:2023
+#: submodule.c:2025
 msgid "could not start ls-files in .."
 msgstr "impossible de démarrer ls-files dans .."
 
-#: submodule.c:2043
+#: submodule.c:2045
 msgid "BUG: returned path string doesn't match cwd?"
 msgstr "BUG : le chemin renvoyé ne correspond pas à cwd ?"
 
-#: submodule.c:2062
+#: submodule.c:2064
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree a renvoyé un code de retour inattendu %d"
@@ -4034,7 +4254,7 @@ msgstr "Positionnerait la branche amont de '%s' sur '%s' de '%s'\n"
 msgid "transport: invalid depth option '%s'"
 msgstr "transport : option de profondeur invalide '%s'"
 
-#: transport.c:904
+#: transport.c:916
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
@@ -4043,7 +4263,7 @@ msgstr ""
 "Les chemins suivant de sous-module contiennent des modifications\n"
 "qui ne peuvent être trouvées sur aucun distant :\n"
 
-#: transport.c:908
+#: transport.c:920
 #, c-format
 msgid ""
 "\n"
@@ -4070,11 +4290,11 @@ msgstr ""
 "pour les pousser vers un serveur distant.\n"
 "\n"
 
-#: transport.c:916
+#: transport.c:928
 msgid "Aborting."
 msgstr "Abandon."
 
-#: transport-helper.c:1074
+#: transport-helper.c:1079
 #, c-format
 msgid "Could not read ref %s"
 msgstr "impossible de lire la réf %s"
@@ -4095,7 +4315,7 @@ msgstr "nom de fichier vide dans une entrée de l'arbre"
 msgid "too-short tree file"
 msgstr "fichier arbre trop court"
 
-#: unpack-trees.c:107
+#: unpack-trees.c:108
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -4106,7 +4326,7 @@ msgstr ""
 "%%sVeuillez valider ou remiser vos modifications avant de basculer de "
 "branche."
 
-#: unpack-trees.c:109
+#: unpack-trees.c:110
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -4116,7 +4336,7 @@ msgstr ""
 "l'extraction :\n"
 "%%s"
 
-#: unpack-trees.c:112
+#: unpack-trees.c:113
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -4126,7 +4346,7 @@ msgstr ""
 "fusion :\n"
 "%%sVeuillez valider ou remiser vos modifications avant la fusion."
 
-#: unpack-trees.c:114
+#: unpack-trees.c:115
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -4136,7 +4356,7 @@ msgstr ""
 "fusion :\n"
 "%%s"
 
-#: unpack-trees.c:117
+#: unpack-trees.c:118
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -4145,7 +4365,7 @@ msgstr ""
 "Vos modifications locales aux fichiers suivants seraient écrasées par %s :\n"
 "%%sVeuillez valider ou remiser vos modifications avant %s."
 
-#: unpack-trees.c:119
+#: unpack-trees.c:120
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -4154,7 +4374,7 @@ msgstr ""
 "Vos modifications locales aux fichiers suivants seraient écrasées par %s :\n"
 "%%s"
 
-#: unpack-trees.c:124
+#: unpack-trees.c:125
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
@@ -4164,7 +4384,7 @@ msgstr ""
 "contenus :\n"
 "%s"
 
-#: unpack-trees.c:128
+#: unpack-trees.c:129
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -4174,7 +4394,7 @@ msgstr ""
 "l'extraction :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant de basculer de branche."
 
-#: unpack-trees.c:130
+#: unpack-trees.c:131
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -4183,7 +4403,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient effacés par l'extraction :\n"
 "%%s"
 
-#: unpack-trees.c:133
+#: unpack-trees.c:134
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -4193,7 +4413,7 @@ msgstr ""
 "la fusion :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant la fusion."
 
-#: unpack-trees.c:135
+#: unpack-trees.c:136
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -4202,7 +4422,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient effacés par la fusion :\n"
 "%%s"
 
-#: unpack-trees.c:138
+#: unpack-trees.c:139
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -4212,7 +4432,7 @@ msgstr ""
 "%s :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant %s."
 
-#: unpack-trees.c:140
+#: unpack-trees.c:141
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -4221,7 +4441,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient effacés par %s :\n"
 "%%s"
 
-#: unpack-trees.c:145
+#: unpack-trees.c:146
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -4232,7 +4452,7 @@ msgstr ""
 "l'extraction :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant de basculer de branche."
 
-#: unpack-trees.c:147
+#: unpack-trees.c:148
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -4242,7 +4462,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient écrasés par l'extraction :\n"
 "%%s"
 
-#: unpack-trees.c:150
+#: unpack-trees.c:151
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -4252,7 +4472,7 @@ msgstr ""
 "la fusion :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant la fusion."
 
-#: unpack-trees.c:152
+#: unpack-trees.c:153
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -4261,7 +4481,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient écrasés par la fusion :\n"
 "%%s"
 
-#: unpack-trees.c:155
+#: unpack-trees.c:156
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -4271,7 +4491,7 @@ msgstr ""
 "%s :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant %s."
 
-#: unpack-trees.c:157
+#: unpack-trees.c:158
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -4280,12 +4500,12 @@ msgstr ""
 "Les fichiers suivants non suivis seraient écrasés par %s :\n"
 "%%s"
 
-#: unpack-trees.c:164
+#: unpack-trees.c:165
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr "L'entrée '%s' surcharge avec '%s'. Affectation impossible."
 
-#: unpack-trees.c:167
+#: unpack-trees.c:168
 #, c-format
 msgid ""
 "Cannot update sparse checkout: the following entries are not up to date:\n"
@@ -4295,7 +4515,7 @@ msgstr ""
 "pas à jour :\n"
 "%s"
 
-#: unpack-trees.c:169
+#: unpack-trees.c:170
 #, c-format
 msgid ""
 "The following working tree files would be overwritten by sparse checkout "
@@ -4306,7 +4526,7 @@ msgstr ""
 "jour par l'extraction creuse :\n"
 "%s"
 
-#: unpack-trees.c:171
+#: unpack-trees.c:172
 #, c-format
 msgid ""
 "The following working tree files would be removed by sparse checkout "
@@ -4317,7 +4537,7 @@ msgstr ""
 "à jour par extraction creuse :\n"
 "%s"
 
-#: unpack-trees.c:173
+#: unpack-trees.c:174
 #, c-format
 msgid ""
 "Cannot update submodule:\n"
@@ -4326,12 +4546,12 @@ msgstr ""
 "Mise à jour impossible pour le sous-module :\n"
 "%s"
 
-#: unpack-trees.c:250
+#: unpack-trees.c:251
 #, c-format
 msgid "Aborting\n"
 msgstr "Abandon\n"
 
-#: unpack-trees.c:332
+#: unpack-trees.c:333
 msgid "Checking out files"
 msgstr "Extraction des fichiers"
 
@@ -4364,18 +4584,43 @@ msgstr "numéro de port invalide"
 msgid "invalid '..' path segment"
 msgstr "segment de chemin '..' invalide"
 
-#: worktree.c:245
+#: worktree.c:245 builtin/am.c:2147
 #, c-format
 msgid "failed to read '%s'"
 msgstr "échec de la lecture de '%s'"
 
+#: worktree.c:291
+#, 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:302
+#, 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:314
+#, c-format
+msgid "'%s' does not exist"
+msgstr "'%s' n'existe pas"
+
+#: worktree.c:320
+#, 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:328
+#, c-format
+msgid "'%s' does not point back to '%s'"
+msgstr "'%s' ne pointe pas en retour sur '%s'"
+
 #: wrapper.c:223 wrapper.c:393
 #, c-format
 msgid "could not open '%s' for reading and writing"
 msgstr "impossible d'ouvrir '%s' en lecture/écriture"
 
 #: wrapper.c:227 wrapper.c:397 builtin/am.c:320 builtin/am.c:770
-#: builtin/am.c:862 builtin/merge.c:1043
+#: builtin/am.c:862 builtin/merge.c:1044
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "impossible d'ouvrir '%s' en lecture"
@@ -4389,158 +4634,158 @@ msgstr "impossible d'accéder à '%s'"
 msgid "unable to get current working directory"
 msgstr "impossible d'accéder au répertoire de travail courant"
 
-#: wt-status.c:150
+#: wt-status.c:151
 msgid "Unmerged paths:"
 msgstr "Chemins non fusionnés :"
 
-#: wt-status.c:177 wt-status.c:204
+#: wt-status.c:178 wt-status.c:205
 #, c-format
 msgid "  (use \"git reset %s <file>...\" to unstage)"
 msgstr "  (utilisez \"git reset %s <fichier>...\" pour désindexer)"
 
-#: wt-status.c:179 wt-status.c:206
+#: wt-status.c:180 wt-status.c:207
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr "  (utilisez \"git rm --cached <fichier>...\" pour désindexer)"
 
-#: wt-status.c:183
+#: wt-status.c:184
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr "  (utilisez \"git add <fichier>...\" pour marquer comme résolu)"
 
-#: wt-status.c:185 wt-status.c:189
+#: wt-status.c:186 wt-status.c:190
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr ""
 "  (utilisez \"git add/rm <fichier>...\" si nécessaire pour marquer comme "
 "résolu)"
 
-#: wt-status.c:187
+#: wt-status.c:188
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr "  (utilisez \"git rm <fichier>...\" pour marquer comme résolu)"
 
-#: wt-status.c:198 wt-status.c:984
+#: wt-status.c:199 wt-status.c:1007
 msgid "Changes to be committed:"
 msgstr "Modifications qui seront validées :"
 
-#: wt-status.c:216 wt-status.c:993
+#: wt-status.c:217 wt-status.c:1016
 msgid "Changes not staged for commit:"
 msgstr "Modifications qui ne seront pas validées :"
 
-#: wt-status.c:220
+#: wt-status.c:221
 msgid "  (use \"git add <file>...\" to update what will be committed)"
 msgstr ""
 "  (utilisez \"git add <fichier>...\" pour mettre à jour ce qui sera validé)"
 
-#: wt-status.c:222
+#: wt-status.c:223
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 msgstr ""
 "  (utilisez \"git add/rm <fichier>...\" pour mettre à jour ce qui sera "
 "validé)"
 
-#: wt-status.c:223
+#: wt-status.c:224
 msgid ""
 "  (use \"git checkout -- <file>...\" to discard changes in working directory)"
 msgstr ""
 "  (utilisez \"git checkout -- <fichier>...\" pour annuler les modifications "
 "dans la copie de travail)"
 
-#: wt-status.c:225
+#: wt-status.c:226
 msgid "  (commit or discard the untracked or modified content in submodules)"
 msgstr ""
 "  (valider ou annuler le contenu non suivi ou modifié dans les sous-modules)"
 
-#: wt-status.c:237
+#: wt-status.c:238
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
 msgstr ""
 "  (utilisez \"git %s <fichier>...\" pour inclure dans ce qui sera validé)"
 
-#: wt-status.c:252
+#: wt-status.c:253
 msgid "both deleted:"
 msgstr "supprimé des deux côtés :"
 
-#: wt-status.c:254
+#: wt-status.c:255
 msgid "added by us:"
 msgstr "ajouté par nous :"
 
-#: wt-status.c:256
+#: wt-status.c:257
 msgid "deleted by them:"
 msgstr "supprimé par eux :"
 
-#: wt-status.c:258
+#: wt-status.c:259
 msgid "added by them:"
 msgstr "ajouté par eux :"
 
-#: wt-status.c:260
+#: wt-status.c:261
 msgid "deleted by us:"
 msgstr "supprimé par nous :"
 
-#: wt-status.c:262
+#: wt-status.c:263
 msgid "both added:"
 msgstr "ajouté de deux côtés :"
 
-#: wt-status.c:264
+#: wt-status.c:265
 msgid "both modified:"
 msgstr "modifié des deux côtés :"
 
-#: wt-status.c:274
+#: wt-status.c:275
 msgid "new file:"
 msgstr "nouveau fichier :"
 
-#: wt-status.c:276
+#: wt-status.c:277
 msgid "copied:"
 msgstr "copié :"
 
-#: wt-status.c:278
+#: wt-status.c:279
 msgid "deleted:"
 msgstr "supprimé :"
 
-#: wt-status.c:280
+#: wt-status.c:281
 msgid "modified:"
 msgstr "modifié :"
 
-#: wt-status.c:282
+#: wt-status.c:283
 msgid "renamed:"
 msgstr "renommé :"
 
-#: wt-status.c:284
+#: wt-status.c:285
 msgid "typechange:"
 msgstr "modif. type :"
 
-#: wt-status.c:286
+#: wt-status.c:287
 msgid "unknown:"
 msgstr "inconnu :"
 
-#: wt-status.c:288
+#: wt-status.c:289
 msgid "unmerged:"
 msgstr "non fusionné :"
 
-#: wt-status.c:370
+#: wt-status.c:369
 msgid "new commits, "
 msgstr "nouveaux commits, "
 
-#: wt-status.c:372
+#: wt-status.c:371
 msgid "modified content, "
 msgstr "contenu modifié, "
 
-#: wt-status.c:374
+#: wt-status.c:373
 msgid "untracked content, "
 msgstr "contenu non suivi, "
 
-#: wt-status.c:824
+#: wt-status.c:847
 #, 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:856
+#: wt-status.c:879
 msgid "Submodules changed but not updated:"
 msgstr "Sous-modules modifiés mais non mis à jour :"
 
-#: wt-status.c:858
+#: wt-status.c:881
 msgid "Submodule changes to be committed:"
 msgstr "Changements du sous-module à valider :"
 
-#: wt-status.c:940
+#: wt-status.c:963
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
@@ -4548,107 +4793,107 @@ msgstr ""
 "Ne touchez pas à la ligne ci-dessus.\n"
 "Tout ce qui suit sera éliminé."
 
-#: wt-status.c:1053
+#: wt-status.c:1076
 msgid "You have unmerged paths."
 msgstr "Vous avez des chemins non fusionnés."
 
-#: wt-status.c:1056
+#: wt-status.c:1079
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (réglez les conflits puis lancez \"git commit\")"
 
-#: wt-status.c:1058
+#: wt-status.c:1081
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr "  (utilisez \"git merge --abort\" pour annuler la fusion)"
 
-#: wt-status.c:1063
+#: wt-status.c:1086
 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:1066
+#: wt-status.c:1089
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (utilisez \"git commit\" pour terminer la fusion)"
 
-#: wt-status.c:1076
+#: wt-status.c:1099
 msgid "You are in the middle of an am session."
 msgstr "Vous êtes au milieu d'une session am."
 
-#: wt-status.c:1079
+#: wt-status.c:1102
 msgid "The current patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: wt-status.c:1083
+#: wt-status.c:1106
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git am --continue\")"
 
-#: wt-status.c:1085
+#: wt-status.c:1108
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (utilisez \"git am --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1087
+#: wt-status.c:1110
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (utilisez \"git am --abort\" pour restaurer la branche d'origine)"
 
-#: wt-status.c:1219
+#: wt-status.c:1242
 msgid "git-rebase-todo is missing."
 msgstr "git-rebase-todo est manquant."
 
-#: wt-status.c:1221
+#: wt-status.c:1244
 msgid "No commands done."
 msgstr "Aucune commande réalisée."
 
-#: wt-status.c:1224
+#: wt-status.c:1247
 #, 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) :"
 
-#: wt-status.c:1235
+#: wt-status.c:1258
 #, c-format
 msgid "  (see more in file %s)"
 msgstr "  (voir plus dans le fichier %s)"
 
-#: wt-status.c:1240
+#: wt-status.c:1263
 msgid "No commands remaining."
 msgstr "Aucune commande restante."
 
-#: wt-status.c:1243
+#: wt-status.c:1266
 #, 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) :"
 
-#: wt-status.c:1251
+#: wt-status.c:1274
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr "  (utilisez \"git rebase --edit-todo\" pour voir et éditer)"
 
-#: wt-status.c:1264
+#: wt-status.c:1287
 #, 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:1269
+#: wt-status.c:1292
 msgid "You are currently rebasing."
 msgstr "Vous êtes en train de rebaser."
 
-#: wt-status.c:1283
+#: wt-status.c:1306
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git rebase --continue\")"
 
-#: wt-status.c:1285
+#: wt-status.c:1308
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (utilisez \"git rebase --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1287
+#: wt-status.c:1310
 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:1293
+#: wt-status.c:1316
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git rebase --continue\")"
 
-#: wt-status.c:1297
+#: wt-status.c:1320
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -4656,128 +4901,128 @@ msgstr ""
 "Vous êtes actuellement en train de fractionner un commit pendant un rebasage "
 "de la branche '%s' sur '%s'."
 
-#: wt-status.c:1302
+#: wt-status.c:1325
 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:1305
+#: wt-status.c:1328
 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:1309
+#: wt-status.c:1332
 #, 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:1314
+#: wt-status.c:1337
 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:1317
+#: wt-status.c:1340
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (utilisez \"git commit --amend\" pour corriger le commit actuel)"
 
-#: wt-status.c:1319
+#: wt-status.c:1342
 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:1329
+#: wt-status.c:1352
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "Vous êtes actuellement en train de picorer le commit %s."
 
-#: wt-status.c:1334
+#: wt-status.c:1357
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git cherry-pick --continue\")"
 
-#: wt-status.c:1337
+#: wt-status.c:1360
 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:1339
+#: wt-status.c:1362
 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:1348
+#: wt-status.c:1371
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Vous êtes actuellement en train de rétablir le commit %s."
 
-#: wt-status.c:1353
+#: wt-status.c:1376
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git revert --continue\")"
 
-#: wt-status.c:1356
+#: wt-status.c:1379
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git revert --continue\")"
 
-#: wt-status.c:1358
+#: wt-status.c:1381
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (utilisez \"git revert --abort\" pour annuler le rétablissement)"
 
-#: wt-status.c:1369
+#: wt-status.c:1392
 #, 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:1373
+#: wt-status.c:1396
 msgid "You are currently bisecting."
 msgstr "Vous êtes en cours de bissection."
 
-#: wt-status.c:1376
+#: wt-status.c:1399
 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:1573
+#: wt-status.c:1596
 msgid "On branch "
 msgstr "Sur la branche "
 
-#: wt-status.c:1579
+#: wt-status.c:1602
 msgid "interactive rebase in progress; onto "
 msgstr "rebasage interactif en cours ; sur "
 
-#: wt-status.c:1581
+#: wt-status.c:1604
 msgid "rebase in progress; onto "
 msgstr "rebasage en cours ; sur "
 
-#: wt-status.c:1586
+#: wt-status.c:1609
 msgid "HEAD detached at "
 msgstr "HEAD détachée sur "
 
-#: wt-status.c:1588
+#: wt-status.c:1611
 msgid "HEAD detached from "
 msgstr "HEAD détachée depuis "
 
-#: wt-status.c:1591
+#: wt-status.c:1614
 msgid "Not currently on any branch."
 msgstr "Actuellement sur aucun branche."
 
-#: wt-status.c:1611
+#: wt-status.c:1634
 msgid "Initial commit"
 msgstr "Validation initiale"
 
-#: wt-status.c:1612
+#: wt-status.c:1635
 msgid "No commits yet"
 msgstr "Aucun commit"
 
-#: wt-status.c:1626
+#: wt-status.c:1649
 msgid "Untracked files"
 msgstr "Fichiers non suivis"
 
-#: wt-status.c:1628
+#: wt-status.c:1651
 msgid "Ignored files"
 msgstr "Fichiers ignorés"
 
-#: wt-status.c:1632
+#: wt-status.c:1655
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -4789,32 +5034,32 @@ msgstr ""
 "oublier d'ajouter les nouveaux fichiers par vous-même (voir 'git help "
 "status')."
 
-#: wt-status.c:1638
+#: wt-status.c:1661
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "Fichiers non suivis non affichés%s"
 
-#: wt-status.c:1640
+#: wt-status.c:1663
 msgid " (use -u option to show untracked files)"
 msgstr " (utilisez -u pour afficher les fichiers non suivis)"
 
-#: wt-status.c:1646
+#: wt-status.c:1669
 msgid "No changes"
 msgstr "Aucune modification"
 
-#: wt-status.c:1651
+#: wt-status.c:1674
 #, 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:1654
+#: wt-status.c:1677
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "aucune modification ajoutée à la validation\n"
 
-#: wt-status.c:1657
+#: wt-status.c:1680
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -4823,67 +5068,71 @@ 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:1660
+#: wt-status.c:1683
 #, 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:1663
+#: wt-status.c:1686
 #, 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:1666 wt-status.c:1671
+#: wt-status.c:1689 wt-status.c:1694
 #, c-format
 msgid "nothing to commit\n"
 msgstr "rien à valider\n"
 
-#: wt-status.c:1669
+#: wt-status.c:1692
 #, 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:1673
+#: wt-status.c:1696
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr "rien à valider, la copie de travail est propre\n"
 
-#: wt-status.c:1785
+#: wt-status.c:1809
 msgid "No commits yet on "
 msgstr "Encore aucun commit sur "
 
-#: wt-status.c:1789
+#: wt-status.c:1813
 msgid "HEAD (no branch)"
 msgstr "HEAD (aucune branche)"
 
-#: wt-status.c:1818 wt-status.c:1826
+#: wt-status.c:1844
+msgid "different"
+msgstr "différent"
+
+#: wt-status.c:1846 wt-status.c:1854
 msgid "behind "
 msgstr "derrière "
 
-#: wt-status.c:1821 wt-status.c:1824
+#: wt-status.c:1849 wt-status.c:1852
 msgid "ahead "
 msgstr "devant "
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2318
+#: wt-status.c:2358
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr "Impossible de %s : vous avez des modifications non indexées."
 
-#: wt-status.c:2324
+#: wt-status.c:2364
 msgid "additionally, your index contains uncommitted changes."
 msgstr "de plus, votre index contient des modifications non validées."
 
-#: wt-status.c:2326
+#: wt-status.c:2366
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr "%s impossible : votre index contient des modifications non validées."
 
-#: compat/precompose_utf8.c:58 builtin/clone.c:437
+#: compat/precompose_utf8.c:58 builtin/clone.c:440
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "échec lors de l'unlink de '%s'"
@@ -4897,7 +5146,7 @@ msgstr "git add [<options>] [--] <chemin>..."
 msgid "unexpected diff status %c"
 msgstr "état de diff inattendu %c"
 
-#: builtin/add.c:88 builtin/commit.c:291
+#: builtin/add.c:88 builtin/commit.c:257
 msgid "updating files failed"
 msgstr "échec de la mise à jour des fichiers"
 
@@ -4946,7 +5195,7 @@ 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:291 builtin/clean.c:911 builtin/fetch.c:133 builtin/mv.c:124
+#: builtin/add.c:291 builtin/clean.c:911 builtin/fetch.c:146 builtin/mv.c:124
 #: builtin/prune-packed.c:55 builtin/pull.c:207 builtin/push.c:541
 #: builtin/remote.c:1333 builtin/rm.c:242 builtin/send-pack.c:164
 msgid "dry run"
@@ -4956,7 +5205,7 @@ msgstr "simuler l'action"
 msgid "interactive picking"
 msgstr "sélection interactive"
 
-#: builtin/add.c:295 builtin/checkout.c:1137 builtin/reset.c:310
+#: builtin/add.c:295 builtin/checkout.c:1128 builtin/reset.c:302
 msgid "select hunks interactively"
 msgstr "sélection interactive des sections"
 
@@ -5085,10 +5334,10 @@ msgstr "Rien de spécifié, rien n'a été ajouté.\n"
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr "Vous vouliez sûrement dire 'git add .' ?\n"
 
-#: builtin/add.c:449 builtin/check-ignore.c:176 builtin/checkout.c:281
-#: builtin/checkout.c:484 builtin/clean.c:958 builtin/commit.c:350
-#: builtin/diff-tree.c:114 builtin/mv.c:143 builtin/reset.c:249
-#: builtin/rm.c:271 builtin/submodule--helper.c:311
+#: builtin/add.c:449 builtin/check-ignore.c:177 builtin/checkout.c:280
+#: builtin/checkout.c:483 builtin/clean.c:958 builtin/commit.c:316
+#: builtin/diff-tree.c:114 builtin/mv.c:144 builtin/reset.c:241
+#: builtin/rm.c:271 builtin/submodule--helper.c:326
 msgid "index file corrupt"
 msgstr "fichier d'index corrompu"
 
@@ -5140,62 +5389,62 @@ msgstr "décalage horaire invalide"
 msgid "Patch format detection failed."
 msgstr "Échec de détection du format du patch."
 
-#: builtin/am.c:1013 builtin/clone.c:402
+#: builtin/am.c:1013 builtin/clone.c:405
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "échec de la création du répertoire '%s'"
 
-#: builtin/am.c:1017
+#: builtin/am.c:1018
 msgid "Failed to split patches."
 msgstr "Échec de découpage des patchs."
 
-#: builtin/am.c:1146 builtin/commit.c:376
+#: builtin/am.c:1148 builtin/commit.c:342
 msgid "unable to write index file"
 msgstr "impossible d'écrire le fichier d'index"
 
-#: builtin/am.c:1160
+#: builtin/am.c:1162
 #, 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:1161
+#: builtin/am.c:1163
 #, 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:1162
+#: builtin/am.c:1164
 #, 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:1269
+#: builtin/am.c:1271
 msgid "Patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: builtin/am.c:1335
+#: builtin/am.c:1337
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr "ligne d'identification invalide : %.*s"
 
-#: builtin/am.c:1357
+#: builtin/am.c:1359
 #, c-format
 msgid "unable to parse commit %s"
 msgstr "impossible d'analyser le commit %s"
 
-#: builtin/am.c:1550
+#: builtin/am.c:1554
 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:1552
+#: builtin/am.c:1556
 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:1571
+#: builtin/am.c:1575
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -5203,38 +5452,29 @@ msgstr ""
 "Avez-vous édité le patch à la main ?\n"
 "Il ne s'applique pas aux blobs enregistrés dans son index."
 
-#: builtin/am.c:1577
+#: builtin/am.c:1581
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Retour à un patch de la base et fusion à 3 points..."
 
-#: builtin/am.c:1602
+#: builtin/am.c:1606
 msgid "Failed to merge in the changes."
 msgstr "Échec d'intégration des modifications."
 
-#: builtin/am.c:1626 builtin/merge.c:642
-msgid "git write-tree failed to write a tree"
-msgstr "git write-tree a échoué à écrire un arbre"
-
-#: builtin/am.c:1633
+#: builtin/am.c:1637
 msgid "applying to an empty history"
 msgstr "application à un historique vide"
 
-#: builtin/am.c:1646 builtin/commit.c:1798 builtin/merge.c:825
-#: builtin/merge.c:850
-msgid "failed to write commit object"
-msgstr "échec de l'écriture de l'objet commit"
-
-#: builtin/am.c:1679 builtin/am.c:1683
+#: builtin/am.c:1683 builtin/am.c:1687
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "impossible de continuer : %s n'existe pas."
 
-#: builtin/am.c:1699
+#: builtin/am.c:1703
 msgid "cannot be interactive without stdin connected to a terminal."
 msgstr ""
 "impossible d'être interactif sans entrée standard connectée à un terminal."
 
-#: builtin/am.c:1704
+#: builtin/am.c:1708
 msgid "Commit Body is:"
 msgstr "Le corps de la validation est :"
 
@@ -5242,35 +5482,34 @@ msgstr "Le corps de la validation est :"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1714
+#: builtin/am.c:1718
 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:1764
+#: builtin/am.c:1768
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Index sale : impossible d'appliquer des patchs (sales : %s)"
 
-#: builtin/am.c:1804 builtin/am.c:1876
+#: builtin/am.c:1808 builtin/am.c:1879
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Application de  %.*s"
 
-#: builtin/am.c:1820
+#: builtin/am.c:1824
 msgid "No changes -- Patch already applied."
 msgstr "Pas de changement -- Patch déjà appliqué."
 
-#: builtin/am.c:1828
+#: builtin/am.c:1832
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "le patch a échoué à %s %.*s"
 
-#: builtin/am.c:1834
-#, c-format
-msgid "The copy of the patch that failed is found in: %s"
-msgstr "La copie du patch qui a échoué se trouve dans : %s"
+#: builtin/am.c:1838
+msgid "Use 'git am --show-current-patch' to see the failed patch"
+msgstr "Utilisez 'git am --show-current-patch' pour visualiser le patch en échec"
 
-#: builtin/am.c:1879
+#: builtin/am.c:1882
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -5281,7 +5520,7 @@ msgstr ""
 "introduit les mêmes changements ; vous pourriez avoir envie de sauter ce "
 "patch."
 
-#: builtin/am.c:1886
+#: builtin/am.c:1889
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -5294,17 +5533,17 @@ msgstr ""
 "Vous pouvez lancer 'git rm' sur un fichier \"supprimé par eux\" pour "
 "accepter son état."
 
-#: builtin/am.c:1993 builtin/am.c:1997 builtin/am.c:2009 builtin/reset.c:332
-#: builtin/reset.c:340
+#: builtin/am.c:1996 builtin/am.c:2000 builtin/am.c:2012 builtin/reset.c:324
+#: builtin/reset.c:332
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Impossible d'analyser l'objet '%s'."
 
-#: builtin/am.c:2045
+#: builtin/am.c:2048
 msgid "failed to clean index"
 msgstr "échec du nettoyage de l'index"
 
-#: builtin/am.c:2080
+#: builtin/am.c:2083
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -5312,135 +5551,143 @@ msgstr ""
 "Vous semblez avoir déplacé la HEAD depuis le dernier échec de 'am'.\n"
 "Pas de retour à ORIG_HEAD"
 
-#: builtin/am.c:2143
+#: builtin/am.c:2174
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Valeur invalide pour --patch-format : %s"
 
-#: builtin/am.c:2176
+#: builtin/am.c:2210
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<options>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/am.c:2177
+#: builtin/am.c:2211
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<options>] (--continue | --quit | --abort)"
 
-#: builtin/am.c:2183
+#: builtin/am.c:2217
 msgid "run interactively"
 msgstr "exécution interactive"
 
-#: builtin/am.c:2185
+#: builtin/am.c:2219
 msgid "historical option -- no-op"
 msgstr "option historique -- no-op"
 
-#: builtin/am.c:2187
+#: builtin/am.c:2221
 msgid "allow fall back on 3way merging if needed"
 msgstr "permettre de revenir à une fusion à 3 points si nécessaire"
 
-#: builtin/am.c:2188 builtin/init-db.c:484 builtin/prune-packed.c:57
-#: builtin/repack.c:180
+#: builtin/am.c:2222 builtin/init-db.c:484 builtin/prune-packed.c:57
+#: builtin/repack.c:182
 msgid "be quiet"
 msgstr "être silencieux"
 
-#: builtin/am.c:2190
+#: builtin/am.c:2224
 msgid "add a Signed-off-by line to the commit message"
 msgstr "ajouter une ligne Signed-off-by au message de validation"
 
-#: builtin/am.c:2193
+#: builtin/am.c:2227
 msgid "recode into utf8 (default)"
 msgstr "recoder en utf-8 (par défaut)"
 
-#: builtin/am.c:2195
+#: builtin/am.c:2229
 msgid "pass -k flag to git-mailinfo"
 msgstr "passer l'option -k à git-mailinfo"
 
-#: builtin/am.c:2197
+#: builtin/am.c:2231
 msgid "pass -b flag to git-mailinfo"
 msgstr "passer l'option -b à git-mailinfo"
 
-#: builtin/am.c:2199
+#: builtin/am.c:2233
 msgid "pass -m flag to git-mailinfo"
 msgstr "passer l'option -m à git-mailinfo"
 
-#: builtin/am.c:2201
+#: builtin/am.c:2235
 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:2204
+#: builtin/am.c:2238
 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:2207
+#: builtin/am.c:2241
 msgid "strip everything before a scissors line"
 msgstr "retirer tout le contenu avant la ligne des ciseaux"
 
-#: builtin/am.c:2209 builtin/am.c:2212 builtin/am.c:2215 builtin/am.c:2218
-#: builtin/am.c:2221 builtin/am.c:2224 builtin/am.c:2227 builtin/am.c:2230
-#: builtin/am.c:2236
+#: builtin/am.c:2243 builtin/am.c:2246 builtin/am.c:2249 builtin/am.c:2252
+#: builtin/am.c:2255 builtin/am.c:2258 builtin/am.c:2261 builtin/am.c:2264
+#: builtin/am.c:2270
 msgid "pass it through git-apply"
 msgstr "le passer jusqu'à git-apply"
 
-#: builtin/am.c:2226 builtin/fmt-merge-msg.c:665 builtin/fmt-merge-msg.c:668
-#: builtin/grep.c:845 builtin/merge.c:205 builtin/pull.c:145 builtin/pull.c:203
-#: builtin/repack.c:189 builtin/repack.c:193 builtin/repack.c:195
-#: builtin/show-branch.c:631 builtin/show-ref.c:169 builtin/tag.c:377
-#: parse-options.h:132 parse-options.h:134 parse-options.h:245
+#: builtin/am.c:2260 builtin/fmt-merge-msg.c:665 builtin/fmt-merge-msg.c:668
+#: builtin/grep.c:853 builtin/merge.c:206 builtin/pull.c:145 builtin/pull.c:203
+#: builtin/repack.c:191 builtin/repack.c:195 builtin/repack.c:197
+#: builtin/show-branch.c:631 builtin/show-ref.c:169 builtin/tag.c:382
+#: parse-options.h:144 parse-options.h:146 parse-options.h:257
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2232 builtin/branch.c:629 builtin/for-each-ref.c:38
-#: builtin/replace.c:444 builtin/tag.c:412 builtin/verify-tag.c:39
+#: builtin/am.c:2266 builtin/branch.c:629 builtin/for-each-ref.c:38
+#: builtin/replace.c:445 builtin/tag.c:418 builtin/verify-tag.c:39
 msgid "format"
 msgstr "format"
 
-#: builtin/am.c:2233
+#: builtin/am.c:2267
 msgid "format the patch(es) are in"
 msgstr "format de présentation des patchs"
 
-#: builtin/am.c:2239
+#: builtin/am.c:2273
 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:2241
+#: builtin/am.c:2275
 msgid "continue applying patches after resolving a conflict"
 msgstr "continuer à appliquer les patchs après résolution d'un conflit"
 
-#: builtin/am.c:2244
+#: builtin/am.c:2278
 msgid "synonyms for --continue"
 msgstr "synonymes de --continue"
 
-#: builtin/am.c:2247
+#: builtin/am.c:2281
 msgid "skip the current patch"
 msgstr "sauter le patch courant"
 
-#: builtin/am.c:2250
+#: builtin/am.c:2284
 msgid "restore the original branch and abort the patching operation."
 msgstr ""
 "restaurer la branche originale et abandonner les applications de patch."
 
-#: builtin/am.c:2254
+#: builtin/am.c:2287
+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:2290
+msgid "show the patch being applied."
+msgstr "afficher le patch en cours d'application."
+
+#: builtin/am.c:2294
 msgid "lie about committer date"
 msgstr "mentir sur la date de validation"
 
-#: builtin/am.c:2256
+#: builtin/am.c:2296
 msgid "use current timestamp for author date"
 msgstr "utiliser l'horodatage actuel pour la date d'auteur"
 
-#: builtin/am.c:2258 builtin/commit.c:1636 builtin/merge.c:236
-#: builtin/pull.c:178 builtin/revert.c:112 builtin/tag.c:392
+#: builtin/am.c:2298 builtin/commit.c:1431 builtin/merge.c:237
+#: builtin/pull.c:178 builtin/revert.c:112 builtin/tag.c:398
 msgid "key-id"
 msgstr "id-clé"
 
-#: builtin/am.c:2259
+#: builtin/am.c:2299
 msgid "GPG-sign commits"
 msgstr "signer les commits avec GPG"
 
-#: builtin/am.c:2262
+#: builtin/am.c:2302
 msgid "(internal use for git-rebase)"
 msgstr "(utilisation interne pour git-rebase)"
 
-#: builtin/am.c:2280
+#: builtin/am.c:2320
 msgid ""
 "The -b/--binary option has been a no-op for long time, and\n"
 "it will be removed. Please do not use it anymore."
@@ -5448,17 +5695,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:2287
+#: builtin/am.c:2327
 msgid "failed to read the index"
 msgstr "échec à la lecture de l'index"
 
-#: builtin/am.c:2302
+#: builtin/am.c:2342
 #, 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:2326
+#: builtin/am.c:2366
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -5467,7 +5714,7 @@ msgstr ""
 "Répertoire abandonné %s trouvé.\n"
 "Utilisez \"git am --abort\" pour le supprimer."
 
-#: builtin/am.c:2332
+#: builtin/am.c:2372
 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 "
@@ -5491,8 +5738,8 @@ msgid "git archive: Remote with no URL"
 msgstr "git archive : Dépôt distant sans URL"
 
 #: builtin/archive.c:58
-msgid "git archive: expected ACK/NAK, got EOF"
-msgstr "git archive : ACK/NACK attendu, EOF reçu"
+msgid "git archive: expected ACK/NAK, got a flush packet"
+msgstr "git archive : ACK/NACK attendu, paquet de nettoyage reçu"
 
 #: builtin/archive.c:61
 #, c-format
@@ -5578,113 +5825,113 @@ msgstr "git blame [<options>] [<rev-opts>] [<rev>] [--] <fichier>"
 msgid "<rev-opts> are documented in git-rev-list(1)"
 msgstr "<options-de-révision> sont documentés dans git-rev-list(1)"
 
-#: builtin/blame.c:668
+#: builtin/blame.c:677
 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:669
+#: builtin/blame.c:678
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr "Montrer un SHA-1 blanc pour les commits de limite (Défaut : désactivé)"
 
-#: builtin/blame.c:670
+#: builtin/blame.c:679
 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:671
+#: builtin/blame.c:680
 msgid "Show work cost statistics"
 msgstr "Montrer les statistiques de coût d'activité"
 
-#: builtin/blame.c:672
+#: builtin/blame.c:681
 msgid "Force progress reporting"
 msgstr "Forcer l'affichage de l'état d'avancement"
 
-#: builtin/blame.c:673
+#: builtin/blame.c:682
 msgid "Show output score for blame entries"
 msgstr "Montrer le score de sortie pour les éléments de blâme"
 
-#: builtin/blame.c:674
+#: builtin/blame.c:683
 msgid "Show original filename (Default: auto)"
 msgstr "Montrer les noms de fichier originaux (Défaut : auto)"
 
-#: builtin/blame.c:675
+#: builtin/blame.c:684
 msgid "Show original linenumber (Default: off)"
 msgstr "Montrer les numéros de lignes originaux (Défaut : désactivé)"
 
-#: builtin/blame.c:676
+#: builtin/blame.c:685
 msgid "Show in a format designed for machine consumption"
 msgstr "Afficher dans un format propice à la consommation par machine"
 
-#: builtin/blame.c:677
+#: builtin/blame.c:686
 msgid "Show porcelain format with per-line commit information"
 msgstr "Afficher en format porcelaine avec l'information de commit par ligne"
 
-#: builtin/blame.c:678
+#: builtin/blame.c:687
 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:679
+#: builtin/blame.c:688
 msgid "Show raw timestamp (Default: off)"
 msgstr "Afficher les horodatages bruts (Défaut : désactivé)"
 
-#: builtin/blame.c:680
+#: builtin/blame.c:689
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "Afficher les longs SHA1 de commits (Défaut : désactivé)"
 
-#: builtin/blame.c:681
+#: builtin/blame.c:690
 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:682
+#: builtin/blame.c:691
 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:683
+#: builtin/blame.c:692
 msgid "Ignore whitespace differences"
 msgstr "Ignorer les différences d'espace"
 
-#: builtin/blame.c:690
+#: builtin/blame.c:699
 msgid "Use an experimental heuristic to improve diffs"
 msgstr "Utiliser une heuristique expérimentale pour améliorer les diffs"
 
-#: builtin/blame.c:692
+#: builtin/blame.c:701
 msgid "Spend extra cycles to find better match"
 msgstr ""
 "Dépenser des cycles supplémentaires pour trouver une meilleure correspondance"
 
-#: builtin/blame.c:693
+#: builtin/blame.c:702
 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:694
+#: builtin/blame.c:703
 msgid "Use <file>'s contents as the final image"
 msgstr "Utiliser le contenu de <fichier> comme image finale"
 
-#: builtin/blame.c:695 builtin/blame.c:696
+#: builtin/blame.c:704 builtin/blame.c:705
 msgid "score"
 msgstr "score"
 
-#: builtin/blame.c:695
+#: builtin/blame.c:704
 msgid "Find line copies within and across files"
 msgstr "Trouver les copies de ligne dans et entre les fichiers"
 
-#: builtin/blame.c:696
+#: builtin/blame.c:705
 msgid "Find line movements within and across files"
 msgstr "Trouver les mouvements de ligne dans et entre les fichiers"
 
-#: builtin/blame.c:697
+#: builtin/blame.c:706
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:697
+#: builtin/blame.c:706
 msgid "Process only line range n,m, counting from 1"
 msgstr ""
 "Traiter seulement l'intervalle de ligne n,m en commençant le compte à 1"
 
-#: builtin/blame.c:744
+#: builtin/blame.c:753
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress ne peut pas être utilisé avec --incremental ou les formats "
@@ -5698,18 +5945,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:795
+#: builtin/blame.c:804
 msgid "4 years, 11 months ago"
 msgstr "il y a 10 ans et 11 mois"
 
-#: builtin/blame.c:882
+#: builtin/blame.c:890
 #, 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:928
+#: builtin/blame.c:936
 msgid "Blaming lines"
 msgstr "Assignation de blâme aux lignes"
 
@@ -6003,17 +6250,17 @@ msgstr "afficher seulement les branches qui ne sont pas fusionnées"
 msgid "list branches in columns"
 msgstr "afficher les branches en colonnes"
 
-#: builtin/branch.c:622 builtin/for-each-ref.c:40 builtin/tag.c:405
+#: builtin/branch.c:622 builtin/for-each-ref.c:40 builtin/tag.c:411
 msgid "key"
 msgstr "clé"
 
-#: builtin/branch.c:623 builtin/for-each-ref.c:41 builtin/tag.c:406
+#: builtin/branch.c:623 builtin/for-each-ref.c:41 builtin/tag.c:412
 msgid "field name to sort on"
 msgstr "nom du champ servant à trier"
 
 #: builtin/branch.c:625 builtin/for-each-ref.c:43 builtin/notes.c:408
 #: builtin/notes.c:411 builtin/notes.c:571 builtin/notes.c:574
-#: builtin/tag.c:408
+#: builtin/tag.c:414
 msgid "object"
 msgstr "objet"
 
@@ -6021,16 +6268,16 @@ msgstr "objet"
 msgid "print only branches of the object"
 msgstr "afficher seulement les branches de l'objet"
 
-#: builtin/branch.c:628 builtin/for-each-ref.c:49 builtin/tag.c:415
+#: builtin/branch.c:628 builtin/for-each-ref.c:49 builtin/tag.c:421
 msgid "sorting and filtering are case insensitive"
 msgstr "le tri et le filtrage sont non-sensibles à la casse"
 
-#: builtin/branch.c:629 builtin/for-each-ref.c:38 builtin/tag.c:413
+#: builtin/branch.c:629 builtin/for-each-ref.c:38 builtin/tag.c:419
 #: builtin/verify-tag.c:39
 msgid "format to use for the output"
 msgstr "format à utiliser pour la sortie"
 
-#: builtin/branch.c:652 builtin/clone.c:730
+#: builtin/branch.c:652 builtin/clone.c:735
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD non trouvée sous refs/heads !"
 
@@ -6131,7 +6378,7 @@ msgstr "La création d'un colis requiert un dépôt."
 msgid "Need a repository to unbundle."
 msgstr "Le dépaquetage d'un colis requiert un dépôt."
 
-#: builtin/cat-file.c:521
+#: builtin/cat-file.c:523
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
@@ -6139,7 +6386,7 @@ msgstr ""
 "git cat-file (-t [--allow-unknow-type] | -s [--allow-unknow-type] | -e | -p "
 "| <type> | --textconv | --filters) [--path=<chemin>] <objet>"
 
-#: builtin/cat-file.c:522
+#: builtin/cat-file.c:524
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
@@ -6147,66 +6394,66 @@ msgstr ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 
-#: builtin/cat-file.c:559
+#: builtin/cat-file.c:561
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<type> peut être : blob, tree, commit ou tag"
 
-#: builtin/cat-file.c:560
+#: builtin/cat-file.c:562
 msgid "show object type"
 msgstr "afficher le type de l'objet"
 
-#: builtin/cat-file.c:561
+#: builtin/cat-file.c:563
 msgid "show object size"
 msgstr "afficher la taille de l'objet"
 
-#: builtin/cat-file.c:563
+#: builtin/cat-file.c:565
 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:564
+#: builtin/cat-file.c:566
 msgid "pretty-print object's content"
 msgstr "afficher avec mise en forme le contenu de l'objet"
 
-#: builtin/cat-file.c:566
+#: builtin/cat-file.c:568
 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:568
+#: builtin/cat-file.c:570
 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:569 git-submodule.sh:931
+#: builtin/cat-file.c:571 git-submodule.sh:878
 msgid "blob"
 msgstr "blob"
 
-#: builtin/cat-file.c:570
+#: builtin/cat-file.c:572
 msgid "use a specific path for --textconv/--filters"
 msgstr "utiliser un chemin spécifique pour --textconv/--filters"
 
-#: builtin/cat-file.c:572
+#: builtin/cat-file.c:574
 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:573
+#: builtin/cat-file.c:575
 msgid "buffer --batch output"
 msgstr "bufferiser la sortie de --batch"
 
-#: builtin/cat-file.c:575
+#: builtin/cat-file.c:577
 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"
 
-#: builtin/cat-file.c:578
+#: builtin/cat-file.c:580
 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:581
+#: builtin/cat-file.c:583
 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)"
 
-#: builtin/cat-file.c:583
+#: builtin/cat-file.c:585
 msgid "show all objects with --batch or --batch-check"
 msgstr "montrer tous les objets avec --batch ou --batch-check"
 
@@ -6226,7 +6473,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:22 builtin/check-ignore.c:24 builtin/hash-object.c:99
+#: builtin/check-attr.c:22 builtin/check-ignore.c:24 builtin/hash-object.c:100
 msgid "read file names from stdin"
 msgstr "lire les noms de fichier depuis l'entrée standard"
 
@@ -6235,7 +6482,7 @@ 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:20 builtin/checkout.c:1118 builtin/gc.c:358
+#: builtin/check-ignore.c:20 builtin/checkout.c:1106 builtin/gc.c:358
 msgid "suppress progress reporting"
 msgstr "supprimer l'état d'avancement"
 
@@ -6247,27 +6494,27 @@ msgstr "afficher les chemins en entrée qui ne correspondent pas"
 msgid "ignore index when checking"
 msgstr "ignorer l'index pendant la vérification"
 
-#: builtin/check-ignore.c:158
+#: builtin/check-ignore.c:159
 msgid "cannot specify pathnames with --stdin"
 msgstr "impossible de spécifier les chemins avec --stdin"
 
-#: builtin/check-ignore.c:161
+#: builtin/check-ignore.c:162
 msgid "-z only makes sense with --stdin"
 msgstr "-z n'a de sens qu'avec l'option --stdin"
 
-#: builtin/check-ignore.c:163
+#: builtin/check-ignore.c:164
 msgid "no path specified"
 msgstr "aucun chemin spécifié"
 
-#: builtin/check-ignore.c:167
+#: builtin/check-ignore.c:168
 msgid "--quiet is only valid with a single pathname"
 msgstr "--quiet n'est valide qu'avec un seul chemin"
 
-#: builtin/check-ignore.c:169
+#: builtin/check-ignore.c:170
 msgid "cannot have both --quiet and --verbose"
 msgstr "impossible d'avoir --quiet et --verbose"
 
-#: builtin/check-ignore.c:172
+#: builtin/check-ignore.c:173
 msgid "--non-matching is only valid with --verbose"
 msgstr "--non-matching n'est valide qu'avec --verbose"
 
@@ -6327,9 +6574,9 @@ msgid "write the content to temporary files"
 msgstr "écrire le contenu dans des fichiers temporaires"
 
 #: builtin/checkout-index.c:173 builtin/column.c:31
-#: builtin/submodule--helper.c:866 builtin/submodule--helper.c:869
-#: builtin/submodule--helper.c:875 builtin/submodule--helper.c:1237
-#: builtin/worktree.c:552
+#: builtin/submodule--helper.c:1203 builtin/submodule--helper.c:1206
+#: builtin/submodule--helper.c:1212 builtin/submodule--helper.c:1574
+#: builtin/worktree.c:570
 msgid "string"
 msgstr "chaîne"
 
@@ -6374,82 +6621,82 @@ msgstr "le chemin '%s' n'a pas les versions nécessaires"
 msgid "path '%s': cannot merge"
 msgstr "chemin '%s' : impossible de fusionner"
 
-#: builtin/checkout.c:232
+#: builtin/checkout.c:231
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "Impossible d'ajouter le résultat de fusion pour '%s'"
 
-#: builtin/checkout.c:254 builtin/checkout.c:257 builtin/checkout.c:260
-#: builtin/checkout.c:263
+#: builtin/checkout.c:253 builtin/checkout.c:256 builtin/checkout.c:259
+#: builtin/checkout.c:262
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr "'%s' ne peut pas être utilisé avec des mises à jour de chemins"
 
-#: builtin/checkout.c:266 builtin/checkout.c:269
+#: builtin/checkout.c:265 builtin/checkout.c:268
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' ne peut pas être utilisé avec %s"
 
-#: builtin/checkout.c:272
+#: builtin/checkout.c:271
 #, 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:341 builtin/checkout.c:348
+#: builtin/checkout.c:340 builtin/checkout.c:347
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "le chemin '%s' n'est pas fusionné"
 
-#: builtin/checkout.c:506
+#: builtin/checkout.c:505
 msgid "you need to resolve your current index first"
 msgstr "vous devez d'abord résoudre votre index courant"
 
-#: builtin/checkout.c:637
+#: builtin/checkout.c:636
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Impossible de faire un reflog pour '%s' : %s\n"
 
-#: builtin/checkout.c:678
+#: builtin/checkout.c:677
 msgid "HEAD is now at"
 msgstr "HEAD est maintenant sur"
 
-#: builtin/checkout.c:682 builtin/clone.c:684
+#: builtin/checkout.c:681 builtin/clone.c:689
 msgid "unable to update HEAD"
 msgstr "impossible de mettre à jour HEAD"
 
-#: builtin/checkout.c:686
+#: builtin/checkout.c:685
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:689
+#: builtin/checkout.c:688
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Déjà sur '%s'\n"
 
-#: builtin/checkout.c:693
+#: builtin/checkout.c:692
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Basculement et remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:695 builtin/checkout.c:1051
+#: builtin/checkout.c:694 builtin/checkout.c:1039
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Basculement sur la nouvelle branche '%s'\n"
 
-#: builtin/checkout.c:697
+#: builtin/checkout.c:696
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Basculement sur la branche '%s'\n"
 
-#: builtin/checkout.c:748
+#: builtin/checkout.c:747
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... et %d en plus.\n"
 
-#: builtin/checkout.c:754
+#: builtin/checkout.c:753
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -6472,7 +6719,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:773
+#: builtin/checkout.c:772
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -6501,162 +6748,162 @@ msgstr[1] ""
 "git branch <nouvelle-branche> %s\n"
 "\n"
 
-#: builtin/checkout.c:814
+#: builtin/checkout.c:804
 msgid "internal error in revision walk"
 msgstr "erreur interne lors du parcours des révisions"
 
-#: builtin/checkout.c:818
+#: builtin/checkout.c:808
 msgid "Previous HEAD position was"
 msgstr "La position précédente de HEAD était sur"
 
-#: builtin/checkout.c:848 builtin/checkout.c:1046
+#: builtin/checkout.c:836 builtin/checkout.c:1034
 msgid "You are on a branch yet to be born"
 msgstr "Vous êtes sur une branche qui doit encore naître"
 
-#: builtin/checkout.c:952
+#: builtin/checkout.c:940
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "une seule référence attendue, %d fournies."
 
-#: builtin/checkout.c:992 builtin/worktree.c:247
+#: builtin/checkout.c:980 builtin/worktree.c:249
 #, c-format
 msgid "invalid reference: %s"
 msgstr "référence invalide : %s"
 
-#: builtin/checkout.c:1021
+#: builtin/checkout.c:1009
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "la référence n'est pas un arbre : %s"
 
-#: builtin/checkout.c:1060
+#: builtin/checkout.c:1048
 msgid "paths cannot be used with switching branches"
 msgstr "impossible d'utiliser des chemins avec un basculement de branches"
 
-#: builtin/checkout.c:1063 builtin/checkout.c:1067
+#: builtin/checkout.c:1051 builtin/checkout.c:1055
 #, 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:1071 builtin/checkout.c:1074 builtin/checkout.c:1079
-#: builtin/checkout.c:1082
+#: builtin/checkout.c:1059 builtin/checkout.c:1062 builtin/checkout.c:1067
+#: builtin/checkout.c:1070
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' ne peut pas être utilisé avec '%s'"
 
-#: builtin/checkout.c:1087
+#: builtin/checkout.c:1075
 #, 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:1119 builtin/checkout.c:1121 builtin/clone.c:114
-#: builtin/remote.c:166 builtin/remote.c:168 builtin/worktree.c:369
-#: builtin/worktree.c:371
+#: builtin/checkout.c:1107 builtin/checkout.c:1109 builtin/clone.c:116
+#: builtin/remote.c:166 builtin/remote.c:168 builtin/worktree.c:387
+#: builtin/worktree.c:389
 msgid "branch"
 msgstr "branche"
 
-#: builtin/checkout.c:1120
+#: builtin/checkout.c:1108
 msgid "create and checkout a new branch"
 msgstr "créer et extraire une nouvelle branche"
 
-#: builtin/checkout.c:1122
+#: builtin/checkout.c:1110
 msgid "create/reset and checkout a branch"
 msgstr "créer/réinitialiser et extraire une branche"
 
-#: builtin/checkout.c:1123
+#: builtin/checkout.c:1111
 msgid "create reflog for new branch"
 msgstr "créer un reflog pour une nouvelle branche"
 
-#: builtin/checkout.c:1124 builtin/worktree.c:373
+#: builtin/checkout.c:1112 builtin/worktree.c:391
 msgid "detach HEAD at named commit"
 msgstr "détacher la HEAD au commit nommé"
 
-#: builtin/checkout.c:1125
+#: builtin/checkout.c:1113
 msgid "set upstream info for new branch"
 msgstr "paramétrer les coordonnées de branche amont pour une nouvelle branche"
 
-#: builtin/checkout.c:1127
+#: builtin/checkout.c:1115
 msgid "new-branch"
 msgstr "nouvelle branche"
 
-#: builtin/checkout.c:1127
+#: builtin/checkout.c:1115
 msgid "new unparented branch"
 msgstr "nouvelle branche sans parent"
 
-#: builtin/checkout.c:1128
+#: builtin/checkout.c:1116
 msgid "checkout our version for unmerged files"
 msgstr "extraire notre version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1130
+#: builtin/checkout.c:1118
 msgid "checkout their version for unmerged files"
 msgstr "extraire leur version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1132
+#: builtin/checkout.c:1120
 msgid "force checkout (throw away local modifications)"
 msgstr "forcer l'extraction (laisser tomber les modifications locales)"
 
-#: builtin/checkout.c:1133
+#: builtin/checkout.c:1122
 msgid "perform a 3-way merge with the new branch"
 msgstr "effectuer une fusion à 3 points avec la nouvelle branche"
 
-#: builtin/checkout.c:1134 builtin/merge.c:238
+#: builtin/checkout.c:1124 builtin/merge.c:239
 msgid "update ignored files (default)"
 msgstr "mettre à jour les fichiers ignorés (par défaut)"
 
-#: builtin/checkout.c:1135 builtin/log.c:1496 parse-options.h:251
+#: builtin/checkout.c:1126 builtin/log.c:1499 parse-options.h:263
 msgid "style"
 msgstr "style"
 
-#: builtin/checkout.c:1136
+#: builtin/checkout.c:1127
 msgid "conflict style (merge or diff3)"
 msgstr "style de conflit (merge (fusion) ou diff3)"
 
-#: builtin/checkout.c:1139
+#: builtin/checkout.c:1130
 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:1141
+#: builtin/checkout.c:1132
 msgid "second guess 'git checkout <no-such-branch>'"
 msgstr "réessayer d'interpréter 'git checkout <branche-inexistante>'"
 
-#: builtin/checkout.c:1143
+#: builtin/checkout.c:1134
 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:1147 builtin/clone.c:81 builtin/fetch.c:137
-#: builtin/merge.c:235 builtin/pull.c:123 builtin/push.c:556
+#: builtin/checkout.c:1138 builtin/clone.c:83 builtin/fetch.c:150
+#: builtin/merge.c:236 builtin/pull.c:123 builtin/push.c:556
 #: builtin/send-pack.c:173
 msgid "force progress reporting"
 msgstr "forcer l'affichage de l'état d'avancement"
 
-#: builtin/checkout.c:1177
+#: builtin/checkout.c:1168
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "-b, -B et --orphan sont mutuellement exclusifs"
 
-#: builtin/checkout.c:1194
+#: builtin/checkout.c:1185
 msgid "--track needs a branch name"
 msgstr "--track requiert un nom de branche"
 
-#: builtin/checkout.c:1199
+#: builtin/checkout.c:1190
 msgid "Missing branch name; try -b"
 msgstr "Nom de branche manquant ; essayez -b"
 
-#: builtin/checkout.c:1235
+#: builtin/checkout.c:1226
 msgid "invalid path specification"
 msgstr "spécification de chemin invalide"
 
-#: builtin/checkout.c:1242
+#: builtin/checkout.c:1233
 #, 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:1246
+#: builtin/checkout.c:1237
 #, 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:1250
+#: builtin/checkout.c:1241
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -6755,7 +7002,7 @@ msgstr "Sélectionner les éléments à supprimer"
 msgid "Remove %s [y/N]? "
 msgstr "Supprimer %s [y/N] ? "
 
-#: builtin/clean.c:788 git-add--interactive.perl:1616
+#: builtin/clean.c:788 git-add--interactive.perl:1710
 #, c-format
 msgid "Bye.\n"
 msgstr "Au revoir.\n"
@@ -6778,11 +7025,11 @@ msgstr ""
 "help                - cet écran\n"
 "?                   - aide pour la sélection en ligne"
 
-#: builtin/clean.c:823 git-add--interactive.perl:1692
+#: builtin/clean.c:823 git-add--interactive.perl:1786
 msgid "*** Commands ***"
 msgstr "*** Commandes ***"
 
-#: builtin/clean.c:824 git-add--interactive.perl:1689
+#: builtin/clean.c:824 git-add--interactive.perl:1783
 msgid "What now"
 msgstr "Et maintenant ?"
 
@@ -6812,8 +7059,8 @@ msgstr "nettoyage interactif"
 msgid "remove whole directories"
 msgstr "supprimer les répertoires entiers"
 
-#: builtin/clean.c:916 builtin/describe.c:530 builtin/describe.c:532
-#: builtin/grep.c:863 builtin/log.c:155 builtin/log.c:157
+#: builtin/clean.c:916 builtin/describe.c:533 builtin/describe.c:535
+#: builtin/grep.c:871 builtin/log.c:157 builtin/log.c:159
 #: builtin/ls-files.c:548 builtin/name-rev.c:397 builtin/name-rev.c:399
 #: builtin/show-ref.c:176
 msgid "pattern"
@@ -6851,147 +7098,147 @@ msgstr ""
 "clean.requireForce à true par défaut et ni -i, -n ou -f fourni ; refus de "
 "nettoyer"
 
-#: builtin/clone.c:39
+#: builtin/clone.c:40
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<options>] [--] <dépôt> [<répertoire>]"
 
-#: builtin/clone.c:83
+#: builtin/clone.c:85
 msgid "don't create a checkout"
 msgstr "ne pas créer d'extraction"
 
-#: builtin/clone.c:84 builtin/clone.c:86 builtin/init-db.c:479
+#: builtin/clone.c:86 builtin/clone.c:88 builtin/init-db.c:479
 msgid "create a bare repository"
 msgstr "créer un dépôt nu"
 
-#: builtin/clone.c:88
+#: builtin/clone.c:90
 msgid "create a mirror repository (implies bare)"
 msgstr "créer un dépôt miroir (implique dépôt nu)"
 
-#: builtin/clone.c:90
+#: builtin/clone.c:92
 msgid "to clone from a local repository"
 msgstr "pour cloner depuis un dépôt local"
 
-#: builtin/clone.c:92
+#: builtin/clone.c:94
 msgid "don't use local hardlinks, always copy"
 msgstr "ne pas utiliser de liens durs locaux, toujours copier"
 
-#: builtin/clone.c:94
+#: builtin/clone.c:96
 msgid "setup as shared repository"
 msgstr "régler comme dépôt partagé"
 
-#: builtin/clone.c:96 builtin/clone.c:100
+#: builtin/clone.c:98 builtin/clone.c:102
 msgid "pathspec"
 msgstr "spécificateur de chemin"
 
-#: builtin/clone.c:96 builtin/clone.c:100
+#: builtin/clone.c:98 builtin/clone.c:102
 msgid "initialize submodules in the clone"
 msgstr "initialiser les sous-modules dans le clone"
 
-#: builtin/clone.c:103
+#: builtin/clone.c:105
 msgid "number of submodules cloned in parallel"
 msgstr "nombre de sous-modules clonés en parallèle"
 
-#: builtin/clone.c:104 builtin/init-db.c:476
+#: builtin/clone.c:106 builtin/init-db.c:476
 msgid "template-directory"
 msgstr "répertoire-modèle"
 
-#: builtin/clone.c:105 builtin/init-db.c:477
+#: builtin/clone.c:107 builtin/init-db.c:477
 msgid "directory from which templates will be used"
 msgstr "répertoire depuis lequel les modèles vont être utilisés"
 
-#: builtin/clone.c:107 builtin/clone.c:109 builtin/submodule--helper.c:873
-#: builtin/submodule--helper.c:1240
+#: builtin/clone.c:109 builtin/clone.c:111 builtin/submodule--helper.c:1210
+#: builtin/submodule--helper.c:1577
 msgid "reference repository"
 msgstr "dépôt de référence"
 
-#: builtin/clone.c:111
+#: builtin/clone.c:113
 msgid "use --reference only while cloning"
 msgstr "utiliser seulement --reference pour cloner"
 
-#: builtin/clone.c:112 builtin/column.c:27 builtin/merge-file.c:44
+#: builtin/clone.c:114 builtin/column.c:27 builtin/merge-file.c:44
 msgid "name"
 msgstr "nom"
 
-#: builtin/clone.c:113
+#: builtin/clone.c:115
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "utiliser <nom> au lieu de 'origin' pour suivre la branche amont"
 
-#: builtin/clone.c:115
+#: builtin/clone.c:117
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "extraire <branche> au lieu de la HEAD du répertoire distant"
 
-#: builtin/clone.c:117
+#: builtin/clone.c:119
 msgid "path to git-upload-pack on the remote"
 msgstr "chemin vers git-upload-pack sur le serveur distant"
 
-#: builtin/clone.c:118 builtin/fetch.c:138 builtin/grep.c:806
+#: builtin/clone.c:120 builtin/fetch.c:151 builtin/grep.c:813
 #: builtin/pull.c:211
 msgid "depth"
 msgstr "profondeur"
 
-#: builtin/clone.c:119
+#: builtin/clone.c:121
 msgid "create a shallow clone of that depth"
 msgstr "créer un clone superficiel de cette profondeur"
 
-#: builtin/clone.c:120 builtin/fetch.c:140 builtin/pack-objects.c:2991
-#: parse-options.h:142
+#: builtin/clone.c:122 builtin/fetch.c:153 builtin/pack-objects.c:3017
+#: parse-options.h:154
 msgid "time"
 msgstr "heure"
 
-#: builtin/clone.c:121
+#: builtin/clone.c:123
 msgid "create a shallow clone since a specific time"
 msgstr "créer un clone superficiel depuis une date spécifique"
 
-#: builtin/clone.c:122 builtin/fetch.c:142
+#: builtin/clone.c:124 builtin/fetch.c:155
 msgid "revision"
 msgstr "révision"
 
-#: builtin/clone.c:123 builtin/fetch.c:143
+#: builtin/clone.c:125 builtin/fetch.c:156
 msgid "deepen history of shallow clone, excluding rev"
 msgstr ""
 "approfondir l'historique d'un clone superficiel en excluant une révision"
 
-#: builtin/clone.c:125
+#: builtin/clone.c:127
 msgid "clone only one branch, HEAD or --branch"
 msgstr "cloner seulement une branche, HEAD ou --branch"
 
-#: builtin/clone.c:127
+#: builtin/clone.c:129
 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:129
+#: builtin/clone.c:131
 msgid "any cloned submodules will be shallow"
 msgstr "tous les sous-modules clonés seront superficiels"
 
-#: builtin/clone.c:130 builtin/init-db.c:485
+#: builtin/clone.c:132 builtin/init-db.c:485
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:131 builtin/init-db.c:486
+#: builtin/clone.c:133 builtin/init-db.c:486
 msgid "separate git dir from working tree"
 msgstr "séparer le répertoire git de la copie de travail"
 
-#: builtin/clone.c:132
+#: builtin/clone.c:134
 msgid "key=value"
 msgstr "clé=valeur"
 
-#: builtin/clone.c:133
+#: builtin/clone.c:135
 msgid "set config inside the new repository"
 msgstr "régler la configuration dans le nouveau dépôt"
 
-#: builtin/clone.c:134 builtin/fetch.c:160 builtin/pull.c:224
+#: builtin/clone.c:136 builtin/fetch.c:173 builtin/pull.c:224
 #: builtin/push.c:567
 msgid "use IPv4 addresses only"
 msgstr "n'utiliser que des adresses IPv4"
 
-#: builtin/clone.c:136 builtin/fetch.c:162 builtin/pull.c:227
+#: builtin/clone.c:138 builtin/fetch.c:175 builtin/pull.c:227
 #: builtin/push.c:569
 msgid "use IPv6 addresses only"
 msgstr "n'utiliser que des adresses IPv6"
 
-#: builtin/clone.c:273
+#: builtin/clone.c:276
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -6999,42 +7246,42 @@ msgstr ""
 "Aucun nom de répertoire n'a pu être deviné\n"
 "Veuillez spécifier un répertoire dans la ligne de commande"
 
-#: builtin/clone.c:326
+#: builtin/clone.c:329
 #, 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:398
+#: builtin/clone.c:401
 #, c-format
 msgid "failed to open '%s'"
 msgstr "échec à l'ouverture de '%s'"
 
-#: builtin/clone.c:406
+#: builtin/clone.c:409
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s existe et n'est pas un répertoire"
 
-#: builtin/clone.c:420
+#: builtin/clone.c:423
 #, c-format
 msgid "failed to stat %s\n"
 msgstr "échec du stat de %s\n"
 
-#: builtin/clone.c:442
+#: builtin/clone.c:445
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "échec de la création du lien '%s'"
 
-#: builtin/clone.c:446
+#: builtin/clone.c:449
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "échec de la copie vers '%s'"
 
-#: builtin/clone.c:472
+#: builtin/clone.c:475
 #, c-format
 msgid "done.\n"
 msgstr "fait.\n"
 
-#: builtin/clone.c:484
+#: builtin/clone.c:489
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -7044,102 +7291,102 @@ msgstr ""
 "Vous pouvez inspecter ce qui a été extrait avec 'git status'\n"
 "et réessayer l'extraction avec 'git checkout -f HEAD'\n"
 
-#: builtin/clone.c:561
+#: builtin/clone.c:566
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Impossible de trouver la branche distante '%s' à cloner."
 
-#: builtin/clone.c:656
+#: builtin/clone.c:661
 msgid "remote did not send all necessary objects"
 msgstr "le serveur distant n'a pas envoyé tous les objets nécessaires"
 
-#: builtin/clone.c:672
+#: builtin/clone.c:677
 #, c-format
 msgid "unable to update %s"
 msgstr "impossible de mettre à jour %s"
 
-#: builtin/clone.c:721
+#: builtin/clone.c:726
 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:751
+#: builtin/clone.c:756
 msgid "unable to checkout working tree"
 msgstr "impossible d'extraire la copie de travail"
 
-#: builtin/clone.c:796
+#: builtin/clone.c:801
 msgid "unable to write parameters to config file"
 msgstr "impossible d'écrire les paramètres dans le fichier de configuration"
 
-#: builtin/clone.c:859
+#: builtin/clone.c:864
 msgid "cannot repack to clean up"
 msgstr "impossible de remballer pour nettoyer"
 
-#: builtin/clone.c:861
+#: builtin/clone.c:866
 msgid "cannot unlink temporary alternates file"
 msgstr "impossible de unlinker le fichier temporaire alternates"
 
-#: builtin/clone.c:894 builtin/receive-pack.c:1945
+#: builtin/clone.c:906 builtin/receive-pack.c:1946
 msgid "Too many arguments."
 msgstr "Trop d'arguments."
 
-#: builtin/clone.c:898
+#: builtin/clone.c:910
 msgid "You must specify a repository to clone."
 msgstr "Vous devez spécifier un dépôt à cloner."
 
-#: builtin/clone.c:911
+#: builtin/clone.c:923
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "les options --bare et --origin %s sont incompatibles."
 
-#: builtin/clone.c:914
+#: builtin/clone.c:926
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "--bare et --separate-git-dir sont incompatibles."
 
-#: builtin/clone.c:927
+#: builtin/clone.c:939
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "le dépôt '%s' n'existe pas"
 
-#: builtin/clone.c:933 builtin/fetch.c:1358
+#: builtin/clone.c:945 builtin/fetch.c:1455
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "la profondeur %s n'est pas un entier positif"
 
-#: builtin/clone.c:943
+#: builtin/clone.c:955
 #, 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:953
+#: builtin/clone.c:965
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "la copie de travail '%s' existe déjà."
 
-#: builtin/clone.c:968 builtin/clone.c:979 builtin/difftool.c:270
-#: builtin/worktree.c:253 builtin/worktree.c:283
+#: builtin/clone.c:980 builtin/clone.c:1001 builtin/difftool.c:270
+#: builtin/worktree.c:255 builtin/worktree.c:285
 #, 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:971
+#: builtin/clone.c:985
 #, 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:983
+#: builtin/clone.c:1005
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Clonage dans le dépôt nu '%s'\n"
 
-#: builtin/clone.c:985
+#: builtin/clone.c:1007
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Clonage dans '%s'...\n"
 
-#: builtin/clone.c:1009
+#: builtin/clone.c:1031
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -7147,37 +7394,41 @@ msgstr ""
 "clone --recursive n'est pas compatible avec à la fois --reference et --"
 "reference-if-able"
 
-#: builtin/clone.c:1071
+#: builtin/clone.c:1093
 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:1073
+#: builtin/clone.c:1095
 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:1075
+#: builtin/clone.c:1097
 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:1078
+#: builtin/clone.c:1099
+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:1102
 msgid "source repository is shallow, ignoring --local"
 msgstr "le dépôt source est superficiel, option --local ignorée"
 
-#: builtin/clone.c:1083
+#: builtin/clone.c:1107
 msgid "--local is ignored"
 msgstr "--local est ignoré"
 
-#: builtin/clone.c:1139 builtin/clone.c:1147
+#: builtin/clone.c:1169 builtin/clone.c:1177
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "La branche distante %s n'a pas été trouvée dans le dépôt amont %s"
 
-#: builtin/clone.c:1150
+#: builtin/clone.c:1180
 msgid "You appear to have cloned an empty repository."
 msgstr "Vous semblez avoir cloné un dépôt vide."
 
@@ -7213,69 +7464,15 @@ msgstr "Remplissage d'espace entre les colonnes"
 msgid "--command must be the first argument"
 msgstr "--command doit être le premier argument"
 
-#: builtin/commit.c:39
+#: builtin/commit.c:37
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr "git commit [<options>] [--] <spécification-de-chemin>..."
 
-#: builtin/commit.c:44
+#: builtin/commit.c:42
 msgid "git status [<options>] [--] <pathspec>..."
 msgstr "git status [<options>] [--] <spécification-de-chemin>..."
 
-#: builtin/commit.c:49
-msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly. Run the\n"
-"following command and follow the instructions in your editor to edit\n"
-"your configuration file:\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
-msgstr ""
-"Votre nom et votre adresse courriel ont été configurés automatiquement en "
-"se\n"
-"fondant sur votre nom d'utilisateur et le nom de votre machine. Veuillez \n"
-"vérifier qu'ils sont corrects. Vous pouvez supprimer ce message en les \n"
-"paramétrant explicitement. Lancez les commandes suivantes et suivez les\n"
-"instruction dans votre éditeur pour éditer votre fichier de configuration :\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"Après ceci, vous pouvez corriger l'identité utilisée pour cette validation "
-"avec :\n"
-"\n"
-"    git commit --amend --reset-author\n"
-
-#: builtin/commit.c:62
-msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly:\n"
-"\n"
-"    git config --global user.name \"Your Name\"\n"
-"    git config --global user.email you@example.com\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
-msgstr ""
-"Votre nom et votre adresse courriel ont été configurés automatiquement en se "
-"fondant\n"
-"sur votre nom d'utilisateur et le nom de votre machine. Veuillez vérifier "
-"qu'ils sont corrects.\n"
-"Vous pouvez supprimer ce message en les paramétrant explicitement :\n"
-"\n"
-"    git config --global user.name \"Votre Nom\"\n"
-"    git config --global user.email vous@exemple.com\n"
-"\n"
-"Après ceci, vous pouvez corriger l'identité utilisée pour ce commit avec :\n"
-"\n"
-"    git commit --amend --reset-author\n"
-
-#: builtin/commit.c:74
+#: builtin/commit.c:47
 msgid ""
 "You asked to amend the most recent commit, but doing so would make\n"
 "it empty. You can repeat your command with --allow-empty, or you can\n"
@@ -7286,7 +7483,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:79
+#: builtin/commit.c:52
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -7301,11 +7498,11 @@ msgstr ""
 "    git commit --allow-empty\n"
 "\n"
 
-#: builtin/commit.c:86
+#: builtin/commit.c:59
 msgid "Otherwise, please use 'git reset'\n"
 msgstr "Sinon, veuillez utiliser 'git reset'\n"
 
-#: builtin/commit.c:89
+#: builtin/commit.c:62
 msgid ""
 "If you wish to skip this commit, use:\n"
 "\n"
@@ -7321,61 +7518,61 @@ msgstr ""
 "Puis \"git cherry-pick --continue\" continuera le picorage \n"
 "des commits restants.\n"
 
-#: builtin/commit.c:318
+#: builtin/commit.c:284
 msgid "failed to unpack HEAD tree object"
 msgstr "échec du dépaquetage de l'objet arbre HEAD"
 
-#: builtin/commit.c:359
+#: builtin/commit.c:325
 msgid "unable to create temporary index"
 msgstr "impossible de créer l'index temporaire"
 
-#: builtin/commit.c:365
+#: builtin/commit.c:331
 msgid "interactive add failed"
 msgstr "échec de l'ajout interactif"
 
-#: builtin/commit.c:378
+#: builtin/commit.c:344
 msgid "unable to update temporary index"
 msgstr "impossible de mettre à jour l'index temporaire"
 
-#: builtin/commit.c:380
+#: builtin/commit.c:346
 msgid "Failed to update main cache tree"
 msgstr "Impossible de mettre à jour l'arbre de cache principal"
 
-#: builtin/commit.c:405 builtin/commit.c:429 builtin/commit.c:478
+#: builtin/commit.c:371 builtin/commit.c:395 builtin/commit.c:444
 msgid "unable to write new_index file"
 msgstr "impossible d'écrire le fichier new_index"
 
-#: builtin/commit.c:461
+#: builtin/commit.c:427
 msgid "cannot do a partial commit during a merge."
 msgstr "impossible de faire une validation partielle pendant une fusion."
 
-#: builtin/commit.c:463
+#: builtin/commit.c:429
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "impossible de faire une validation partielle pendant un picorage."
 
-#: builtin/commit.c:471
+#: builtin/commit.c:437
 msgid "cannot read the index"
 msgstr "impossible de lire l'index"
 
-#: builtin/commit.c:490
+#: builtin/commit.c:456
 msgid "unable to write temporary index file"
 msgstr "impossible d'écrire le fichier d'index temporaire"
 
-#: builtin/commit.c:587
+#: builtin/commit.c:553
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "entête d'auteur manquant dans le commit '%s'"
 
-#: builtin/commit.c:589
+#: builtin/commit.c:555
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr "le commit '%s' a une ligne d'auteur malformée"
 
-#: builtin/commit.c:608
+#: builtin/commit.c:574
 msgid "malformed --author parameter"
 msgstr "paramètre --author mal formé"
 
-#: builtin/commit.c:660
+#: builtin/commit.c:626
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -7383,38 +7580,38 @@ 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:697 builtin/commit.c:730 builtin/commit.c:1114
+#: builtin/commit.c:663 builtin/commit.c:696 builtin/commit.c:1024
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "impossible de rechercher le commit %s"
 
-#: builtin/commit.c:709 builtin/shortlog.c:309
+#: builtin/commit.c:675 builtin/shortlog.c:309
 #, 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:711
+#: builtin/commit.c:677
 msgid "could not read log from standard input"
 msgstr "impossible de lire le journal depuis l'entrée standard"
 
-#: builtin/commit.c:715
+#: builtin/commit.c:681
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "impossible de lire le fichier de journal '%s'"
 
-#: builtin/commit.c:742 builtin/commit.c:750
+#: builtin/commit.c:710 builtin/commit.c:718
 msgid "could not read SQUASH_MSG"
 msgstr "impossible de lire SQUASH_MSG"
 
-#: builtin/commit.c:747
+#: builtin/commit.c:715
 msgid "could not read MERGE_MSG"
 msgstr "impossible de lire MERGE_MSG"
 
-#: builtin/commit.c:801
+#: builtin/commit.c:769
 msgid "could not write commit template"
 msgstr "impossible d'écrire le modèle de commit"
 
-#: builtin/commit.c:819
+#: builtin/commit.c:787
 #, c-format
 msgid ""
 "\n"
@@ -7429,7 +7626,7 @@ msgstr ""
 "\t%s\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:824
+#: builtin/commit.c:792
 #, c-format
 msgid ""
 "\n"
@@ -7444,7 +7641,7 @@ msgstr ""
 "\t%s\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:837
+#: builtin/commit.c:805
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -7454,7 +7651,7 @@ msgstr ""
 "commençant par '%c' seront ignorées, et un message vide abandonne la "
 "validation.\n"
 
-#: builtin/commit.c:844
+#: builtin/commit.c:813
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -7465,147 +7662,151 @@ 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:861
+#: builtin/commit.c:830
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sAuteur :     %.*s <%.*s>"
 
-#: builtin/commit.c:869
+#: builtin/commit.c:838
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sDate :       %s"
 
-#: builtin/commit.c:876
+#: builtin/commit.c:845
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sValidateur : %.*s <%.*s>"
 
-#: builtin/commit.c:893
+#: builtin/commit.c:862
 msgid "Cannot read index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/commit.c:959
+#: builtin/commit.c:928
 msgid "Error building trees"
 msgstr "Erreur lors de la construction des arbres"
 
-#: builtin/commit.c:973 builtin/tag.c:252
+#: builtin/commit.c:942 builtin/tag.c:256
 #, 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:1076
+#: builtin/commit.c:986
 #, 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:1090
+#: builtin/commit.c:1000
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr "Mode de fichier ignoré invalide '%s'"
 
-#: builtin/commit.c:1104 builtin/commit.c:1349
+#: builtin/commit.c:1014 builtin/commit.c:1264
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Mode de fichier non suivi invalide '%s'"
 
-#: builtin/commit.c:1142
+#: builtin/commit.c:1052
 msgid "--long and -z are incompatible"
 msgstr "--long et -z sont incompatibles"
 
-#: builtin/commit.c:1172
+#: builtin/commit.c:1085
 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:1181
+#: builtin/commit.c:1094
 msgid "You have nothing to amend."
 msgstr "Il n'y a rien à corriger."
 
-#: builtin/commit.c:1184
+#: builtin/commit.c:1097
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Vous êtes en pleine fusion -- impossible de corriger (amend)."
 
-#: builtin/commit.c:1186
+#: builtin/commit.c:1099
 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:1189
+#: builtin/commit.c:1102
 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:1199
+#: builtin/commit.c:1112
 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:1201
-msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
-msgstr "L'option -m ne peut pas être combinée avec -c/-C/-F/--fixup."
+#: builtin/commit.c:1114
+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:1209
+#: builtin/commit.c:1122
 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:1226
+#: builtin/commit.c:1139
 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:1228
+#: builtin/commit.c:1141
 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:1240 builtin/tag.c:535
+#: builtin/commit.c:1155 builtin/tag.c:542
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Mode de nettoyage invalide %s"
 
-#: builtin/commit.c:1245
+#: builtin/commit.c:1160
 msgid "Paths with -a does not make sense."
 msgstr "Spécifier des chemins avec l'option -a n'a pas de sens."
 
-#: builtin/commit.c:1363 builtin/commit.c:1648
+#: builtin/commit.c:1278 builtin/commit.c:1443
 msgid "show status concisely"
 msgstr "afficher l'état avec concision"
 
-#: builtin/commit.c:1365 builtin/commit.c:1650
+#: builtin/commit.c:1280 builtin/commit.c:1445
 msgid "show branch information"
 msgstr "afficher l'information de branche"
 
-#: builtin/commit.c:1367
+#: builtin/commit.c:1282
 msgid "show stash information"
 msgstr "afficher l'information de remisage"
 
-#: builtin/commit.c:1369
+#: builtin/commit.c:1284 builtin/commit.c:1447
+msgid "compute full ahead/behind values"
+msgstr "calcule les valeurs complètes en avance/en retard"
+
+#: builtin/commit.c:1286
 msgid "version"
 msgstr "version"
 
-#: builtin/commit.c:1369 builtin/commit.c:1652 builtin/push.c:542
-#: builtin/worktree.c:523
+#: builtin/commit.c:1286 builtin/commit.c:1449 builtin/push.c:542
+#: builtin/worktree.c:541
 msgid "machine-readable output"
 msgstr "sortie pour traitement automatique"
 
-#: builtin/commit.c:1372 builtin/commit.c:1654
+#: builtin/commit.c:1289 builtin/commit.c:1451
 msgid "show status in long format (default)"
 msgstr "afficher l'état en format long (par défaut)"
 
-#: builtin/commit.c:1375 builtin/commit.c:1657
+#: builtin/commit.c:1292 builtin/commit.c:1454
 msgid "terminate entries with NUL"
 msgstr "terminer les éléments par NUL"
 
-#: builtin/commit.c:1377 builtin/commit.c:1381 builtin/commit.c:1660
-#: builtin/fast-export.c:999 builtin/fast-export.c:1002 builtin/tag.c:390
+#: builtin/commit.c:1294 builtin/commit.c:1298 builtin/commit.c:1457
+#: builtin/fast-export.c:999 builtin/fast-export.c:1002 builtin/tag.c:396
 msgid "mode"
 msgstr "mode"
 
-#: builtin/commit.c:1378 builtin/commit.c:1660
+#: builtin/commit.c:1295 builtin/commit.c:1457
 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:1382
+#: builtin/commit.c:1299
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
@@ -7613,11 +7814,11 @@ msgstr ""
 "afficher les fichiers ignorés, \"mode\" facultatif : traditional "
 "(traditionnel), matching (correspondant), no. (Défaut : traditional)"
 
-#: builtin/commit.c:1384 parse-options.h:155
+#: builtin/commit.c:1301 parse-options.h:167
 msgid "when"
 msgstr "quand"
 
-#: builtin/commit.c:1385
+#: builtin/commit.c:1302
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -7625,211 +7826,187 @@ msgstr ""
 "ignorer les modifications dans les sous-modules, \"quand\" facultatif : all "
 "(tous), dirty (sale), untracked (non suivi). (Défaut : all)"
 
-#: builtin/commit.c:1387
+#: builtin/commit.c:1304
 msgid "list untracked files in columns"
 msgstr "afficher les fichiers non suivis en colonnes"
 
-#: builtin/commit.c:1406
+#: builtin/commit.c:1323
 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:1469
-msgid "couldn't look up newly created commit"
-msgstr "impossible de retrouver le commit nouvellement créé"
-
-#: builtin/commit.c:1471
-msgid "could not parse newly created commit"
-msgstr "impossible d'analyser le commit nouvellement créé"
-
-#: builtin/commit.c:1516
-msgid "unable to resolve HEAD after creating commit"
-msgstr "impossible de résoudre HEAD après création du commit"
-
-#: builtin/commit.c:1518
-msgid "detached HEAD"
-msgstr "HEAD détachée"
-
-#: builtin/commit.c:1521
-msgid " (root-commit)"
-msgstr " (commit racine)"
-
-#: builtin/commit.c:1618
+#: builtin/commit.c:1413
 msgid "suppress summary after successful commit"
 msgstr "supprimer le résumé après une validation réussie"
 
-#: builtin/commit.c:1619
+#: builtin/commit.c:1414
 msgid "show diff in commit message template"
 msgstr "afficher les diff dans le modèle de message de validation"
 
-#: builtin/commit.c:1621
+#: builtin/commit.c:1416
 msgid "Commit message options"
 msgstr "Options du message de validation"
 
-#: builtin/commit.c:1622 builtin/tag.c:388
+#: builtin/commit.c:1417 builtin/tag.c:393
 msgid "read message from file"
 msgstr "lire le message depuis un fichier"
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1418
 msgid "author"
 msgstr "auteur"
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1418
 msgid "override author for commit"
 msgstr "remplacer l'auteur pour la validation"
 
-#: builtin/commit.c:1624 builtin/gc.c:359
+#: builtin/commit.c:1419 builtin/gc.c:359
 msgid "date"
 msgstr "date"
 
-#: builtin/commit.c:1624
+#: builtin/commit.c:1419
 msgid "override date for commit"
 msgstr "remplacer la date pour la validation"
 
-#: builtin/commit.c:1625 builtin/merge.c:225 builtin/notes.c:402
-#: builtin/notes.c:565 builtin/tag.c:386
+#: builtin/commit.c:1420 builtin/merge.c:226 builtin/notes.c:402
+#: builtin/notes.c:565 builtin/tag.c:391
 msgid "message"
 msgstr "message"
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1420
 msgid "commit message"
 msgstr "message de validation"
 
-#: builtin/commit.c:1626 builtin/commit.c:1627 builtin/commit.c:1628
-#: builtin/commit.c:1629 parse-options.h:257 ref-filter.h:92
+#: builtin/commit.c:1421 builtin/commit.c:1422 builtin/commit.c:1423
+#: builtin/commit.c:1424 parse-options.h:269 ref-filter.h:92
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1626
+#: builtin/commit.c:1421
 msgid "reuse and edit message from specified commit"
 msgstr "réutiliser et éditer le message du commit spécifié"
 
-#: builtin/commit.c:1627
+#: builtin/commit.c:1422
 msgid "reuse message from specified commit"
 msgstr "réutiliser le message du commit spécifié"
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1423
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 "utiliser un message au format autosquash pour corriger le commit spécifié"
 
-#: builtin/commit.c:1629
+#: builtin/commit.c:1424
 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:1630
+#: builtin/commit.c:1425
 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:1631 builtin/log.c:1443 builtin/merge.c:239
+#: builtin/commit.c:1426 builtin/log.c:1446 builtin/merge.c:240
 #: builtin/pull.c:149 builtin/revert.c:105
 msgid "add Signed-off-by:"
 msgstr "ajouter une entrée Signed-off-by :"
 
-#: builtin/commit.c:1632
+#: builtin/commit.c:1427
 msgid "use specified template file"
 msgstr "utiliser le fichier de modèle spécifié"
 
-#: builtin/commit.c:1633
+#: builtin/commit.c:1428
 msgid "force edit of commit"
 msgstr "forcer l'édition du commit"
 
-#: builtin/commit.c:1634
+#: builtin/commit.c:1429
 msgid "default"
 msgstr "défaut"
 
-#: builtin/commit.c:1634 builtin/tag.c:391
+#: builtin/commit.c:1429 builtin/tag.c:397
 msgid "how to strip spaces and #comments from message"
 msgstr "comment éliminer les espaces et les commentaires # du message"
 
-#: builtin/commit.c:1635
+#: builtin/commit.c:1430
 msgid "include status in commit message template"
 msgstr "inclure l'état dans le modèle de message de validation"
 
-#: builtin/commit.c:1637 builtin/merge.c:237 builtin/pull.c:179
+#: builtin/commit.c:1432 builtin/merge.c:238 builtin/pull.c:179
 #: builtin/revert.c:113
 msgid "GPG sign commit"
 msgstr "signer la validation avec GPG"
 
-#: builtin/commit.c:1640
+#: builtin/commit.c:1435
 msgid "Commit contents options"
 msgstr "Valider les options des contenus"
 
-#: builtin/commit.c:1641
+#: builtin/commit.c:1436
 msgid "commit all changed files"
 msgstr "valider tous les fichiers modifiés"
 
-#: builtin/commit.c:1642
+#: builtin/commit.c:1437
 msgid "add specified files to index for commit"
 msgstr "ajouter les fichiers spécifiés à l'index pour la validation"
 
-#: builtin/commit.c:1643
+#: builtin/commit.c:1438
 msgid "interactively add files"
 msgstr "ajouter des fichiers en mode interactif"
 
-#: builtin/commit.c:1644
+#: builtin/commit.c:1439
 msgid "interactively add changes"
 msgstr "ajouter les modifications en mode interactif"
 
-#: builtin/commit.c:1645
+#: builtin/commit.c:1440
 msgid "commit only specified files"
 msgstr "valider seulement les fichiers spécifiés"
 
-#: builtin/commit.c:1646
+#: builtin/commit.c:1441
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "éviter d'utiliser les crochets pre-commit et commit-msg"
 
-#: builtin/commit.c:1647
+#: builtin/commit.c:1442
 msgid "show what would be committed"
 msgstr "afficher ce qui serait validé"
 
-#: builtin/commit.c:1658
+#: builtin/commit.c:1455
 msgid "amend previous commit"
 msgstr "corriger la validation précédente"
 
-#: builtin/commit.c:1659
+#: builtin/commit.c:1456
 msgid "bypass post-rewrite hook"
 msgstr "éviter d'utiliser le crochet post-rewrite"
 
-#: builtin/commit.c:1664
+#: builtin/commit.c:1461
 msgid "ok to record an empty change"
 msgstr "accepter d'enregistrer une modification vide"
 
-#: builtin/commit.c:1666
+#: builtin/commit.c:1463
 msgid "ok to record a change with an empty message"
 msgstr "accepter d'enregistrer une modification avec un message vide"
 
-#: builtin/commit.c:1696
-msgid "could not parse HEAD commit"
-msgstr "impossible d'analyser le commit HEAD"
-
-#: builtin/commit.c:1741
+#: builtin/commit.c:1536
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Fichier MERGE_HEAD corrompu (%s)"
 
-#: builtin/commit.c:1748
+#: builtin/commit.c:1543
 msgid "could not read MERGE_MODE"
 msgstr "impossible de lire MERGE_MODE"
 
-#: builtin/commit.c:1767
+#: builtin/commit.c:1562
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "impossible de lire le message de validation : %s"
 
-#: builtin/commit.c:1778
+#: builtin/commit.c:1573
 #, 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:1783
+#: builtin/commit.c:1578
 #, 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:1831
+#: builtin/commit.c:1613
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -8058,24 +8235,24 @@ msgstr "l'étiquette annotée %s n'a pas de nom embarqué"
 msgid "tag '%s' is really '%s' here"
 msgstr "l'étiquette '%s' est en fait '%s'"
 
-#: builtin/describe.c:314
+#: builtin/describe.c:317
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr "aucune étiquette ne correspond parfaitement à '%s'"
 
-#: builtin/describe.c:316
+#: builtin/describe.c:319
 #, c-format
 msgid "No exact match on refs or tags, searching to describe\n"
 msgstr ""
 "Pas de correspondance exacte sur des réfs ou des étiquettes, recherche par "
 "describe\n"
 
-#: builtin/describe.c:363
+#: builtin/describe.c:366
 #, c-format
 msgid "finished search at %s\n"
 msgstr "recherche terminée à %s\n"
 
-#: builtin/describe.c:389
+#: builtin/describe.c:392
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
@@ -8084,7 +8261,7 @@ msgstr ""
 "Aucune étiquette annotée ne peut décrire '%s'.\n"
 "Cependant, il existe des étiquettes non-annotées : essayez avec --tags."
 
-#: builtin/describe.c:393
+#: builtin/describe.c:396
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
@@ -8093,12 +8270,12 @@ msgstr ""
 "Aucune étiquette ne peut décrire '%s'.\n"
 "Essayez --always, ou créez des étiquettes."
 
-#: builtin/describe.c:423
+#: builtin/describe.c:426
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr "%lu commits parcourus\n"
 
-#: builtin/describe.c:426
+#: builtin/describe.c:429
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
@@ -8108,92 +8285,92 @@ msgstr ""
 "affichées\n"
 "abandon de la recherche à %s\n"
 
-#: builtin/describe.c:494
+#: builtin/describe.c:497
 #, c-format
 msgid "describe %s\n"
 msgstr "décrire %s\n"
 
-#: builtin/describe.c:497 builtin/log.c:500
+#: builtin/describe.c:500 builtin/log.c:502
 #, c-format
 msgid "Not a valid object name %s"
 msgstr "%s n'est pas un nom d'objet valide"
 
-#: builtin/describe.c:505
+#: builtin/describe.c:508
 #, c-format
 msgid "%s is neither a commit nor blob"
 msgstr "%s n'est ni un commit ni un blob"
 
-#: builtin/describe.c:519
+#: builtin/describe.c:522
 msgid "find the tag that comes after the commit"
 msgstr "rechercher l'étiquette qui suit le commit"
 
-#: builtin/describe.c:520
+#: builtin/describe.c:523
 msgid "debug search strategy on stderr"
 msgstr "déboguer la stratégie de recherche sur stderr"
 
-#: builtin/describe.c:521
+#: builtin/describe.c:524
 msgid "use any ref"
 msgstr "utiliser n'importe quelle référence"
 
-#: builtin/describe.c:522
+#: builtin/describe.c:525
 msgid "use any tag, even unannotated"
 msgstr "utiliser n'importe quelle étiquette, même non-annotée"
 
-#: builtin/describe.c:523
+#: builtin/describe.c:526
 msgid "always use long format"
 msgstr "toujours utiliser le format long"
 
-#: builtin/describe.c:524
+#: builtin/describe.c:527
 msgid "only follow first parent"
 msgstr "ne suivre que le premier parent"
 
-#: builtin/describe.c:527
+#: builtin/describe.c:530
 msgid "only output exact matches"
 msgstr "n'afficher que les correspondances exactes"
 
-#: builtin/describe.c:529
+#: builtin/describe.c:532
 msgid "consider <n> most recent tags (default: 10)"
 msgstr ""
 "considérer uniquement les <n> étiquettes le plus récentes (défaut : 10)"
 
-#: builtin/describe.c:531
+#: builtin/describe.c:534
 msgid "only consider tags matching <pattern>"
 msgstr "ne considérer que les étiquettes correspondant à <motif>"
 
-#: builtin/describe.c:533
+#: builtin/describe.c:536
 msgid "do not consider tags matching <pattern>"
 msgstr "ne pas considérer les étiquettes correspondant à <motif>"
 
-#: builtin/describe.c:535 builtin/name-rev.c:406
+#: builtin/describe.c:538 builtin/name-rev.c:406
 msgid "show abbreviated commit object as fallback"
 msgstr "afficher les objets commits abrégés en dernier recours"
 
-#: builtin/describe.c:536 builtin/describe.c:539
+#: builtin/describe.c:539 builtin/describe.c:542
 msgid "mark"
 msgstr "marque"
 
-#: builtin/describe.c:537
+#: builtin/describe.c:540
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
 msgstr "ajouter <marque> si la copie de travail est sale (défaut : \"-dirty\")"
 
-#: builtin/describe.c:540
+#: builtin/describe.c:543
 msgid "append <mark> on broken working tree (default: \"-broken\")"
 msgstr ""
 "ajouter <marque> si la copie de travail est cassée (défaut : \"-broken\")"
 
-#: builtin/describe.c:558
+#: builtin/describe.c:561
 msgid "--long is incompatible with --abbrev=0"
 msgstr "--long et --abbrev=0 sont incompatibles"
 
-#: builtin/describe.c:587
+#: builtin/describe.c:590
 msgid "No names found, cannot describe anything."
 msgstr "aucun nom trouvé, impossible de décrire quoi que ce soit."
 
-#: builtin/describe.c:637
+#: builtin/describe.c:640
 msgid "--dirty is incompatible with commit-ishes"
 msgstr "--dirty est incompatible avec la spécification de commits ou assimilés"
 
-#: builtin/describe.c:639
+#: builtin/describe.c:642
 msgid "--broken is incompatible with commit-ishes"
 msgstr "--broken est incompatible avec les commits ou assimilés"
 
@@ -8381,97 +8558,101 @@ msgstr "Appliquer le spécificateur de référence aux références exportées"
 msgid "anonymize output"
 msgstr "anonymise la sortie"
 
-#: builtin/fetch.c:24
+#: builtin/fetch.c:25
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr "git fetch [<options>] [<dépôt> [<spécification-de-référence>...]]"
 
-#: builtin/fetch.c:25
+#: builtin/fetch.c:26
 msgid "git fetch [<options>] <group>"
 msgstr "git fetch [<options>] <groupe>"
 
-#: builtin/fetch.c:26
+#: builtin/fetch.c:27
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr "git fetch --multiple [<options>] [(<dépôt> | <groupe>)...]"
 
-#: builtin/fetch.c:27
+#: builtin/fetch.c:28
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<options>]"
 
-#: builtin/fetch.c:113 builtin/pull.c:188
+#: builtin/fetch.c:124 builtin/pull.c:188
 msgid "fetch from all remotes"
 msgstr "récupérer depuis tous les dépôts distants"
 
-#: builtin/fetch.c:115 builtin/pull.c:191
+#: builtin/fetch.c:126 builtin/pull.c:191
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "ajouter à .git/FETCH_HEAD au lieu de l'écraser"
 
-#: builtin/fetch.c:117 builtin/pull.c:194
+#: builtin/fetch.c:128 builtin/pull.c:194
 msgid "path to upload pack on remote end"
 msgstr "chemin vers lequel télécharger le paquet sur le poste distant"
 
-#: builtin/fetch.c:118 builtin/pull.c:196
+#: builtin/fetch.c:129 builtin/pull.c:196
 msgid "force overwrite of local branch"
 msgstr "forcer l'écrasement de la branche locale"
 
-#: builtin/fetch.c:120
+#: builtin/fetch.c:131
 msgid "fetch from multiple remotes"
 msgstr "récupérer depuis plusieurs dépôts distants"
 
-#: builtin/fetch.c:122 builtin/pull.c:198
+#: builtin/fetch.c:133 builtin/pull.c:198
 msgid "fetch all tags and associated objects"
 msgstr "récupérer toutes les étiquettes et leurs objets associés"
 
-#: builtin/fetch.c:124
+#: builtin/fetch.c:135
 msgid "do not fetch all tags (--no-tags)"
 msgstr "ne pas récupérer toutes les étiquettes (--no-tags)"
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:137
 msgid "number of submodules fetched in parallel"
 msgstr "nombre de sous-modules récupérés en parallèle"
 
-#: builtin/fetch.c:128 builtin/pull.c:201
+#: builtin/fetch.c:139 builtin/pull.c:201
 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:129 builtin/fetch.c:152 builtin/pull.c:126
+#: builtin/fetch.c:141
+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:142 builtin/fetch.c:165 builtin/pull.c:126
 msgid "on-demand"
 msgstr "à la demande"
 
-#: builtin/fetch.c:130
+#: builtin/fetch.c:143
 msgid "control recursive fetching of submodules"
 msgstr "contrôler la récupération récursive dans les sous-modules"
 
-#: builtin/fetch.c:134 builtin/pull.c:209
+#: builtin/fetch.c:147 builtin/pull.c:209
 msgid "keep downloaded pack"
 msgstr "conserver le paquet téléchargé"
 
-#: builtin/fetch.c:136
+#: builtin/fetch.c:149
 msgid "allow updating of HEAD ref"
 msgstr "permettre la mise à jour de la référence HEAD"
 
-#: builtin/fetch.c:139 builtin/fetch.c:145 builtin/pull.c:212
+#: builtin/fetch.c:152 builtin/fetch.c:158 builtin/pull.c:212
 msgid "deepen history of shallow clone"
 msgstr "approfondir l'historique d'un clone superficiel"
 
-#: builtin/fetch.c:141
+#: builtin/fetch.c:154
 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:147 builtin/pull.c:215
+#: builtin/fetch.c:160 builtin/pull.c:215
 msgid "convert to a complete repository"
 msgstr "convertir en un dépôt complet"
 
-#: builtin/fetch.c:149 builtin/log.c:1463
+#: builtin/fetch.c:162 builtin/log.c:1466
 msgid "dir"
 msgstr "répertoire"
 
-#: builtin/fetch.c:150
+#: builtin/fetch.c:163
 msgid "prepend this to submodule path output"
 msgstr "préfixer ceci à la sortie du chemin du sous-module"
 
-#: builtin/fetch.c:153
+#: builtin/fetch.c:166
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
@@ -8479,91 +8660,91 @@ 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:157 builtin/pull.c:218
+#: builtin/fetch.c:170 builtin/pull.c:218
 msgid "accept refs that update .git/shallow"
 msgstr "accepter les références qui mettent à jour .git/shallow"
 
-#: builtin/fetch.c:158 builtin/pull.c:220
+#: builtin/fetch.c:171 builtin/pull.c:220
 msgid "refmap"
 msgstr "correspondance de référence"
 
-#: builtin/fetch.c:159 builtin/pull.c:221
+#: builtin/fetch.c:172 builtin/pull.c:221
 msgid "specify fetch refmap"
 msgstr "spécifier une correspondance de référence pour la récupération"
 
-#: builtin/fetch.c:417
+#: builtin/fetch.c:431
 msgid "Couldn't find remote ref HEAD"
 msgstr "impossible de trouver la référence HEAD distante"
 
-#: builtin/fetch.c:535
+#: builtin/fetch.c:549
 #, 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:628
+#: builtin/fetch.c:642
 #, c-format
 msgid "object %s not found"
 msgstr "objet %s non trouvé"
 
-#: builtin/fetch.c:632
+#: builtin/fetch.c:646
 msgid "[up to date]"
 msgstr "[à jour]"
 
-#: builtin/fetch.c:645 builtin/fetch.c:725
+#: builtin/fetch.c:659 builtin/fetch.c:739
 msgid "[rejected]"
 msgstr "[rejeté]"
 
-#: builtin/fetch.c:646
+#: builtin/fetch.c:660
 msgid "can't fetch in current branch"
 msgstr "impossible de récupérer dans la branche actuelle"
 
-#: builtin/fetch.c:655
+#: builtin/fetch.c:669
 msgid "[tag update]"
 msgstr "[mise à jour de l'étiquette]"
 
-#: builtin/fetch.c:656 builtin/fetch.c:689 builtin/fetch.c:705
-#: builtin/fetch.c:720
+#: builtin/fetch.c:670 builtin/fetch.c:703 builtin/fetch.c:719
+#: builtin/fetch.c:734
 msgid "unable to update local ref"
 msgstr "impossible de mettre à jour la référence locale"
 
-#: builtin/fetch.c:675
+#: builtin/fetch.c:689
 msgid "[new tag]"
 msgstr "[nouvelle étiquette]"
 
-#: builtin/fetch.c:678
+#: builtin/fetch.c:692
 msgid "[new branch]"
 msgstr "[nouvelle branche]"
 
-#: builtin/fetch.c:681
+#: builtin/fetch.c:695
 msgid "[new ref]"
 msgstr "[nouvelle référence]"
 
-#: builtin/fetch.c:720
+#: builtin/fetch.c:734
 msgid "forced update"
 msgstr "mise à jour forcée"
 
-#: builtin/fetch.c:725
+#: builtin/fetch.c:739
 msgid "non-fast-forward"
 msgstr "pas en avance rapide"
 
-#: builtin/fetch.c:770
+#: builtin/fetch.c:784
 #, 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:790
+#: builtin/fetch.c:804
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
 msgstr ""
 "%s rejeté parce que les racines superficielles ne sont pas mises à jour"
 
-#: builtin/fetch.c:878 builtin/fetch.c:974
+#: builtin/fetch.c:892 builtin/fetch.c:988
 #, c-format
 msgid "From %.*s\n"
 msgstr "Depuis %.*s\n"
 
-#: builtin/fetch.c:889
+#: builtin/fetch.c:903
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -8572,50 +8753,55 @@ 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:944
+#: builtin/fetch.c:958
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s sera en suspens)"
 
-#: builtin/fetch.c:945
+#: builtin/fetch.c:959
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s est devenu en suspens)"
 
-#: builtin/fetch.c:977
+#: builtin/fetch.c:991
 msgid "[deleted]"
 msgstr "[supprimé]"
 
-#: builtin/fetch.c:978 builtin/remote.c:1024
+#: builtin/fetch.c:992 builtin/remote.c:1024
 msgid "(none)"
 msgstr "(aucun(e))"
 
-#: builtin/fetch.c:1001
+#: builtin/fetch.c:1015
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr "Refus de récupérer dans la branche courant %s d'un dépôt non nu"
 
-#: builtin/fetch.c:1020
+#: builtin/fetch.c:1034
 #, 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:1023
+#: builtin/fetch.c:1037
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "L'option \"%s\" est ignorée pour %s\n"
 
-#: builtin/fetch.c:1256
+#: builtin/fetch.c:1277
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Récupération de %s\n"
 
-#: builtin/fetch.c:1258 builtin/remote.c:97
+#: builtin/fetch.c:1279 builtin/remote.c:97
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Impossible de récupérer %s"
 
-#: builtin/fetch.c:1276
+#: builtin/fetch.c:1325 builtin/fetch.c:1498
+msgid ""
+"--filter can only be used with the remote configured in core.partialClone"
+msgstr "--filter ne peut être utilisé qu'avec le dépôt distant configuré dans core.partialClone"
+
+#: builtin/fetch.c:1350
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -8623,40 +8809,40 @@ 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:1299
+#: builtin/fetch.c:1394
 msgid "You need to specify a tag name."
 msgstr "Vous devez spécifier un nom d'étiquette."
 
-#: builtin/fetch.c:1342
+#: builtin/fetch.c:1439
 msgid "Negative depth in --deepen is not supported"
 msgstr "Une profondeur négative dans --deepen n'est pas supportée"
 
-#: builtin/fetch.c:1344
+#: builtin/fetch.c:1441
 msgid "--deepen and --depth are mutually exclusive"
 msgstr "--deepen et --depth sont mutuellement exclusifs"
 
-#: builtin/fetch.c:1349
+#: builtin/fetch.c:1446
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth et --unshallow ne peuvent pas être utilisés ensemble"
 
-#: builtin/fetch.c:1351
+#: builtin/fetch.c:1448
 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:1364
+#: builtin/fetch.c:1464
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all n'accepte pas d'argument de dépôt"
 
-#: builtin/fetch.c:1366
+#: builtin/fetch.c:1466
 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:1377
+#: builtin/fetch.c:1475
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "distant ou groupe distant inexistant : %s"
 
-#: builtin/fetch.c:1385
+#: builtin/fetch.c:1482
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr ""
 "La récupération d'un groupe et les spécifications de référence n'ont pas de "
@@ -8724,7 +8910,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:39 builtin/tag.c:414
+#: builtin/for-each-ref.c:39 builtin/tag.c:420
 msgid "respect format colors"
 msgstr "respecter les couleurs de formatage"
 
@@ -8748,64 +8934,64 @@ msgstr "afficher seulement les références qui contiennent le commit"
 msgid "print only refs which don't contain the commit"
 msgstr "afficher seulement les références qui ne contiennent pas le commit"
 
-#: builtin/fsck.c:543
+#: builtin/fsck.c:568
 msgid "Checking object directories"
 msgstr "Vérification des répertoires d'objet"
 
-#: builtin/fsck.c:635
+#: builtin/fsck.c:660
 msgid "git fsck [<options>] [<object>...]"
 msgstr "git fsck [<options>] [<objet>...]"
 
-#: builtin/fsck.c:641
+#: builtin/fsck.c:666
 msgid "show unreachable objects"
 msgstr "afficher les objets inaccessibles"
 
-#: builtin/fsck.c:642
+#: builtin/fsck.c:667
 msgid "show dangling objects"
 msgstr "afficher les objets en suspens"
 
-#: builtin/fsck.c:643
+#: builtin/fsck.c:668
 msgid "report tags"
 msgstr "afficher les étiquettes"
 
-#: builtin/fsck.c:644
+#: builtin/fsck.c:669
 msgid "report root nodes"
 msgstr "signaler les nœuds racines"
 
-#: builtin/fsck.c:645
+#: builtin/fsck.c:670
 msgid "make index objects head nodes"
 msgstr "considérer les objets de l'index comme nœuds tête"
 
 # translated from man page
-#: builtin/fsck.c:646
+#: builtin/fsck.c:671
 msgid "make reflogs head nodes (default)"
 msgstr "considérer les reflogs comme nœuds tête (par défaut)"
 
-#: builtin/fsck.c:647
+#: builtin/fsck.c:672
 msgid "also consider packs and alternate objects"
 msgstr "inspecter aussi les objets pack et alternatifs"
 
-#: builtin/fsck.c:648
+#: builtin/fsck.c:673
 msgid "check only connectivity"
 msgstr "ne vérifier que la connectivité"
 
-#: builtin/fsck.c:649
+#: builtin/fsck.c:674
 msgid "enable more strict checking"
 msgstr "activer une vérification plus strict"
 
-#: builtin/fsck.c:651
+#: builtin/fsck.c:676
 msgid "write dangling objects in .git/lost-found"
 msgstr "écrire les objets en suspens dans .git/lost-found"
 
-#: builtin/fsck.c:652 builtin/prune.c:107
+#: builtin/fsck.c:677 builtin/prune.c:108
 msgid "show progress"
 msgstr "afficher la progression"
 
-#: builtin/fsck.c:653
+#: builtin/fsck.c:678
 msgid "show verbose names for reachable objects"
 msgstr "afficher les noms étendus pour les objets inaccessibles"
 
-#: builtin/fsck.c:714
+#: builtin/fsck.c:742
 msgid "Checking objects"
 msgstr "Vérification des objets"
 
@@ -8851,35 +9037,35 @@ msgstr "être plus consciencieux (durée de traitement allongée)"
 msgid "enable auto-gc mode"
 msgstr "activer le mode auto-gc"
 
-#: builtin/gc.c:364
+#: builtin/gc.c:366
 msgid "force running gc even if there may be another gc running"
 msgstr ""
 "forcer le lancement du ramasse-miettes même si un autre ramasse-miettes "
 "tourne déjà"
 
-#: builtin/gc.c:381
+#: builtin/gc.c:384
 #, c-format
 msgid "Failed to parse gc.logexpiry value %s"
 msgstr "impossible de lire la valeur de gc.logexpiry %s"
 
-#: builtin/gc.c:409
+#: builtin/gc.c:412
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
 "Compression automatique du dépôt en tâche de fond pour optimiser les "
 "performances.\n"
 
-#: builtin/gc.c:411
+#: builtin/gc.c:414
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
 msgstr "Compression du dépôt pour optimiser les performances.\n"
 
-#: builtin/gc.c:412
+#: builtin/gc.c:415
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
 msgstr "Voir \"git help gc\" pour toute information sur le nettoyage manuel.\n"
 
-#: builtin/gc.c:437
+#: builtin/gc.c:440
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
@@ -8887,7 +9073,7 @@ msgstr ""
 "un ramasse-miettes est déjà en cours sur la machine '%s' pid %<PRIuMAX> "
 "(utilisez --force si ce n'est pas le cas)"
 
-#: builtin/gc.c:481
+#: builtin/gc.c:487
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
@@ -8898,12 +9084,12 @@ msgstr ""
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr "git grep [<options>] [-e] <motif> [<révision>...] [[--] <chemin>...]"
 
-#: builtin/grep.c:226
+#: builtin/grep.c:225
 #, c-format
 msgid "grep: failed to create thread: %s"
 msgstr "grep : échec de création du fil: %s"
 
-#: builtin/grep.c:284
+#: builtin/grep.c:283
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
 msgstr "nombre de fils spécifié invalide (%d) pour %s"
@@ -8912,254 +9098,254 @@ msgstr "nombre de fils spécifié invalide (%d) pour %s"
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:293 builtin/index-pack.c:1495 builtin/index-pack.c:1688
+#: builtin/grep.c:292 builtin/index-pack.c:1523 builtin/index-pack.c:1712
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "pas de support des fils, ignore %s"
 
-#: builtin/grep.c:453 builtin/grep.c:573 builtin/grep.c:615
+#: builtin/grep.c:460 builtin/grep.c:580 builtin/grep.c:622
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "impossible de lire l'arbre (%s)"
 
-#: builtin/grep.c:630
+#: builtin/grep.c:637
 #, 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:696
+#: builtin/grep.c:703
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "l'option '%c' attend un valeur numérique"
 
-#: builtin/grep.c:783
+#: builtin/grep.c:790
 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:785
+#: builtin/grep.c:792
 msgid "find in contents not managed by git"
 msgstr "rechercher dans les contenus non gérés par git"
 
-#: builtin/grep.c:787
+#: builtin/grep.c:794
 msgid "search in both tracked and untracked files"
 msgstr "rechercher dans les fichiers suivis et non-suivis"
 
-#: builtin/grep.c:789
+#: builtin/grep.c:796
 msgid "ignore files specified via '.gitignore'"
 msgstr "ignorer les fichiers spécifiés via '.gitignore'"
 
-#: builtin/grep.c:791
+#: builtin/grep.c:798
 msgid "recursively search in each submodule"
 msgstr "rechercher récursivement dans chaque sous-module"
 
-#: builtin/grep.c:794
+#: builtin/grep.c:801
 msgid "show non-matching lines"
 msgstr "afficher les lignes qui ne correspondent pas"
 
-#: builtin/grep.c:796
+#: builtin/grep.c:803
 msgid "case insensitive matching"
 msgstr "correspondance insensible à la casse"
 
-#: builtin/grep.c:798
+#: builtin/grep.c:805
 msgid "match patterns only at word boundaries"
 msgstr "rechercher les motifs aux séparateurs de mots"
 
-#: builtin/grep.c:800
+#: builtin/grep.c:807
 msgid "process binary files as text"
 msgstr "traiter les fichiers binaires comme texte"
 
-#: builtin/grep.c:802
+#: builtin/grep.c:809
 msgid "don't match patterns in binary files"
 msgstr "ne pas chercher les motifs dans les fichiers binaires"
 
-#: builtin/grep.c:805
+#: builtin/grep.c:812
 msgid "process binary files with textconv filters"
 msgstr "traiter les fichiers binaires avec les filtres textconv"
 
-#: builtin/grep.c:807
+#: builtin/grep.c:814
 msgid "descend at most <depth> levels"
 msgstr "descendre au plus de <profondeur> dans l'arborescence"
 
-#: builtin/grep.c:811
+#: builtin/grep.c:818
 msgid "use extended POSIX regular expressions"
 msgstr "utiliser des expressions régulières étendues POSIX"
 
-#: builtin/grep.c:814
+#: builtin/grep.c:821
 msgid "use basic POSIX regular expressions (default)"
 msgstr "utiliser des expressions régulières basiques POSIX (par défaut)"
 
-#: builtin/grep.c:817
+#: builtin/grep.c:824
 msgid "interpret patterns as fixed strings"
 msgstr "interpréter les motifs comme de chaînes fixes"
 
-#: builtin/grep.c:820
+#: builtin/grep.c:827
 msgid "use Perl-compatible regular expressions"
 msgstr "utiliser des expressions régulières compatibles avec Perl"
 
-#: builtin/grep.c:823
+#: builtin/grep.c:830
 msgid "show line numbers"
 msgstr "afficher les numéros de ligne"
 
-#: builtin/grep.c:824
+#: builtin/grep.c:831
 msgid "don't show filenames"
 msgstr "ne pas pas afficher les noms de fichier"
 
-#: builtin/grep.c:825
+#: builtin/grep.c:832
 msgid "show filenames"
 msgstr "afficher les noms de fichier"
 
-#: builtin/grep.c:827
+#: builtin/grep.c:834
 msgid "show filenames relative to top directory"
 msgstr "afficher les noms de fichiers relativement au répertoire de base"
 
-#: builtin/grep.c:829
+#: builtin/grep.c:836
 msgid "show only filenames instead of matching lines"
 msgstr "n'afficher que les noms de fichiers au lieu des lignes correspondant"
 
-#: builtin/grep.c:831
+#: builtin/grep.c:838
 msgid "synonym for --files-with-matches"
 msgstr "synonyme pour --files-with-matches"
 
-#: builtin/grep.c:834
+#: builtin/grep.c:841
 msgid "show only the names of files without match"
 msgstr "n'afficher que les noms des fichiers sans correspondance"
 
-#: builtin/grep.c:836
+#: builtin/grep.c:843
 msgid "print NUL after filenames"
 msgstr "imprimer une caractère NUL après le noms de fichier"
 
-#: builtin/grep.c:838
+#: builtin/grep.c:846
 msgid "show the number of matches instead of matching lines"
 msgstr "afficher le nombre de correspondances au lieu des lignes correspondant"
 
-#: builtin/grep.c:839
+#: builtin/grep.c:847
 msgid "highlight matches"
 msgstr "mettre en évidence les correspondances"
 
-#: builtin/grep.c:841
+#: builtin/grep.c:849
 msgid "print empty line between matches from different files"
 msgstr ""
 "imprimer une ligne vide entre les correspondances de fichiers différents"
 
-#: builtin/grep.c:843
+#: builtin/grep.c:851
 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:846
+#: builtin/grep.c:854
 msgid "show <n> context lines before and after matches"
 msgstr "afficher <n> lignes de contexte avant et après les correspondances"
 
-#: builtin/grep.c:849
+#: builtin/grep.c:857
 msgid "show <n> context lines before matches"
 msgstr "afficher <n> lignes de contexte avant les correspondances"
 
-#: builtin/grep.c:851
+#: builtin/grep.c:859
 msgid "show <n> context lines after matches"
 msgstr "afficher <n> lignes de contexte après les correspondances"
 
-#: builtin/grep.c:853
+#: builtin/grep.c:861
 msgid "use <n> worker threads"
 msgstr "utiliser <n> fils de travail"
 
-#: builtin/grep.c:854
+#: builtin/grep.c:862
 msgid "shortcut for -C NUM"
 msgstr "raccourci pour -C NUM"
 
-#: builtin/grep.c:857
+#: builtin/grep.c:865
 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:859
+#: builtin/grep.c:867
 msgid "show the surrounding function"
 msgstr "afficher la fonction contenante"
 
-#: builtin/grep.c:862
+#: builtin/grep.c:870
 msgid "read patterns from file"
 msgstr "lire les motifs depuis fichier"
 
-#: builtin/grep.c:864
+#: builtin/grep.c:872
 msgid "match <pattern>"
 msgstr "rechercher <motif>"
 
-#: builtin/grep.c:866
+#: builtin/grep.c:874
 msgid "combine patterns specified with -e"
 msgstr "combiner les motifs spécifiés par -e"
 
-#: builtin/grep.c:878
+#: builtin/grep.c:886
 msgid "indicate hit with exit status without output"
 msgstr ""
 "indiquer des correspondances avec le code de sortie mais sans rien afficher"
 
-#: builtin/grep.c:880
+#: builtin/grep.c:888
 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:882
+#: builtin/grep.c:890
 msgid "show parse tree for grep expression"
 msgstr "afficher l'arbre d'analyse pour le motif grep"
 
-#: builtin/grep.c:886
+#: builtin/grep.c:894
 msgid "pager"
 msgstr "pagineur"
 
-#: builtin/grep.c:886
+#: builtin/grep.c:894
 msgid "show matching files in the pager"
 msgstr "afficher les fichiers correspondant dans le pagineur"
 
-#: builtin/grep.c:889
+#: builtin/grep.c:898
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "permettre l'appel de grep(1) (ignoré par ce build)"
 
-#: builtin/grep.c:952
+#: builtin/grep.c:962
 msgid "no pattern given."
 msgstr "aucun motif fourni."
 
-#: builtin/grep.c:984
+#: builtin/grep.c:994
 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:991
+#: builtin/grep.c:1001
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "impossible de résoudre la révision : %s"
 
-#: builtin/grep.c:1026 builtin/index-pack.c:1491
+#: builtin/grep.c:1036 builtin/index-pack.c:1519
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "nombre de fils spécifié invalide (%d)"
 
-#: builtin/grep.c:1031
+#: builtin/grep.c:1041
 msgid "no threads support, ignoring --threads"
 msgstr "pas de support des fils, ignore --threads"
 
-#: builtin/grep.c:1055
+#: builtin/grep.c:1065
 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:1078
+#: builtin/grep.c:1088
 msgid "option not supported with --recurse-submodules."
 msgstr "option non supportée avec --recurse-submodules."
 
-#: builtin/grep.c:1084
+#: builtin/grep.c:1094
 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:1090
+#: builtin/grep.c:1100
 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:1098
+#: builtin/grep.c:1108
 msgid "both --cached and trees are given."
 msgstr "--cached et des arbres sont fournis en même temps."
 
-#: builtin/hash-object.c:82
+#: builtin/hash-object.c:83
 msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
@@ -9167,38 +9353,38 @@ msgstr ""
 "git hash-object [-t <type>] [-w] [--path=<fichier> | --no-filters] [--stdin] "
 "[--] <fichier>..."
 
-#: builtin/hash-object.c:83
+#: builtin/hash-object.c:84
 msgid "git hash-object  --stdin-paths"
 msgstr "git hash-object  --stdin-paths"
 
-#: builtin/hash-object.c:95
+#: builtin/hash-object.c:96
 msgid "type"
 msgstr "type"
 
-#: builtin/hash-object.c:95
+#: builtin/hash-object.c:96
 msgid "object type"
 msgstr "type d'objet"
 
-#: builtin/hash-object.c:96
+#: builtin/hash-object.c:97
 msgid "write the object into the object database"
 msgstr "écrire l'objet dans la base de donnée d'objets"
 
-#: builtin/hash-object.c:98
+#: builtin/hash-object.c:99
 msgid "read the object from stdin"
 msgstr "lire l'objet depuis l'entrée standard"
 
-#: builtin/hash-object.c:100
+#: builtin/hash-object.c:101
 msgid "store file as is without filters"
 msgstr "stocker le fichier tel quel sans filtrage"
 
-#: builtin/hash-object.c:101
+#: builtin/hash-object.c:102
 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:102
+#: builtin/hash-object.c:103
 msgid "process file as it were from this path"
 msgstr "traiter le fichier comme s'il venait de ce chemin"
 
@@ -9331,152 +9517,152 @@ msgstr "'%s' est un alias de '%s'"
 msgid "usage: %s%s"
 msgstr "usage : %s%s"
 
-#: builtin/index-pack.c:156
+#: builtin/index-pack.c:157
 #, c-format
 msgid "unable to open %s"
 msgstr "impossible d'ouvrir %s"
 
-#: builtin/index-pack.c:206
+#: builtin/index-pack.c:207
 #, c-format
 msgid "object type mismatch at %s"
 msgstr "type d'objet non correspondant à %s"
 
-#: builtin/index-pack.c:226
+#: builtin/index-pack.c:227
 #, c-format
 msgid "did not receive expected object %s"
 msgstr "objet attendu non reçu %s"
 
-#: builtin/index-pack.c:229
+#: builtin/index-pack.c:230
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr "objet %s : type attendu %s, reçu %s"
 
-#: builtin/index-pack.c:271
+#: builtin/index-pack.c:272
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] "impossible de remplir %d octet"
 msgstr[1] "impossible de remplir %d octets"
 
-#: builtin/index-pack.c:281
+#: builtin/index-pack.c:282
 msgid "early EOF"
 msgstr "fin de fichier prématurée"
 
-#: builtin/index-pack.c:282
+#: builtin/index-pack.c:283
 msgid "read error on input"
 msgstr "erreur de lecture sur l'entrée"
 
-#: builtin/index-pack.c:294
+#: builtin/index-pack.c:295
 msgid "used more bytes than were available"
 msgstr "plus d'octets utilisés que disponibles"
 
-#: builtin/index-pack.c:301
+#: builtin/index-pack.c:302
 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:304 builtin/unpack-objects.c:93
+#: builtin/index-pack.c:305 builtin/unpack-objects.c:93
 msgid "pack exceeds maximum allowed size"
 msgstr "le paquet dépasse la taille maximale permise"
 
-#: builtin/index-pack.c:319
+#: builtin/index-pack.c:320
 #, c-format
 msgid "unable to create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: builtin/index-pack.c:325
+#: builtin/index-pack.c:326
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "impossible d'ouvrir le fichier paquet '%s'"
 
-#: builtin/index-pack.c:339
+#: builtin/index-pack.c:340
 msgid "pack signature mismatch"
 msgstr "la signature du paquet ne correspond pas"
 
-#: builtin/index-pack.c:341
+#: builtin/index-pack.c:342
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "la version de paquet %<PRIu32> non supportée"
 
-#: builtin/index-pack.c:359
+#: builtin/index-pack.c:360
 #, 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:480
+#: builtin/index-pack.c:481
 #, c-format
 msgid "inflate returned %d"
 msgstr "la décompression (inflate) a retourné %d"
 
-#: builtin/index-pack.c:529
+#: builtin/index-pack.c:530
 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:537
+#: builtin/index-pack.c:538
 msgid "delta base offset is out of bound"
 msgstr "l'objet delta de base est hors limite"
 
-#: builtin/index-pack.c:545
+#: builtin/index-pack.c:546
 #, c-format
 msgid "unknown object type %d"
 msgstr "type d'objet inconnu %d"
 
-#: builtin/index-pack.c:576
+#: builtin/index-pack.c:577
 msgid "cannot pread pack file"
 msgstr "impossible de lire (pread) le fichier paquet"
 
-#: builtin/index-pack.c:578
+#: builtin/index-pack.c:579
 #, 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:604
+#: builtin/index-pack.c:605
 msgid "serious inflate inconsistency"
 msgstr "grave incohérence dans la décompression (inflate)"
 
-#: builtin/index-pack.c:749 builtin/index-pack.c:755 builtin/index-pack.c:778
-#: builtin/index-pack.c:817 builtin/index-pack.c:826
+#: builtin/index-pack.c:750 builtin/index-pack.c:756 builtin/index-pack.c:779
+#: builtin/index-pack.c:818 builtin/index-pack.c:827
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "COLLISION SHA1 TROUVÉE AVEC %s !"
 
-#: builtin/index-pack.c:752 builtin/pack-objects.c:179
-#: builtin/pack-objects.c:273
+#: builtin/index-pack.c:753 builtin/pack-objects.c:182
+#: builtin/pack-objects.c:276
 #, c-format
 msgid "unable to read %s"
 msgstr "impossible de lire %s"
 
-#: builtin/index-pack.c:815
+#: builtin/index-pack.c:816
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr "impossible de lire l'information existante de l'objet %s"
 
-#: builtin/index-pack.c:823
+#: builtin/index-pack.c:824
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "impossible de lire l'objet existant %s"
 
-#: builtin/index-pack.c:837
+#: builtin/index-pack.c:838
 #, c-format
 msgid "invalid blob object %s"
 msgstr "objet blob invalide %s"
 
-#: builtin/index-pack.c:852
+#: builtin/index-pack.c:853
 #, c-format
 msgid "invalid %s"
 msgstr "%s invalide"
 
-#: builtin/index-pack.c:855
+#: builtin/index-pack.c:856
 msgid "Error in object"
 msgstr "Erreur dans l'objet"
 
-#: builtin/index-pack.c:857
+#: builtin/index-pack.c:858
 #, 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:929 builtin/index-pack.c:960
+#: builtin/index-pack.c:930 builtin/index-pack.c:961
 msgid "failed to apply delta"
 msgstr "échec d'application du delta"
 
@@ -9547,77 +9733,81 @@ msgstr "impossible de compresser l'objet ajouté (%d)"
 msgid "local object %s is corrupt"
 msgstr "l'objet local %s est corrompu"
 
-#: builtin/index-pack.c:1409
-msgid "error while closing pack file"
-msgstr "erreur en fermeture du fichier paquet"
+#: builtin/index-pack.c:1397
+#, c-format
+msgid "packfile name '%s' does not end with '.pack'"
+msgstr "le nom de fichier paquet '%s' ne se termine pas par '.pack'"
 
-#: builtin/index-pack.c:1421
+#: builtin/index-pack.c:1422
 #, c-format
-msgid "cannot write keep file '%s'"
-msgstr "impossible d'écrire le fichier \"keep\" '%s'"
+msgid "cannot write %s file '%s'"
+msgstr "impossible d'écrire le fichier %s '%s'"
 
-#: builtin/index-pack.c:1429
+#: builtin/index-pack.c:1430
 #, c-format
-msgid "cannot close written keep file '%s'"
-msgstr "impossible de fermer le fichier \"keep\" '%s'"
+msgid "cannot close written %s file '%s'"
+msgstr "impossible de fermer le fichier %s écrit '%s'"
+
+#: builtin/index-pack.c:1454
+msgid "error while closing pack file"
+msgstr "erreur en fermeture du fichier paquet"
 
-#: builtin/index-pack.c:1439
+#: builtin/index-pack.c:1468
 msgid "cannot store pack file"
 msgstr "impossible de stocker le fichier paquet"
 
-#: builtin/index-pack.c:1447
+#: builtin/index-pack.c:1476
 msgid "cannot store index file"
 msgstr "impossible de stocker le fichier d'index"
 
-#: builtin/index-pack.c:1485
+#: builtin/index-pack.c:1513
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "mauvais pack.indexversion=%<PRIu32>"
 
-#: builtin/index-pack.c:1553
+#: builtin/index-pack.c:1581
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "Impossible d'ouvrir le fichier paquet existant '%s'"
 
-#: builtin/index-pack.c:1555
+#: builtin/index-pack.c:1583
 #, 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:1603
+#: builtin/index-pack.c:1631
 #, 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:1610
+#: builtin/index-pack.c:1638
 #, 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:1623
-#, c-format
-msgid "packfile name '%s' does not end with '.pack'"
-msgstr "le nom de fichier paquet '%s' ne se termine pas par '.pack'"
+#: builtin/index-pack.c:1675
+msgid "Cannot come back to cwd"
+msgstr "Impossible de revenir au répertoire de travail courant"
 
-#: builtin/index-pack.c:1700 builtin/index-pack.c:1703
-#: builtin/index-pack.c:1719 builtin/index-pack.c:1723
+#: builtin/index-pack.c:1724 builtin/index-pack.c:1727
+#: builtin/index-pack.c:1743 builtin/index-pack.c:1747
 #, c-format
 msgid "bad %s"
 msgstr "mauvais %s"
 
-#: builtin/index-pack.c:1739
+#: builtin/index-pack.c:1763
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin ne peut pas être utilisé sans --stdin"
 
-#: builtin/index-pack.c:1741
+#: builtin/index-pack.c:1765
 msgid "--stdin requires a git repository"
 msgstr "--stdin requiert un dépôt git"
 
-#: builtin/index-pack.c:1749
+#: builtin/index-pack.c:1771
 msgid "--verify with no packfile name given"
 msgstr "--verify sans nom de fichier paquet donné"
 
@@ -9801,122 +9991,122 @@ 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:46
+#: builtin/log.c:48
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<options>] [<plage de révisions>] [[--] <chemin>...]"
 
-#: builtin/log.c:47
+#: builtin/log.c:49
 msgid "git show [<options>] <object>..."
 msgstr "git show [<options>] <objet>..."
 
-#: builtin/log.c:91
+#: builtin/log.c:93
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "option --decorate invalide : %s"
 
-#: builtin/log.c:151
+#: builtin/log.c:153
 msgid "suppress diff output"
 msgstr "supprimer la sortie des différences"
 
-#: builtin/log.c:152
+#: builtin/log.c:154
 msgid "show source"
 msgstr "afficher la source"
 
-#: builtin/log.c:153
+#: builtin/log.c:155
 msgid "Use mail map file"
 msgstr "Utiliser le fichier de correspondance de mail"
 
-#: builtin/log.c:155
+#: builtin/log.c:157
 msgid "only decorate refs that match <pattern>"
 msgstr "décorer seulement les références correspondant à <motif>"
 
-#: builtin/log.c:157
+#: builtin/log.c:159
 msgid "do not decorate refs that match <pattern>"
 msgstr "ne pas décorer les références correspondant à <motif>"
 
-#: builtin/log.c:158
+#: builtin/log.c:160
 msgid "decorate options"
 msgstr "décorer les options"
 
-#: builtin/log.c:161
+#: builtin/log.c:163
 msgid "Process line range n,m in file, counting from 1"
 msgstr ""
 "Traiter seulement l'intervalle de lignes n,m du fichier en commençant le "
 "compte à 1"
 
-#: builtin/log.c:257
+#: builtin/log.c:259
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Sortie finale : %d %s\n"
 
-#: builtin/log.c:508
+#: builtin/log.c:510
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s : fichier incorrect"
 
-#: builtin/log.c:523 builtin/log.c:617
+#: builtin/log.c:525 builtin/log.c:619
 #, c-format
 msgid "Could not read object %s"
 msgstr "Impossible de lire l'objet %s"
 
-#: builtin/log.c:641
+#: builtin/log.c:643
 #, c-format
 msgid "Unknown type: %d"
 msgstr "Type inconnu : %d"
 
-#: builtin/log.c:762
+#: builtin/log.c:764
 msgid "format.headers without value"
 msgstr "format.headers sans valeur"
 
-#: builtin/log.c:863
+#: builtin/log.c:865
 msgid "name of output directory is too long"
 msgstr "le nom du répertoire de sortie est trop long"
 
-#: builtin/log.c:879
+#: builtin/log.c:881
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr "Impossible d'ouvrir le fichier correctif %s"
 
-#: builtin/log.c:896
+#: builtin/log.c:898
 msgid "Need exactly one range."
 msgstr "Exactement une plage nécessaire."
 
-#: builtin/log.c:906
+#: builtin/log.c:908
 msgid "Not a range."
 msgstr "Ceci n'est pas une plage."
 
-#: builtin/log.c:1012
+#: builtin/log.c:1014
 msgid "Cover letter needs email format"
 msgstr "La lettre de motivation doit être au format courriel"
 
-#: builtin/log.c:1092
+#: builtin/log.c:1095
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to aberrant : %s"
 
-#: builtin/log.c:1119
+#: builtin/log.c:1122
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<options>] [<depuis> | <plage de révisions>]"
 
-#: builtin/log.c:1169
+#: builtin/log.c:1172
 msgid "Two output directories?"
 msgstr "Deux répertoires de sortie ?"
 
-#: builtin/log.c:1276 builtin/log.c:1927 builtin/log.c:1929 builtin/log.c:1941
+#: builtin/log.c:1279 builtin/log.c:1932 builtin/log.c:1934 builtin/log.c:1946
 #, c-format
 msgid "Unknown commit %s"
 msgstr "Commit inconnu %s"
 
-#: builtin/log.c:1286 builtin/notes.c:887 builtin/tag.c:516
+#: builtin/log.c:1289 builtin/notes.c:887 builtin/tag.c:522
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "Impossible de résoudre '%s' comme une référence valide."
 
-#: builtin/log.c:1291
+#: builtin/log.c:1294
 msgid "Could not find exact merge base."
 msgstr "Impossible de trouver la base de fusion exacte."
 
-#: builtin/log.c:1295
+#: builtin/log.c:1298
 msgid ""
 "Failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
@@ -9929,230 +10119,230 @@ msgstr ""
 "ou vous pouvez spécifier le commit de base par --base=<id-du-commit-de-base> "
 "manuellement."
 
-#: builtin/log.c:1315
+#: builtin/log.c:1318
 msgid "Failed to find exact merge base"
 msgstr "Impossible de trouver la base de fusion exacte"
 
-#: builtin/log.c:1326
+#: builtin/log.c:1329
 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:1330
+#: builtin/log.c:1333
 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:1379
+#: builtin/log.c:1382
 msgid "cannot get patch id"
 msgstr "impossible d'obtenir l'id du patch"
 
-#: builtin/log.c:1438
+#: builtin/log.c:1441
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "utiliser [PATCH n/m] même avec un patch unique"
 
-#: builtin/log.c:1441
+#: builtin/log.c:1444
 msgid "use [PATCH] even with multiple patches"
 msgstr "utiliser [PATCH] même avec des patchs multiples"
 
-#: builtin/log.c:1445
+#: builtin/log.c:1448
 msgid "print patches to standard out"
 msgstr "afficher les patchs sur la sortie standard"
 
-#: builtin/log.c:1447
+#: builtin/log.c:1450
 msgid "generate a cover letter"
 msgstr "générer une lettre de motivation"
 
-#: builtin/log.c:1449
+#: builtin/log.c:1452
 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:1450
+#: builtin/log.c:1453
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1451
+#: builtin/log.c:1454
 msgid "use <sfx> instead of '.patch'"
 msgstr "utiliser <sfx> au lieu de '.patch'"
 
-#: builtin/log.c:1453
+#: builtin/log.c:1456
 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:1455
+#: builtin/log.c:1458
 msgid "mark the series as Nth re-roll"
 msgstr "marquer la série comme une Nième réédition"
 
-#: builtin/log.c:1457
+#: builtin/log.c:1460
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr "utiliser [RFC PATCH] au lieu de [PATCH]"
 
-#: builtin/log.c:1460
+#: builtin/log.c:1463
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "utiliser [<préfixe>] au lieu de [PATCH]"
 
-#: builtin/log.c:1463
+#: builtin/log.c:1466
 msgid "store resulting files in <dir>"
 msgstr "stocker les fichiers résultats dans <répertoire>"
 
-#: builtin/log.c:1466
+#: builtin/log.c:1469
 msgid "don't strip/add [PATCH]"
 msgstr "ne pas retirer/ajouter [PATCH]"
 
-#: builtin/log.c:1469
+#: builtin/log.c:1472
 msgid "don't output binary diffs"
 msgstr "ne pas imprimer les diffs binaires"
 
-#: builtin/log.c:1471
+#: builtin/log.c:1474
 msgid "output all-zero hash in From header"
 msgstr "écrire une empreinte à zéro dans l'entête From"
 
-#: builtin/log.c:1473
+#: builtin/log.c:1476
 msgid "don't include a patch matching a commit upstream"
 msgstr "ne pas inclure un patch correspondant à un commit amont"
 
-#: builtin/log.c:1475
+#: builtin/log.c:1478
 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:1477
+#: builtin/log.c:1480
 msgid "Messaging"
 msgstr "Communication"
 
-#: builtin/log.c:1478
+#: builtin/log.c:1481
 msgid "header"
 msgstr "en-tête"
 
-#: builtin/log.c:1479
+#: builtin/log.c:1482
 msgid "add email header"
 msgstr "ajouter l'en-tête de courriel"
 
-#: builtin/log.c:1480 builtin/log.c:1482
+#: builtin/log.c:1483 builtin/log.c:1485
 msgid "email"
 msgstr "courriel"
 
-#: builtin/log.c:1480
+#: builtin/log.c:1483
 msgid "add To: header"
 msgstr "ajouter l'en-tête \"To:\""
 
-#: builtin/log.c:1482
+#: builtin/log.c:1485
 msgid "add Cc: header"
 msgstr "ajouter l'en-tête \"Cc:\""
 
-#: builtin/log.c:1484
+#: builtin/log.c:1487
 msgid "ident"
 msgstr "ident"
 
-#: builtin/log.c:1485
+#: builtin/log.c:1488
 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:1487
+#: builtin/log.c:1490
 msgid "message-id"
 msgstr "id-message"
 
-#: builtin/log.c:1488
+#: builtin/log.c:1491
 msgid "make first mail a reply to <message-id>"
 msgstr "répondre dans le premier message à <id-message>"
 
-#: builtin/log.c:1489 builtin/log.c:1492
+#: builtin/log.c:1492 builtin/log.c:1495
 msgid "boundary"
 msgstr "limite"
 
-#: builtin/log.c:1490
+#: builtin/log.c:1493
 msgid "attach the patch"
 msgstr "attacher le patch"
 
-#: builtin/log.c:1493
+#: builtin/log.c:1496
 msgid "inline the patch"
 msgstr "patch à l'intérieur"
 
-#: builtin/log.c:1497
+#: builtin/log.c:1500
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
 "activer l'enfilage de message, styles : shallow (superficiel), deep (profond)"
 
-#: builtin/log.c:1499
+#: builtin/log.c:1502
 msgid "signature"
 msgstr "signature"
 
-#: builtin/log.c:1500
+#: builtin/log.c:1503
 msgid "add a signature"
 msgstr "ajouter une signature"
 
-#: builtin/log.c:1501
+#: builtin/log.c:1504
 msgid "base-commit"
 msgstr "commit-de-base"
 
-#: builtin/log.c:1502
+#: builtin/log.c:1505
 msgid "add prerequisite tree info to the patch series"
 msgstr "Ajouter un arbre prérequis à la série de patchs"
 
-#: builtin/log.c:1504
+#: builtin/log.c:1507
 msgid "add a signature from a file"
 msgstr "ajouter une signature depuis un fichier"
 
-#: builtin/log.c:1505
+#: builtin/log.c:1508
 msgid "don't print the patch filenames"
 msgstr "ne pas afficher les noms de fichiers des patchs"
 
-#: builtin/log.c:1507
+#: builtin/log.c:1510
 msgid "show progress while generating patches"
 msgstr ""
 "afficher la barre de progression durant la phase de génération des patchs"
 
-#: builtin/log.c:1582
+#: builtin/log.c:1585
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "ligne d'identification invalide : %s"
 
-#: builtin/log.c:1597
+#: builtin/log.c:1600
 msgid "-n and -k are mutually exclusive."
 msgstr "-n et -k sont mutuellement exclusifs."
 
-#: builtin/log.c:1599
+#: builtin/log.c:1602
 msgid "--subject-prefix/--rfc and -k are mutually exclusive."
 msgstr "--subject-prefix/--rfc et -k sont mutuellement exclusifs."
 
-#: builtin/log.c:1607
+#: builtin/log.c:1610
 msgid "--name-only does not make sense"
 msgstr "--name-only n'a pas de sens"
 
-#: builtin/log.c:1609
+#: builtin/log.c:1612
 msgid "--name-status does not make sense"
 msgstr "--name-status n'a pas de sens"
 
-#: builtin/log.c:1611
+#: builtin/log.c:1614
 msgid "--check does not make sense"
 msgstr "--check n'a pas de sens"
 
-#: builtin/log.c:1641
+#: builtin/log.c:1646
 msgid "standard output, or directory, which one?"
 msgstr "sortie standard, ou répertoire, lequel ?"
 
-#: builtin/log.c:1643
+#: builtin/log.c:1648
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "Impossible de créer le répertoire '%s'"
 
-#: builtin/log.c:1736
+#: builtin/log.c:1741
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "lecture du fichier de signature '%s' impossible"
 
-#: builtin/log.c:1768
+#: builtin/log.c:1773
 msgid "Generating patches"
 msgstr "Génération des patchs"
 
-#: builtin/log.c:1812
+#: builtin/log.c:1817
 msgid "Failed to create output files"
 msgstr "Échec de création des fichiers en sortie"
 
-#: builtin/log.c:1862
+#: builtin/log.c:1867
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<branche_amont> [<head> [<limite>]]]"
 
-#: builtin/log.c:1916
+#: builtin/log.c:1921
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -10311,7 +10501,7 @@ msgstr ""
 "sortir avec un code d'erreur 2 si aucune correspondance de référence n'est "
 "trouvée"
 
-#: builtin/ls-remote.c:66
+#: builtin/ls-remote.c:67
 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"
 
@@ -10358,185 +10548,185 @@ msgstr ""
 msgid "empty mbox: '%s'"
 msgstr "mbox vide : '%s'"
 
-#: builtin/merge.c:48
+#: builtin/merge.c:49
 msgid "git merge [<options>] [<commit>...]"
 msgstr "git merge [<options>] [<commit>...]"
 
-#: builtin/merge.c:49
+#: builtin/merge.c:50
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:50
+#: builtin/merge.c:51
 msgid "git merge --continue"
 msgstr "git merge --continue"
 
-#: builtin/merge.c:107
+#: builtin/merge.c:108
 msgid "switch `m' requires a value"
 msgstr "le commutateur `m' a besoin d'une valeur"
 
-#: builtin/merge.c:144
+#: builtin/merge.c:145
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "Impossible de trouver la stratégie de fusion '%s'.\n"
 
-#: builtin/merge.c:145
+#: builtin/merge.c:146
 #, c-format
 msgid "Available strategies are:"
 msgstr "Les stratégies disponibles sont :"
 
-#: builtin/merge.c:150
+#: builtin/merge.c:151
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Les stratégies personnalisées sont :"
 
-#: builtin/merge.c:200 builtin/pull.c:137
+#: builtin/merge.c:201 builtin/pull.c:137
 msgid "do not show a diffstat at the end of the merge"
 msgstr "ne pas afficher un diffstat à la fin de la fusion"
 
-#: builtin/merge.c:203 builtin/pull.c:140
+#: builtin/merge.c:204 builtin/pull.c:140
 msgid "show a diffstat at the end of the merge"
 msgstr "afficher un diffstat à la fin de la fusion"
 
-#: builtin/merge.c:204 builtin/pull.c:143
+#: builtin/merge.c:205 builtin/pull.c:143
 msgid "(synonym to --stat)"
 msgstr "(synonyme de --stat)"
 
-#: builtin/merge.c:206 builtin/pull.c:146
+#: builtin/merge.c:207 builtin/pull.c:146
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr ""
 "ajouter (au plus <n>) éléments du journal court au message de validation de "
 "la fusion"
 
-#: builtin/merge.c:209 builtin/pull.c:152
+#: builtin/merge.c:210 builtin/pull.c:152
 msgid "create a single commit instead of doing a merge"
 msgstr "créer une validation unique au lieu de faire une fusion"
 
-#: builtin/merge.c:211 builtin/pull.c:155
+#: builtin/merge.c:212 builtin/pull.c:155
 msgid "perform a commit if the merge succeeds (default)"
 msgstr "effectuer une validation si la fusion réussit (défaut)"
 
-#: builtin/merge.c:213 builtin/pull.c:158
+#: builtin/merge.c:214 builtin/pull.c:158
 msgid "edit message before committing"
 msgstr "éditer le message avant la validation"
 
-#: builtin/merge.c:214
+#: builtin/merge.c:215
 msgid "allow fast-forward (default)"
 msgstr "autoriser l'avance rapide (défaut)"
 
-#: builtin/merge.c:216 builtin/pull.c:164
+#: builtin/merge.c:217 builtin/pull.c:164
 msgid "abort if fast-forward is not possible"
 msgstr "abandonner si l'avance rapide n'est pas possible"
 
-#: builtin/merge.c:220 builtin/pull.c:167
+#: builtin/merge.c:221 builtin/pull.c:167
 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:221 builtin/notes.c:777 builtin/pull.c:171
+#: builtin/merge.c:222 builtin/notes.c:777 builtin/pull.c:171
 #: builtin/revert.c:109
 msgid "strategy"
 msgstr "stratégie"
 
-#: builtin/merge.c:222 builtin/pull.c:172
+#: builtin/merge.c:223 builtin/pull.c:172
 msgid "merge strategy to use"
 msgstr "stratégie de fusion à utiliser"
 
-#: builtin/merge.c:223 builtin/pull.c:175
+#: builtin/merge.c:224 builtin/pull.c:175
 msgid "option=value"
 msgstr "option=valeur"
 
-#: builtin/merge.c:224 builtin/pull.c:176
+#: builtin/merge.c:225 builtin/pull.c:176
 msgid "option for selected merge strategy"
 msgstr "option pour la stratégie de fusion sélectionnée"
 
-#: builtin/merge.c:226
+#: builtin/merge.c:227
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr ""
 "message de validation de la fusion (pour une fusion sans avance rapide)"
 
-#: builtin/merge.c:230
+#: builtin/merge.c:231
 msgid "abort the current in-progress merge"
 msgstr "abandonner la fusion en cours"
 
-#: builtin/merge.c:232
+#: builtin/merge.c:233
 msgid "continue the current in-progress merge"
 msgstr "continuer la fusion en cours"
 
-#: builtin/merge.c:234 builtin/pull.c:183
+#: builtin/merge.c:235 builtin/pull.c:183
 msgid "allow merging unrelated histories"
 msgstr "permettre la fusion d'historiques sans rapport"
 
-#: builtin/merge.c:240
+#: builtin/merge.c:241
 msgid "verify commit-msg hook"
 msgstr "vérifier le crochet commit-msg"
 
-#: builtin/merge.c:265
+#: builtin/merge.c:266
 msgid "could not run stash."
 msgstr "impossible de lancer le remisage."
 
-#: builtin/merge.c:270
+#: builtin/merge.c:271
 msgid "stash failed"
 msgstr "échec du remisage"
 
-#: builtin/merge.c:275
+#: builtin/merge.c:276
 #, c-format
 msgid "not a valid object: %s"
 msgstr "pas un objet valide : %s"
 
-#: builtin/merge.c:297 builtin/merge.c:314
+#: builtin/merge.c:298 builtin/merge.c:315
 msgid "read-tree failed"
 msgstr "read-tree a échoué"
 
-#: builtin/merge.c:344
+#: builtin/merge.c:345
 msgid " (nothing to squash)"
 msgstr " (rien à compresser)"
 
-#: builtin/merge.c:355
+#: builtin/merge.c:356
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "Validation compressée -- HEAD non mise à jour\n"
 
-#: builtin/merge.c:405
+#: builtin/merge.c:406
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "Pas de message de fusion -- pas de mise à jour de HEAD\n"
 
-#: builtin/merge.c:455
+#: builtin/merge.c:456
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "'%s' ne pointe pas sur un commit"
 
-#: builtin/merge.c:545
+#: builtin/merge.c:546
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Mauvaise chaîne branch.%s.mergeoptions : %s"
 
-#: builtin/merge.c:667
+#: builtin/merge.c:668
 msgid "Not handling anything other than two heads merge."
 msgstr "Impossible de gérer autre chose que la fusion de deux têtes."
 
-#: builtin/merge.c:681
+#: builtin/merge.c:682
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Options inconnue pour merge-recursive : -X%s"
 
-#: builtin/merge.c:696
+#: builtin/merge.c:697
 #, c-format
 msgid "unable to write %s"
 msgstr "impossible d'écrire %s"
 
-#: builtin/merge.c:748
+#: builtin/merge.c:749
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Impossible de lire depuis '%s'"
 
-#: builtin/merge.c:757
+#: builtin/merge.c:758
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
 "Pas de validation de la fusion ; utilisez 'git commit' pour terminer la "
 "fusion.\n"
 
-#: builtin/merge.c:763
+#: builtin/merge.c:764
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -10553,70 +10743,70 @@ msgstr ""
 "Les lignes commençant par '%c' seront ignorées, et un message vide\n"
 "abandonne la validation.\n"
 
-#: builtin/merge.c:799
+#: builtin/merge.c:800
 msgid "Empty commit message."
 msgstr "Message de validation vide."
 
-#: builtin/merge.c:819
+#: builtin/merge.c:820
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Merveilleux.\n"
 
-#: builtin/merge.c:872
+#: builtin/merge.c:873
 #, 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:911
+#: builtin/merge.c:912
 msgid "No current branch."
 msgstr "Pas de branche courante."
 
-#: builtin/merge.c:913
+#: builtin/merge.c:914
 msgid "No remote for the current branch."
 msgstr "Pas de branche distante pour la branche courante."
 
-#: builtin/merge.c:915
+#: builtin/merge.c:916
 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:920
+#: builtin/merge.c:921
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Pas de branche de suivi pour %s depuis %s"
 
-#: builtin/merge.c:973
+#: builtin/merge.c:974
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr "Mauvaise valeur '%s' dans l'environnement '%s'"
 
-#: builtin/merge.c:1075
+#: builtin/merge.c:1076
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr "pas possible de fusionner ceci dans %s : %s"
 
-#: builtin/merge.c:1109
+#: builtin/merge.c:1110
 msgid "not something we can merge"
 msgstr "pas possible de fusionner ceci"
 
-#: builtin/merge.c:1174
+#: builtin/merge.c:1212
 msgid "--abort expects no arguments"
 msgstr "--abort n'accepte pas d'argument"
 
-#: builtin/merge.c:1178
+#: builtin/merge.c:1216
 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:1190
+#: builtin/merge.c:1228
 msgid "--continue expects no arguments"
 msgstr "--continue ne supporte aucun argument"
 
-#: builtin/merge.c:1194
+#: builtin/merge.c:1232
 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:1210
+#: builtin/merge.c:1248
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -10624,7 +10814,7 @@ msgstr ""
 "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe).\n"
 "Veuillez valider vos modifications avant de pouvoir fusionner."
 
-#: builtin/merge.c:1217
+#: builtin/merge.c:1255
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -10632,114 +10822,114 @@ msgstr ""
 "Vous n'avez pas terminé votre picorage (CHERRY_PICK_HEAD existe).\n"
 "Veuillez valider vos modifications avant de pouvoir fusionner."
 
-#: builtin/merge.c:1220
+#: builtin/merge.c:1258
 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:1229
+#: builtin/merge.c:1267
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Vous ne pouvez pas combiner --squash avec --no-ff."
 
-#: builtin/merge.c:1237
+#: builtin/merge.c:1275
 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:1254
+#: builtin/merge.c:1292
 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:1256
+#: builtin/merge.c:1294
 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:1261
+#: builtin/merge.c:1299
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - pas possible de fusionner ceci"
 
-#: builtin/merge.c:1263
+#: builtin/merge.c:1301
 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:1297
+#: builtin/merge.c:1335
 #, 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."
 
-#: builtin/merge.c:1300
+#: builtin/merge.c:1338
 #, 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."
 
-#: builtin/merge.c:1303
+#: builtin/merge.c:1341
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "La validation %s n'a pas de signature GPG."
 
-#: builtin/merge.c:1306
+#: builtin/merge.c:1344
 #, 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"
 
-#: builtin/merge.c:1368
+#: builtin/merge.c:1403
 msgid "refusing to merge unrelated histories"
 msgstr "refus de fusionner des historiques sans relation"
 
-#: builtin/merge.c:1377
+#: builtin/merge.c:1412
 msgid "Already up to date."
 msgstr "Déjà à jour."
 
-#: builtin/merge.c:1387
+#: builtin/merge.c:1422
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Mise à jour %s..%s\n"
 
-#: builtin/merge.c:1428
+#: builtin/merge.c:1463
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "Essai de fusion vraiment triviale dans l'index...\n"
 
-#: builtin/merge.c:1435
+#: builtin/merge.c:1470
 #, c-format
 msgid "Nope.\n"
 msgstr "Non.\n"
 
-#: builtin/merge.c:1460
+#: builtin/merge.c:1495
 msgid "Already up to date. Yeeah!"
 msgstr "Déjà à jour. Ouais !"
 
-#: builtin/merge.c:1466
+#: builtin/merge.c:1501
 msgid "Not possible to fast-forward, aborting."
 msgstr "Pas possible d'avancer rapidement, abandon."
 
-#: builtin/merge.c:1489 builtin/merge.c:1568
+#: builtin/merge.c:1524 builtin/merge.c:1603
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "Retour de l'arbre à l'original...\n"
 
-#: builtin/merge.c:1493
+#: builtin/merge.c:1528
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Essai de la stratégie de fusion %s...\n"
 
-#: builtin/merge.c:1559
+#: builtin/merge.c:1594
 #, 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:1561
+#: builtin/merge.c:1596
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "La fusion avec la stratégie %s a échoué.\n"
 
-#: builtin/merge.c:1570
+#: builtin/merge.c:1605
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr "Utilisation de %s pour préparer la résolution à la main.\n"
 
-#: builtin/merge.c:1582
+#: builtin/merge.c:1617
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -10896,72 +11086,72 @@ msgstr "%.*s est dans l'index"
 msgid "force move/rename even if target exists"
 msgstr "forcer le déplacement/renommage même si la cible existe"
 
-#: builtin/mv.c:126
+#: builtin/mv.c:127
 msgid "skip move/rename errors"
 msgstr "sauter les erreurs de déplacement/renommage"
 
-#: builtin/mv.c:167
+#: builtin/mv.c:168
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr "la destination '%s' n'est pas un répertoire"
 
-#: builtin/mv.c:178
+#: builtin/mv.c:179
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr "Vérification du renommage de '%s' en '%s'\n"
 
-#: builtin/mv.c:182
+#: builtin/mv.c:183
 msgid "bad source"
 msgstr "mauvaise source"
 
-#: builtin/mv.c:185
+#: builtin/mv.c:186
 msgid "can not move directory into itself"
 msgstr "impossible de déplacer un répertoire dans lui-même"
 
-#: builtin/mv.c:188
+#: builtin/mv.c:189
 msgid "cannot move directory over file"
 msgstr "impossible de déplacer un répertoire sur un fichier"
 
-#: builtin/mv.c:197
+#: builtin/mv.c:198
 msgid "source directory is empty"
 msgstr "le répertoire source est vide"
 
-#: builtin/mv.c:222
+#: builtin/mv.c:223
 msgid "not under version control"
 msgstr "pas sous le contrôle de version"
 
-#: builtin/mv.c:225
+#: builtin/mv.c:226
 msgid "destination exists"
 msgstr "la destination existe"
 
-#: builtin/mv.c:233
+#: builtin/mv.c:234
 #, c-format
 msgid "overwriting '%s'"
 msgstr "écrasement de '%s'"
 
-#: builtin/mv.c:236
+#: builtin/mv.c:237
 msgid "Cannot overwrite"
 msgstr "Impossible d'écraser"
 
-#: builtin/mv.c:239
+#: builtin/mv.c:240
 msgid "multiple sources for the same target"
 msgstr "multiples sources pour la même destination"
 
-#: builtin/mv.c:241
+#: builtin/mv.c:242
 msgid "destination directory does not exist"
 msgstr "le répertoire de destination n'existe pas"
 
-#: builtin/mv.c:248
+#: builtin/mv.c:249
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr "%s, source=%s, destination=%s"
 
-#: builtin/mv.c:269
+#: builtin/mv.c:270
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr "Renommage de %s en %s\n"
 
-#: builtin/mv.c:275 builtin/remote.c:712 builtin/repack.c:390
+#: builtin/mv.c:276 builtin/remote.c:712 builtin/repack.c:394
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "le renommage de '%s' a échoué"
@@ -11154,12 +11344,12 @@ 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:234 builtin/tag.c:500
+#: builtin/notes.c:234 builtin/tag.c:506
 #, c-format
 msgid "cannot read '%s'"
 msgstr "impossible de lire '%s'"
 
-#: builtin/notes.c:236 builtin/tag.c:503
+#: builtin/notes.c:236 builtin/tag.c:509
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "impossible d'ouvrir ou lire '%s'"
@@ -11407,7 +11597,7 @@ msgstr ""
 msgid "read object names from the standard input"
 msgstr "lire les noms d'objet depuis l'entrée standard"
 
-#: builtin/notes.c:943 builtin/prune.c:105 builtin/worktree.c:158
+#: builtin/notes.c:943 builtin/prune.c:106 builtin/worktree.c:160
 msgid "do not remove, show only"
 msgstr "ne pas supprimer, afficher seulement"
 
@@ -11442,194 +11632,198 @@ msgstr ""
 "git pack-objects [options...] base-name [< <liste-références> | < <liste-"
 "objets>]"
 
-#: builtin/pack-objects.c:192 builtin/pack-objects.c:195
+#: builtin/pack-objects.c:195 builtin/pack-objects.c:198
 #, c-format
 msgid "deflate error (%d)"
 msgstr "erreur de compression (%d)"
 
-#: builtin/pack-objects.c:788
+#: builtin/pack-objects.c:791
 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:801
+#: builtin/pack-objects.c:804
 msgid "Writing objects"
 msgstr "Écriture des objets"
 
-#: builtin/pack-objects.c:1081
+#: builtin/pack-objects.c:1084
 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:2451
+#: builtin/pack-objects.c:2454
 msgid "Compressing objects"
 msgstr "Compression des objets"
 
-#: builtin/pack-objects.c:2599
+#: builtin/pack-objects.c:2625
 msgid "invalid value for --missing"
 msgstr "valeur invalide pour --missing"
 
-#: builtin/pack-objects.c:2902
+#: builtin/pack-objects.c:2928
 #, c-format
 msgid "unsupported index version %s"
 msgstr "version d'index non supportée %s"
 
-#: builtin/pack-objects.c:2906
+#: builtin/pack-objects.c:2932
 #, c-format
 msgid "bad index version '%s'"
 msgstr "mauvaise version d'index '%s'"
 
-#: builtin/pack-objects.c:2936
+#: builtin/pack-objects.c:2962
 msgid "do not show progress meter"
 msgstr "ne pas afficher la barre de progression"
 
-#: builtin/pack-objects.c:2938
+#: builtin/pack-objects.c:2964
 msgid "show progress meter"
 msgstr "afficher la barre de progression"
 
-#: builtin/pack-objects.c:2940
+#: builtin/pack-objects.c:2966
 msgid "show progress meter during object writing phase"
 msgstr "afficher la barre de progression durant la phase d'écrite des objets"
 
-#: builtin/pack-objects.c:2943
+#: builtin/pack-objects.c:2969
 msgid "similar to --all-progress when progress meter is shown"
 msgstr "similaire à --all-progress quand la barre de progression est affichée"
 
-#: builtin/pack-objects.c:2944
+#: builtin/pack-objects.c:2970
 msgid "version[,offset]"
 msgstr "version[,offset]"
 
-#: builtin/pack-objects.c:2945
+#: builtin/pack-objects.c:2971
 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:2948
+#: builtin/pack-objects.c:2974
 msgid "maximum size of each output pack file"
 msgstr "taille maximum de chaque fichier paquet en sortie"
 
-#: builtin/pack-objects.c:2950
+#: builtin/pack-objects.c:2976
 msgid "ignore borrowed objects from alternate object store"
 msgstr "ignorer les objets empruntés à un autre magasin d'objets"
 
-#: builtin/pack-objects.c:2952
+#: builtin/pack-objects.c:2978
 msgid "ignore packed objects"
 msgstr "ignorer les objets empaquetés"
 
-#: builtin/pack-objects.c:2954
+#: builtin/pack-objects.c:2980
 msgid "limit pack window by objects"
 msgstr "limiter la fenêtre d'empaquetage par objets"
 
-#: builtin/pack-objects.c:2956
+#: builtin/pack-objects.c:2982
 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:2958
+#: builtin/pack-objects.c:2984
 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:2960
+#: builtin/pack-objects.c:2986
 msgid "reuse existing deltas"
 msgstr "réutiliser les deltas existants"
 
-#: builtin/pack-objects.c:2962
+#: builtin/pack-objects.c:2988
 msgid "reuse existing objects"
 msgstr "réutiliser les objets existants"
 
-#: builtin/pack-objects.c:2964
+#: builtin/pack-objects.c:2990
 msgid "use OFS_DELTA objects"
 msgstr "utiliser les objets OFS_DELTA"
 
-#: builtin/pack-objects.c:2966
+#: builtin/pack-objects.c:2992
 msgid "use threads when searching for best delta matches"
 msgstr ""
 "utiliser des fils lors de la recherche pour une meilleurs correspondance des "
 "deltas"
 
-#: builtin/pack-objects.c:2968
+#: builtin/pack-objects.c:2994
 msgid "do not create an empty pack output"
 msgstr "ne pas créer un paquet vide"
 
-#: builtin/pack-objects.c:2970
+#: builtin/pack-objects.c:2996
 msgid "read revision arguments from standard input"
 msgstr "lire les paramètres de révision depuis l'entrée standard"
 
-#: builtin/pack-objects.c:2972
+#: builtin/pack-objects.c:2998
 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:2975
+#: builtin/pack-objects.c:3001
 msgid "include objects reachable from any reference"
 msgstr "inclure les objets accessibles depuis toute référence"
 
-#: builtin/pack-objects.c:2978
+#: builtin/pack-objects.c:3004
 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:2981
+#: builtin/pack-objects.c:3007
 msgid "include objects referred to by the index"
 msgstr "inclure les objets référencés par l'index"
 
-#: builtin/pack-objects.c:2984
+#: builtin/pack-objects.c:3010
 msgid "output pack to stdout"
 msgstr "afficher l'empaquetage sur la sortie standard"
 
-#: builtin/pack-objects.c:2986
+#: builtin/pack-objects.c:3012
 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:2988
+#: builtin/pack-objects.c:3014
 msgid "keep unreachable objects"
 msgstr "garder les objets inaccessibles"
 
-#: builtin/pack-objects.c:2990
+#: builtin/pack-objects.c:3016
 msgid "pack loose unreachable objects"
 msgstr "empaqueter les objets inaccessibles détachés"
 
-#: builtin/pack-objects.c:2992
+#: builtin/pack-objects.c:3018
 msgid "unpack unreachable objects newer than <time>"
 msgstr "dépaqueter les objets inaccessibles plus récents que <heure>"
 
-#: builtin/pack-objects.c:2995
+#: builtin/pack-objects.c:3021
 msgid "create thin packs"
 msgstr "créer des paquets légers"
 
-#: builtin/pack-objects.c:2997
+#: builtin/pack-objects.c:3023
 msgid "create packs suitable for shallow fetches"
 msgstr "créer des paquets permettant des récupérations superficielles"
 
-#: builtin/pack-objects.c:2999
+#: builtin/pack-objects.c:3025
 msgid "ignore packs that have companion .keep file"
 msgstr "ignorer les paquets qui ont un fichier .keep"
 
-#: builtin/pack-objects.c:3001
+#: builtin/pack-objects.c:3027
 msgid "pack compression level"
 msgstr "niveau de compression du paquet"
 
-#: builtin/pack-objects.c:3003
+#: builtin/pack-objects.c:3029
 msgid "do not hide commits by grafts"
 msgstr "ne pas cacher les validations par greffes"
 
-#: builtin/pack-objects.c:3005
+#: builtin/pack-objects.c:3031
 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:3007
+#: builtin/pack-objects.c:3033
 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:3010
+#: builtin/pack-objects.c:3036
 msgid "handling for missing objects"
 msgstr "gestion des objets manquants"
 
-#: builtin/pack-objects.c:3144
+#: builtin/pack-objects.c:3039
+msgid "do not pack objects in promisor packfiles"
+msgstr "ne pas empaqueter les objets dans les fichiers paquets prometteurs"
+
+#: builtin/pack-objects.c:3178
 msgid "Counting objects"
 msgstr "Décompte des objets"
 
@@ -11657,15 +11851,19 @@ msgstr "Suppression des objets dupliqués"
 msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
 msgstr "git prune [-n] [-v] [--progress] [--expire <heure>] [--] [<head>…]"
 
-#: builtin/prune.c:106
+#: builtin/prune.c:107
 msgid "report pruned objects"
 msgstr "afficher les objets éliminés"
 
-#: builtin/prune.c:109
+#: builtin/prune.c:110
 msgid "expire objects older than <time>"
 msgstr "faire expirer les objets plus vieux que <heure>"
 
-#: builtin/prune.c:123
+#: builtin/prune.c:112
+msgid "limit traversal to objects outside promisor packfiles"
+msgstr "limiter la traversée aux objets hors des fichiers paquets prometteurs"
+
+#: builtin/prune.c:126
 msgid "cannot prune in a precious-objects repo"
 msgstr "impossible de nettoyer dans un dépôt d'objets précieux"
 
@@ -11767,7 +11965,7 @@ msgstr "Référez-vous à git-pull(1) pour de plus amples détails."
 msgid "<remote>"
 msgstr "<distant>"
 
-#: builtin/pull.c:433 builtin/pull.c:448 builtin/pull.c:453 git-rebase.sh:466
+#: builtin/pull.c:433 builtin/pull.c:448 builtin/pull.c:453 git-rebase.sh:477
 #: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr "<branche>"
@@ -11793,29 +11991,29 @@ msgstr ""
 "'%s'\n"
 "du serveur distant, mais cette référence n'a pas été récupérée."
 
-#: builtin/pull.c:817
+#: builtin/pull.c:819
 msgid "ignoring --verify-signatures for rebase"
 msgstr "--verify-signatures est ignoré pour un rebasage"
 
-#: builtin/pull.c:865
+#: builtin/pull.c:867
 msgid "--[no-]autostash option is only valid with --rebase."
 msgstr "l'option --[no-]autostash n'est valide qu'avec --rebase."
 
-#: builtin/pull.c:873
+#: builtin/pull.c:875
 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:876
+#: builtin/pull.c:878
 msgid "pull with rebase"
 msgstr "tirer avec un rebasage"
 
-#: builtin/pull.c:877
+#: builtin/pull.c:879
 msgid "please commit or stash them."
 msgstr "veuillez les valider ou les remiser."
 
-#: builtin/pull.c:902
+#: builtin/pull.c:904
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -11826,7 +12024,7 @@ msgstr ""
 "avance rapide de votre copie de travail\n"
 "depuis le commit %s."
 
-#: builtin/pull.c:907
+#: builtin/pull.c:909
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -11843,15 +12041,15 @@ msgstr ""
 "$ git reset --hard\n"
 "pour régénérer."
 
-#: builtin/pull.c:922
+#: builtin/pull.c:924
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Impossible de fusionner de multiples branches sur une tête vide."
 
-#: builtin/pull.c:926
+#: builtin/pull.c:928
 msgid "Cannot rebase onto multiple branches."
 msgstr "Impossible de rebaser sur de multiples branches."
 
-#: builtin/pull.c:933
+#: builtin/pull.c:935
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 "impossible de rebaser avec des modifications de sous-modules enregistrées "
@@ -12254,39 +12452,43 @@ msgstr "git rebase-helper [<options>]"
 msgid "keep empty commits"
 msgstr "garder les validations vides"
 
-#: builtin/rebase--helper.c:25
+#: builtin/rebase--helper.c:26 builtin/revert.c:123
+msgid "allow commits with empty messages"
+msgstr "autoriser les validations avec des messages vides"
+
+#: builtin/rebase--helper.c:27
 msgid "continue rebase"
 msgstr "continuer le rebasage"
 
-#: builtin/rebase--helper.c:27
+#: builtin/rebase--helper.c:29
 msgid "abort rebase"
 msgstr "abandonner le rebasage"
 
-#: builtin/rebase--helper.c:30
+#: builtin/rebase--helper.c:32
 msgid "make rebase script"
 msgstr "créer les script de rebasage"
 
-#: builtin/rebase--helper.c:32
+#: builtin/rebase--helper.c:34
 msgid "shorten commit ids in the todo list"
 msgstr "raccourcir les identifiants de commits dans la liste à-faire"
 
-#: builtin/rebase--helper.c:34
+#: builtin/rebase--helper.c:36
 msgid "expand commit ids in the todo list"
 msgstr "étendre les identifiants de commit dans la liste à-faire"
 
-#: builtin/rebase--helper.c:36
+#: builtin/rebase--helper.c:38
 msgid "check the todo list"
 msgstr "vérifier la liste à-faire"
 
-#: builtin/rebase--helper.c:38
+#: builtin/rebase--helper.c:40
 msgid "skip unnecessary picks"
 msgstr "éviter les commandes de picorage non nécessaires"
 
-#: builtin/rebase--helper.c:40
+#: builtin/rebase--helper.c:42
 msgid "rearrange fixup/squash lines"
 msgstr "réarranger les lignes fixup/squash"
 
-#: builtin/rebase--helper.c:42
+#: builtin/rebase--helper.c:44
 msgid "insert exec commands in todo list"
 msgstr "insérer les commandes exec dans la liste à-faire"
 
@@ -12294,7 +12496,7 @@ msgstr "insérer les commandes exec dans la liste à-faire"
 msgid "git receive-pack <git-dir>"
 msgstr "git receive-pack <répertoire-git>"
 
-#: builtin/receive-pack.c:840
+#: builtin/receive-pack.c:841
 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"
@@ -12324,7 +12526,7 @@ msgstr ""
 "Pour éliminer ce message et conserver le comportement par défaut,\n"
 "réglez « receive.denyCurrentBranch » à 'refuse'."
 
-#: builtin/receive-pack.c:860
+#: builtin/receive-pack.c:861
 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"
@@ -12344,15 +12546,15 @@ msgstr ""
 "\n"
 "Pour éliminer ce message, réglez-le à 'refuse'."
 
-#: builtin/receive-pack.c:1933
+#: builtin/receive-pack.c:1934
 msgid "quiet"
 msgstr "quiet"
 
-#: builtin/receive-pack.c:1947
+#: builtin/receive-pack.c:1948
 msgid "You must specify a directory."
 msgstr "Vous devez spécifier un répertoire."
 
-#: builtin/reflog.c:531 builtin/reflog.c:536
+#: builtin/reflog.c:532 builtin/reflog.c:537
 #, c-format
 msgid "'%s' is not a valid timestamp"
 msgstr "'%s' n'est pas un horodatage valide"
@@ -12887,88 +13089,88 @@ msgstr ""
 "Utilisez\n"
 "--no-write-bitmap-index ou désactivez le paramètre pack.writebitmaps."
 
-#: builtin/repack.c:168
+#: builtin/repack.c:170
 msgid "pack everything in a single pack"
 msgstr "empaqueter tout dans un seul paquet"
 
-#: builtin/repack.c:170
+#: builtin/repack.c:172
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "identique à -a et transformer les objets inaccessibles en suspens"
 
-#: builtin/repack.c:173
+#: builtin/repack.c:175
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "supprimer les paquets redondants et lancer git-prune-packed"
 
-#: builtin/repack.c:175
+#: builtin/repack.c:177
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "passer --no-reuse-delta à git-pack-objects"
 
-#: builtin/repack.c:177
+#: builtin/repack.c:179
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "passer --no-reuse-object à git-pack-objects"
 
-#: builtin/repack.c:179
+#: builtin/repack.c:181
 msgid "do not run git-update-server-info"
 msgstr "ne pas lancer git update-server-info"
 
-#: builtin/repack.c:182
+#: builtin/repack.c:184
 msgid "pass --local to git-pack-objects"
 msgstr "passer --local à git-pack-objects"
 
-#: builtin/repack.c:184
+#: builtin/repack.c:186
 msgid "write bitmap index"
 msgstr "écrire un index en bitmap"
 
-#: builtin/repack.c:185
+#: builtin/repack.c:187
 msgid "approxidate"
 msgstr "date approximative"
 
-#: builtin/repack.c:186
+#: builtin/repack.c:188
 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:188
+#: builtin/repack.c:190
 msgid "with -a, repack unreachable objects"
 msgstr "avec -a, repaquétiser les objets inaccessibles"
 
-#: builtin/repack.c:190
+#: builtin/repack.c:192
 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:191 builtin/repack.c:197
+#: builtin/repack.c:193 builtin/repack.c:199
 msgid "bytes"
 msgstr "octets"
 
-#: builtin/repack.c:192
+#: builtin/repack.c:194
 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:194
+#: builtin/repack.c:196
 msgid "limits the maximum delta depth"
 msgstr "limite la profondeur maximale des deltas"
 
-#: builtin/repack.c:196
+#: builtin/repack.c:198
 msgid "limits the maximum number of threads"
 msgstr "limite le nombre maximal de fils"
 
-#: builtin/repack.c:198
+#: builtin/repack.c:200
 msgid "maximum size of each packfile"
 msgstr "taille maximum de chaque fichier paquet"
 
-#: builtin/repack.c:200
+#: builtin/repack.c:202
 msgid "repack objects in packs marked with .keep"
 msgstr "réempaqueter les objets dans des paquets marqués avec .keep"
 
-#: builtin/repack.c:210
+#: builtin/repack.c:212
 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:214
+#: builtin/repack.c:216
 msgid "--keep-unreachable and -A are incompatible"
 msgstr "--keep-unreachable et -A sont incompatibles"
 
-#: builtin/repack.c:406 builtin/worktree.c:146
+#: builtin/repack.c:410 builtin/worktree.c:148
 #, c-format
 msgid "failed to remove '%s'"
 msgstr "échec de la suppression de '%s'"
@@ -13051,11 +13253,11 @@ msgstr "Modifier les parents d'un commit"
 msgid "replace the ref if it exists"
 msgstr "remplacer la référence si elle existe"
 
-#: builtin/replace.c:443
+#: builtin/replace.c:444
 msgid "do not pretty-print contents for --edit"
 msgstr "afficher sans mise en forme pour --edit"
 
-#: builtin/replace.c:444
+#: builtin/replace.c:445
 msgid "use this format"
 msgstr "utiliser ce format"
 
@@ -13115,103 +13317,107 @@ msgstr "Impossible de trouver l'arbre pour HEAD."
 msgid "Failed to find tree of %s."
 msgstr "Impossible de trouver l'arbre pour %s."
 
-#: builtin/reset.c:113
+#: builtin/reset.c:111
 #, c-format
 msgid "HEAD is now at %s"
 msgstr "HEAD est maintenant à %s"
 
-#: builtin/reset.c:197
+#: builtin/reset.c:189
 #, 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:297
+#: builtin/reset.c:289
 msgid "be quiet, only report errors"
 msgstr "être silencieux, afficher seulement les erreurs"
 
-#: builtin/reset.c:299
+#: builtin/reset.c:291
 msgid "reset HEAD and index"
 msgstr "réinitialiser HEAD et l'index"
 
-#: builtin/reset.c:300
+#: builtin/reset.c:292
 msgid "reset only HEAD"
 msgstr "réinitialiser seulement HEAD"
 
-#: builtin/reset.c:302 builtin/reset.c:304
+#: builtin/reset.c:294 builtin/reset.c:296
 msgid "reset HEAD, index and working tree"
 msgstr "réinitialiser HEAD, l'index et la copie de travail"
 
-#: builtin/reset.c:306
+#: builtin/reset.c:298
 msgid "reset HEAD but keep local changes"
 msgstr "réinitialiser HEAD mais garder les changements locaux"
 
-#: builtin/reset.c:312
+#: builtin/reset.c:304
 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:329
+#: builtin/reset.c:321
 #, 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:337
+#: builtin/reset.c:329
 #, 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:346
+#: builtin/reset.c:338
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr "--patch est incompatible avec --{hard,mixed,soft}"
 
-#: builtin/reset.c:355
+#: builtin/reset.c:347
 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:357
+#: builtin/reset.c:349
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "Impossible de faire un \"%s reset\" avec des chemins."
 
-#: builtin/reset.c:367
+#: builtin/reset.c:359
 #, 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:371
+#: builtin/reset.c:363
 msgid "-N can only be used with --mixed"
 msgstr "-N ne peut être utilisé qu'avec --mixed"
 
-#: builtin/reset.c:388
+#: builtin/reset.c:380
 msgid "Unstaged changes after reset:"
 msgstr "Modifications non indexées après reset :"
 
-#: builtin/reset.c:394
+#: builtin/reset.c:386
 #, 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:398
+#: builtin/reset.c:390
 msgid "Could not write new index file."
 msgstr "Impossible d'écrire le nouveau fichier d'index."
 
-#: builtin/rev-list.c:399
+#: builtin/rev-list.c:397
+msgid "cannot combine --exclude-promisor-objects and --missing"
+msgstr "impossible de combiner --exclude-promisor-objects et --missing"
+
+#: builtin/rev-list.c:455
 msgid "object filtering requires --objects"
 msgstr "le filtrage d'objet exige --objects"
 
-#: builtin/rev-list.c:402
+#: builtin/rev-list.c:458
 #, c-format
 msgid "invalid sparse value '%s'"
 msgstr "valeur invalide de 'sparse' '%s'"
 
-#: builtin/rev-list.c:442
+#: builtin/rev-list.c:499
 msgid "rev-list does not support display of notes"
 msgstr "rev-list ne supporte l'affichage des notes"
 
-#: builtin/rev-list.c:445
+#: builtin/rev-list.c:502
 msgid "cannot combine --use-bitmap-index with object filtering"
 msgstr "impossible de combiner --use-bitmap-index avec le filtrage d'objet"
 
@@ -13315,10 +13521,6 @@ msgstr "ajouter le nom de validation"
 msgid "preserve initially empty commits"
 msgstr "préserver les validations vides initialement"
 
-#: builtin/revert.c:123
-msgid "allow commits with empty messages"
-msgstr "autoriser les validations avec des messages vides"
-
 #: builtin/revert.c:124
 msgid "keep redundant, empty commits"
 msgstr "garder les validations redondantes, vides"
@@ -13676,35 +13878,39 @@ 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:34 builtin/submodule--helper.c:1332
+#: builtin/submodule--helper.c:35 builtin/submodule--helper.c:1669
 #, c-format
 msgid "No such ref: %s"
 msgstr "Référence inexistante : %s"
 
-#: builtin/submodule--helper.c:41 builtin/submodule--helper.c:1341
+#: builtin/submodule--helper.c:42 builtin/submodule--helper.c:1678
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr "Nom de référence complet attendu, %s obtenu"
 
-#: builtin/submodule--helper.c:81
+#: builtin/submodule--helper.c:59
+msgid "submodule--helper print-default-remote takes no arguments"
+msgstr "submodule--helper  print-default-remote n'accepte aucun argument"
+
+#: builtin/submodule--helper.c:96
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr "impossible de supprimer un composant de l'URL '%s'"
 
-#: builtin/submodule--helper.c:370 builtin/submodule--helper.c:861
+#: builtin/submodule--helper.c:404 builtin/submodule--helper.c:1198
 msgid "alternative anchor for relative paths"
 msgstr "ancre alternative pour les chemins relatifs"
 
-#: builtin/submodule--helper.c:375
+#: builtin/submodule--helper.c:409
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper list [--prefix=<chemin>] [<chemin>...]"
 
-#: builtin/submodule--helper.c:426 builtin/submodule--helper.c:449
+#: builtin/submodule--helper.c:460 builtin/submodule--helper.c:483
 #, 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:464
+#: builtin/submodule--helper.c:498
 #, c-format
 msgid ""
 "could not lookup configuration '%s'. Assuming this repository is its own "
@@ -13713,60 +13919,60 @@ msgstr ""
 "impossible de trouver la configuration '%s'. Ce dépôt est considéré comme "
 "son propre amont d'autorité."
 
-#: builtin/submodule--helper.c:475
+#: builtin/submodule--helper.c:509
 #, 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:479
+#: builtin/submodule--helper.c:513
 #, 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:489
+#: builtin/submodule--helper.c:523
 #, 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:496
+#: builtin/submodule--helper.c:530
 #, 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:518
+#: builtin/submodule--helper.c:552
 msgid "Suppress output for initializing a submodule"
 msgstr "Supprimer la sortie lors de l'initialisation d'un sous-module"
 
-#: builtin/submodule--helper.c:523
+#: builtin/submodule--helper.c:557
 msgid "git submodule--helper init [<path>]"
 msgstr "git submodule--helper init [<chemin>]"
 
-#: builtin/submodule--helper.c:591 builtin/submodule--helper.c:713
+#: builtin/submodule--helper.c:625 builtin/submodule--helper.c:747
 #, 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:626
+#: builtin/submodule--helper.c:660
 #, 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:653
+#: builtin/submodule--helper.c:687 builtin/submodule--helper.c:856
 #, c-format
 msgid "failed to recurse into submodule '%s'"
 msgstr "récursion impossible dans le sous-module '%s'"
 
-#: builtin/submodule--helper.c:677
+#: builtin/submodule--helper.c:711 builtin/submodule--helper.c:1021
 msgid "Suppress submodule status output"
 msgstr "supprimer la sortie d'état du sous-module"
 
-#: builtin/submodule--helper.c:678
+#: builtin/submodule--helper.c:712
 msgid ""
 "Use commit stored in the index instead of the one stored in the submodule "
 "HEAD"
@@ -13774,55 +13980,139 @@ msgstr ""
 "Utiliser le commit stocké dans l'index au lieu de celui stocké dans la HEAD "
 "du sous-module"
 
-#: builtin/submodule--helper.c:679
+#: builtin/submodule--helper.c:713
 msgid "recurse into nested submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:684
+#: builtin/submodule--helper.c:718
 msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
 msgstr "git submodule status [--quiet] [--cached] [--recursive] [<chemin>...]"
 
-#: builtin/submodule--helper.c:708
+#: builtin/submodule--helper.c:742
 msgid "git submodule--helper name <path>"
 msgstr "git submodule--helper <nom> <chemin>"
 
-#: builtin/submodule--helper.c:796 builtin/submodule--helper.c:799
+#: builtin/submodule--helper.c:806
+#, c-format
+msgid "Synchronizing submodule url for '%s'\n"
+msgstr "Synchronisation de l'URL sous-module pour '%s'\n"
+
+#: builtin/submodule--helper.c:812
+#, 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:826
+#, 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:837
+#, 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:885
+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:887
+msgid "Recurse into nested submodules"
+msgstr "Parcourir récursivement les sous-modules"
+
+#: builtin/submodule--helper.c:892
+msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
+msgstr "git submodule--helper sync [--quiet] [--recursive] [<chemin>]"
+
+#: builtin/submodule--helper.c:946
+#, c-format
+msgid ""
+"Submodule work tree '%s' contains a .git directory (use 'rm -rf' if you "
+"really want to remove it including all of its history)"
+msgstr "L'arbre de travail du sous-module '%s' contient un répertoire .git (utilisez 'rm -rf' si vous voulez vraiment le supprimer en incluant tout son historique)"
+
+#: builtin/submodule--helper.c:958
+#, c-format
+msgid ""
+"Submodule work tree '%s' contains local modifications; use '-f' to discard "
+"them"
+msgstr "L'arbre de travail du sous-module '%s' contient des modifications locales ; utilisez '-f' pour les annuler"
+
+#: builtin/submodule--helper.c:966
+#, c-format
+msgid "Cleared directory '%s'\n"
+msgstr "Répertoire '%s' nettoyé\n"
+
+#: builtin/submodule--helper.c:968
+#, 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:977
+#, 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:993
+#, 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:1022
+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:1023
+msgid "Unregister all submodules"
+msgstr "Désenregistrer tous les sous-modules"
+
+#: builtin/submodule--helper.c:1028
+msgid ""
+"git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
+msgstr "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<chemin>...]]"
+
+#: builtin/submodule--helper.c:1042
+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:1133 builtin/submodule--helper.c:1136
 #, 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:835
+#: builtin/submodule--helper.c:1172
 #, 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:842
+#: builtin/submodule--helper.c:1179
 #, 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:864
+#: builtin/submodule--helper.c:1201
 msgid "where the new submodule will be cloned to"
 msgstr "emplacement où le sous-module sera cloné"
 
-#: builtin/submodule--helper.c:867
+#: builtin/submodule--helper.c:1204
 msgid "name of the new submodule"
 msgstr "nom du nouveau sous-module"
 
-#: builtin/submodule--helper.c:870
+#: builtin/submodule--helper.c:1207
 msgid "url where to clone the submodule from"
 msgstr "URL depuis laquelle cloner le sous-module"
 
-#: builtin/submodule--helper.c:876
+#: builtin/submodule--helper.c:1213
 msgid "depth for shallow clones"
 msgstr "profondeur de l'historique des clones superficiels"
 
-#: builtin/submodule--helper.c:879 builtin/submodule--helper.c:1250
+#: builtin/submodule--helper.c:1216 builtin/submodule--helper.c:1587
 msgid "force cloning progress"
 msgstr "forcer l'affichage de la progression du clonage"
 
-#: builtin/submodule--helper.c:884
+#: builtin/submodule--helper.c:1221
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
 "<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
@@ -13830,83 +14120,83 @@ msgstr ""
 "git submodule--helper clone [--prefix=<chemin>] [--quiet] [--reference "
 "<dépôt>] [--name <nom>] [--depth <profondeur>]  --url <url> --path <chemin>"
 
-#: builtin/submodule--helper.c:915
+#: builtin/submodule--helper.c:1252
 #, 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:930
+#: builtin/submodule--helper.c:1267
 #, 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:995
+#: builtin/submodule--helper.c:1332
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr "Le chemin de sous-module '%s' n'est pas initialisé"
 
-#: builtin/submodule--helper.c:999
+#: builtin/submodule--helper.c:1336
 msgid "Maybe you want to use 'update --init'?"
 msgstr "Vous voudriez sûrement utiliser 'update --init' ?"
 
-#: builtin/submodule--helper.c:1028
+#: builtin/submodule--helper.c:1365
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr "Sous-module non fusionné %s non traité"
 
-#: builtin/submodule--helper.c:1057
+#: builtin/submodule--helper.c:1394
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr "Sous-module '%s' non traité"
 
-#: builtin/submodule--helper.c:1190
+#: builtin/submodule--helper.c:1527
 #, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
 msgstr "Impossible de cloner '%s'. Réessai prévu"
 
-#: builtin/submodule--helper.c:1201
+#: builtin/submodule--helper.c:1538
 #, c-format
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr "Impossible de cloner '%s' pour la seconde fois, abandon"
 
-#: builtin/submodule--helper.c:1231 builtin/submodule--helper.c:1451
+#: builtin/submodule--helper.c:1568 builtin/submodule--helper.c:1788
 msgid "path into the working tree"
 msgstr "chemin dans la copie de travail"
 
-#: builtin/submodule--helper.c:1234
+#: builtin/submodule--helper.c:1571
 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:1238
+#: builtin/submodule--helper.c:1575
 msgid "rebase, merge, checkout or none"
 msgstr "valeurs possibles : rebase, merge, checkout ou none"
 
-#: builtin/submodule--helper.c:1242
+#: builtin/submodule--helper.c:1579
 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:1245
+#: builtin/submodule--helper.c:1582
 msgid "parallel jobs"
 msgstr "jobs parallèles"
 
-#: builtin/submodule--helper.c:1247
+#: builtin/submodule--helper.c:1584
 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:1248
+#: builtin/submodule--helper.c:1585
 msgid "don't print cloning progress"
 msgstr "ne pas afficher la progression du clonage"
 
-#: builtin/submodule--helper.c:1255
+#: builtin/submodule--helper.c:1592
 msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper update_clone [--prefix=<chemin>] [<chemin>...]"
 
-#: builtin/submodule--helper.c:1268
+#: builtin/submodule--helper.c:1605
 msgid "bad value for update parameter"
 msgstr "valeur invalide pour la mise à jour du paramètre"
 
-#: builtin/submodule--helper.c:1336
+#: builtin/submodule--helper.c:1673
 #, c-format
 msgid ""
 "Submodule (%s) branch configured to inherit branch from superproject, but "
@@ -13915,20 +14205,20 @@ 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:1452
+#: builtin/submodule--helper.c:1789
 msgid "recurse into submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:1458
+#: builtin/submodule--helper.c:1795
 msgid "git submodule--helper embed-git-dir [<path>...]"
 msgstr "git submodule--helper embed-git-dir [<chemin>...]"
 
-#: builtin/submodule--helper.c:1517
+#: builtin/submodule--helper.c:1857
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr "%s ne gère pas --super-prefix"
 
-#: builtin/submodule--helper.c:1523
+#: builtin/submodule--helper.c:1863
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr "'%s' n'est pas une sous-commande valide de submodule--helper"
@@ -14034,140 +14324,144 @@ msgstr "impossible de signer l'étiquette"
 msgid "unable to write tag file"
 msgstr "impossible d'écrire le fichier d'étiquettes"
 
-#: builtin/tag.c:215
+#: builtin/tag.c:216
 msgid "bad object type."
 msgstr "mauvais type d'objet."
 
-#: builtin/tag.c:261
+#: builtin/tag.c:265
 msgid "no tag message?"
 msgstr "pas de message pour l'étiquette ?"
 
-#: builtin/tag.c:268
+#: builtin/tag.c:272
 #, 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:376
+#: builtin/tag.c:381
 msgid "list tag names"
 msgstr "afficher les noms des étiquettes"
 
-#: builtin/tag.c:378
+#: builtin/tag.c:383
 msgid "print <n> lines of each tag message"
 msgstr "affiche <n> lignes de chaque message d'étiquette"
 
-#: builtin/tag.c:380
+#: builtin/tag.c:385
 msgid "delete tags"
 msgstr "supprimer des étiquettes"
 
-#: builtin/tag.c:381
+#: builtin/tag.c:386
 msgid "verify tags"
 msgstr "vérifier des étiquettes"
 
-#: builtin/tag.c:383
+#: builtin/tag.c:388
 msgid "Tag creation options"
 msgstr "Options de création de l'étiquette"
 
-#: builtin/tag.c:385
+#: builtin/tag.c:390
 msgid "annotated tag, needs a message"
 msgstr "étiquette annotée, nécessite un message"
 
-#: builtin/tag.c:387
+#: builtin/tag.c:392
 msgid "tag message"
 msgstr "message pour l'étiquette"
 
-#: builtin/tag.c:389
+#: builtin/tag.c:394
+msgid "force edit of tag message"
+msgstr "forcer l'édition du message d'étiquetage"
+
+#: builtin/tag.c:395
 msgid "annotated and GPG-signed tag"
 msgstr "étiquette annotée et signée avec GPG"
 
-#: builtin/tag.c:393
+#: builtin/tag.c:399
 msgid "use another key to sign the tag"
 msgstr "utiliser une autre clé pour signer l'étiquette"
 
-#: builtin/tag.c:394
+#: builtin/tag.c:400
 msgid "replace the tag if exists"
 msgstr "remplacer l'étiquette si elle existe"
 
-#: builtin/tag.c:395 builtin/update-ref.c:368
+#: builtin/tag.c:401 builtin/update-ref.c:368
 msgid "create a reflog"
 msgstr "créer un reflog"
 
-#: builtin/tag.c:397
+#: builtin/tag.c:403
 msgid "Tag listing options"
 msgstr "Options d'affichage des étiquettes"
 
-#: builtin/tag.c:398
+#: builtin/tag.c:404
 msgid "show tag list in columns"
 msgstr "afficher la liste des étiquettes sous forme de colonnes"
 
-#: builtin/tag.c:399 builtin/tag.c:401
+#: builtin/tag.c:405 builtin/tag.c:407
 msgid "print only tags that contain the commit"
 msgstr "afficher seulement les étiquettes qui contiennent la validation"
 
-#: builtin/tag.c:400 builtin/tag.c:402
+#: builtin/tag.c:406 builtin/tag.c:408
 msgid "print only tags that don't contain the commit"
 msgstr "afficher seulement les étiquettes qui ne contiennent pas la validation"
 
-#: builtin/tag.c:403
+#: builtin/tag.c:409
 msgid "print only tags that are merged"
 msgstr "afficher seulement les étiquettes qui sont fusionnées"
 
-#: builtin/tag.c:404
+#: builtin/tag.c:410
 msgid "print only tags that are not merged"
 msgstr "afficher seulement les étiquettes qui ne sont pas fusionnées"
 
-#: builtin/tag.c:409
+#: builtin/tag.c:415
 msgid "print only tags of the object"
 msgstr "afficher seulement les étiquettes de l'objet"
 
-#: builtin/tag.c:453
+#: builtin/tag.c:459
 msgid "--column and -n are incompatible"
 msgstr "--column et -n sont incompatibles"
 
-#: builtin/tag.c:475
+#: builtin/tag.c:481
 msgid "-n option is only allowed in list mode"
 msgstr "l'option -n est autorisée seulement en mode de liste"
 
-#: builtin/tag.c:477
+#: builtin/tag.c:483
 msgid "--contains option is only allowed in list mode"
 msgstr "l'option --contains est autorisée seulement en mode de liste"
 
-#: builtin/tag.c:479
+#: builtin/tag.c:485
 msgid "--no-contains option is only allowed in list mode"
 msgstr "l'option --contains est autorisée seulement en mode liste"
 
-#: builtin/tag.c:481
+#: builtin/tag.c:487
 msgid "--points-at option is only allowed in list mode"
 msgstr "l'option --points-at est autorisée seulement en mode liste"
 
-#: builtin/tag.c:483
+#: builtin/tag.c:489
 msgid "--merged and --no-merged options are only allowed in list mode"
 msgstr ""
 "les options --merged et --no-merged ne sont autorisées qu'en mode liste"
 
-#: builtin/tag.c:494
+#: builtin/tag.c:500
 msgid "only one -F or -m option is allowed."
 msgstr "une seule option -F ou -m est autorisée."
 
-#: builtin/tag.c:513
+#: builtin/tag.c:519
 msgid "too many params"
 msgstr "trop de paramètres"
 
-#: builtin/tag.c:519
+#: builtin/tag.c:525
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "'%s' n'est pas un nom d'étiquette valide."
 
-#: builtin/tag.c:524
+#: builtin/tag.c:530
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "l'étiquette '%s' existe déjà"
 
-#: builtin/tag.c:554
+#: builtin/tag.c:561
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Étiquette '%s' mise à jour (elle était sur %s)\n"
 
-#: builtin/unpack-objects.c:494
+#: builtin/unpack-objects.c:498
 msgid "Unpacking objects"
 msgstr "Dépaquetage des objets"
 
@@ -14512,8 +14806,8 @@ msgid "print tag contents"
 msgstr "afficher le contenu de l'étiquette"
 
 #: builtin/worktree.c:17
-msgid "git worktree add [<options>] <path> [<branch>]"
-msgstr "git worktree add [<options>] <chemin> [<branche>]"
+msgid "git worktree add [<options>] <path> [<commit-ish>]"
+msgstr "git worktree add [<options>] <chemin> [<commit>]"
 
 #: builtin/worktree.c:18
 msgid "git worktree list [<options>]"
@@ -14524,30 +14818,38 @@ msgid "git worktree lock [<options>] <path>"
 msgstr "git worktree lock [<options>] <chemin>"
 
 #: builtin/worktree.c:20
+msgid "git worktree move <worktree> <new-path>"
+msgstr "git worktree move <arbre-de-travail> <nouveau-chemin>"
+
+#: builtin/worktree.c:21
 msgid "git worktree prune [<options>]"
 msgstr "git worktree prune [<options>]"
 
-#: builtin/worktree.c:21
+#: builtin/worktree.c:22
+msgid "git worktree remove [<options>] <worktree>"
+msgstr "git worktree remove [<options>] <arbre-de-travail>"
+
+#: builtin/worktree.c:23
 msgid "git worktree unlock <path>"
 msgstr "git worktree unlock <chemin>"
 
-#: builtin/worktree.c:58
+#: builtin/worktree.c:60
 #, c-format
 msgid "Removing worktrees/%s: not a valid directory"
 msgstr "Suppression de worktrees/%s : répertoire invalide"
 
-#: builtin/worktree.c:64
+#: builtin/worktree.c:66
 #, c-format
 msgid "Removing worktrees/%s: gitdir file does not exist"
 msgstr "Suppression de worktrees/%s : le fichier gitdir n'existe pas"
 
-#: builtin/worktree.c:69 builtin/worktree.c:78
+#: builtin/worktree.c:71 builtin/worktree.c:80
 #, c-format
 msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
 msgstr ""
 "Suppression de worktrees/%s : echec de la lecture du fichier gitdir (%s)"
 
-#: builtin/worktree.c:88
+#: builtin/worktree.c:90
 #, c-format
 msgid ""
 "Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
@@ -14556,109 +14858,186 @@ msgstr ""
 "Suppression de worktrees/%s: lecture trop courte ( %<PRIuMAX> octets "
 "attendus, %<PRIuMAX> octets lus)"
 
-#: builtin/worktree.c:96
+#: builtin/worktree.c:98
 #, c-format
 msgid "Removing worktrees/%s: invalid gitdir file"
 msgstr "Suppression de worktrees/%s : fichier gitdir invalide"
 
-#: builtin/worktree.c:112
+#: builtin/worktree.c:114
 #, c-format
 msgid "Removing worktrees/%s: gitdir file points to non-existent location"
 msgstr ""
 "Suppression de worktrees/%s : le fichier gitdir point sur un endroit "
 "inexistant"
 
-#: builtin/worktree.c:159
+#: builtin/worktree.c:161
 msgid "report pruned working trees"
 msgstr "afficher les arbres de travail éliminés"
 
-#: builtin/worktree.c:161
+#: builtin/worktree.c:163
 msgid "expire working trees older than <time>"
 msgstr "faire expirer les arbres de travail plus vieux que <temps>"
 
-#: builtin/worktree.c:236
+#: builtin/worktree.c:238
 #, c-format
 msgid "'%s' already exists"
 msgstr "'%s' existe déjà"
 
-#: builtin/worktree.c:267
+#: builtin/worktree.c:269
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "impossible de créer le répertoire de '%s'"
 
-#: builtin/worktree.c:306
+#: builtin/worktree.c:308
 #, c-format
 msgid "Preparing %s (identifier %s)"
 msgstr "Préparation de %s (identifiant %s)"
 
-#: builtin/worktree.c:368
+#: builtin/worktree.c:385
 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:370
+#: builtin/worktree.c:388
 msgid "create a new branch"
 msgstr "créer une nouvelle branche"
 
-#: builtin/worktree.c:372
+#: builtin/worktree.c:390
 msgid "create or reset a branch"
 msgstr "créer ou réinitialiser une branche"
 
-#: builtin/worktree.c:374
+#: builtin/worktree.c:392
 msgid "populate the new working tree"
 msgstr "remplissage de la nouvelle copie de travail"
 
-#: builtin/worktree.c:375
+#: builtin/worktree.c:393
 msgid "keep the new working tree locked"
 msgstr "conserver le verrou sur le nouvel arbre de travail"
 
-#: builtin/worktree.c:377
+#: builtin/worktree.c:395
 msgid "set up tracking mode (see git-branch(1))"
 msgstr "régler le mode de suivi (voir git-branch(1))"
 
-#: builtin/worktree.c:380
+#: builtin/worktree.c:398
 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:388
+#: builtin/worktree.c:406
 msgid "-b, -B, and --detach are mutually exclusive"
 msgstr "-b, -B et --detach sont mutuellement exclusifs"
 
-#: builtin/worktree.c:453
+#: builtin/worktree.c:471
 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:553
+#: builtin/worktree.c:571
 msgid "reason for locking"
 msgstr "raison du verrouillage"
 
-#: builtin/worktree.c:565 builtin/worktree.c:598
+#: builtin/worktree.c:583 builtin/worktree.c:616 builtin/worktree.c:670
+#: builtin/worktree.c:809
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "'%s' n'est pas une copie de travail"
 
-#: builtin/worktree.c:567 builtin/worktree.c:600
+#: builtin/worktree.c:585 builtin/worktree.c:618
 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:572
+#: builtin/worktree.c:590
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr "'%s' est déjà verrouillé, car '%s'"
 
-#: builtin/worktree.c:574
+#: builtin/worktree.c:592
 #, c-format
 msgid "'%s' is already locked"
 msgstr "'%s' est déjà verrouillé"
 
-#: builtin/worktree.c:602
+#: builtin/worktree.c:620
 #, c-format
 msgid "'%s' is not locked"
 msgstr "'%s' n'est pas verrouillé"
 
+#: builtin/worktree.c:645
+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:672 builtin/worktree.c:811
+#, c-format
+msgid "'%s' is a main working tree"
+msgstr "'%s' est un arbre de travail principal"
+
+#: builtin/worktree.c:677
+#, 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:683
+#, c-format
+msgid "target '%s' already exists"
+msgstr "la cible '%s' existe déjà"
+
+#: builtin/worktree.c:690
+#, c-format
+msgid "cannot move a locked working tree, lock reason: %s"
+msgstr "impossible de déplacer un arbre de travail verrouillé, raison du verrouillage : %s"
+
+#: builtin/worktree.c:692
+msgid "cannot move a locked working tree"
+msgstr "impossible de déplacer un arbre de travail verrouillé"
+
+#: builtin/worktree.c:695
+#, 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:700
+#, c-format
+msgid "failed to move '%s' to '%s'"
+msgstr "échec au déplacement de '%s' vers '%s'"
+
+#: builtin/worktree.c:748
+#, c-format
+msgid "failed to run 'git status' on '%s'"
+msgstr "échec du lancement de 'git status' sur '%s'"
+
+#: builtin/worktree.c:752
+#, c-format
+msgid "'%s' is dirty, use --force to delete it"
+msgstr "'%s' est sale, utilisez --force pour le supprimer"
+
+#: builtin/worktree.c:757
+#, 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:768 builtin/worktree.c:782
+#, c-format
+msgid "failed to delete '%s'"
+msgstr "échec de la suppression de '%s'"
+
+#: builtin/worktree.c:794
+msgid "force removing even if the worktree is dirty"
+msgstr "forcer la suppression même si l'arbre de travail est sale"
+
+#: builtin/worktree.c:815
+#, c-format
+msgid "cannot remove a locked working tree, lock reason: %s"
+msgstr "impossible de supprimer un arbre de travail verrouillé, raison du verrouillage : %s"
+
+#: builtin/worktree.c:817
+msgid "cannot remove a locked working tree"
+msgstr "impossible de supprimer un arbre de travail verrouillé"
+
+#: builtin/worktree.c:820
+#, c-format
+msgid "validation failed, cannot remove working tree: %s"
+msgstr "la validation a échoué, impossible de supprimer l'arbre de travail : %s"
+
 #: builtin/write-tree.c:14
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
 msgstr "git write-tree [--missing-ok] [--prefix=<préfixe>/]"
@@ -14675,25 +15054,25 @@ msgstr "écrire l'objet arbre pour un sous-répertoire <préfixe>"
 msgid "only useful for debugging"
 msgstr "seulement utile pour le débogage"
 
-#: upload-pack.c:24
+#: upload-pack.c:27
 msgid "git upload-pack [<options>] <dir>"
 msgstr "git upload-pack [<options>] <répertoire>"
 
-#: upload-pack.c:1041
+#: upload-pack.c:1070
 msgid "quit after a single request/response exchange"
 msgstr "quitter après un unique échange requête/réponse"
 
-#: upload-pack.c:1043
+#: upload-pack.c:1072
 msgid "exit immediately after initial ref advertisement"
 msgstr "Sortir immédiatement après l'annonce initiale des références"
 
-#: upload-pack.c:1045
+#: upload-pack.c:1074
 msgid "do not try <directory>/.git/ if <directory> is no Git directory"
 msgstr ""
 "nes pas essayer <répertoire>/.git/ si <répertoire> n'est pas un répertoire "
 "Git"
 
-#: upload-pack.c:1047
+#: upload-pack.c:1076
 msgid "interrupt transfer after <n> seconds of inactivity"
 msgstr "interrompre le transfert après <n> secondes d'inactivité"
 
@@ -14714,6 +15093,20 @@ msgstr ""
 msgid "print debugging messages to stderr"
 msgstr "afficher les messages de debug sur stderr"
 
+#: git.c:8
+msgid ""
+"git [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
+"           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
+"           [-p | --paginate | --no-pager] [--no-replace-objects] [--bare]\n"
+"           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
+"           <command> [<args>]"
+msgstr ""
+"git [--version] [--help] [-C <chemin>] [-c <nom>=<valeur>]\n"
+"           [--exec-path[=<chemin>]] [--html-path] [--man-path] [--info-path]\n"
+"           [-p | --paginate | --no-pager] [--no-replace-objects] [--bare]\n"
+"           [--git-dir=<chemin>] [--work-tree=<chemin>] [--namespace=<nom>]\n"
+"           <commande> [<args>]"
+
 #: git.c:15
 msgid ""
 "'git help -a' and 'git help -g' list available subcommands and some\n"
@@ -14724,21 +15117,66 @@ msgstr ""
 "quelques concepts. Voir 'git help <commande>' ou 'git help <concept>'\n"
 "pour en lire plus à propos d'une commande spécifique ou d'un concept."
 
-#: http.c:339
+#: git.c:95
+#, c-format
+msgid "no directory given for --git-dir\n"
+msgstr "aucun répertoire fourni pour --git-dir\n"
+
+#: git.c:109
+#, c-format
+msgid "no namespace given for --namespace\n"
+msgstr "aucun espace de nom fournit pour --namespace\n"
+
+#: git.c:123
+#, c-format
+msgid "no directory given for --work-tree\n"
+msgstr "aucun répertoire fourni pour --work-tree\n"
+
+#: git.c:137
+#, c-format
+msgid "no prefix given for --super-prefix\n"
+msgstr "aucun préfixe fourni pour --super-prefix\n"
+
+#: git.c:159
+#, c-format
+msgid "-c expects a configuration string\n"
+msgstr "-c requiert une chaîne de configuration\n"
+
+#: git.c:197
+#, c-format
+msgid "no directory given for -C\n"
+msgstr "aucun répertoire fourni pour -C\n"
+
+#: git.c:212
+#, c-format
+msgid "unknown option: %s\n"
+msgstr "option inconnue : %s\n"
+
+#: git.c:687
+#, 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:699
+#, c-format
+msgid "failed to run command '%s': %s\n"
+msgstr "échec au lancement de la commande '%s' : %s\n"
+
+#: http.c:342
 #, c-format
 msgid "negative value for http.postbuffer; defaulting to %d"
 msgstr ""
 "valeur négative pour http.postbuffer ; utilisation de la valeur par défaut %d"
 
-#: http.c:360
+#: http.c:363
 msgid "Delegation control is not supported with cURL < 7.22.0"
 msgstr "La délégation de commande n'est pas supporté avec cuRL < 7.22.0"
 
-#: http.c:369
+#: http.c:372
 msgid "Public key pinning not supported with cURL < 7.44.0"
 msgstr "L'épinglage de clé publique n'est pas supporté avec cuRL < 7.44.0"
 
-#: http.c:1791
+#: http.c:1857
 #, c-format
 msgid ""
 "unable to update url base from redirection:\n"
@@ -14749,16 +15187,16 @@ msgstr ""
 "      demandé : %s\n"
 "  redirection : %s"
 
-#: remote-curl.c:324
+#: remote-curl.c:345
 #, c-format
 msgid "redirecting to %s"
 msgstr "redirection vers %s"
 
-#: list-objects-filter-options.h:54
+#: list-objects-filter-options.h:59
 msgid "args"
 msgstr "args"
 
-#: list-objects-filter-options.h:55
+#: list-objects-filter-options.h:60
 msgid "object filtering"
 msgstr "filtrage d'objet"
 
@@ -14870,23 +15308,23 @@ 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"
 
-#: parse-options.h:145
+#: parse-options.h:157
 msgid "expiry-date"
 msgstr "date-d'expiration"
 
-#: parse-options.h:160
+#: parse-options.h:172
 msgid "no-op (backward compatibility)"
 msgstr "sans action (rétrocompatibilité)"
 
-#: parse-options.h:238
+#: parse-options.h:250
 msgid "be more verbose"
 msgstr "être plus verbeux"
 
-#: parse-options.h:240
+#: parse-options.h:252
 msgid "be more quiet"
 msgstr "être plus silencieux"
 
-#: parse-options.h:246
+#: parse-options.h:258
 msgid "use <n> digits to display SHA-1s"
 msgstr "utiliser <n> chiffres pour afficher les SHA-1s"
 
@@ -15124,7 +15562,7 @@ 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-rebase.sh:58
+#: git-rebase.sh:60
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -15138,43 +15576,43 @@ msgstr ""
 "arrêter\n"
 "et revenir à l'état antérieur à la commande, lancez \"git rebase --abort\"."
 
-#: git-rebase.sh:160 git-rebase.sh:402
+#: git-rebase.sh:163 git-rebase.sh:409
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr "Impossible de revenir à $head_name"
 
-#: git-rebase.sh:171
+#: git-rebase.sh:174
 msgid "Applied autostash."
 msgstr "Autoremisage appliqué."
 
-#: git-rebase.sh:174
+#: git-rebase.sh:177
 #, sh-format
 msgid "Cannot store $stash_sha1"
 msgstr "Impossible de stocker $stash_sha1"
 
-#: git-rebase.sh:214
+#: git-rebase.sh:218
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Le crochet pre-rebase a refusé de rebaser."
 
-#: git-rebase.sh:219
+#: git-rebase.sh:223
 msgid "It looks like 'git am' is in progress. Cannot rebase."
 msgstr "Il semble que 'git-am' soit en cours. Impossible de rebaser."
 
-#: git-rebase.sh:363
+#: git-rebase.sh:370
 msgid "No rebase in progress?"
 msgstr "Pas de rebasage en cours ?"
 
-#: git-rebase.sh:374
+#: git-rebase.sh:381
 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."
 
-#: git-rebase.sh:381
+#: git-rebase.sh:388
 msgid "Cannot read HEAD"
 msgstr "Impossible de lire HEAD"
 
-#: git-rebase.sh:384
+#: git-rebase.sh:391
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -15182,7 +15620,7 @@ msgstr ""
 "Vous devez éditer tous les conflits de fusion et\n"
 "les marquer comme résolus avec git add"
 
-#: git-rebase.sh:424
+#: git-rebase.sh:435
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -15204,76 +15642,76 @@ msgstr ""
 "chose\n"
 "d'important ici."
 
-#: git-rebase.sh:480
+#: git-rebase.sh:491
 #, sh-format
 msgid "invalid upstream '$upstream_name'"
 msgstr "invalide '$upstream_name' en amont"
 
-#: git-rebase.sh:504
+#: git-rebase.sh:515
 #, sh-format
 msgid "$onto_name: there are more than one merge bases"
 msgstr "$onto_name : il y a plus d'une base de fusion"
 
-#: git-rebase.sh:507 git-rebase.sh:511
+#: git-rebase.sh:518 git-rebase.sh:522
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr "$onto_name : il n'y a pas de base de fusion"
 
-#: git-rebase.sh:516
+#: git-rebase.sh:527
 #, sh-format
 msgid "Does not point to a valid commit: $onto_name"
 msgstr "Ne pointe pas sur une validation valide : $onto_name"
 
-#: git-rebase.sh:542
+#: git-rebase.sh:553
 #, sh-format
 msgid "fatal: no such branch/commit '$branch_name'"
 msgstr "fatal : pas de branche ou commit '$branch_name'"
 
-#: git-rebase.sh:575
+#: git-rebase.sh:586
 msgid "Cannot autostash"
 msgstr "Autoremisage impossible"
 
-#: git-rebase.sh:580
+#: git-rebase.sh:591
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr "Autoremisage créé : $stash_abbrev"
 
-#: git-rebase.sh:584
+#: git-rebase.sh:595
 msgid "Please commit or stash them."
 msgstr "Veuillez les valider ou les remiser."
 
-#: git-rebase.sh:607
+#: git-rebase.sh:618
 #, sh-format
 msgid "HEAD is up to date."
 msgstr "HEAD est à jour."
 
-#: git-rebase.sh:609
+#: git-rebase.sh:620
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr "La branche courante $branch_name est à jour."
 
-#: git-rebase.sh:617
+#: git-rebase.sh:628
 #, sh-format
 msgid "HEAD is up to date, rebase forced."
 msgstr "HEAD est à jour, rebasage forcé."
 
-#: git-rebase.sh:619
+#: git-rebase.sh:630
 #, sh-format
 msgid "Current branch $branch_name is up to date, rebase forced."
 msgstr "La branche courante $branch_name est à jour, rebasage forcé."
 
-#: git-rebase.sh:631
+#: git-rebase.sh:642
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "Changements de $mb sur $onto :"
 
-#: git-rebase.sh:640
+#: git-rebase.sh:651
 msgid "First, rewinding head to replay your work on top of it..."
 msgstr ""
 "Rembobinage préalable de head pour pouvoir rejouer votre travail par-"
 "dessus..."
 
-#: git-rebase.sh:650
+#: git-rebase.sh:661
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr "$branch_name mise à jour en avance rapide sur $onto_name."
@@ -15342,88 +15780,88 @@ msgstr "Impossible de sauver l'état courant"
 msgid "Saved working directory and index state $stash_msg"
 msgstr "Copie de travail et état de l'index sauvegardés dans $stash_msg"
 
-#: git-stash.sh:341
+#: git-stash.sh:340
 msgid "Cannot remove worktree changes"
 msgstr "Impossible de supprimer les changements de la copie de travail"
 
-#: git-stash.sh:489
+#: git-stash.sh:488
 #, sh-format
 msgid "unknown option: $opt"
 msgstr "option inconnue : $opt"
 
-#: git-stash.sh:502
+#: git-stash.sh:501
 msgid "No stash entries found."
 msgstr "Aucune entrée de remisage trouvée."
 
-#: git-stash.sh:509
+#: git-stash.sh:508
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Trop de révisions spécifiées : $REV"
 
-#: git-stash.sh:524
+#: git-stash.sh:523
 #, sh-format
 msgid "$reference is not a valid reference"
 msgstr "$reference n'est pas une référence valide"
 
-#: git-stash.sh:552
+#: git-stash.sh:551
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr "'$args' n'est pas une validation de type remisage"
 
-#: git-stash.sh:563
+#: git-stash.sh:562
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr "'$args' n'est pas une référence de remisage"
 
-#: git-stash.sh:571
+#: git-stash.sh:570
 msgid "unable to refresh index"
 msgstr "impossible de rafraîchir l'index"
 
-#: git-stash.sh:575
+#: git-stash.sh:574
 msgid "Cannot apply a stash in the middle of a merge"
 msgstr "Impossible d'appliquer un remisage en cours de fusion"
 
-#: git-stash.sh:583
+#: git-stash.sh:582
 msgid "Conflicts in index. Try without --index."
 msgstr "Conflits dans l'index. Essayez sans --index."
 
-#: git-stash.sh:585
+#: git-stash.sh:584
 msgid "Could not save index tree"
 msgstr "Impossible de sauvegarder l'arbre d'index"
 
-#: git-stash.sh:594
+#: git-stash.sh:593
 msgid "Could not restore untracked files from stash entry"
 msgstr ""
 "Impossible de restaurer les fichiers non-suivis depuis l'entrée de remisage"
 
-#: git-stash.sh:619
+#: git-stash.sh:618
 msgid "Cannot unstage modified files"
 msgstr "Impossible de désindexer les fichiers modifiés"
 
-#: git-stash.sh:634
+#: git-stash.sh:633
 msgid "Index was not unstashed."
 msgstr "L'index n'a pas été sorti de remise."
 
-#: git-stash.sh:648
+#: git-stash.sh:647
 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."
 
-#: git-stash.sh:657
+#: git-stash.sh:656
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "${REV} supprimé ($s)"
 
-#: git-stash.sh:658
+#: git-stash.sh:657
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: Impossible de supprimer l'élément de stash"
 
-#: git-stash.sh:666
+#: git-stash.sh:665
 msgid "No branch name specified"
 msgstr "Aucune branche spécifiée"
 
-#: git-stash.sh:745
+#: git-stash.sh:744
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Pour les restaurer tapez \"git stash apply\")"
 
@@ -15523,73 +15961,19 @@ msgstr "Entrée dans '$displaypath'"
 msgid "Stopping at '$displaypath'; script returned non-zero status."
 msgstr "Arrêt sur '$displaypath' ; le script a retourné un état non nul."
 
-#: git-submodule.sh:433
-#, sh-format
-msgid "pathspec and --all are incompatible"
-msgstr "un spécificateur de chemin et --all sont incompatibles"
-
-#: git-submodule.sh:438
-#, sh-format
-msgid "Use '--all' if you really want to deinitialize all submodules"
-msgstr ""
-"Utilisez '--all' si vous voulez vraiment réinitialiser tous les sous-modules"
-
-#: git-submodule.sh:458
-#, sh-format
-msgid ""
-"Submodule work tree '$displaypath' contains a .git directory\n"
-"(use 'rm -rf' if you really want to remove it including all of its history)"
-msgstr ""
-"La copie de travail du sous-module '$displaypath' contient un répertoire ."
-"git\n"
-"(utilisez 'rm -rf' si vous voulez vraiment le supprimer en incluant tout son "
-"historique)"
-
-#: git-submodule.sh:466
-#, sh-format
-msgid ""
-"Submodule work tree '$displaypath' contains local modifications; use '-f' to "
-"discard them"
-msgstr ""
-"La copie de travail du sous-module '$displaypath' contient des modifications "
-"locales ; utilisez '-f' pour les annuler"
-
-#: git-submodule.sh:469
-#, sh-format
-msgid "Cleared directory '$displaypath'"
-msgstr "Répertoire '$displaypath' nettoyé"
-
-#: git-submodule.sh:470
-#, sh-format
-msgid "Could not remove submodule work tree '$displaypath'"
-msgstr ""
-"Impossible de supprimer la copie de travail du sous-module '$displaypath'"
-
-#: git-submodule.sh:473
-#, sh-format
-msgid "Could not create empty submodule directory '$displaypath'"
-msgstr "Impossible de créer le répertoire vide du sous-module '$displaypath'"
-
-#: git-submodule.sh:482
-#, sh-format
-msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
-msgstr ""
-"Le sous-module '$name' ($url) n'est pas enregistré pour le chemin "
-"'$displaypath'"
-
-#: git-submodule.sh:637
+#: git-submodule.sh:584
 #, 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:647
+#: git-submodule.sh:594
 #, 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:652
+#: git-submodule.sh:599
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
@@ -15598,12 +15982,12 @@ msgstr ""
 "Impossible de trouver la révision courante ${remote_name}/${branch} dans le "
 "chemin de sous-module '$sm_path'"
 
-#: git-submodule.sh:670
+#: git-submodule.sh:617
 #, sh-format
 msgid "Unable to fetch in submodule path '$displaypath'"
 msgstr "Impossible de rapatrier dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:676
+#: git-submodule.sh:623
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
@@ -15612,87 +15996,82 @@ msgstr ""
 "Chemin de sous-module '$displaypath' récupéré, mais il ne contenait pas "
 "$sha1. La récupération directe de ce commit a échoué."
 
-#: git-submodule.sh:683
+#: git-submodule.sh:630
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Impossible d'extraire '$sha1' dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:684
+#: git-submodule.sh:631
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr "Chemin de sous-module '$displaypath' : '$sha1' extrait"
 
-#: git-submodule.sh:688
+#: git-submodule.sh:635
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Impossible de rebaser '$sha1' dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:689
+#: git-submodule.sh:636
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr "Chemin de sous-module '$displaypath' : rebasé dans '$sha1'"
 
-#: git-submodule.sh:694
+#: git-submodule.sh:641
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Impossible de fusionner '$sha1' dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:695
+#: git-submodule.sh:642
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr "Chemin de sous-module '$displaypath' : fusionné dans '$sha1'"
 
-#: git-submodule.sh:700
+#: git-submodule.sh:647
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
 "L'exécution de '$command $sha1' a échoué dans le chemin de sous-module "
 "'$displaypath'"
 
-#: git-submodule.sh:701
+#: git-submodule.sh:648
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
 msgstr "Chemin de sous-module '$displaypath' : '$command $sha1'"
 
-#: git-submodule.sh:732
+#: git-submodule.sh:679
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr "Échec de parcours dans le chemin du sous-module '$displaypath'"
 
-#: git-submodule.sh:828
+#: git-submodule.sh:775
 msgid "The --cached option cannot be used with the --files option"
 msgstr "L'option --cached ne peut pas être utilisée avec l'option --files"
 
-#: git-submodule.sh:880
+#: git-submodule.sh:827
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr "mode $mod_dst inattendu"
 
-#: git-submodule.sh:900
+#: git-submodule.sh:847
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_src"
 msgstr "  Attention : $display_name ne contient pas la validation $sha1_src"
 
-#: git-submodule.sh:903
+#: git-submodule.sh:850
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
 msgstr "  Attention : $display_name ne contient pas la validation $sha1_dst"
 
-#: git-submodule.sh:906
+#: git-submodule.sh:853
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
 msgstr ""
 "  Attention : $display_name ne contient pas les validations $sha1_src et "
 "$sha1_dst"
 
-#: git-submodule.sh:1077
-#, sh-format
-msgid "Synchronizing submodule url for '$displaypath'"
-msgstr "Synchronisation de l'URL sous-module pour '$displaypath'"
-
 #: git-parse-remote.sh:89
 #, sh-format
 msgid "See git-${cmd}(1) for details."
@@ -15746,7 +16125,7 @@ msgstr ""
 "\n"
 "Si vous éliminez une ligne ici, LE COMMIT CORRESPONDANT SERA PERDU.\n"
 
-#: git-rebase--interactive.sh:211
+#: git-rebase--interactive.sh:213
 #, sh-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -15765,83 +16144,83 @@ msgstr ""
 "\n"
 "\tgit rebase --continue"
 
-#: git-rebase--interactive.sh:236
+#: git-rebase--interactive.sh:238
 #, sh-format
 msgid "$sha1: not a commit that can be picked"
 msgstr "$sha1 n'est pas un commit qui peut être picorer"
 
-#: git-rebase--interactive.sh:275
+#: git-rebase--interactive.sh:277
 #, sh-format
 msgid "Invalid commit name: $sha1"
 msgstr "Nom de commit invalide : $sha1"
 
-#: git-rebase--interactive.sh:317
+#: git-rebase--interactive.sh:319
 msgid "Cannot write current commit's replacement sha1"
 msgstr "Impossible de sauver le sha1 du remplaçant du commit en cours"
 
-#: git-rebase--interactive.sh:369
+#: git-rebase--interactive.sh:371
 #, sh-format
 msgid "Fast-forward to $sha1"
 msgstr "Avance rapide sur $sha1"
 
-#: git-rebase--interactive.sh:371
+#: git-rebase--interactive.sh:373
 #, sh-format
 msgid "Cannot fast-forward to $sha1"
 msgstr "Avance rapide impossible sur $sha1"
 
-#: git-rebase--interactive.sh:380
+#: git-rebase--interactive.sh:382
 #, sh-format
 msgid "Cannot move HEAD to $first_parent"
 msgstr "Impossible de déplacer HEAD sur $first_parent"
 
-#: git-rebase--interactive.sh:385
+#: git-rebase--interactive.sh:387
 #, sh-format
 msgid "Refusing to squash a merge: $sha1"
 msgstr "Refus d'écraser un commit de fusion: $sha1"
 
-#: git-rebase--interactive.sh:400
+#: git-rebase--interactive.sh:405
 #, sh-format
 msgid "Error redoing merge $sha1"
 msgstr "Erreur lors de la réapplication de la fusion $sha1"
 
-#: git-rebase--interactive.sh:408
+#: git-rebase--interactive.sh:414
 #, sh-format
 msgid "Could not pick $sha1"
 msgstr "Impossible de picorer $sha1"
 
-#: git-rebase--interactive.sh:417
+#: git-rebase--interactive.sh:423
 #, sh-format
 msgid "This is the commit message #${n}:"
 msgstr "Ceci est le ${n}ième message de validation :"
 
-#: git-rebase--interactive.sh:422
+#: git-rebase--interactive.sh:428
 #, sh-format
 msgid "The commit message #${n} will be skipped:"
 msgstr "Le message de validation ${n} sera ignoré :"
 
-#: git-rebase--interactive.sh:433
+#: git-rebase--interactive.sh:439
 #, sh-format
 msgid "This is a combination of $count commit."
 msgid_plural "This is a combination of $count commits."
 msgstr[0] "Ceci est la combinaison de $count commit."
 msgstr[1] "Ceci est la combinaison de $count commits."
 
-#: git-rebase--interactive.sh:442
+#: git-rebase--interactive.sh:448
 #, sh-format
 msgid "Cannot write $fixup_msg"
 msgstr "Impossible d'écrire $fixup_msg"
 
-#: git-rebase--interactive.sh:445
+#: git-rebase--interactive.sh:451
 msgid "This is a combination of 2 commits."
 msgstr "Ceci est la combinaison de 2 commits."
 
-#: git-rebase--interactive.sh:486 git-rebase--interactive.sh:529
-#: git-rebase--interactive.sh:532
+#: git-rebase--interactive.sh:492 git-rebase--interactive.sh:535
+#: git-rebase--interactive.sh:538
 #, sh-format
 msgid "Could not apply $sha1... $rest"
 msgstr "Impossible d'appliquer $sha1... $rest"
 
-#: git-rebase--interactive.sh:560
+#: git-rebase--interactive.sh:567
 #, sh-format
 msgid ""
 "Could not amend commit after successfully picking $sha1... $rest\n"
@@ -15858,31 +16237,31 @@ msgstr ""
 "le\n"
 "problème avant de pouvoir reformuler le message du commit."
 
-#: git-rebase--interactive.sh:575
+#: git-rebase--interactive.sh:582
 #, sh-format
 msgid "Stopped at $sha1_abbrev... $rest"
 msgstr "Arrêté à $sha1_abbrev... $rest"
 
-#: git-rebase--interactive.sh:590
+#: git-rebase--interactive.sh:597
 #, sh-format
 msgid "Cannot '$squash_style' without a previous commit"
 msgstr "'$squash_style' impossible avec le commit précédent"
 
-#: git-rebase--interactive.sh:632
+#: git-rebase--interactive.sh:639
 #, sh-format
 msgid "Executing: $rest"
 msgstr "Exécution : $rest"
 
-#: git-rebase--interactive.sh:640
+#: git-rebase--interactive.sh:647
 #, sh-format
 msgid "Execution failed: $rest"
 msgstr "L'exécution a échoué : $rest"
 
-#: git-rebase--interactive.sh:642
+#: git-rebase--interactive.sh:649
 msgid "and made changes to the index and/or the working tree"
 msgstr "et a mis à jour l'index ou la copie de travail"
 
-#: git-rebase--interactive.sh:644
+#: git-rebase--interactive.sh:651
 msgid ""
 "You can fix the problem, and then run\n"
 "\n"
@@ -15893,7 +16272,7 @@ msgstr ""
 "git rebase --continue"
 
 #. TRANSLATORS: after these lines is a command to be issued by the user
-#: git-rebase--interactive.sh:657
+#: git-rebase--interactive.sh:664
 #, sh-format
 msgid ""
 "Execution succeeded: $rest\n"
@@ -15908,29 +16287,29 @@ msgstr ""
 "\n"
 "\tgit rebase --continue"
 
-#: git-rebase--interactive.sh:668
+#: git-rebase--interactive.sh:675
 #, sh-format
 msgid "Unknown command: $command $sha1 $rest"
 msgstr "Commande inconnue : $command $sha1 $rest"
 
-#: git-rebase--interactive.sh:669
+#: git-rebase--interactive.sh:676
 msgid "Please fix this using 'git rebase --edit-todo'."
 msgstr "Veuillez corriger ceci en utilisant 'git rebase --edit-todo'."
 
-#: git-rebase--interactive.sh:704
+#: git-rebase--interactive.sh:711
 #, sh-format
 msgid "Successfully rebased and updated $head_name."
 msgstr "Rebasage et mise à jour de $head_name avec succès."
 
-#: git-rebase--interactive.sh:728
+#: git-rebase--interactive.sh:735
 msgid "could not detach HEAD"
 msgstr "Impossible de détacher HEAD"
 
-#: git-rebase--interactive.sh:763
+#: git-rebase--interactive.sh:771
 msgid "Could not remove CHERRY_PICK_HEAD"
 msgstr "Impossible de supprimer CHERRY_PICK_HEAD"
 
-#: git-rebase--interactive.sh:768
+#: git-rebase--interactive.sh:776
 #, sh-format
 msgid ""
 "You have staged changes in your working tree.\n"
@@ -15961,12 +16340,12 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: git-rebase--interactive.sh:785
+#: git-rebase--interactive.sh:793
 msgid "Error trying to find the author identity to amend commit"
 msgstr ""
 "Erreur lors de la recherche de l'identité de l'auteur pour corriger le commit"
 
-#: git-rebase--interactive.sh:790
+#: git-rebase--interactive.sh:798
 msgid ""
 "You have uncommitted changes in your working tree. Please commit them\n"
 "first and then run 'git rebase --continue' again."
@@ -15974,11 +16353,11 @@ msgstr ""
 "Vous avez des modifications non validées dans votre copie de travail.\n"
 "Veuillez les valider d'abord, puis relancer 'git rebase --continue'."
 
-#: git-rebase--interactive.sh:795 git-rebase--interactive.sh:799
+#: git-rebase--interactive.sh:803 git-rebase--interactive.sh:807
 msgid "Could not commit staged changes."
 msgstr "impossible de valider les modifications indexées."
 
-#: git-rebase--interactive.sh:827
+#: git-rebase--interactive.sh:836
 msgid ""
 "\n"
 "You are editing the todo file of an ongoing interactive rebase.\n"
@@ -15993,44 +16372,44 @@ msgstr ""
 "    git rebase --continue\n"
 "\n"
 
-#: git-rebase--interactive.sh:835 git-rebase--interactive.sh:995
+#: git-rebase--interactive.sh:844 git-rebase--interactive.sh:1008
 msgid "Could not execute editor"
 msgstr "Impossible de lancer l'éditeur"
 
-#: git-rebase--interactive.sh:848
+#: git-rebase--interactive.sh:860
 #, sh-format
 msgid "Could not checkout $switch_to"
 msgstr "Impossible d'extraire $switch_to"
 
-#: git-rebase--interactive.sh:853
+#: git-rebase--interactive.sh:865
 msgid "No HEAD?"
 msgstr "Pas de HEAD ?"
 
-#: git-rebase--interactive.sh:854
+#: git-rebase--interactive.sh:866
 #, sh-format
 msgid "Could not create temporary $state_dir"
 msgstr "Impossible de créer un répertoire temporaire $state_dir"
 
-#: git-rebase--interactive.sh:856
+#: git-rebase--interactive.sh:869
 msgid "Could not mark as interactive"
 msgstr "Impossible de marquer comme interactif"
 
-#: git-rebase--interactive.sh:866 git-rebase--interactive.sh:871
+#: git-rebase--interactive.sh:879 git-rebase--interactive.sh:884
 msgid "Could not init rewritten commits"
 msgstr "Impossible d'initialiser les commits réécrits"
 
-#: git-rebase--interactive.sh:897
+#: git-rebase--interactive.sh:910
 msgid "Could not generate todo list"
 msgstr "Impossible de générer la liste à-faire"
 
-#: git-rebase--interactive.sh:973
+#: git-rebase--interactive.sh:986
 #, sh-format
 msgid "Rebase $shortrevisions onto $shortonto ($todocount command)"
 msgid_plural "Rebase $shortrevisions onto $shortonto ($todocount commands)"
 msgstr[0] "Rebasage de $shortrevisions sur $shortonto ($todocount commande)"
 msgstr[1] "Rebasage de $shortrevisions sur $shortonto ($todocount commandes)"
 
-#: git-rebase--interactive.sh:978
+#: git-rebase--interactive.sh:991
 msgid ""
 "\n"
 "However, if you remove everything, the rebase will be aborted.\n"
@@ -16040,7 +16419,7 @@ msgstr ""
 "Cependant, si vous effacez tout, le rebasage sera annulé.\n"
 "\n"
 
-#: git-rebase--interactive.sh:985
+#: git-rebase--interactive.sh:998
 msgid "Note that empty commits are commented out"
 msgstr "Veuillez noter que les commits vides sont en commentaire"
 
@@ -16186,7 +16565,7 @@ msgstr "Ajouter un fichier non-suivi"
 msgid "No untracked files.\n"
 msgstr "Aucun Fichier non suivi.\n"
 
-#: git-add--interactive.perl:985
+#: git-add--interactive.perl:1026
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
@@ -16194,7 +16573,7 @@ msgstr ""
 "Si le patch s'applique proprement, la section éditée sera\n"
 "immédiatement marquée comme indexée."
 
-#: git-add--interactive.perl:988
+#: git-add--interactive.perl:1029
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
@@ -16202,7 +16581,7 @@ msgstr ""
 "Si le patch s'applique proprement, la section éditée sera\n"
 "immédiatement marquée comme remisée."
 
-#: git-add--interactive.perl:991
+#: git-add--interactive.perl:1032
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
@@ -16210,7 +16589,7 @@ msgstr ""
 "Si le patch s'applique proprement, la section éditée sera\n"
 "immédiatement marquée comme desindexée."
 
-#: git-add--interactive.perl:994 git-add--interactive.perl:1003
+#: git-add--interactive.perl:1035 git-add--interactive.perl:1044
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for applying."
@@ -16218,7 +16597,7 @@ msgstr ""
 "Si le patch s'applique proprement, la section éditée sera\n"
 "immédiatement marquée comme appliquée."
 
-#: git-add--interactive.perl:997 git-add--interactive.perl:1000
+#: git-add--interactive.perl:1038 git-add--interactive.perl:1041
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for discarding."
@@ -16226,17 +16605,17 @@ msgstr ""
 "Si le patch s'applique proprement, la section éditée sera\n"
 "immédiatement marquée comme éliminée."
 
-#: git-add--interactive.perl:1013
+#: git-add--interactive.perl