Merge branch 'rj/prune-packed-excess-args'
[gitweb.git] / po / fr.po
index a2008b65c76d405f73966873bca6404d199f66d7..0e084f5a49009ad1cb9b3eb509b33a1baa18f2ef 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-12-02 10:55+0800\n"
-"PO-Revision-Date: 2018-12-02 10:24+0100\n"
+"POT-Creation-Date: 2019-02-15 10:09+0800\n"
+"PO-Revision-Date: 2019-02-15 22:18+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"
@@ -84,37 +84,37 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n<=1 ?0 : 1;\n"
 
-#: advice.c:99
+#: advice.c:101
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr "%sastuce: %.*s%s\n"
 
-#: advice.c:152
+#: advice.c:154
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr "Impossible de picorer car vous avez des fichiers non fusionnés."
 
-#: advice.c:154
+#: advice.c:156
 msgid "Committing is not possible because you have unmerged files."
 msgstr "Impossible de valider car vous avez des fichiers non fusionnés."
 
-#: advice.c:156
+#: advice.c:158
 msgid "Merging is not possible because you have unmerged files."
 msgstr "Impossible de fusionner car vous avez des fichiers non fusionnés."
 
-#: advice.c:158
+#: advice.c:160
 msgid "Pulling is not possible because you have unmerged files."
 msgstr "Impossible de tirer car vous avez des fichiers non fusionnés."
 
-#: advice.c:160
+#: advice.c:162
 msgid "Reverting is not possible because you have unmerged files."
 msgstr "Impossible d'annuler car vous avez des fichiers non fusionnés."
 
-#: advice.c:162
+#: advice.c:164
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr "%s n'est pas possible car vous avez des fichiers non fusionnés."
 
-#: advice.c:170
+#: advice.c:172
 msgid ""
 "Fix them up in the work tree, and then use 'git add/rm <file>'\n"
 "as appropriate to mark resolution and make a commit."
@@ -122,23 +122,23 @@ msgstr ""
 "Corrigez-les puis lancez 'git add/rm <fichier>'\n"
 "si nécessaire pour marquer la résolution et valider."
 
-#: advice.c:178
+#: advice.c:180
 msgid "Exiting because of an unresolved conflict."
 msgstr "Abandon à cause de conflit non résolu."
 
-#: advice.c:183 builtin/merge.c:1289
+#: advice.c:185 builtin/merge.c:1290
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe)."
 
-#: advice.c:185
+#: advice.c:187
 msgid "Please, commit your changes before merging."
 msgstr "Veuillez valider vos changements avant de fusionner."
 
-#: advice.c:186
+#: advice.c:188
 msgid "Exiting because of unfinished merge."
 msgstr "Abandon à cause d'une fusion non terminée."
 
-#: advice.c:192
+#: advice.c:194
 #, c-format
 msgid ""
 "Note: checking out '%s'.\n"
@@ -170,6 +170,14 @@ msgstr ""
 "  git checkout -b <nom-de-la-nouvelle-branche>\n"
 "\n"
 
+#: alias.c:50
+msgid "cmdline ends with \\"
+msgstr "cmdline se termine par \\"
+
+#: alias.c:51
+msgid "unclosed quote"
+msgstr "citation non fermée"
+
 #: apply.c:59
 #, c-format
 msgid "unrecognized whitespace option '%s'"
@@ -200,69 +208,69 @@ msgstr "--index hors d'un dépôt"
 msgid "--cached outside a repository"
 msgstr "--cached hors d'un dépôt"
 
-#: apply.c:826
+#: apply.c:825
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "Impossible de préparer la regexp d'horodatage %s"
 
-#: apply.c:835
+#: apply.c:834
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec a retourné %d pour l'entrée : %s"
 
-#: apply.c:909
+#: apply.c:908
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "nom de fichier du patch introuvable à la ligne %d"
 
-#: apply.c:947
+#: apply.c:946
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - /dev/null attendu, %s trouvé à la "
 "ligne %d"
 
-#: apply.c:953
+#: apply.c:952
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - nouveau nom de fichier inconsistant "
 "à la ligne %d"
 
-#: apply.c:954
+#: apply.c:953
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - ancien nom de fichier inconsistant "
 "à la ligne %d"
 
-#: apply.c:959
+#: apply.c:958
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr ""
 "git apply : mauvais format de git-diff - /dev/null attendu à la ligne %d"
 
-#: apply.c:988
+#: apply.c:987
 #, c-format
 msgid "invalid mode on line %d: %s"
 msgstr "mode invalide dans la ligne %d : %s"
 
-#: apply.c:1307
+#: apply.c:1306
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr "lignes d'entête inconsistantes %d et %d"
 
-#: apply.c:1479
+#: apply.c:1478
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "recomptage : ligne inattendue : %.*s"
 
-#: apply.c:1548
+#: apply.c:1547
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "fragment de patch sans en-tête à la ligne %d : %.*s"
 
-#: apply.c:1568
+#: apply.c:1567
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -277,83 +285,83 @@ msgstr[1] ""
 "information de nom de fichier manquante dans l'en-tête de git diff lors de "
 "la suppression de %d composants de préfixe de chemin (ligne %d)"
 
-#: apply.c:1581
+#: apply.c:1580
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr ""
 "information de nom de fichier manquante dans l'en-tête de git diff (ligne %d)"
 
-#: apply.c:1769
+#: apply.c:1768
 msgid "new file depends on old contents"
 msgstr "le nouveau fichier dépend de contenus anciens"
 
-#: apply.c:1771
+#: apply.c:1770
 msgid "deleted file still has contents"
 msgstr "le fichier supprimé a encore du contenu"
 
-#: apply.c:1805
+#: apply.c:1804
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "patch corrompu à la ligne %d"
 
-#: apply.c:1842
+#: apply.c:1841
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "le nouveau fichier %s dépend de contenus anciens"
 
-#: apply.c:1844
+#: apply.c:1843
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "le fichier supprimé %s a encore du contenu"
 
-#: apply.c:1847
+#: apply.c:1846
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** attention : le fichier %s devient vide mais n'est pas supprimé"
 
-#: apply.c:1994
+#: apply.c:1993
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "patch binaire corrompu à la ligne %d : %.*s"
 
-#: apply.c:2031
+#: apply.c:2030
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "patch binaire non reconnu à la ligne %d"
 
-#: apply.c:2193
+#: apply.c:2192
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "patch totalement incompréhensible à la ligne %d"
 
-#: apply.c:2279
+#: apply.c:2278
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "lecture du lien symbolique %s impossible"
 
-#: apply.c:2283
+#: apply.c:2282
 #, c-format
 msgid "unable to open or read %s"
 msgstr "ouverture ou lecture de %s impossible"
 
-#: apply.c:2942
+#: apply.c:2941
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "début de ligne invalide : '%c'"
 
-#: apply.c:3063
+#: apply.c:3062
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] "La section n°%d a réussi à la ligne %d (offset %d ligne)."
 msgstr[1] "La section n°%d a réussi à la ligne %d (offset %d lignes)."
 
-#: apply.c:3075
+#: apply.c:3074
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "Contexte réduit à (%ld/%ld) pour appliquer le fragment à la ligne %d"
 
-#: apply.c:3081
+#: apply.c:3080
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -362,54 +370,54 @@ msgstr ""
 "pendant la recherche de :\n"
 "%.*s"
 
-#: apply.c:3103
+#: apply.c:3102
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "données de patch binaire manquantes pour '%s'"
 
-#: apply.c:3111
+#: apply.c:3110
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 "impossible d'appliquer l'inverse d'un patch binaire à '%s' sans la section "
 "inverse"
 
-#: apply.c:3158
+#: apply.c:3157
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 "impossible d'appliquer un patch binaire à '%s' sans la ligne complète d'index"
 
-#: apply.c:3168
+#: apply.c:3167
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
 "le patch s'applique à '%s' (%s), ce qui ne correspond pas au contenu actuel."
 
-#: apply.c:3176
+#: apply.c:3175
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
 msgstr "le patch s'applique à un '%s' vide mais ce n'est pas vide"
 
-#: apply.c:3194
+#: apply.c:3193
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "l'image postérieure nécessaire %s pour '%s' ne peut pas être lue"
 
-#: apply.c:3207
+#: apply.c:3206
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "le patch binaire ne s'applique par correctement à '%s'"
 
-#: apply.c:3213
+#: apply.c:3212
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 "le patch binaire sur '%s' crée un résultat incorrect (%s attendu, mais %s "
 "trouvé)"
 
-#: apply.c:3234
+#: apply.c:3233
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "le patch a échoué : %s:%ld"
@@ -489,7 +497,8 @@ msgstr "%s : type erroné"
 msgid "%s has type %o, expected %o"
 msgstr "%s est de type %o, mais %o attendu"
 
-#: apply.c:3881 apply.c:3883
+#: apply.c:3881 apply.c:3883 read-cache.c:820 read-cache.c:846
+#: read-cache.c:1299
 #, c-format
 msgid "invalid path '%s'"
 msgstr "chemin invalide '%s'"
@@ -546,7 +555,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:4113 builtin/checkout.c:244 builtin/reset.c:142
+#: apply.c:4113 builtin/checkout.c:248 builtin/reset.c:143
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "échec de make_cache_entry pour le chemin '%s'"
@@ -624,7 +633,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:4564 builtin/fetch.c:843 builtin/fetch.c:1122
+#: apply.c:4564 builtin/fetch.c:837 builtin/fetch.c:1118
 #, c-format
 msgid "cannot open %s"
 msgstr "impossible d'ouvrir %s"
@@ -648,177 +657,177 @@ msgstr "Chemin '%s' non traité."
 msgid "unrecognized input"
 msgstr "entrée non reconnue"
 
-#: apply.c:4719
+#: apply.c:4720
 msgid "unable to read index file"
 msgstr "lecture du fichier d'index impossible"
 
-#: apply.c:4874
+#: apply.c:4875
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "ouverture impossible du patch '%s' :%s"
 
-#: apply.c:4901
+#: apply.c:4902
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "%d erreur d'espace ignorée"
 msgstr[1] "%d erreurs d'espace ignorées"
 
-#: apply.c:4907 apply.c:4922
+#: apply.c:4908 apply.c:4923
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] "%d ligne a ajouté des erreurs d'espace."
 msgstr[1] "%d lignes ont ajouté des erreurs d'espace."
 
-#: apply.c:4915
+#: apply.c:4916
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] "%d ligne ajoutée après correction des erreurs d'espace."
 msgstr[1] "%d lignes ajoutées après correction des erreurs d'espace."
 
-#: apply.c:4931 builtin/add.c:538 builtin/mv.c:300 builtin/rm.c:389
+#: apply.c:4932 builtin/add.c:539 builtin/mv.c:301 builtin/rm.c:390
 msgid "Unable to write new index file"
 msgstr "Impossible d'écrire le nouveau fichier d'index"
 
-#: apply.c:4958 apply.c:4961 builtin/am.c:2209 builtin/am.c:2212
-#: builtin/clone.c:121 builtin/fetch.c:118 builtin/merge.c:262
-#: builtin/pull.c:199 builtin/submodule--helper.c:406
-#: builtin/submodule--helper.c:1362 builtin/submodule--helper.c:1365
-#: builtin/submodule--helper.c:1846 builtin/submodule--helper.c:1849
-#: builtin/submodule--helper.c:2088 git-add--interactive.perl:197
+#: apply.c:4959 apply.c:4962 builtin/am.c:2203 builtin/am.c:2206
+#: builtin/clone.c:122 builtin/fetch.c:118 builtin/merge.c:263
+#: builtin/pull.c:200 builtin/submodule--helper.c:407
+#: builtin/submodule--helper.c:1366 builtin/submodule--helper.c:1369
+#: builtin/submodule--helper.c:1850 builtin/submodule--helper.c:1853
+#: builtin/submodule--helper.c:2092 git-add--interactive.perl:197
 msgid "path"
 msgstr "chemin"
 
-#: apply.c:4959
+#: apply.c:4960
 msgid "don't apply changes matching the given path"
 msgstr "ne pas appliquer les modifications qui correspondent au chemin donné"
 
-#: apply.c:4962
+#: apply.c:4963
 msgid "apply changes matching the given path"
 msgstr "appliquer les modifications qui correspondent au chemin donné"
 
-#: apply.c:4964 builtin/am.c:2218
+#: apply.c:4965 builtin/am.c:2212
 msgid "num"
 msgstr "num"
 
-#: apply.c:4965
+#: apply.c:4966
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "supprimer <num> barres obliques des chemins traditionnels de diff"
 
-#: apply.c:4968
+#: apply.c:4969
 msgid "ignore additions made by the patch"
 msgstr "ignorer les additions réalisées par le patch"
 
-#: apply.c:4970
+#: apply.c:4971
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr "au lieu d'appliquer le patch, afficher le diffstat de l'entrée"
 
-#: apply.c:4974
+#: apply.c:4975
 msgid "show number of added and deleted lines in decimal notation"
 msgstr ""
 "afficher le nombre de lignes ajoutées et supprimées en notation décimale"
 
-#: apply.c:4976
+#: apply.c:4977
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "au lieu d'appliquer le patch, afficher un résumé de l'entrée"
 
-#: apply.c:4978
+#: apply.c:4979
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "au lieu d'appliquer le patch, voir si le patch est applicable"
 
-#: apply.c:4980
+#: apply.c:4981
 msgid "make sure the patch is applicable to the current index"
 msgstr "s'assurer que le patch est applicable sur l'index actuel"
 
-#: apply.c:4982
+#: apply.c:4983
 msgid "mark new files with `git add --intent-to-add`"
 msgstr "marquer les nouveaux fichiers `git add --intent-to-add`"
 
-#: apply.c:4984
+#: apply.c:4985
 msgid "apply a patch without touching the working tree"
 msgstr "appliquer les patch sans toucher à la copie de travail"
 
-#: apply.c:4986
+#: apply.c:4987
 msgid "accept a patch that touches outside the working area"
 msgstr "accepter un patch qui touche hors de la copie de travail"
 
-#: apply.c:4989
+#: apply.c:4990
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "appliquer aussi le patch (à utiliser avec ---stat/--summary/--check)"
 
-#: apply.c:4991
+#: apply.c:4992
 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:4993
+#: apply.c:4994
 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:4996 builtin/checkout-index.c:170 builtin/ls-files.c:523
+#: apply.c:4997 builtin/checkout-index.c:173 builtin/ls-files.c:524
 msgid "paths are separated with NUL character"
 msgstr "les chemins sont séparés par un caractère NUL"
 
-#: apply.c:4998
+#: apply.c:4999
 msgid "ensure at least <n> lines of context match"
 msgstr "s'assurer d'au moins <n> lignes de correspondance de contexte"
 
-#: apply.c:4999 builtin/am.c:2197 builtin/interpret-trailers.c:97
+#: apply.c:5000 builtin/am.c:2191 builtin/interpret-trailers.c:97
 #: builtin/interpret-trailers.c:99 builtin/interpret-trailers.c:101
-#: builtin/pack-objects.c:3312 builtin/rebase.c:857
+#: builtin/pack-objects.c:3314 builtin/rebase.c:1065
 msgid "action"
 msgstr "action"
 
-#: apply.c:5000
+#: apply.c:5001
 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:5003 apply.c:5006
+#: apply.c:5004 apply.c:5007
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignorer des modifications d'espace lors de la recherche de contexte"
 
-#: apply.c:5009
+#: apply.c:5010
 msgid "apply the patch in reverse"
 msgstr "appliquer le patch en sens inverse"
 
-#: apply.c:5011
+#: apply.c:5012
 msgid "don't expect at least one line of context"
 msgstr "ne pas s'attendre à au moins une ligne de contexte"
 
-#: apply.c:5013
+#: apply.c:5014
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "laisser les sections rejetées dans les fichiers *.rej correspondants"
 
-#: apply.c:5015
+#: apply.c:5016
 msgid "allow overlapping hunks"
 msgstr "accepter les recouvrements de sections"
 
-#: apply.c:5016 builtin/add.c:290 builtin/check-ignore.c:21
-#: builtin/commit.c:1309 builtin/count-objects.c:98 builtin/fsck.c:698
-#: builtin/log.c:2023 builtin/mv.c:122 builtin/read-tree.c:127
-#: builtin/rebase--interactive.c:157
+#: apply.c:5017 builtin/add.c:291 builtin/check-ignore.c:22
+#: builtin/commit.c:1312 builtin/count-objects.c:98 builtin/fsck.c:724
+#: builtin/log.c:2037 builtin/mv.c:123 builtin/read-tree.c:128
+#: builtin/rebase--interactive.c:159
 msgid "be verbose"
 msgstr "mode verbeux"
 
-#: apply.c:5018
+#: apply.c:5019
 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:5021
+#: apply.c:5022
 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:5023 builtin/am.c:2206
+#: apply.c:5024 builtin/am.c:2200
 msgid "root"
 msgstr "racine"
 
-#: apply.c:5024
+#: apply.c:5025
 msgid "prepend <root> to all filenames"
 msgstr "préfixer tous les noms de fichier avec <root>"
 
@@ -841,99 +850,118 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <dépôt> [--exec <commande>] --list"
 
-#: archive.c:370 builtin/add.c:176 builtin/add.c:514 builtin/rm.c:298
+#: archive.c:372 builtin/add.c:177 builtin/add.c:515 builtin/rm.c:299
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "le chemin '%s' ne correspond à aucun fichier"
 
-#: archive.c:453
+#: archive.c:396
+#, c-format
+msgid "no such ref: %.*s"
+msgstr "référence inexistante : %.*s"
+
+#: archive.c:401
+#, c-format
+msgid "not a valid object name: %s"
+msgstr "nom d'objet invalide : %s"
+
+#: archive.c:414
+#, c-format
+msgid "not a tree object: %s"
+msgstr "objet arbre invalide : %s"
+
+#: archive.c:424
+msgid "current working directory is untracked"
+msgstr "l'arbre de travail actuel est non-suivi"
+
+#: archive.c:455
 msgid "fmt"
 msgstr "fmt"
 
-#: archive.c:453
+#: archive.c:455
 msgid "archive format"
 msgstr "format d'archive"
 
-#: archive.c:454 builtin/log.c:1536
+#: archive.c:456 builtin/log.c:1549
 msgid "prefix"
 msgstr "préfixe"
 
-#: archive.c:455
+#: archive.c:457
 msgid "prepend prefix to each pathname in the archive"
 msgstr "préfixer chaque chemin de fichier dans l'archive"
 
-#: archive.c:456 builtin/blame.c:820 builtin/blame.c:821 builtin/config.c:129
-#: builtin/fast-export.c:1013 builtin/fast-export.c:1015 builtin/grep.c:884
-#: builtin/hash-object.c:104 builtin/ls-files.c:559 builtin/ls-files.c:562
-#: builtin/notes.c:412 builtin/notes.c:575 builtin/read-tree.c:122
+#: archive.c:458 builtin/blame.c:820 builtin/blame.c:821 builtin/config.c:129
+#: builtin/fast-export.c:1091 builtin/fast-export.c:1093 builtin/grep.c:895
+#: builtin/hash-object.c:105 builtin/ls-files.c:560 builtin/ls-files.c:563
+#: builtin/notes.c:412 builtin/notes.c:578 builtin/read-tree.c:123
 #: parse-options.h:162
 msgid "file"
 msgstr "fichier"
 
-#: archive.c:457 builtin/archive.c:89
+#: archive.c:459 builtin/archive.c:90
 msgid "write the archive to this file"
 msgstr "écrire l'archive dans ce fichier"
 
-#: archive.c:459
+#: archive.c:461
 msgid "read .gitattributes in working directory"
 msgstr "lire .gitattributes dans le répertoire de travail"
 
-#: archive.c:460
+#: archive.c:462
 msgid "report archived files on stderr"
 msgstr "afficher les fichiers archivés sur stderr"
 
-#: archive.c:461
+#: archive.c:463
 msgid "store only"
 msgstr "stockage seulement"
 
-#: archive.c:462
+#: archive.c:464
 msgid "compress faster"
 msgstr "compression rapide"
 
-#: archive.c:470
+#: archive.c:472
 msgid "compress better"
 msgstr "compression efficace"
 
-#: archive.c:473
+#: archive.c:475
 msgid "list supported archive formats"
 msgstr "afficher les formats d'archive supportés"
 
-#: archive.c:475 builtin/archive.c:90 builtin/clone.c:111 builtin/clone.c:114
-#: builtin/submodule--helper.c:1374 builtin/submodule--helper.c:1855
+#: archive.c:477 builtin/archive.c:91 builtin/clone.c:112 builtin/clone.c:115
+#: builtin/submodule--helper.c:1378 builtin/submodule--helper.c:1859
 msgid "repo"
 msgstr "dépôt"
 
-#: archive.c:476 builtin/archive.c:91
+#: archive.c:478 builtin/archive.c:92
 msgid "retrieve the archive from remote repository <repo>"
 msgstr "récupérer l'archive depuis le dépôt distant <dépôt>"
 
-#: archive.c:477 builtin/archive.c:92 builtin/difftool.c:714
-#: builtin/notes.c:496
+#: archive.c:479 builtin/archive.c:93 builtin/difftool.c:715
+#: builtin/notes.c:498
 msgid "command"
 msgstr "commande"
 
-#: archive.c:478 builtin/archive.c:93
+#: archive.c:480 builtin/archive.c:94
 msgid "path to the remote git-upload-archive command"
 msgstr "chemin vers la commande distante git-upload-archive"
 
-#: archive.c:485
+#: archive.c:487
 msgid "Unexpected option --remote"
 msgstr "Option --remote inattendue"
 
-#: archive.c:487
+#: archive.c:489
 msgid "Option --exec can only be used together with --remote"
 msgstr "L'option --exec ne peut être utilisée qu'en complément de --remote"
 
-#: archive.c:489
+#: archive.c:491
 msgid "Unexpected option --output"
 msgstr "Option --output inattendue"
 
-#: archive.c:511
+#: archive.c:513
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr "Format d'archive inconnu '%s'"
 
-#: archive.c:518
+#: archive.c:520
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr "Argument non supporté pour le format '%s' : -%d"
@@ -977,7 +1005,7 @@ msgstr "le chemin n'est pas codé en UTF-8 valide : %s"
 msgid "path too long (%d chars, SHA1: %s): %s"
 msgstr "le chemin est trop long (%d caractères, SHA1 : %s) : %s"
 
-#: archive-zip.c:474 builtin/pack-objects.c:224 builtin/pack-objects.c:227
+#: archive-zip.c:474 builtin/pack-objects.c:225 builtin/pack-objects.c:228
 #, c-format
 msgid "deflate error (%d)"
 msgstr "erreur de compression (%d)"
@@ -987,12 +1015,17 @@ msgstr "erreur de compression (%d)"
 msgid "timestamp too large for this system: %<PRIuMAX>"
 msgstr "l'horodatage est trop grand pour ce système : %<PRIuMAX>"
 
-#: attr.c:212
+#: attr.c:211
 #, c-format
 msgid "%.*s is not a valid attribute name"
 msgstr "%.*s n'est pas un nom valide d'attribut"
 
-#: attr.c:409
+#: attr.c:368
+#, c-format
+msgid "%s not allowed: %s:%d"
+msgstr "%s non permis : %s : %d"
+
+#: attr.c:408
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -1005,17 +1038,17 @@ msgstr ""
 msgid "Badly quoted content in file '%s': %s"
 msgstr "Contenu mal cité dans le fichier '%s' : %s"
 
-#: bisect.c:676
+#: bisect.c:678
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr "Impossible de pousser la bissection plus loin !\n"
 
-#: bisect.c:730
+#: bisect.c:733
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr "%s n'est pas un nom de commit valide"
 
-#: bisect.c:754
+#: bisect.c:758
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -1024,7 +1057,7 @@ msgstr ""
 "La base de fusion %s est mauvaise.\n"
 "Cela signifie que le bogue été corrigé entre %s et [%s].\n"
 
-#: bisect.c:759
+#: bisect.c:763
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -1033,7 +1066,7 @@ msgstr ""
 "La base de fusion %s est nouvelle.\n"
 "La propriété a changé entre %s et [%s].\n"
 
-#: bisect.c:764
+#: bisect.c:768
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -1042,7 +1075,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:772
+#: bisect.c:776
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -1053,7 +1086,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:785
+#: bisect.c:789
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -1065,36 +1098,36 @@ msgstr ""
 "et %s.\n"
 "On continue tout de même."
 
-#: bisect.c:818
+#: bisect.c:822
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "Bissection : une base de fusion doit être testée\n"
 
-#: bisect.c:858
+#: bisect.c:865
 #, c-format
 msgid "a %s revision is needed"
 msgstr "une révision %s est nécessaire"
 
-#: bisect.c:877 builtin/notes.c:177 builtin/tag.c:237
+#: bisect.c:884 builtin/notes.c:177 builtin/tag.c:237
 #, c-format
 msgid "could not create file '%s'"
 msgstr "impossible de créer le fichier '%s'"
 
-#: bisect.c:928 builtin/merge.c:138
+#: bisect.c:937 builtin/merge.c:139
 #, c-format
 msgid "could not read file '%s'"
 msgstr "impossible de lire le fichier '%s'"
 
-#: bisect.c:958
+#: bisect.c:967
 msgid "reading bisect refs failed"
 msgstr "impossible de lire les références de bissection"
 
-#: bisect.c:977
+#: bisect.c:986
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s était à la fois %s et %s\n"
 
-#: bisect.c:985
+#: bisect.c:994
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -1103,7 +1136,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:1004
+#: bisect.c:1013
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -1113,48 +1146,48 @@ msgstr[1] "(à peu près %d étapes)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1010
+#: bisect.c:1019
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
 msgstr[0] "Bissection : %d révision à tester après ceci %s\n"
 msgstr[1] "Bissection : %d révisions à tester après ceci %s\n"
 
-#: blame.c:1787
+#: blame.c:1792
 msgid "--contents and --reverse do not blend well."
 msgstr "--contents et --reverse ne font pas bon ménage."
 
-#: blame.c:1801
+#: blame.c:1806
 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:1822
+#: blame.c:1827
 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:1831 bundle.c:162 ref-filter.c:2046 sequencer.c:1963
-#: sequencer.c:4002 builtin/commit.c:1001 builtin/log.c:377 builtin/log.c:932
-#: builtin/log.c:1407 builtin/log.c:1783 builtin/log.c:2072 builtin/merge.c:406
+#: blame.c:1836 bundle.c:164 ref-filter.c:2071 remote.c:1948 sequencer.c:1993
+#: sequencer.c:4064 builtin/commit.c:1004 builtin/log.c:378 builtin/log.c:936
+#: builtin/log.c:1420 builtin/log.c:1796 builtin/log.c:2086 builtin/merge.c:407
 #: builtin/pack-objects.c:3137 builtin/pack-objects.c:3152
 #: builtin/shortlog.c:192
 msgid "revision walk setup failed"
 msgstr "échec de la préparation du parcours des révisions"
 
-#: blame.c:1849
+#: blame.c:1854
 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:1860
+#: blame.c:1865
 #, c-format
 msgid "no such path %s in %s"
 msgstr "pas de chemin %s dans %s"
 
-#: blame.c:1871
+#: blame.c:1876
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "impossible de lire le blob %s  pour le chemin %s"
@@ -1282,27 +1315,27 @@ msgstr ""
 "sa jumelle distante, vous pouvez utiliser \"git push -u\"\n"
 "pour paramétrer le suivi distant en même temps que vous poussez."
 
-#: branch.c:279
+#: branch.c:280
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr "Nom d'objet invalide : '%s'."
 
-#: branch.c:299
+#: branch.c:300
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr "Nom d'objet ambigu : '%s'."
 
-#: branch.c:304
+#: branch.c:305
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr "Point d'embranchement invalide : '%s'."
 
-#: branch.c:358
+#: branch.c:359
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "'%s' est déjà extrait dans '%s'"
 
-#: branch.c:381
+#: branch.c:382
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr "la HEAD de la copie de travail %s n'est pas mise à jour"
@@ -1317,70 +1350,70 @@ 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:90 rerere.c:480 rerere.c:690 sequencer.c:2182 sequencer.c:2722
-#: builtin/commit.c:774
+#: bundle.c:90 rerere.c:480 rerere.c:690 sequencer.c:2215 sequencer.c:2763
+#: builtin/commit.c:776
 #, c-format
 msgid "could not open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: bundle.c:141
+#: bundle.c:143
 msgid "Repository lacks these prerequisite commits:"
 msgstr "Le dépôt ne dispose pas des commits prérequis suivants :"
 
-#: bundle.c:192
+#: bundle.c:194
 #, 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:199
+#: bundle.c:201
 msgid "The bundle records a complete history."
 msgstr "Le colis enregistre l'historique complet."
 
-#: bundle.c:201
+#: bundle.c:203
 #, 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:267
+#: bundle.c:269
 msgid "unable to dup bundle descriptor"
 msgstr "impossible de dupliquer le descripteur de liasse"
 
-#: bundle.c:274
+#: bundle.c:276
 msgid "Could not spawn pack-objects"
 msgstr "Impossible de créer des objets groupés"
 
-#: bundle.c:285
+#: bundle.c:287
 msgid "pack-objects died"
 msgstr "les objets groupés ont disparu"
 
-#: bundle.c:327
+#: bundle.c:329
 msgid "rev-list died"
 msgstr "rev-list a disparu"
 
-#: bundle.c:376
+#: bundle.c:378
 #, 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:456 builtin/log.c:192 builtin/log.c:1688 builtin/shortlog.c:304
+#: bundle.c:457 builtin/log.c:193 builtin/log.c:1701 builtin/shortlog.c:306
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "argument non reconnu : %s"
 
-#: bundle.c:464
+#: bundle.c:465
 msgid "Refusing to create empty bundle."
 msgstr "Refus de créer un colis vide."
 
-#: bundle.c:474
+#: bundle.c:475
 #, c-format
 msgid "cannot create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: bundle.c:498
+#: bundle.c:500
 msgid "index-pack died"
 msgstr "l'index de groupe a disparu"
 
@@ -1389,8 +1422,8 @@ msgstr "l'index de groupe a disparu"
 msgid "invalid color value: %.*s"
 msgstr "Valeur invalide de couleur : %.*s"
 
-#: commit.c:50 sequencer.c:2528 builtin/am.c:370 builtin/am.c:414
-#: builtin/am.c:1390 builtin/am.c:2025 builtin/replace.c:376
+#: commit.c:50 sequencer.c:2567 builtin/am.c:355 builtin/am.c:399
+#: builtin/am.c:1375 builtin/am.c:2019 builtin/replace.c:376
 #: builtin/replace.c:448
 #, c-format
 msgid "could not parse %s"
@@ -1421,27 +1454,27 @@ msgstr ""
 "Supprimez ce message en lançant\n"
 "\"git config advice.graftFileDeprecated false\""
 
-#: commit.c:1115
+#: commit.c:1122
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr "La validation %s a une signature GPG non fiable, prétendument par %s."
 
-#: commit.c:1118
+#: commit.c:1125
 #, c-format
 msgid "Commit %s has a bad GPG signature allegedly by %s."
 msgstr "La validation %s a une mauvaise signature GPG prétendument par %s."
 
-#: commit.c:1121
+#: commit.c:1128
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "La validation %s n'a pas de signature GPG."
 
-#: commit.c:1124
+#: commit.c:1131
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr "La validation %s a une signature GPG correcte par %s\n"
 
-#: commit.c:1378
+#: commit.c:1385
 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"
@@ -1453,93 +1486,137 @@ msgstr ""
 "variable de configuration i18n.commitencoding à l'encodage utilisé par votre "
 "projet.\n"
 
-#: commit-graph.c:108
+#: commit-graph.c:101
 #, c-format
 msgid "graph file %s is too small"
 msgstr "le fichier de graphe %s est trop petit"
 
-#: commit-graph.c:115
+#: commit-graph.c:136
 #, c-format
 msgid "graph signature %X does not match signature %X"
 msgstr "la signature de graphe %X ne correspond pas à la signature %X"
 
-#: commit-graph.c:122
+#: commit-graph.c:143
 #, c-format
 msgid "graph version %X does not match version %X"
 msgstr "la version %X du graphe ne correspond pas à la version %X"
 
-#: commit-graph.c:129
+#: commit-graph.c:150
 #, c-format
 msgid "hash version %X does not match version %X"
 msgstr "la version %X du condensé ne correspond pas à la version %X"
 
-#: commit-graph.c:153
+#: commit-graph.c:173
+msgid "chunk lookup table entry missing; graph file may be incomplete"
+msgstr ""
+"entrée de table de consultation de morceaux manquante ; le fichier de graphe "
+"est peut être incomplet"
+
+#: commit-graph.c:184
 #, c-format
 msgid "improper chunk offset %08x%08x"
 msgstr "décalage de bloc %08x%08x inadéquat"
 
-#: commit-graph.c:189
+#: commit-graph.c:221
 #, c-format
 msgid "chunk id %08x appears multiple times"
 msgstr "l'id de bloc %08x apparaît des multiples fois"
 
-#: commit-graph.c:308
+#: commit-graph.c:334
 #, c-format
 msgid "could not find commit %s"
 msgstr "impossible de trouver le commit %s"
 
-#: commit-graph.c:617 builtin/pack-objects.c:2652
+#: commit-graph.c:671 builtin/pack-objects.c:2646
 #, c-format
 msgid "unable to get type of object %s"
 msgstr "impossible d'obtenir le type de l'objet %s"
 
-#: commit-graph.c:651
-msgid "Annotating commits in commit graph"
-msgstr "Annotation des commits dans un graphe de commit"
+#: commit-graph.c:704
+msgid "Loading known commits in commit graph"
+msgstr "Lecture des commits connus dans un graphe de commit"
+
+#: commit-graph.c:720
+msgid "Expanding reachable commits in commit graph"
+msgstr "Expansion des commits joignables dans un graphe de commit"
 
-#: commit-graph.c:691
+#: commit-graph.c:732
+msgid "Clearing commit marks in commit graph"
+msgstr "Suppression les marques de commit dans le graphe de commits"
+
+#: commit-graph.c:752
 msgid "Computing commit graph generation numbers"
 msgstr "Calcul des chiffres de génération du graphe de commits"
 
-#: commit-graph.c:803 commit-graph.c:826 commit-graph.c:852
-msgid "Finding commits for commit graph"
-msgstr "Recherche de commits pour un graphe de commits"
+#: commit-graph.c:869
+#, c-format
+msgid "Finding commits for commit graph in %d pack"
+msgid_plural "Finding commits for commit graph in %d packs"
+msgstr[0] "Recherche de commits pour un graphe de commits dans %d paquet"
+msgstr[1] "Recherche de commits pour un graphe de commits dans %d paquets"
 
-#: commit-graph.c:812
+#: commit-graph.c:882
 #, c-format
 msgid "error adding pack %s"
 msgstr "erreur à l'ajout du packet %s"
 
-#: commit-graph.c:814
+#: commit-graph.c:884
 #, c-format
 msgid "error opening index for %s"
 msgstr "erreur à l'ouverture de l'index pour %s"
 
-#: commit-graph.c:868
+#: commit-graph.c:898
+#, c-format
+msgid "Finding commits for commit graph from %d ref"
+msgid_plural "Finding commits for commit graph from %d refs"
+msgstr[0] "Recherche de commits pour un graphe de commits depuis %d réf"
+msgstr[1] "Recherche de commits pour un graphe de commits depuis %d réfs"
+
+#: commit-graph.c:930
+msgid "Finding commits for commit graph among packed objects"
+msgstr ""
+"Recherche de commits pour un graphe de commits parmi les objets empaquetés"
+
+#: commit-graph.c:943
+msgid "Counting distinct commits in commit graph"
+msgstr "Comptage des commits distincts dans un graphe de commit"
+
+#: commit-graph.c:956
 #, c-format
 msgid "the commit graph format cannot write %d commits"
 msgstr "le graphe de commits ne peut pas écrire %d commits"
 
-#: commit-graph.c:895
+#: commit-graph.c:965
+msgid "Finding extra edges in commit graph"
+msgstr "Recherche d'arêtes supplémentaires dans un graphe de commits"
+
+#: commit-graph.c:989
 msgid "too many commits to write graph"
 msgstr "trop de commits pour écrire un graphe"
 
-#: commit-graph.c:902 midx.c:769
+#: commit-graph.c:996 midx.c:769
 #, c-format
 msgid "unable to create leading directories of %s"
 msgstr "impossible de créer les répertoires de premier niveau de %s"
 
-#: commit-graph.c:1002
+#: commit-graph.c:1036
+#, c-format
+msgid "Writing out commit graph in %d pass"
+msgid_plural "Writing out commit graph in %d passes"
+msgstr[0] "Écriture le graphe de commits en %d passe"
+msgstr[1] "Écriture le graphe de commits en %d passes"
+
+#: commit-graph.c:1109
 msgid "the commit-graph file has incorrect checksum and is likely corrupt"
 msgstr ""
 "le graphe de commit a une somme de contrôle incorrecte et est "
 "vraisemblablement corrompu"
 
-#: commit-graph.c:1046
+#: commit-graph.c:1153
 msgid "Verifying commits in commit graph"
 msgstr "Verification des commits dans le graphe de commits"
 
-#: compat/obstack.c:405 compat/obstack.c:407
+#: compat/obstack.c:406 compat/obstack.c:408
 msgid "memory exhausted"
 msgstr "plus de mémoire"
 
@@ -1583,7 +1660,7 @@ msgstr "la clé ne contient pas de section: %s"
 msgid "key does not contain variable name: %s"
 msgstr "la clé ne contient pas de nom de variable : %s"
 
-#: config.c:378 sequencer.c:2296
+#: config.c:378 sequencer.c:2330
 #, c-format
 msgid "invalid key: %s"
 msgstr "clé invalide : %s"
@@ -1730,7 +1807,7 @@ msgstr "valeur mal formée pour %s : %s"
 msgid "must be one of nothing, matching, simple, upstream or current"
 msgstr "doit être parmi nothing, matching, simple, upstream ou current"
 
-#: config.c:1481 builtin/pack-objects.c:3391
+#: config.c:1481 builtin/pack-objects.c:3394
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "niveau de compression du paquet %d"
@@ -1809,62 +1886,62 @@ msgstr "%s a des valeurs multiples"
 msgid "failed to write new configuration file %s"
 msgstr "impossible d'écrire le fichier de configuration %s"
 
-#: config.c:2717 config.c:3041
+#: config.c:2716 config.c:3040
 #, c-format
 msgid "could not lock config file %s"
 msgstr "impossible de verrouiller le fichier de configuration %s"
 
-#: config.c:2728
+#: config.c:2727
 #, c-format
 msgid "opening %s"
 msgstr "ouverture de %s"
 
-#: config.c:2763 builtin/config.c:327
+#: config.c:2762 builtin/config.c:328
 #, c-format
 msgid "invalid pattern: %s"
 msgstr "motif invalide : %s"
 
-#: config.c:2788
+#: config.c:2787
 #, c-format
 msgid "invalid config file %s"
 msgstr "fichier de configuration invalide %s"
 
-#: config.c:2801 config.c:3054
+#: config.c:2800 config.c:3053
 #, c-format
 msgid "fstat on %s failed"
 msgstr "échec de fstat sur %s"
 
-#: config.c:2812
+#: config.c:2811
 #, c-format
 msgid "unable to mmap '%s'"
-msgstr "impossible d réaliser un map de '%s'"
+msgstr "impossible de réaliser un map de '%s'"
 
-#: config.c:2821 config.c:3059
+#: config.c:2820 config.c:3058
 #, c-format
 msgid "chmod on %s failed"
 msgstr "échec de chmod sur %s"
 
-#: config.c:2906 config.c:3156
+#: config.c:2905 config.c:3155
 #, c-format
 msgid "could not write config file %s"
 msgstr "impossible d'écrire le fichier de configuration %s"
 
-#: config.c:2940
+#: config.c:2939
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "impossible de régler '%s' à '%s'"
 
-#: config.c:2942 builtin/remote.c:782
+#: config.c:2941 builtin/remote.c:782
 #, c-format
 msgid "could not unset '%s'"
 msgstr "impossible de désinitialiser '%s'"
 
-#: config.c:3032
+#: config.c:3031
 #, c-format
 msgid "invalid section name: %s"
 msgstr "nom de section invalide : %s"
 
-#: config.c:3199
+#: config.c:3198
 #, c-format
 msgid "missing value for '%s'"
 msgstr "valeur manquante pour '%s'"
@@ -1917,50 +1994,45 @@ msgstr "erreur de protocole : shallow sha-1 attendu, '%s' trouvé"
 msgid "repository on the other end cannot be shallow"
 msgstr "le dépôt distant ne peut pas être superficiel"
 
-#: connect.c:310 fetch-pack.c:182 builtin/archive.c:63
-#, c-format
-msgid "remote error: %s"
-msgstr "erreur distante : %s"
-
-#: connect.c:316
+#: connect.c:313
 msgid "invalid packet"
 msgstr "paquet invalide"
 
-#: connect.c:336
+#: connect.c:333
 #, c-format
 msgid "protocol error: unexpected '%s'"
 msgstr "erreur de protocole : '%s' attendu"
 
-#: connect.c:444
+#: connect.c:441
 #, c-format
 msgid "invalid ls-refs response: %s"
 msgstr "réponse à ls-ref invalide : %s"
 
-#: connect.c:448
+#: connect.c:445
 msgid "expected flush after ref listing"
 msgstr "vidage attendu après le listage de références"
 
-#: connect.c:547
+#: connect.c:544
 #, c-format
 msgid "protocol '%s' is not supported"
 msgstr "le protocole '%s' n'est pas supporté"
 
-#: connect.c:598
+#: connect.c:595
 msgid "unable to set SO_KEEPALIVE on socket"
 msgstr "impossible de positionner SO_KEEPALIVE sur la socket"
 
-#: connect.c:638 connect.c:701
+#: connect.c:635 connect.c:698
 #, c-format
 msgid "Looking up %s ... "
 msgstr "Recherche de %s… "
 
-#: connect.c:642
+#: connect.c:639
 #, c-format
 msgid "unable to look up %s (port %s) (%s)"
 msgstr "impossible de rechercher %s (port %s) (%s)"
 
 #. TRANSLATORS: this is the end of "Looking up %s ... "
-#: connect.c:646 connect.c:717
+#: connect.c:643 connect.c:714
 #, c-format
 msgid ""
 "done.\n"
@@ -1969,7 +2041,7 @@ msgstr ""
 "fait.\n"
 "Connexion à %s (port %s)… "
 
-#: connect.c:668 connect.c:745
+#: connect.c:665 connect.c:742
 #, c-format
 msgid ""
 "unable to connect to %s:\n"
@@ -1979,63 +2051,63 @@ msgstr ""
 "%s"
 
 #. TRANSLATORS: this is the end of "Connecting to %s (port %s) ... "
-#: connect.c:674 connect.c:751
+#: connect.c:671 connect.c:748
 msgid "done."
 msgstr "fait."
 
-#: connect.c:705
+#: connect.c:702
 #, c-format
 msgid "unable to look up %s (%s)"
 msgstr "impossible de rechercher %s (%s)"
 
-#: connect.c:711
+#: connect.c:708
 #, c-format
 msgid "unknown port %s"
 msgstr "port inconnu %s"
 
-#: connect.c:848 connect.c:1174
+#: connect.c:845 connect.c:1171
 #, c-format
 msgid "strange hostname '%s' blocked"
 msgstr "nom d'hôte étrange '%s' bloqué"
 
-#: connect.c:850
+#: connect.c:847
 #, c-format
 msgid "strange port '%s' blocked"
 msgstr "port étrange '%s' bloqué"
 
-#: connect.c:860
+#: connect.c:857
 #, c-format
 msgid "cannot start proxy %s"
 msgstr "impossible de démarrer un proxy %s"
 
-#: connect.c:927
+#: connect.c:924
 msgid "no path specified; see 'git help pull' for valid url syntax"
 msgstr ""
 "aucun chemin spécifié ; référez-vous à 'git help pull' pour une syntaxe "
 "d'URL valide"
 
-#: connect.c:1122
+#: connect.c:1119
 msgid "ssh variant 'simple' does not support -4"
 msgstr "la variante ssh 'simple' ne supporte pas -4"
 
-#: connect.c:1134
+#: connect.c:1131
 msgid "ssh variant 'simple' does not support -6"
 msgstr "la variante ssh 'simple' ne supporte pas -6"
 
-#: connect.c:1151
+#: connect.c:1148
 msgid "ssh variant 'simple' does not support setting port"
 msgstr "la variante ssh 'simple' ne supporte pas de spécifier le port"
 
-#: connect.c:1262
+#: connect.c:1259
 #, c-format
 msgid "strange pathname '%s' blocked"
 msgstr "chemin étrange '%s' bloqué"
 
-#: connect.c:1307
+#: connect.c:1304
 msgid "unable to fork"
 msgstr "fork impossible"
 
-#: connected.c:68 builtin/fsck.c:202 builtin/prune.c:147
+#: connected.c:68 builtin/fsck.c:221 builtin/prune.c:146
 msgid "Checking connectivity"
 msgstr "Vérification de la connectivité"
 
@@ -2051,17 +2123,17 @@ msgstr "impossible d'écrire dans la rev-list"
 msgid "failed to close rev-list's stdin"
 msgstr "impossible de fermer l'entrée standard du rev-list"
 
-#: convert.c:194
+#: convert.c:193
 #, c-format
 msgid "illegal crlf_action %d"
 msgstr "crlf_action illégal %d"
 
-#: convert.c:207
+#: convert.c:206
 #, c-format
 msgid "CRLF would be replaced by LF in %s"
 msgstr "Les CRLF seraient remplacés par des LF dans %s"
 
-#: convert.c:209
+#: convert.c:208
 #, c-format
 msgid ""
 "CRLF will be replaced by LF in %s.\n"
@@ -2070,12 +2142,12 @@ msgstr ""
 "Les CRLF seront remplacés par des LF dans %s.\n"
 "Le fichier conservera ses fins de ligne d'origine dans votre copie de travail"
 
-#: convert.c:217
+#: convert.c:216
 #, c-format
 msgid "LF would be replaced by CRLF in %s"
 msgstr "Les LF seraient remplacés par des CRLF dans %s"
 
-#: convert.c:219
+#: convert.c:218
 #, c-format
 msgid ""
 "LF will be replaced by CRLF in %s.\n"
@@ -2084,12 +2156,12 @@ msgstr ""
 "Les LF seront remplacés par des CRLF dans %s.\n"
 "Le fichier conservera ses fins de ligne d'origine dans votre copie de travail"
 
-#: convert.c:280
+#: convert.c:279
 #, c-format
 msgid "BOM is prohibited in '%s' if encoded as %s"
 msgstr "Aucun BOM n'est permis dans '%s' s'il est encodé comme %s"
 
-#: convert.c:287
+#: convert.c:286
 #, c-format
 msgid ""
 "The file '%s' contains a byte order mark (BOM). Please use UTF-%s as working-"
@@ -2098,12 +2170,12 @@ msgstr ""
 "Le fichier '%s' contient un marqueur d'ordre d'octets (BOM). Veuillez "
 "utiliser UTF-%s comme encodage d'arbre de travail."
 
-#: convert.c:305
+#: convert.c:304
 #, c-format
 msgid "BOM is required in '%s' if encoded as %s"
 msgstr "Un BOM est obligatoire dans '%s' s'il est encodé comme %s"
 
-#: convert.c:307
+#: convert.c:306
 #, c-format
 msgid ""
 "The file '%s' is missing a byte order mark (BOM). Please use UTF-%sBE or UTF-"
@@ -2113,39 +2185,39 @@ msgstr ""
 "utiliser UTF-%sBE ou UTF-%sLE (selon l'ordre désiré) comme encodage d'arbre "
 "de travail."
 
-#: convert.c:425 convert.c:496
+#: convert.c:424 convert.c:495
 #, c-format
 msgid "failed to encode '%s' from %s to %s"
 msgstr "échec de l'encodage de '%s' de %s vers %s"
 
-#: convert.c:468
+#: convert.c:467
 #, c-format
 msgid "encoding '%s' from %s to %s and back is not the same"
 msgstr ""
 "encoder '%s' depuis %s vers %s puis inversement ne produit pas le même "
 "contenu"
 
-#: convert.c:674
+#: convert.c:673
 #, c-format
 msgid "cannot fork to run external filter '%s'"
 msgstr "impossible de forker pour lancer le filtre externe '%s'"
 
-#: convert.c:694
+#: convert.c:693
 #, c-format
 msgid "cannot feed the input to external filter '%s'"
 msgstr "impossible de fournir l'entrée au filtre externe '%s'"
 
-#: convert.c:701
+#: convert.c:700
 #, c-format
 msgid "external filter '%s' failed %d"
 msgstr "le filtre externe '%s' a échoué %d"
 
-#: convert.c:736 convert.c:739
+#: convert.c:735 convert.c:738
 #, c-format
 msgid "read from external filter '%s' failed"
 msgstr "la lecture depuis le filtre externe '%s' a échoué"
 
-#: convert.c:742 convert.c:796
+#: convert.c:741 convert.c:796
 #, c-format
 msgid "external filter '%s' failed"
 msgstr "le filtre externe '%s' a échoué"
@@ -2181,53 +2253,53 @@ msgstr "%s : le filtre clean '%s' a échoué"
 msgid "%s: smudge filter %s failed"
 msgstr "%s : le filtre smudge '%s' a échoué"
 
-#: date.c:116
+#: date.c:137
 msgid "in the future"
 msgstr "dans le futur"
 
-#: date.c:122
+#: date.c:143
 #, c-format
 msgid "%<PRIuMAX> second ago"
 msgid_plural "%<PRIuMAX> seconds ago"
 msgstr[0] "il y a %<PRIuMAX> seconde"
 msgstr[1] "il y a %<PRIuMAX> secondes"
 
-#: date.c:129
+#: date.c:150
 #, c-format
 msgid "%<PRIuMAX> minute ago"
 msgid_plural "%<PRIuMAX> minutes ago"
 msgstr[0] "il y a %<PRIuMAX> minute"
 msgstr[1] "il y a %<PRIuMAX> minutes"
 
-#: date.c:136
+#: date.c:157
 #, c-format
 msgid "%<PRIuMAX> hour ago"
 msgid_plural "%<PRIuMAX> hours ago"
 msgstr[0] "il y a %<PRIuMAX> heure"
 msgstr[1] "il y a %<PRIuMAX> heures"
 
-#: date.c:143
+#: date.c:164
 #, c-format
 msgid "%<PRIuMAX> day ago"
 msgid_plural "%<PRIuMAX> days ago"
 msgstr[0] "il y a %<PRIuMAX> jour"
 msgstr[1] "il y a %<PRIuMAX> jours"
 
-#: date.c:149
+#: date.c:170
 #, c-format
 msgid "%<PRIuMAX> week ago"
 msgid_plural "%<PRIuMAX> weeks ago"
 msgstr[0] "il y a %<PRIuMAX> semaine"
 msgstr[1] "il y a %<PRIuMAX> semaines"
 
-#: date.c:156
+#: date.c:177
 #, c-format
 msgid "%<PRIuMAX> month ago"
 msgid_plural "%<PRIuMAX> months ago"
 msgstr[0] "il y a %<PRIuMAX> mois"
 msgstr[1] "il y a %<PRIuMAX> mois"
 
-#: date.c:167
+#: date.c:188
 #, c-format
 msgid "%<PRIuMAX> year"
 msgid_plural "%<PRIuMAX> years"
@@ -2235,42 +2307,42 @@ msgstr[0] "%<PRIuMAX> an"
 msgstr[1] "%<PRIuMAX> ans"
 
 #. TRANSLATORS: "%s" is "<n> years"
-#: date.c:170
+#: date.c:191
 #, c-format
 msgid "%s, %<PRIuMAX> month ago"
 msgid_plural "%s, %<PRIuMAX> months ago"
 msgstr[0] "il y a %s et %<PRIuMAX> mois"
 msgstr[1] "il y a %s et %<PRIuMAX> mois"
 
-#: date.c:175 date.c:180
+#: date.c:196 date.c:201
 #, c-format
 msgid "%<PRIuMAX> year ago"
 msgid_plural "%<PRIuMAX> years ago"
 msgstr[0] "il y a %<PRIuMAX> an"
 msgstr[1] "il y a %<PRIuMAX> ans"
 
-#: delta-islands.c:268
+#: delta-islands.c:272
 msgid "Propagating island marks"
 msgstr "Propagation des marques d'îlots"
 
-#: delta-islands.c:286
+#: delta-islands.c:290
 #, c-format
 msgid "bad tree object %s"
 msgstr "objet arbre invalide %s"
 
-#: delta-islands.c:330
+#: delta-islands.c:334
 #, c-format
 msgid "failed to load island regex for '%s': %s"
 msgstr "impossible de charger la regex île pour '%s' : %s"
 
-#: delta-islands.c:386
+#: delta-islands.c:390
 #, c-format
 msgid "island regex from config has too many capture groups (max=%d)"
 msgstr ""
 "l'expression rationnelle depuis la configuration a trop de groupes de "
 "capture (max=%d)"
 
-#: delta-islands.c:462
+#: delta-islands.c:466
 #, c-format
 msgid "Marked %d islands, done.\n"
 msgstr "Marquage de %d îlots, fait.\n"
@@ -2308,26 +2380,31 @@ msgstr ""
 "le paramètre de couleur de déplacement doit être parmi 'no', 'default', "
 "'blocks', 'zebra', 'dimmed_zebra' ou 'plain'"
 
-#: diff.c:316
+#: diff.c:319
 #, c-format
-msgid "ignoring unknown color-moved-ws mode '%s'"
-msgstr "mode color-moved-ws inconnu '%s' ignoré"
+msgid ""
+"unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
+"'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-change'"
+msgstr ""
+"mode unknown color-moved-ws inconnu '%s', les valeurs possibles sont 'ignore-"
+"space-change', 'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-"
+"change'"
 
-#: diff.c:323
+#: diff.c:327
 msgid ""
-"color-moved-ws: allow-indentation-change cannot be combined with other white "
-"space modes"
+"color-moved-ws: allow-indentation-change cannot be combined with other "
+"whitespace modes"
 msgstr ""
 "color-moved-ws : allow-indentation-change ne peut pas être combiné avec "
 "d'autres modes d'espace"
 
-#: diff.c:394
+#: diff.c:400
 #, c-format
 msgid "Unknown value for 'diff.submodule' config variable: '%s'"
 msgstr ""
 "Valeur inconnue pour la variable de configuration 'diff.submodule' : '%s'"
 
-#: diff.c:454
+#: diff.c:460
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
@@ -2336,24 +2413,24 @@ msgstr ""
 "Erreurs dans la variable de configuration 'diff.dirstat' :\n"
 "%s"
 
-#: diff.c:4140
+#: diff.c:4211
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "l'application de diff externe a disparu, arrêt à %s"
 
-#: diff.c:4482
+#: diff.c:4553
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr "--name-only, --name-status, --check et -s sont mutuellement exclusifs"
 
-#: diff.c:4485
+#: diff.c:4556
 msgid "-G, -S and --find-object are mutually exclusive"
 msgstr "-G, -S et --find-object sont mutuellement exclusifs"
 
-#: diff.c:4563
+#: diff.c:4634
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow a besoin d'une spécification de chemin unique"
 
-#: diff.c:4729
+#: diff.c:4800
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -2362,24 +2439,24 @@ msgstr ""
 "Impossible d'analyser le paramètre de l'option --dirstat/-X :\n"
 "%s"
 
-#: diff.c:4743
+#: diff.c:4814
 #, c-format
 msgid "Failed to parse --submodule option parameter: '%s'"
 msgstr "Impossible d'analyser le paramètre de l'option --submodule : '%s'"
 
-#: diff.c:5823
+#: diff.c:5900
 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:5826
+#: diff.c:5903
 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:5829
+#: diff.c:5906
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -2387,41 +2464,41 @@ msgstr ""
 "vous souhaitez peut-être régler la variable %s à au moins %d et réessayer le "
 "commande."
 
-#: dir.c:576
+#: dir.c:538
 #, c-format
 msgid "pathspec '%s' did not match any file(s) known to git"
 msgstr ""
 "le spécificateur de chemin '%s' ne correspond à aucun fichier connu de git"
 
-#: dir.c:965
+#: dir.c:927
 #, c-format
 msgid "cannot use %s as an exclude file"
 msgstr "impossible d'utiliser %s comme fichier d'exclusion"
 
-#: dir.c:1880
+#: dir.c:1842
 #, c-format
 msgid "could not open directory '%s'"
 msgstr "impossible d'ouvrir le répertoire '%s'"
 
-#: dir.c:2122
+#: dir.c:2084
 msgid "failed to get kernel name and information"
 msgstr "echec de l'obtention d'information de kernel"
 
-#: dir.c:2246
+#: dir.c:2208
 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:3047
+#: dir.c:3009
 #, c-format
 msgid "index file corrupt in repo %s"
 msgstr "fichier d'index corrompu dans le dépôt %s"
 
-#: dir.c:3092 dir.c:3097
+#: dir.c:3054 dir.c:3059
 #, c-format
 msgid "could not create directories for %s"
 msgstr "impossible de créer les répertoires pour %s"
 
-#: dir.c:3126
+#: dir.c:3088
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr "impossible de migrer le répertoire git de '%s' vers '%s'"
@@ -2463,237 +2540,242 @@ msgstr "Dépôt distant sans URL"
 
 #: fetch-pack.c:151
 msgid "git fetch-pack: expected shallow list"
-msgstr "git fetch-pack : list courte attendue"
+msgstr "git fetch-pack : liste superficielle attendue"
 
-#: fetch-pack.c:163
+#: fetch-pack.c:154
+msgid "git fetch-pack: expected a flush packet after shallow list"
+msgstr ""
+"git fetch-pack : paquet de vidage attendu après une liste superficielle"
+
+#: fetch-pack.c:165
 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:183
+#: fetch-pack.c:185
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr "git fetch-pack : ACK/NACK attendu, '%s' reçu"
 
-#: fetch-pack.c:253
+#: fetch-pack.c:256
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc nécessite multi_ack_detailed"
 
-#: fetch-pack.c:347 fetch-pack.c:1277
+#: fetch-pack.c:358 fetch-pack.c:1264
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "ligne de superficiel invalide : %s"
 
-#: fetch-pack.c:353 fetch-pack.c:1283
+#: fetch-pack.c:364 fetch-pack.c:1271
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "ligne de fin de superficiel invalide : %s"
 
-#: fetch-pack.c:355 fetch-pack.c:1285
+#: fetch-pack.c:366 fetch-pack.c:1273
 #, c-format
 msgid "object not found: %s"
 msgstr "objet non trouvé : %s"
 
-#: fetch-pack.c:358 fetch-pack.c:1288
+#: fetch-pack.c:369 fetch-pack.c:1276
 #, c-format
 msgid "error in object: %s"
 msgstr "Erreur dans l'objet : %s"
 
-#: fetch-pack.c:360 fetch-pack.c:1290
+#: fetch-pack.c:371 fetch-pack.c:1278
 #, c-format
 msgid "no shallow found: %s"
 msgstr "Pas de superficiel trouvé : %s"
 
-#: fetch-pack.c:363 fetch-pack.c:1293
+#: fetch-pack.c:374 fetch-pack.c:1282
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "superficiel/non superficiel attendu, %s trouvé"
 
-#: fetch-pack.c:404
+#: fetch-pack.c:415
 #, c-format
 msgid "got %s %d %s"
 msgstr "réponse %s %d %s"
 
-#: fetch-pack.c:421
+#: fetch-pack.c:432
 #, c-format
 msgid "invalid commit %s"
 msgstr "commit invalide %s"
 
-#: fetch-pack.c:452
+#: fetch-pack.c:463
 msgid "giving up"
 msgstr "abandon"
 
-#: fetch-pack.c:464 progress.c:229
+#: fetch-pack.c:475 progress.c:229
 msgid "done"
 msgstr "fait"
 
-#: fetch-pack.c:476
+#: fetch-pack.c:487
 #, c-format
 msgid "got %s (%d) %s"
 msgstr "%s trouvé (%d) %s"
 
-#: fetch-pack.c:522
+#: fetch-pack.c:533
 #, c-format
 msgid "Marking %s as complete"
 msgstr "Marquage de %s comme terminé"
 
-#: fetch-pack.c:764
+#: fetch-pack.c:740
 #, c-format
 msgid "already have %s (%s)"
 msgstr "%s déjà possédé (%s)"
 
-#: fetch-pack.c:803
+#: fetch-pack.c:779
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr "fetch-pack : impossible de dupliquer le démultiplexeur latéral"
 
-#: fetch-pack.c:811
+#: fetch-pack.c:787
 msgid "protocol error: bad pack header"
 msgstr "erreur de protocole : mauvais entête de paquet"
 
-#: fetch-pack.c:879
+#: fetch-pack.c:855
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack : impossible de dupliquer %s"
 
-#: fetch-pack.c:895
+#: fetch-pack.c:871
 #, c-format
 msgid "%s failed"
 msgstr "échec de %s"
 
-#: fetch-pack.c:897
+#: fetch-pack.c:873
 msgid "error in sideband demultiplexer"
 msgstr "erreur dans le démultiplexer latéral"
 
-#: fetch-pack.c:926
+#: fetch-pack.c:902
 msgid "Server does not support shallow clients"
 msgstr "Le serveur ne supporte les clients superficiels"
 
-#: fetch-pack.c:930
+#: fetch-pack.c:906
 msgid "Server supports multi_ack_detailed"
 msgstr "Le serveur supporte multi_ack_detailed"
 
-#: fetch-pack.c:933
+#: fetch-pack.c:909
 msgid "Server supports no-done"
 msgstr "Le serveur support no-done"
 
-#: fetch-pack.c:939
+#: fetch-pack.c:915
 msgid "Server supports multi_ack"
 msgstr "Le serveur supporte multi_ack"
 
-#: fetch-pack.c:943
+#: fetch-pack.c:919
 msgid "Server supports side-band-64k"
 msgstr "Le serveur supporte side-band-64k"
 
-#: fetch-pack.c:947
+#: fetch-pack.c:923
 msgid "Server supports side-band"
 msgstr "Le serveru supporte side-band"
 
-#: fetch-pack.c:951
+#: fetch-pack.c:927
 msgid "Server supports allow-tip-sha1-in-want"
 msgstr "Le serveur supporte allow-tip-sha1-in-want"
 
-#: fetch-pack.c:955
+#: fetch-pack.c:931
 msgid "Server supports allow-reachable-sha1-in-want"
 msgstr "Le serveur supporte allow-reachable-sha1-in-want"
 
-#: fetch-pack.c:965
+#: fetch-pack.c:941
 msgid "Server supports ofs-delta"
 msgstr "Le serveur supporte ofs-delta"
 
-#: fetch-pack.c:971 fetch-pack.c:1158
+#: fetch-pack.c:947 fetch-pack.c:1140
 msgid "Server supports filter"
 msgstr "Le serveur supporte filter"
 
-#: fetch-pack.c:979
+#: fetch-pack.c:955
 #, c-format
 msgid "Server version is %.*s"
 msgstr "La version du serveur est %.*s"
 
-#: fetch-pack.c:985
+#: fetch-pack.c:961
 msgid "Server does not support --shallow-since"
 msgstr "Le receveur ne gère pas --shallow-since"
 
-#: fetch-pack.c:989
+#: fetch-pack.c:965
 msgid "Server does not support --shallow-exclude"
 msgstr "Le receveur ne gère pas --shallow-exclude"
 
-#: fetch-pack.c:991
+#: fetch-pack.c:967
 msgid "Server does not support --deepen"
 msgstr "Le receveur ne gère pas --deepen"
 
-#: fetch-pack.c:1008
+#: fetch-pack.c:984
 msgid "no common commits"
 msgstr "pas de commit commun"
 
-#: fetch-pack.c:1020 fetch-pack.c:1418
+#: fetch-pack.c:996 fetch-pack.c:1419
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack : échec de le récupération."
 
-#: fetch-pack.c:1153
+#: fetch-pack.c:1134
 msgid "Server does not support shallow requests"
 msgstr "Le serveur ne supporte les requêtes superficielles"
 
-#: fetch-pack.c:1199
+#: fetch-pack.c:1184
 #, c-format
 msgid "error reading section header '%s'"
 msgstr "erreur à la lecture de l'entête de section '%s'"
 
-#: fetch-pack.c:1205
+#: fetch-pack.c:1190
 #, c-format
 msgid "expected '%s', received '%s'"
 msgstr "'%s' attendu, '%s' reçu"
 
-#: fetch-pack.c:1244
+#: fetch-pack.c:1229
 #, c-format
 msgid "unexpected acknowledgment line: '%s'"
 msgstr "ligne d'acquittement inattendue : '%s'"
 
-#: fetch-pack.c:1249
+#: fetch-pack.c:1234
 #, c-format
 msgid "error processing acks: %d"
 msgstr "erreur lors du traitement des acquittements : %d"
 
-#: fetch-pack.c:1259
+#: fetch-pack.c:1244
 msgid "expected packfile to be sent after 'ready'"
 msgstr "fichier paquet attendu à envoyer après 'ready'"
 
-#: fetch-pack.c:1261
+#: fetch-pack.c:1246
 msgid "expected no other sections to be sent after no 'ready'"
 msgstr "aucune autre section attendue à envoyer après absence de 'ready'"
 
-#: fetch-pack.c:1298
+#: fetch-pack.c:1287
 #, c-format
 msgid "error processing shallow info: %d"
 msgstr "erreur lors du traitement de l'information de superficialité : %d"
 
-#: fetch-pack.c:1314
+#: fetch-pack.c:1308
 #, c-format
 msgid "expected wanted-ref, got '%s'"
 msgstr "wanted-ref attendu, '%s' trouvé"
 
-#: fetch-pack.c:1324
+#: fetch-pack.c:1318
 #, c-format
 msgid "unexpected wanted-ref: '%s'"
 msgstr "wanted-ref inattendu : '%s'"
 
-#: fetch-pack.c:1328
+#: fetch-pack.c:1322
 #, c-format
 msgid "error processing wanted refs: %d"
 msgstr "erreur lors du traitement des références voulues : %d"
 
-#: fetch-pack.c:1642
+#: fetch-pack.c:1646
 msgid "no matching remote head"
 msgstr "pas de HEAD distante correspondante"
 
-#: fetch-pack.c:1660 builtin/clone.c:664
+#: fetch-pack.c:1664 builtin/clone.c:671
 msgid "remote did not send all necessary objects"
 msgstr "le serveur distant n'a pas envoyé tous les objets nécessaires"
 
-#: fetch-pack.c:1686
+#: fetch-pack.c:1690
 #, c-format
 msgid "no such remote ref %s"
 msgstr "référence distante inconnue %s"
 
-#: fetch-pack.c:1689
+#: fetch-pack.c:1693
 #, 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é"
@@ -2721,8 +2803,8 @@ msgstr "couleur invalide '%.*s' ignorée dans log.graphColors"
 msgid "'%s': unable to read %s"
 msgstr "'%s' : lecture de %s impossible"
 
-#: grep.c:2130 setup.c:164 builtin/clone.c:410 builtin/diff.c:81
-#: builtin/rm.c:134
+#: grep.c:2130 setup.c:164 builtin/clone.c:411 builtin/diff.c:82
+#: builtin/rm.c:135
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "échec du stat de '%s'"
@@ -2785,43 +2867,43 @@ msgstr "Commandes bas niveau / Synchronisation de dépôts"
 msgid "Low-level Commands / Internal Helpers"
 msgstr "Commandes bas niveau / Assistants internes"
 
-#: help.c:296
+#: help.c:298
 #, c-format
 msgid "available git commands in '%s'"
 msgstr "commandes git disponibles dans '%s'"
 
-#: help.c:303
+#: help.c:305
 msgid "git commands available from elsewhere on your $PATH"
 msgstr "commandes git disponibles depuis un autre endroit de votre $PATH"
 
-#: help.c:312
+#: help.c:314
 msgid "These are common Git commands used in various situations:"
 msgstr "Ci-dessous les commandes Git habituelles dans diverses situations :"
 
-#: help.c:361 git.c:90
+#: help.c:363 git.c:90
 #, c-format
 msgid "unsupported command listing type '%s'"
 msgstr "type de liste de commandes non supporté '%s'"
 
-#: help.c:408
+#: help.c:410
 msgid "The common Git guides are:"
 msgstr "Les guides Git populaires sont :"
 
-#: help.c:517
+#: help.c:519
 msgid "See 'git help <command>' to read about a specific subcommand"
 msgstr ""
 "Référez-vous à 'git help <commande>' pour des informations sur une sous-"
 "commande spécifique"
 
-#: help.c:522
+#: help.c:524
 msgid "External commands"
 msgstr "Commandes externes"
 
-#: help.c:530
+#: help.c:539
 msgid "Command aliases"
 msgstr "Alias de commande"
 
-#: help.c:594
+#: help.c:603
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -2830,33 +2912,33 @@ msgstr ""
 "'%s' semble être une commande git, mais elle n'a pas pu\n"
 "être exécutée. Peut-être git-%s est-elle cassée ?"
 
-#: help.c:653
+#: help.c:662
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "Ahem. Votre système n'indique aucune commande Git."
 
-#: help.c:675
+#: help.c:684
 #, c-format
 msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr ""
 "ATTENTION : vous avez invoqué une commande Git nommée '%s' qui n'existe pas."
 
-#: help.c:680
+#: help.c:689
 #, c-format
 msgid "Continuing under the assumption that you meant '%s'."
 msgstr "Continuons en supposant que vous avez voulu dire '%s'."
 
-#: help.c:685
+#: help.c:694
 #, c-format
 msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
 msgstr ""
 "Continuons dans %0.1f secondes en supposant que vous avez voulu dire '%s'."
 
-#: help.c:693
+#: help.c:702
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr "git : '%s' n'est pas une commande git. Voir 'git --help'."
 
-#: help.c:697
+#: help.c:706
 msgid ""
 "\n"
 "The most similar command is"
@@ -2870,16 +2952,16 @@ msgstr[1] ""
 "\n"
 "Les commandes les plus ressemblantes sont"
 
-#: help.c:712
+#: help.c:721
 msgid "git version [<options>]"
 msgstr "git version [<options>]"
 
-#: help.c:780
+#: help.c:789
 #, c-format
 msgid "%s: %s - %s"
 msgstr "%s: %s - %s"
 
-#: help.c:784
+#: help.c:793
 msgid ""
 "\n"
 "Did you mean this?"
@@ -2947,20 +3029,20 @@ 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:419 builtin/commit.c:606
+#: ident.c:419 builtin/commit.c:608
 #, c-format
 msgid "invalid date format: %s"
 msgstr "format de date invalide : %s"
 
-#: list-objects-filter-options.c:35
+#: 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:58
-msgid "only 'tree:0' is supported"
-msgstr "seul 'tree:0' est supporté"
+msgid "expected 'tree:<depth>'"
+msgstr "attendu : 'tree:<profondeur>'"
 
-#: list-objects-filter-options.c:137
+#: list-objects-filter-options.c:152
 msgid "cannot change partial clone promisor remote"
 msgstr "impossible de modifier le prometteur distant de clone partiel"
 
@@ -2979,7 +3061,7 @@ msgstr ""
 "\n"
 "Il semble qu'un autre processus git est déjà lancé dans ce dépôt,\n"
 "par exemple un éditeur ouvert par 'git commit'. Veuillez vous assurer\n"
-"que tous les processus sont terminés et réessayez. Si l'echec persiste,\n"
+"que tous les processus sont terminés et réessayez. Si l'échec persiste,\n"
 "un processus git peut avoir planté :\n"
 "supprimez le fichier manuellement pour poursuivre."
 
@@ -2992,96 +3074,96 @@ msgstr "Impossible de créer '%s.lock' : %s"
 msgid "failed to read the cache"
 msgstr "impossible de lire le cache"
 
-#: merge.c:107 rerere.c:720 builtin/am.c:1899 builtin/am.c:1933
-#: builtin/checkout.c:387 builtin/checkout.c:708 builtin/clone.c:764
+#: merge.c:107 rerere.c:720 builtin/am.c:1884 builtin/am.c:1918
+#: builtin/checkout.c:416 builtin/checkout.c:745 builtin/clone.c:771
 msgid "unable to write new index file"
 msgstr "impossible d'écrire le nouveau fichier d'index"
 
-#: merge-recursive.c:323
+#: merge-recursive.c:332
 msgid "(bad commit)\n"
 msgstr "(mauvais commit)\n"
 
-#: merge-recursive.c:345
+#: merge-recursive.c:355
 #, c-format
 msgid "add_cacheinfo failed for path '%s'; merge aborting."
 msgstr "échec de addinfo_cache pour le chemin '%s' ; abandon de la fusion."
 
-#: merge-recursive.c:353
+#: merge-recursive.c:364
 #, c-format
 msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
 msgstr "échec de addinfo_cache pour le chemin '%s' ; abandon de la fusion."
 
-#: merge-recursive.c:435
+#: merge-recursive.c:447
 msgid "error building trees"
 msgstr "erreur de construction des arbres"
 
-#: merge-recursive.c:906
+#: merge-recursive.c:902
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "impossible de créer le chemin '%s' %s"
 
-#: merge-recursive.c:917
+#: merge-recursive.c:913
 #, 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:931 merge-recursive.c:950
+#: merge-recursive.c:927 merge-recursive.c:946
 msgid ": perhaps a D/F conflict?"
 msgstr ": peut-être un conflit D/F ?"
 
-#: merge-recursive.c:940
+#: merge-recursive.c:936
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "refus de perdre le fichier non suivi '%s'"
 
-#: merge-recursive.c:982 builtin/cat-file.c:39
+#: merge-recursive.c:978 builtin/cat-file.c:40
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "impossible de lire l'objet %s '%s'"
 
-#: merge-recursive.c:984
+#: merge-recursive.c:980
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "blob attendu pour %s '%s'"
 
-#: merge-recursive.c:1008
+#: merge-recursive.c:1004
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr "échec à l'ouverture de '%s' : %s"
 
-#: merge-recursive.c:1019
+#: merge-recursive.c:1015
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr "échec à la création du lien symbolique '%s' : %s"
 
-#: merge-recursive.c:1024
+#: merge-recursive.c:1020
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "ne sait pas traiter %06o %s '%s'"
 
-#: merge-recursive.c:1212
+#: merge-recursive.c:1211
 #, c-format
 msgid "Failed to merge submodule %s (not checked out)"
 msgstr "Échec de la fusion du sous-module %s (non extrait)"
 
-#: merge-recursive.c:1219
+#: merge-recursive.c:1218
 #, c-format
 msgid "Failed to merge submodule %s (commits not present)"
 msgstr "Échec de fusion du sous-module %s (commits non présents)"
 
-#: merge-recursive.c:1226
+#: merge-recursive.c:1225
 #, c-format
 msgid "Failed to merge submodule %s (commits don't follow merge-base)"
 msgstr ""
 "Échec de la fusion du sous-module %s (les commits ne descendent pas de la "
 "base de fusion)"
 
-#: merge-recursive.c:1234 merge-recursive.c:1246
+#: merge-recursive.c:1233 merge-recursive.c:1245
 #, c-format
 msgid "Fast-forwarding submodule %s to the following commit:"
 msgstr "Avance rapide du sous-module %s au commit suivant :"
 
-#: merge-recursive.c:1237 merge-recursive.c:1249
+#: merge-recursive.c:1236 merge-recursive.c:1248
 #, c-format
 msgid "Fast-forwarding submodule %s"
 msgstr "Avance rapide du sous-module %s"
@@ -3123,28 +3205,28 @@ msgstr ""
 msgid "Failed to merge submodule %s (multiple merges found)"
 msgstr "Échec de fusion du sous-module %s (plusieurs fusions trouvées)"
 
-#: merge-recursive.c:1358
+#: merge-recursive.c:1361
 msgid "Failed to execute internal merge"
 msgstr "Échec à l'exécution de la fusion interne"
 
-#: merge-recursive.c:1363
+#: merge-recursive.c:1366
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Impossible d'ajouter %s à la base de données"
 
-#: merge-recursive.c:1395
+#: merge-recursive.c:1398
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Fusion automatique de %s"
 
-#: merge-recursive.c:1416
+#: merge-recursive.c:1419
 #, c-format
 msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
 msgstr ""
 "Erreur : refus de perdre le fichier non suivi %s ; écriture dans %s à la "
 "place."
 
-#: merge-recursive.c:1483
+#: merge-recursive.c:1486
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -3153,7 +3235,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:1488
+#: merge-recursive.c:1491
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -3162,7 +3244,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:1495
+#: merge-recursive.c:1498
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -3171,7 +3253,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:1500
+#: merge-recursive.c:1503
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -3180,31 +3262,41 @@ 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:1534
+#: merge-recursive.c:1537
 msgid "rename"
 msgstr "renommage"
 
-#: merge-recursive.c:1534
+#: merge-recursive.c:1537
 msgid "renamed"
 msgstr "renommé"
 
-#: merge-recursive.c:1588 merge-recursive.c:1737 merge-recursive.c:2369
-#: merge-recursive.c:3124
+#: merge-recursive.c:1633 merge-recursive.c:2481 merge-recursive.c:3213
 #, c-format
 msgid "Refusing to lose dirty file at %s"
 msgstr "Refus de perdre le fichier modifié %s"
 
-#: merge-recursive.c:1602
+#: merge-recursive.c:1643
+#, c-format
+msgid "Refusing to lose untracked file at %s, even though it's in the way."
+msgstr "Refus de perdre le fichier non suivi %s, même s'il gêne."
+
+#: merge-recursive.c:1706
+#, c-format
+msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
+msgstr ""
+"CONFLIT (renommage/ajout) : Renommage de %s->%s dans %s. %s ajouté dans %s"
+
+#: merge-recursive.c:1734
 #, 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:1607
+#: merge-recursive.c:1739
 #, c-format
 msgid "Refusing to lose untracked file at %s; adding as %s instead"
 msgstr "Refus de perdre le fichier non suivi %s ; ajout comme %s à la place"
 
-#: merge-recursive.c:1633
+#: merge-recursive.c:1759
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -3213,28 +3305,18 @@ msgstr ""
 "CONFLIT (renommage/renommage) : Renommage de \"%s\"->\"%s\" dans la branche "
 "\"%s\" et renommage \"%s\"->\"%s\" dans \"%s\"%s"
 
-#: merge-recursive.c:1638
+#: merge-recursive.c:1764
 msgid " (left unresolved)"
 msgstr " (laissé non résolu)"
 
-#: merge-recursive.c:1699
+#: merge-recursive.c:1868
 #, 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:1734
-#, 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:1746
-#, c-format
-msgid "Refusing to lose untracked file at %s, even though it's in the way."
-msgstr "Refus de perdre le fichier non suivi %s, même s'il gêne."
-
-#: merge-recursive.c:1952
+#: merge-recursive.c:2064
 #, c-format
 msgid ""
 "CONFLICT (directory rename split): Unclear where to place %s because "
@@ -3245,7 +3327,7 @@ msgstr ""
 "parce que le répertoire %s a été renommé en plusieurs autres répertoires, "
 "sans aucune destination récupérant la majorité des fichiers."
 
-#: merge-recursive.c:1984
+#: merge-recursive.c:2096
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
@@ -3254,7 +3336,7 @@ msgstr ""
 "CONFLIT (renommage implicite de répertoire) : le répertoire/fichier %s gêne "
 "des renommages implicites de répertoire déplaçant les chemins suivants : %s."
 
-#: merge-recursive.c:1994
+#: merge-recursive.c:2106
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
@@ -3263,7 +3345,7 @@ msgstr ""
 "CONFLIT (renommage implicite de répertoire) : impossible de transformer "
 "plusieurs chemins sur %s ; les chemins concernés sont : %s"
 
-#: merge-recursive.c:2086
+#: merge-recursive.c:2198
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
@@ -3272,7 +3354,7 @@ msgstr ""
 "CONFLIT (renommage/renommage) : renommage du répertoire %s->%s dans %s. "
 "Renommage de répertoire %s->%s dans %s"
 
-#: merge-recursive.c:2331
+#: merge-recursive.c:2443
 #, c-format
 msgid ""
 "WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
@@ -3281,87 +3363,81 @@ msgstr ""
 "AVERTISSEMENT : ne renomme pas %s->%s dans %s, parce que %s lui-même a été "
 "renommé."
 
-#: merge-recursive.c:2737
-#, 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:2763
-#, c-format
-msgid "Adding merged %s"
-msgstr "Ajout de %s fusionné"
-
-#: merge-recursive.c:2770 merge-recursive.c:3127
-#, c-format
-msgid "Adding as %s instead"
-msgstr "Ajout plutôt comme %s"
-
-#: merge-recursive.c:2934
+#: merge-recursive.c:3022
 #, c-format
 msgid "cannot read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: merge-recursive.c:2937
+#: merge-recursive.c:3025
 #, c-format
 msgid "object %s is not a blob"
 msgstr "l'objet %s n'est pas un blob"
 
-#: merge-recursive.c:3006
+#: merge-recursive.c:3094
 msgid "modify"
 msgstr "modification"
 
-#: merge-recursive.c:3006
+#: merge-recursive.c:3094
 msgid "modified"
 msgstr "modifié"
 
-#: merge-recursive.c:3017
+#: merge-recursive.c:3105
 msgid "content"
 msgstr "contenu"
 
-#: merge-recursive.c:3024
+#: merge-recursive.c:3112
 msgid "add/add"
 msgstr "ajout/ajout"
 
-#: merge-recursive.c:3071
+#: merge-recursive.c:3160
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "%s sauté (fusion identique à l'existant)"
 
-#: merge-recursive.c:3093 git-submodule.sh:858
+#: merge-recursive.c:3182 git-submodule.sh:861
 msgid "submodule"
 msgstr "sous-module"
 
-#: merge-recursive.c:3094
+#: merge-recursive.c:3183
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLIT (%s) : Conflit de fusion dans %s"
 
 #: merge-recursive.c:3216
 #, c-format
+msgid "Adding as %s instead"
+msgstr "Ajout plutôt comme %s"
+
+#: merge-recursive.c:3319
+#, c-format
 msgid "Removing %s"
 msgstr "Suppression de %s"
 
-#: merge-recursive.c:3242
+#: merge-recursive.c:3345
 msgid "file/directory"
 msgstr "fichier/répertoire"
 
-#: merge-recursive.c:3248
+#: merge-recursive.c:3351
 msgid "directory/file"
 msgstr "répertoire/fichier"
 
-#: merge-recursive.c:3255
+#: merge-recursive.c:3358
 #, 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:3264
+#: merge-recursive.c:3367
 #, c-format
 msgid "Adding %s"
 msgstr "Ajout de %s"
 
-#: merge-recursive.c:3300
+#: merge-recursive.c:3376
+#, c-format
+msgid "CONFLICT (add/add): Merge conflict in %s"
+msgstr "CONFLIT (ajout/ajout) : Conflit de fusion dans %s"
+
+#: merge-recursive.c:3417
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -3371,36 +3447,36 @@ msgstr ""
 "fusion :\n"
 "  %s"
 
-#: merge-recursive.c:3311
+#: merge-recursive.c:3428
 msgid "Already up to date!"
 msgstr "Déjà à jour !"
 
-#: merge-recursive.c:3320
+#: merge-recursive.c:3437
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "échec de fusion des arbres %s et %s"
 
-#: merge-recursive.c:3419
+#: merge-recursive.c:3536
 msgid "Merging:"
 msgstr "Fusion :"
 
-#: merge-recursive.c:3432
+#: merge-recursive.c:3549
 #, 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:3471
+#: merge-recursive.c:3588
 msgid "merge returned no commit"
 msgstr "la fusion n'a pas retourné de commit"
 
-#: merge-recursive.c:3537
+#: merge-recursive.c:3654
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Impossible d'analyser l'objet '%s'"
 
-#: merge-recursive.c:3553 builtin/merge.c:691 builtin/merge.c:849
+#: merge-recursive.c:3670 builtin/merge.c:692 builtin/merge.c:850
 msgid "Unable to write index."
 msgstr "Impossible d'écrire l'index."
 
@@ -3413,7 +3489,7 @@ msgstr "le fichier d'index multi-paquet %s est trop petit"
 #, c-format
 msgid "multi-pack-index signature 0x%08x does not match signature 0x%08x"
 msgstr ""
-"la signature de d'index multi-paquet 0x%08x ne correspond pas à la signature "
+"la signature de l'index multi-paquet 0x%08x ne correspond pas à la signature "
 "0x%08x"
 
 #: midx.c:86
@@ -3522,24 +3598,24 @@ msgstr "impossible de lire le fichier paquet %s"
 #: midx.c:1019
 #, c-format
 msgid "incorrect object offset for oid[%d] = %s: %<PRIx64> != %<PRIx64>"
-msgstr "décalage d'objet incorrecte pour oid[%d] = %s : %<PRIx64> != %<PRIx64>"
+msgstr "décalage d'objet incorrect pour oid[%d] = %s : %<PRIx64> != %<PRIx64>"
 
-#: name-hash.c:532
+#: name-hash.c:531
 #, c-format
 msgid "unable to create lazy_dir thread: %s"
 msgstr "impossible de créer le fil lazy_dir : %s"
 
-#: name-hash.c:554
+#: name-hash.c:553
 #, c-format
 msgid "unable to create lazy_name thread: %s"
 msgstr "impossible de créer le fil lazy_name : %s"
 
-#: name-hash.c:560
+#: name-hash.c:559
 #, c-format
 msgid "unable to join lazy_name thread: %s"
 msgstr "impossible de joindre le fil lazy_name : %s"
 
-#: notes-merge.c:275
+#: notes-merge.c:277
 #, c-format
 msgid ""
 "You have not concluded your previous notes merge (%s exists).\n"
@@ -3550,21 +3626,21 @@ msgstr ""
 "Veuillez utiliser 'git notes merge --commit' ou 'git notes merge --abort' "
 "pour valider/abandonner la fusion en cours avant d'en démarrer une nouvelle."
 
-#: notes-merge.c:282
+#: notes-merge.c:284
 #, c-format
 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:45
+#: notes-utils.c:46
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr "Impossible de valider un arbre de notes non initialisé/référencé"
 
-#: notes-utils.c:104
+#: notes-utils.c:105
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr "Mauvaise valeur de notes.rewriteMode : '%s'"
 
-#: notes-utils.c:114
+#: notes-utils.c:115
 #, 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/)"
@@ -3573,7 +3649,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:144
+#: notes-utils.c:145
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr "Mauvaise valeur de %s : '%s'"
@@ -3583,46 +3659,106 @@ msgstr "Mauvaise valeur de %s : '%s'"
 msgid "invalid object type \"%s\""
 msgstr "type d'objet invalide \"%s\""
 
-#: object.c:173
+#: object.c:174
 #, c-format
 msgid "object %s is a %s, not a %s"
 msgstr "l'objet %s est de type %s, pas de type %s"
 
-#: object.c:233
+#: object.c:234
 #, c-format
 msgid "object %s has unknown type id %d"
 msgstr "l'objet %s a un id de type inconnu %d"
 
-#: object.c:246
+#: object.c:247
 #, c-format
 msgid "unable to parse object: %s"
 msgstr "impossible d'analyser l'objet : %s"
 
-#: object.c:266 object.c:277
+#: object.c:267 object.c:278
 #, c-format
-msgid "sha1 mismatch %s"
-msgstr "incohérence de sha1 %s"
+msgid "hash mismatch %s"
+msgstr "incohérence de hachage %s"
 
 #: packfile.c:607
 msgid "offset before end of packfile (broken .idx?)"
 msgstr "offset avant la fin du fichier paquet (.idx cassé ?)"
 
-#: packfile.c:1864
+#: packfile.c:1870
 #, 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:1868
+#: packfile.c:1874
 #, 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:672
+#: parse-options.c:35
+#, c-format
+msgid "%s requires a value"
+msgstr "%s a besoin d'une valeur"
+
+#: parse-options.c:69
+#, c-format
+msgid "%s is incompatible with %s"
+msgstr "%s est incompatible avec %s"
+
+#: parse-options.c:74
+#, c-format
+msgid "%s : incompatible with something else"
+msgstr "%s est incompatible avec toute autre option"
+
+#: parse-options.c:88 parse-options.c:92 parse-options.c:260
+#, c-format
+msgid "%s takes no value"
+msgstr "%s n'accepte aucune valeur"
+
+#: parse-options.c:90
+#, c-format
+msgid "%s isn't available"
+msgstr "%s n'est pas disponible"
+
+#: parse-options.c:178
+#, c-format
+msgid "%s expects a numerical value"
+msgstr "%s attend une valeur numérique"
+
+#: parse-options.c:194
+#, c-format
+msgid "%s expects a non-negative integer value with an optional k/m/g suffix"
+msgstr "%s attend une valeur entière non négative avec une suffixe k/m/g"
+
+#: parse-options.c:322
+#, c-format
+msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
+msgstr "option ambigüe : %s (devrait être --%s%s ou --%s%s)"
+
+#: parse-options.c:356 parse-options.c:364
+#, c-format
+msgid "did you mean `--%s` (with two dashes ?)"
+msgstr "vouliez-vous dire `--%s` (avec deux signes moins)?"
+
+#: parse-options.c:649
+#, c-format
+msgid "unknown option `%s'"
+msgstr "option inconnue « %s »"
+
+#: parse-options.c:651
+#, c-format
+msgid "unknown switch `%c'"
+msgstr "bascule inconnue « %c »"
+
+#: parse-options.c:653
+#, c-format
+msgid "unknown non-ascii option in string: `%s'"
+msgstr "option non-ascii inconnue dans la chaîne : '%s'"
+
+#: parse-options.c:675
 msgid "..."
 msgstr "..."
 
-#: parse-options.c:691
+#: parse-options.c:694
 #, c-format
 msgid "usage: %s"
 msgstr "usage : %s"
@@ -3630,26 +3766,36 @@ msgstr "usage : %s"
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation.
 #.
-#: parse-options.c:697
+#: parse-options.c:700
 #, c-format
 msgid "   or: %s"
 msgstr "   ou : %s"
 
-#: parse-options.c:700
+#: parse-options.c:703
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: parse-options.c:739
+#: parse-options.c:742
 msgid "-NUM"
 msgstr "-NUM"
 
-#: parse-options-cb.c:37
+#: parse-options-cb.c:21
+#, c-format
+msgid "option `%s' expects a numerical value"
+msgstr "l'option '%s' attend une valeur numérique"
+
+#: parse-options-cb.c:38
 #, c-format
 msgid "malformed expiration date '%s'"
 msgstr "date d'expiration malformée : '%s'"
 
-#: parse-options-cb.c:109
+#: parse-options-cb.c:51
+#, c-format
+msgid "option `%s' expects \"always\", \"auto\", or \"never\""
+msgstr "l'option '%s' attend \"always\", \"auto\" ou \"never\""
+
+#: parse-options-cb.c:110
 #, c-format
 msgid "malformed object name '%s'"
 msgstr "nom d'objet malformé '%s'"
@@ -3659,32 +3805,32 @@ msgstr "nom d'objet malformé '%s'"
 msgid "Could not make %s writable by group"
 msgstr "Impossible de rendre %s inscriptible pour le groupe"
 
-#: pathspec.c:129
+#: pathspec.c:128
 msgid "Escape character '\\' not allowed as last character in attr value"
 msgstr ""
 "Le caractère d'échappement '\\\\' interdit comme dernier caractère dans une "
 "valeur d'attribut"
 
-#: pathspec.c:147
+#: pathspec.c:146
 msgid "Only one 'attr:' specification is allowed."
 msgstr "Une seule spécification 'attr:' est autorisée."
 
-#: pathspec.c:150
+#: pathspec.c:149
 msgid "attr spec must not be empty"
 msgstr "un spécificateur d'attribut ne peut pas être vide"
 
-#: pathspec.c:193
+#: pathspec.c:192
 #, c-format
 msgid "invalid attribute name %s"
 msgstr "nom d'attribut invalide %s"
 
-#: pathspec.c:258
+#: pathspec.c:257
 msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
 msgstr ""
 "les réglages de spécificateurs de chemin généraux 'glob' et 'noglob' sont "
 "incompatibles"
 
-#: pathspec.c:265
+#: pathspec.c:264
 msgid ""
 "global 'literal' pathspec setting is incompatible with all other global "
 "pathspec settings"
@@ -3692,48 +3838,48 @@ msgstr ""
 "le réglage global de spécificateur de chemin 'literal' est incompatible avec "
 "tous les autres réglages globaux de spécificateur de chemin"
 
-#: pathspec.c:305
+#: pathspec.c:304
 msgid "invalid parameter for pathspec magic 'prefix'"
 msgstr "paramètre invalide pour le spécificateur magique de chemin 'prefix'"
 
-#: pathspec.c:326
+#: pathspec.c:325
 #, c-format
 msgid "Invalid pathspec magic '%.*s' in '%s'"
 msgstr "La spécification magique de chemin '%.*s' est invalide dans '%s'"
 
-#: pathspec.c:331
+#: pathspec.c:330
 #, c-format
 msgid "Missing ')' at the end of pathspec magic in '%s'"
 msgstr "')' manquante à la fin du spécificateur magique de chemin dans '%s'"
 
-#: pathspec.c:369
+#: pathspec.c:368
 #, c-format
 msgid "Unimplemented pathspec magic '%c' in '%s'"
 msgstr "Spécificateur magique '%c' non implémenté dans '%s'"
 
-#: pathspec.c:428
+#: pathspec.c:427
 #, c-format
 msgid "%s: 'literal' and 'glob' are incompatible"
 msgstr "%s : 'literal' et 'glob' sont incompatibles"
 
-#: pathspec.c:441
+#: pathspec.c:440
 #, c-format
 msgid "%s: '%s' is outside repository"
 msgstr "%s : '%s' est hors du dépôt"
 
-#: pathspec.c:515
+#: pathspec.c:514
 #, c-format
 msgid "'%s' (mnemonic: '%c')"
 msgstr "'%s' (mnémonique : '%c')"
 
-#: pathspec.c:525
+#: pathspec.c:524
 #, c-format
 msgid "%s: pathspec magic not supported by this command: %s"
 msgstr ""
 "%s : le spécificateur magique de chemin n'est pas supporté par cette "
 "commande : %s"
 
-#: pathspec.c:592
+#: pathspec.c:591
 #, c-format
 msgid "pathspec '%s' is beyond a symbolic link"
 msgstr "le chemin '%s' est au-delà d'un lien symbolique"
@@ -3742,52 +3888,57 @@ msgstr "le chemin '%s' est au-delà d'un lien symbolique"
 msgid "flush packet write failed"
 msgstr "échec de l'écriture du vidage de paquet"
 
-#: pkt-line.c:142 pkt-line.c:228
+#: pkt-line.c:144 pkt-line.c:230
 msgid "protocol error: impossibly long line"
 msgstr "erreur de protocole : ligne impossiblement trop longue"
 
-#: pkt-line.c:158 pkt-line.c:160
+#: pkt-line.c:160 pkt-line.c:162
 msgid "packet write with format failed"
 msgstr "échec de l'écriture d'un paquet avec format"
 
-#: pkt-line.c:192
+#: pkt-line.c:194
 msgid "packet write failed - data exceeds max packet size"
 msgstr ""
 "échec de l'écriture d'un paquet ‑ les données dépassent la taille maximale "
 "d'un paquet"
 
-#: pkt-line.c:199 pkt-line.c:206
+#: pkt-line.c:201 pkt-line.c:208
 msgid "packet write failed"
 msgstr "échec de l'écriture d'un paquet"
 
-#: pkt-line.c:291
+#: pkt-line.c:293
 msgid "read error"
 msgstr "erreur de lecture"
 
-#: pkt-line.c:299
+#: pkt-line.c:301
 msgid "the remote end hung up unexpectedly"
 msgstr "L'hôte distant a fermé la connexion de manière inattendue"
 
-#: pkt-line.c:327
+#: pkt-line.c:329
 #, c-format
 msgid "protocol error: bad line length character: %.4s"
 msgstr "erreur de protocole : mauvais caractère de longueur de ligne : %.4s"
 
-#: pkt-line.c:337 pkt-line.c:342
+#: pkt-line.c:339 pkt-line.c:344
 #, c-format
 msgid "protocol error: bad line length %d"
 msgstr "erreur de protocole : mauvaise longueur de ligne %d"
 
-#: preload-index.c:118
+#: pkt-line.c:353
+#, c-format
+msgid "remote error: %s"
+msgstr "erreur distante : %s"
+
+#: preload-index.c:119
 msgid "Refreshing index"
 msgstr "Rafraîchissement de l'index"
 
-#: preload-index.c:137
+#: preload-index.c:138
 #, c-format
 msgid "unable to create threaded lstat: %s"
 msgstr "impossible de créer le lstat en fil : %s"
 
-#: pretty.c:962
+#: pretty.c:963
 msgid "unable to parse --pretty format"
 msgstr "impossible d'analyser le format --pretty"
 
@@ -3799,7 +3950,7 @@ msgstr "impossible de démarrer `log`"
 msgid "could not read `log` output"
 msgstr "impossible de lire la sortie de `log`"
 
-#: range-diff.c:74 sequencer.c:4764
+#: range-diff.c:74 sequencer.c:4828
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr "impossible d'analyser le commit '%s'"
@@ -3813,11 +3964,47 @@ msgstr "échec de la génération de diff"
 msgid "could not parse log for '%s'"
 msgstr "impossible d'analyser le journal pour '%s'"
 
-#: read-cache.c:1490
+#: read-cache.c:673
+#, c-format
+msgid "will not add file alias '%s' ('%s' already exists in index)"
+msgstr "pas d'ajout d'alias de fichier '%s'(« %s » existe déjà dans l'index)"
+
+#: read-cache.c:689
+msgid "cannot create an empty blob in the object database"
+msgstr "impossible de créer un blob vide dans la base de donnée d'objets"
+
+#: read-cache.c:710
+#, c-format
+msgid "%s: can only add regular files, symbolic links or git-directories"
+msgstr ""
+"%s : ne peut ajouter que des fichiers normaux, des liens symboliques ou des "
+"répertoires git"
+
+#: read-cache.c:765
+#, c-format
+msgid "unable to index file '%s'"
+msgstr "indexation du fichier '%s' impossible"
+
+#: read-cache.c:784
+#, c-format
+msgid "unable to add '%s' to index"
+msgstr "impossible d'ajouter '%s' à l'index"
+
+#: read-cache.c:795
+#, c-format
+msgid "unable to stat '%s'"
+msgstr "fstat de '%s' impossible"
+
+#: read-cache.c:1304
+#, c-format
+msgid "'%s' appears as both a file and as a directory"
+msgstr "'%s' existe à la fois comme un fichier et un répertoire"
+
+#: read-cache.c:1489
 msgid "Refresh index"
 msgstr "Rafraîchir l'index"
 
-#: read-cache.c:1604
+#: read-cache.c:1603
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -3826,7 +4013,7 @@ msgstr ""
 "version d'index renseignée, mais la valeur est invalide.\n"
 "Utilisation de la version %i"
 
-#: read-cache.c:1614
+#: read-cache.c:1613
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -3835,59 +4022,143 @@ msgstr ""
 "GIT_INDEX_VERSION est renseigné, mais la valeur est invalide.\n"
 "Utilisation de la version %i"
 
-#: read-cache.c:1792
+#: read-cache.c:1684
+#, c-format
+msgid "bad signature 0x%08x"
+msgstr "signature incorrecte 0x%08x"
+
+#: read-cache.c:1687
+#, c-format
+msgid "bad index version %d"
+msgstr "mauvaise version d'index %d"
+
+#: read-cache.c:1696
+msgid "bad index file sha1 signature"
+msgstr "mauvaise signature sha1 d'index"
+
+#: read-cache.c:1726
+#, c-format
+msgid "index uses %.4s extension, which we do not understand"
+msgstr "l'index utilise l'extension %.4s qui n'est pas comprise"
+
+#: read-cache.c:1728
+#, c-format
+msgid "ignoring %.4s extension"
+msgstr "extension %.4s ignorée"
+
+#: read-cache.c:1765
+#, c-format
+msgid "unknown index entry format 0x%08x"
+msgstr "format d'entrée d'index inconnu 0x%08x"
+
+#: read-cache.c:1781
 #, c-format
 msgid "malformed name field in the index, near path '%s'"
 msgstr "champ de nom malformé dans l'index, près du chemin '%s'"
 
-#: read-cache.c:1960 rerere.c:565 rerere.c:599 rerere.c:1111 builtin/add.c:458
-#: builtin/check-ignore.c:177 builtin/checkout.c:289 builtin/checkout.c:585
-#: builtin/checkout.c:953 builtin/clean.c:954 builtin/commit.c:343
-#: builtin/diff-tree.c:115 builtin/grep.c:489 builtin/mv.c:144
-#: builtin/reset.c:244 builtin/rm.c:270 builtin/submodule--helper.c:329
+#: read-cache.c:1836
+msgid "unordered stage entries in index"
+msgstr "entrées de préparation non ordonnées dans l'index"
+
+#: read-cache.c:1839
+#, c-format
+msgid "multiple stage entries for merged file '%s'"
+msgstr "entrées multiples de préparation pour le fichier fusionné '%s'"
+
+#: read-cache.c:1842
+#, c-format
+msgid "unordered stage entries for '%s'"
+msgstr "entrées de préparation non ordonnées pour '%s'"
+
+#: read-cache.c:1949 read-cache.c:2227 rerere.c:565 rerere.c:599 rerere.c:1111
+#: builtin/add.c:459 builtin/check-ignore.c:178 builtin/checkout.c:294
+#: builtin/checkout.c:622 builtin/checkout.c:991 builtin/clean.c:955
+#: builtin/commit.c:344 builtin/diff-tree.c:116 builtin/grep.c:498
+#: builtin/mv.c:145 builtin/reset.c:245 builtin/rm.c:271
+#: builtin/submodule--helper.c:330
 msgid "index file corrupt"
 msgstr "fichier d'index corrompu"
 
-#: read-cache.c:2101
+#: read-cache.c:2090
 #, c-format
 msgid "unable to create load_cache_entries thread: %s"
 msgstr "impossible de créer le fil load_cache_entries : %s"
 
-#: read-cache.c:2114
+#: read-cache.c:2103
 #, c-format
 msgid "unable to join load_cache_entries thread: %s"
 msgstr "impossible de joindre le fil load_cach_entries : %s"
 
-#: read-cache.c:2201
+#: read-cache.c:2136
+#, c-format
+msgid "%s: index file open failed"
+msgstr "%s : l'ouverture du fichier d'index a échoué"
+
+#: read-cache.c:2140
+#, c-format
+msgid "%s: cannot stat the open index"
+msgstr "%s : impossible de faire un stat sur l'index ouvert"
+
+#: read-cache.c:2144
+#, c-format
+msgid "%s: index file smaller than expected"
+msgstr "%s : fichier d'index plus petit qu'attendu"
+
+#: read-cache.c:2148
+#, c-format
+msgid "%s: unable to map index file"
+msgstr "%s : impossible de mapper le fichier d'index"
+
+#: read-cache.c:2190
 #, c-format
 msgid "unable to create load_index_extensions thread: %s"
 msgstr "impossible de créer le fil load_index_extensions : %s"
 
-#: read-cache.c:2228
+#: read-cache.c:2217
 #, c-format
 msgid "unable to join load_index_extensions thread: %s"
 msgstr "impossible de joindre le fil load_index_extensions : %s"
 
-#: read-cache.c:2982 sequencer.c:4727 wrapper.c:658 builtin/merge.c:1086
+#: read-cache.c:2239
+#, c-format
+msgid "could not freshen shared index '%s'"
+msgstr "impossible de rafraîchir l'index partagé '%s'"
+
+#: read-cache.c:2274
+#, c-format
+msgid "broken index, expect %s in %s, got %s"
+msgstr "index cassé, %s attendu dans %s, %s obtenu"
+
+#: read-cache.c:2971 sequencer.c:4791 wrapper.c:658 builtin/merge.c:1087
 #, c-format
 msgid "could not close '%s'"
 msgstr "impossible de fermer '%s'"
 
-#: read-cache.c:3055 sequencer.c:2203 sequencer.c:3592
+#: read-cache.c:3044 sequencer.c:2237 sequencer.c:3647
 #, c-format
 msgid "could not stat '%s'"
 msgstr "stat impossible de '%s'"
 
-#: read-cache.c:3068
+#: read-cache.c:3057
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr "impossible d'ouvrir le répertoire git : %s"
 
-#: read-cache.c:3080
+#: read-cache.c:3069
 #, c-format
 msgid "unable to unlink: %s"
 msgstr "échec lors de l'unlink : %s"
 
+#: read-cache.c:3088
+#, c-format
+msgid "cannot fix permission bits on '%s'"
+msgstr "impossible de régler les bits de droit de '%s'"
+
+#: read-cache.c:3237
+#, c-format
+msgid "%s: cannot drop to stage #0"
+msgstr "%s : impossible de revenir à l'étape 0"
+
 #: rebase-interactive.c:10
 msgid ""
 "\n"
@@ -3919,7 +4190,7 @@ msgstr ""
 " f, fixup <commit> = comme \"squash\", mais en éliminant son message\n"
 " x, exec <commit> = lancer la commande (reste de la ligne) dans un shell\n"
 " b, break = s'arrêter ici (on peut continuer ensuite avec 'git rebase --"
-"contine')\n"
+"continue')\n"
 " d, drop <commit> = supprimer le commit\n"
 " l, label <label> = étiqueter la HEAD courante avec un nom\n"
 " t, reset <label> = réinitialiser HEAD à label\n"
@@ -3976,8 +4247,8 @@ msgstr ""
 msgid "Note that empty commits are commented out"
 msgstr "Veuillez noter que les commits vides sont en commentaire"
 
-#: rebase-interactive.c:62 rebase-interactive.c:75 sequencer.c:2186
-#: sequencer.c:4505 sequencer.c:4561 sequencer.c:4836
+#: rebase-interactive.c:62 rebase-interactive.c:75 sequencer.c:2219
+#: sequencer.c:4569 sequencer.c:4625 sequencer.c:4900
 #, c-format
 msgid "could not read '%s'."
 msgstr "impossible de lire '%s'."
@@ -3992,7 +4263,7 @@ msgstr "%s ne pointe pas sur un objet valide!"
 msgid "ignoring dangling symref %s"
 msgstr "symref pendant %s ignoré"
 
-#: refs.c:585 ref-filter.c:1951
+#: refs.c:585 ref-filter.c:1976
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "réf cassé %s ignoré"
@@ -4017,15 +4288,15 @@ msgstr "la référence '%s' existe déjà"
 msgid "unexpected object ID when writing '%s'"
 msgstr "id d'objet inattendu pendant l'écriture de '%s'"
 
-#: refs.c:740 sequencer.c:394 sequencer.c:2510 sequencer.c:2636
-#: sequencer.c:2650 sequencer.c:2877 sequencer.c:4725 sequencer.c:4788
+#: refs.c:740 sequencer.c:396 sequencer.c:2549 sequencer.c:2675
+#: sequencer.c:2689 sequencer.c:2923 sequencer.c:4789 sequencer.c:4852
 #: wrapper.c:656
 #, c-format
 msgid "could not write to '%s'"
 msgstr "impossible d'écrire dans '%s'"
 
-#: refs.c:767 sequencer.c:4723 sequencer.c:4782 wrapper.c:225 wrapper.c:395
-#: builtin/am.c:728
+#: refs.c:767 sequencer.c:4787 sequencer.c:4846 wrapper.c:225 wrapper.c:395
+#: builtin/am.c:713 builtin/rebase.c:575
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "impossible d'ouvrir '%s' en écriture"
@@ -4101,7 +4372,7 @@ msgid "invalid refspec '%s'"
 msgstr "spécificateur de réference invalide : '%s'"
 
 # à priori on parle d'une branche ici
-#: ref-filter.c:39 wt-status.c:1855
+#: ref-filter.c:39 wt-status.c:1861
 msgid "gone"
 msgstr "disparue"
 
@@ -4150,149 +4421,154 @@ msgstr "argument %%(%s) non reconnu : %s"
 msgid "%%(objecttype) does not take arguments"
 msgstr "%%(objecttype) n'accepte pas d'argument"
 
-#: ref-filter.c:235
+#: ref-filter.c:245
+#, c-format
+msgid "unrecognized %%(objectsize) argument: %s"
+msgstr "argument %%(objectsize) non reconnu : %s"
+
+#: ref-filter.c:253
 #, c-format
-msgid "%%(objectsize) does not take arguments"
-msgstr "%%(objectsize) n'accepte pas d'argument"
+msgid "%%(deltabase) does not take arguments"
+msgstr "%%(deltabase) n'accepte pas d'argument"
 
-#: ref-filter.c:247
+#: ref-filter.c:265
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr "%%(body) n'accepte pas d'argument"
 
-#: ref-filter.c:256
+#: ref-filter.c:274
 #, c-format
 msgid "%%(subject) does not take arguments"
 msgstr "%%(subject) n'accepte pas d'argument"
 
-#: ref-filter.c:278
+#: ref-filter.c:296
 #, c-format
 msgid "unknown %%(trailers) argument: %s"
 msgstr "argument %%(trailers) inconnu : %s"
 
-#: ref-filter.c:307
+#: ref-filter.c:325
 #, c-format
 msgid "positive value expected contents:lines=%s"
 msgstr "valeur positive attendue contents:lines=%s"
 
-#: ref-filter.c:309
+#: ref-filter.c:327
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr "argument %%(contents) non reconnu : %s"
 
-#: ref-filter.c:324
+#: ref-filter.c:342
 #, c-format
 msgid "positive value expected objectname:short=%s"
 msgstr "valeur positive attendue objectname:short=%s"
 
-#: ref-filter.c:328
+#: ref-filter.c:346
 #, c-format
 msgid "unrecognized %%(objectname) argument: %s"
 msgstr "argument %%(objectname) non reconnu : %s"
 
-#: ref-filter.c:358
+#: ref-filter.c:376
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr "format attendu : %%(align:<largeur>,<position>)"
 
-#: ref-filter.c:370
+#: ref-filter.c:388
 #, c-format
 msgid "unrecognized position:%s"
 msgstr "position non reconnue : %s"
 
-#: ref-filter.c:377
+#: ref-filter.c:395
 #, c-format
 msgid "unrecognized width:%s"
 msgstr "largeur non reconnue : %s"
 
-#: ref-filter.c:386
+#: ref-filter.c:404
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr "argument %%(align) non reconnu : %s"
 
-#: ref-filter.c:394
+#: ref-filter.c:412
 #, c-format
 msgid "positive width expected with the %%(align) atom"
 msgstr "valeur positive attendue avec l'atome %%(align)"
 
-#: ref-filter.c:412
+#: ref-filter.c:430
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr "argument %%(if) non reconnu : %s"
 
-#: ref-filter.c:508
+#: ref-filter.c:527
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr "nom de champ malformé %.*s"
 
-#: ref-filter.c:535
+#: ref-filter.c:554
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr "nom de champ inconnu : %.*s"
 
-#: ref-filter.c:539
+#: ref-filter.c:558
 #, c-format
 msgid ""
 "not a git repository, but the field '%.*s' requires access to object data"
 msgstr ""
-"pas un dépôt git, mais le champ '%.*s' nécessite l'accès au données d'objet"
+"pas un dépôt git, mais le champ '%.*s' nécessite l'accès aux données d'objet"
 
-#: ref-filter.c:663
+#: ref-filter.c:682
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr "format : atome %%(if) utilisé sans un atome %%(then)"
 
-#: ref-filter.c:726
+#: ref-filter.c:745
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr "format : atome %%(then) utilisé sans un atome %%(if)"
 
-#: ref-filter.c:728
+#: ref-filter.c:747
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr "format : atome %%(then) utilisé plus d'une fois"
 
-#: ref-filter.c:730
+#: ref-filter.c:749
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr "format: atome %%(then) utilisé après %%(else)"
 
-#: ref-filter.c:758
+#: ref-filter.c:777
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr "format : atome %%(else) utilisé sans un atome %%(if)"
 
-#: ref-filter.c:760
+#: ref-filter.c:779
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr "format : atome %%(else) utilisé sans un atome %%(then)"
 
-#: ref-filter.c:762
+#: ref-filter.c:781
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr "format : atome %%(else) utilisé plus d'une fois"
 
-#: ref-filter.c:777
+#: ref-filter.c:796
 #, c-format
 msgid "format: %%(end) atom used without corresponding atom"
 msgstr "format : atome %%(end) utilisé sans atome correspondant"
 
-#: ref-filter.c:834
+#: ref-filter.c:853
 #, c-format
 msgid "malformed format string %s"
 msgstr "Chaîne de formatage mal formée %s"
 
-#: ref-filter.c:1424
+#: ref-filter.c:1447
 #, c-format
 msgid "(no branch, rebasing %s)"
 msgstr "(aucune branche, rebasage de %s)"
 
-#: ref-filter.c:1427
+#: ref-filter.c:1450
 #, c-format
 msgid "(no branch, rebasing detached HEAD %s)"
 msgstr "(aucune branche, rebasage de la HEAD détachée %s)"
 
-#: ref-filter.c:1430
+#: ref-filter.c:1453
 #, c-format
 msgid "(no branch, bisect started on %s)"
 msgstr "(aucune branche, bisect a démarré sur %s)"
@@ -4300,7 +4576,7 @@ msgstr "(aucune branche, bisect a démarré sur %s)"
 #. TRANSLATORS: make sure this matches "HEAD
 #. detached at " in wt-status.c
 #.
-#: ref-filter.c:1438
+#: ref-filter.c:1461
 #, c-format
 msgid "(HEAD detached at %s)"
 msgstr "(HEAD détachée sur %s)"
@@ -4308,145 +4584,296 @@ msgstr "(HEAD détachée sur %s)"
 #. TRANSLATORS: make sure this matches "HEAD
 #. detached from " in wt-status.c
 #.
-#: ref-filter.c:1445
+#: ref-filter.c:1468
 #, c-format
 msgid "(HEAD detached from %s)"
 msgstr "(HEAD détachée depuis %s)"
 
-#: ref-filter.c:1449
+#: ref-filter.c:1472
 msgid "(no branch)"
 msgstr "(aucune branche)"
 
-#: ref-filter.c:1483 ref-filter.c:1638
+#: ref-filter.c:1506 ref-filter.c:1663
 #, c-format
 msgid "missing object %s for %s"
 msgstr "objet manquant %s pour %s"
 
-#: ref-filter.c:1491
+#: ref-filter.c:1516
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
-msgstr "echec de parse_object_buffer sur %s pour %s"
+msgstr "échec de parse_object_buffer sur %s pour %s"
 
-#: ref-filter.c:1857
+#: ref-filter.c:1882
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "objet malformé à '%s'"
 
-#: ref-filter.c:1946
+#: ref-filter.c:1971
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "réf avec un nom cassé %s ignoré"
 
-#: ref-filter.c:2232
+#: ref-filter.c:2257
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "format: atome %%(end) manquant"
 
-#: ref-filter.c:2338
+#: ref-filter.c:2352
+#, c-format
+msgid "option `%s' is incompatible with --merged"
+msgstr "l'option « %s » est incompatible avec --merged"
+
+#: ref-filter.c:2355
+#, c-format
+msgid "option `%s' is incompatible with --no-merged"
+msgstr "l'option « %s » est incompatible avec --no-merged"
+
+#: ref-filter.c:2365
 #, c-format
 msgid "malformed object name %s"
 msgstr "nom d'objet malformé %s"
 
-#: remote.c:607
+#: ref-filter.c:2370
+#, c-format
+msgid "option `%s' must point to a commit"
+msgstr "l'option '%s' doit pointer sur un commit"
+
+#: remote.c:363
+#, c-format
+msgid "config remote shorthand cannot begin with '/': %s"
+msgstr ""
+"un raccourci de configuration de distant ne peut pas commencer par '/' : %s"
+
+#: remote.c:410
+msgid "more than one receivepack given, using the first"
+msgstr "plus d'un receivepack fournis, utilisation du premier"
+
+#: remote.c:418
+msgid "more than one uploadpack given, using the first"
+msgstr "plus d'un uploadpack fournis, utilisation du premier"
+
+#: remote.c:608
 #, 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:611
+#: remote.c:612
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s suit habituellement %s, pas %s"
 
-#: remote.c:615
+#: remote.c:616
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s suit à la fois %s et %s"
 
-#: remote.c:623
-msgid "Internal error"
-msgstr "Erreur interne"
+#: remote.c:684
+#, c-format
+msgid "key '%s' of pattern had no '*'"
+msgstr "la clé '%s' du modèle n'a pas de '*'"
+
+#: remote.c:694
+#, c-format
+msgid "value '%s' of pattern has no '*'"
+msgstr "la valeur '%s' du modèle n'a pas de '*'"
+
+#: remote.c:1000
+#, c-format
+msgid "src refspec %s does not match any"
+msgstr ""
+"le spécificateur de référence source %s ne correspond à aucune référence"
+
+#: remote.c:1005
+#, c-format
+msgid "src refspec %s matches more than one"
+msgstr ""
+"le spécificateur de référence source %s correspond à plus d'une référence"
+
+#. TRANSLATORS: "matches '%s'%" is the <dst> part of "git push
+#. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
+#. the <src>.
+#.
+#: remote.c:1020
+#, c-format
+msgid ""
+"The destination you provided is not a full refname (i.e.,\n"
+"starting with \"refs/\"). We tried to guess what you meant by:\n"
+"\n"
+"- Looking for a ref that matches '%s' on the remote side.\n"
+"- Checking if the <src> being pushed ('%s')\n"
+"  is a ref in \"refs/{heads,tags}/\". If so we add a corresponding\n"
+"  refs/{heads,tags}/ prefix on the remote side.\n"
+"\n"
+"Neither worked, so we gave up. You must fully qualify the ref."
+msgstr ""
+"La destination que vous avez fournie n'est pas un nom de référence complète\n"
+"(c'est-à-dire commençant par \"ref/\"). Essai d'approximation par :\n"
+"\n"
+"- Recherche d'une référence qui correspond à '%s' sur le serveur distant.\n"
+"- Vérification si la <source> en cours de poussée ('%s')\n"
+"  est une référence dans \"refs/{heads,tags}/\". Si oui, ajout du préfixe\n"
+"  refs/{heads,tags}/ correspondant du côté distant.\n"
+"\n"
+"Aucune n'a fonctionné, donc abandon. Veuillez spécifier une référence "
+"totalement qualifiée."
+
+#: remote.c:1040
+#, c-format
+msgid ""
+"The <src> part of the refspec is a commit object.\n"
+"Did you mean to create a new branch by pushing to\n"
+"'%s:refs/heads/%s'?"
+msgstr ""
+"la partie <source> du spécificateur de référence est un objet commit.\n"
+"Souhaitiez-vous créer une nouvelle branche en poussant sur\n"
+"'%s:refs/heads/%s' ?"
+
+#: remote.c:1045
+#, c-format
+msgid ""
+"The <src> part of the refspec is a tag object.\n"
+"Did you mean to create a new tag by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+"la partie <source> du spécificateur de référence est un objet étiquette.\n"
+"Souhaitiez-vous créer une nouvelle étiquette en poussant sur\n"
+"'%s:refs/tags/%s' ?"
+
+#: remote.c:1050
+#, c-format
+msgid ""
+"The <src> part of the refspec is a tree object.\n"
+"Did you mean to tag a new tree by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+"la partie <source> du spécificateur de référence est un objet arbre.\n"
+"Souhaitiez-vous créer un nouvel arbre en poussant sur\n"
+"'%s:refs/tags/%s' ?"
+
+#: remote.c:1055
+#, c-format
+msgid ""
+"The <src> part of the refspec is a blob object.\n"
+"Did you mean to tag a new blob by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+"la partie <source> du spécificateur de référence est un objet blob.\n"
+"Souhaitiez-vous créer un nouveau blob en poussant sur\n"
+"'%s:refs/tags/%s' ?"
+
+#: remote.c:1091
+#, c-format
+msgid "%s cannot be resolved to branch"
+msgstr "'%s' ne peut pas être résolue comme une branche"
+
+#: remote.c:1102
+#, c-format
+msgid "unable to delete '%s': remote ref does not exist"
+msgstr "suppression d '%s' impossible : la référence distante n'existe pas"
+
+#: remote.c:1114
+#, c-format
+msgid "dst refspec %s matches more than one"
+msgstr ""
+"le spécificateur de référence dst %s correspond à plus d'un spécificateur de "
+"références"
+
+#: remote.c:1121
+#, c-format
+msgid "dst ref %s receives from more than one src"
+msgstr "le spécificateur de référence dst %s reçoit depuis plus d'une source"
 
-#: remote.c:1569 remote.c:1670
+#: remote.c:1624 remote.c:1725
 msgid "HEAD does not point to a branch"
 msgstr "HEAD ne pointe pas sur une branche"
 
-#: remote.c:1578
+#: remote.c:1633
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "pas de branche '%s'"
 
-#: remote.c:1581
+#: remote.c:1636
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "aucune branche amont configurée pour la branche '%s'"
 
-#: remote.c:1587
+#: remote.c:1642
 #, 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:1602
+#: remote.c:1657
 #, 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:1614
+#: remote.c:1669
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "la branche '%s' n'a aucune branche distante de poussée"
 
-#: remote.c:1624
+#: remote.c:1679
 #, 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:1637
+#: remote.c:1692
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "la poussée n'a pas de destination (push.default vaut 'nothing')"
 
-#: remote.c:1659
+#: remote.c:1714
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr ""
 "impossible de résoudre une poussée 'simple' pour une destination unique"
 
-#: remote.c:1935
+#: remote.c:1840
+#, c-format
+msgid "couldn't find remote ref %s"
+msgstr "impossible de trouver la référence distante %s"
+
+#: remote.c:1853
+#, c-format
+msgid "* Ignoring funny ref '%s' locally"
+msgstr "* Référence bizarre '%s' ignorée localement"
+
+#: remote.c:1990
 #, 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:1939
+#: remote.c:1994
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (utilisez \"git branch --unset-upstream\" pour corriger)\n"
 
-#: remote.c:1942
+#: remote.c:1997
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr "Votre branche est à jour avec '%s'.\n"
 
-#: remote.c:1946
+#: remote.c:2001
 #, 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:1949
+#: remote.c:2004
 #, c-format
 msgid "  (use \"%s\" for details)\n"
 msgstr "  (utilisez \"%s\" pour plus de détails)\n"
 
-#: remote.c:1953
+#: remote.c:2008
 #, 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:1959
+#: remote.c:2014
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (utilisez \"git push\" pour publier vos commits locaux)\n"
 
-#: remote.c:1962
+#: remote.c:2017
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -4458,11 +4885,11 @@ msgstr[1] ""
 "Votre branche est en retard sur '%s' de %d commits, et peut être mise à jour "
 "en avance rapide.\n"
 
-#: remote.c:1970
+#: remote.c:2025
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (utilisez \"git pull\" pour mettre à jour votre branche locale)\n"
 
-#: remote.c:1973
+#: remote.c:2028
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -4477,11 +4904,16 @@ msgstr[1] ""
 "Votre branche et '%s' ont divergé,\n"
 "et ont %d et %d commits différents chacune respectivement.\n"
 
-#: remote.c:1983
+#: remote.c:2038
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr ""
 "  (utilisez \"git pull\" pour fusionner la branche distante dans la vôtre)\n"
 
+#: remote.c:2221
+#, c-format
+msgid "cannot parse expected object name '%s'"
+msgstr "impossible d'analyser le nom attendu d'objet '%s'"
+
 #: replace-object.c:21
 #, c-format
 msgid "bad replace ref name: %s"
@@ -4505,7 +4937,8 @@ msgstr "MERGE_RR corrompu"
 msgid "unable to write rerere record"
 msgstr "impossible d'écrire l'enregistrement rerere"
 
-#: rerere.c:485 rerere.c:692 sequencer.c:3136 sequencer.c:3162
+#: rerere.c:485 rerere.c:692 sequencer.c:3186 sequencer.c:3212
+#: builtin/fsck.c:314
 #, c-format
 msgid "could not write '%s'"
 msgstr "impossible d'écrire '%s'"
@@ -4560,8 +4993,8 @@ msgstr "impossible de délier '%s' qui est errant"
 msgid "Recorded preimage for '%s'"
 msgstr "Pré-image enregistrée pour '%s'"
 
-#: rerere.c:881 submodule.c:1763 builtin/submodule--helper.c:1413
-#: builtin/submodule--helper.c:1423
+#: rerere.c:881 submodule.c:2012 builtin/submodule--helper.c:1417
+#: builtin/submodule--helper.c:1427
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "impossible de créer le répertoire '%s'"
@@ -4595,29 +5028,29 @@ msgstr "Résolution  pour '%s' oubliée\n"
 msgid "unable to open rr-cache directory"
 msgstr "impossible d'ouvrir le répertoire rr-cache"
 
-#: revision.c:2324
+#: revision.c:2484
 msgid "your current branch appears to be broken"
 msgstr "votre branche actuelle semble cassée"
 
-#: revision.c:2327
+#: revision.c:2487
 #, 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:2523
+#: revision.c:2684
 msgid "--first-parent is incompatible with --bisect"
 msgstr "--first-parent est incompatible avec --bisect"
 
-#: run-command.c:740
+#: run-command.c:742
 msgid "open /dev/null failed"
 msgstr "échec de l'ouverture de /dev/null"
 
-#: run-command.c:1229
+#: run-command.c:1231
 #, c-format
 msgid "cannot create async thread: %s"
 msgstr "impossible de créer un fil asynchrone : %s"
 
-#: run-command.c:1293
+#: run-command.c:1295
 #, c-format
 msgid ""
 "The '%s' hook was ignored because it's not set as executable.\n"
@@ -4627,31 +5060,31 @@ msgstr ""
 "Vous pouvez désactiver cet avertissement avec `git config advice.ignoredHook "
 "false`."
 
-#: send-pack.c:142
+#: 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:144
+#: 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:146
+#: send-pack.c:145
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr "le dépaquetage a échoué : %s"
 
-#: send-pack.c:308
+#: send-pack.c:306
 msgid "failed to sign the push certificate"
 msgstr "impossible de signer le certificat de poussée"
 
-#: send-pack.c:421
+#: send-pack.c:420
 msgid "the receiving end does not support --signed push"
 msgstr "Le receveur ne gère pas les poussées avec --signed"
 
-#: send-pack.c:423
+#: send-pack.c:422
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
@@ -4659,42 +5092,42 @@ msgstr ""
 "pas d'envoi de certificat de poussée car le receveur ne gère pas les "
 "poussées avec --signed"
 
-#: send-pack.c:435
+#: send-pack.c:434
 msgid "the receiving end does not support --atomic push"
 msgstr "Le receveur ne gère pas les poussées avec --atomic"
 
-#: send-pack.c:440
+#: send-pack.c:439
 msgid "the receiving end does not support push options"
 msgstr "Le receveur ne gère pas les options de poussées"
 
-#: sequencer.c:183
+#: sequencer.c:184
 #, c-format
 msgid "invalid commit message cleanup mode '%s'"
 msgstr "mode de nettoyage invalide de message de validation '%s'"
 
-#: sequencer.c:287
+#: sequencer.c:288
 #, c-format
 msgid "could not delete '%s'"
 msgstr "Impossible de supprimer '%s'"
 
-#: sequencer.c:313
+#: sequencer.c:314
 msgid "revert"
 msgstr "revert"
 
-#: sequencer.c:315
+#: sequencer.c:316
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:317
+#: sequencer.c:318
 msgid "rebase -i"
 msgstr "rebase -i"
 
-#: sequencer.c:319
+#: sequencer.c:320
 #, c-format
 msgid "unknown action: %d"
 msgstr "action inconnue : %d"
 
-#: sequencer.c:376
+#: sequencer.c:378
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -4702,7 +5135,7 @@ msgstr ""
 "après résolution des conflits, marquez les chemins corrigés\n"
 "avec 'git add <chemins>' ou 'git rm <chemins>'"
 
-#: sequencer.c:379
+#: sequencer.c:381
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -4712,39 +5145,39 @@ msgstr ""
 "avec 'git add <chemins>' ou 'git rm <chemins>'\n"
 "puis validez le résultat avec 'git commit'"
 
-#: sequencer.c:392 sequencer.c:2632
+#: sequencer.c:394 sequencer.c:2671
 #, c-format
 msgid "could not lock '%s'"
 msgstr "impossible de verrouiller '%s'"
 
-#: sequencer.c:399
+#: sequencer.c:401
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "impossible d'écrire la fin de ligne dans '%s'"
 
-#: sequencer.c:404 sequencer.c:2515 sequencer.c:2638 sequencer.c:2652
-#: sequencer.c:2885
+#: sequencer.c:406 sequencer.c:2554 sequencer.c:2677 sequencer.c:2691
+#: sequencer.c:2931
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr "échec lors de la finalisation de '%s'"
 
-#: sequencer.c:427 sequencer.c:921 sequencer.c:1594 sequencer.c:2535
-#: sequencer.c:2867 sequencer.c:2974 builtin/am.c:260 builtin/commit.c:746
-#: builtin/merge.c:1084 builtin/rebase.c:152
+#: sequencer.c:429 sequencer.c:931 sequencer.c:1615 sequencer.c:2574
+#: sequencer.c:2913 sequencer.c:3022 builtin/am.c:245 builtin/commit.c:748
+#: builtin/merge.c:1085 builtin/rebase.c:154
 #, c-format
 msgid "could not read '%s'"
 msgstr "impossible de lire '%s'"
 
-#: sequencer.c:453
+#: sequencer.c:455
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "vos modifications locales seraient écrasées par %s."
 
-#: sequencer.c:457
+#: sequencer.c:459
 msgid "commit your changes or stash them to proceed."
 msgstr "validez vos modifications ou les remiser pour continuer."
 
-#: sequencer.c:486
+#: sequencer.c:491
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s : avance rapide"
@@ -4752,70 +5185,70 @@ msgstr "%s : avance rapide"
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase -i".
 #.
-#: sequencer.c:575
+#: sequencer.c:582
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: Impossible d'écrire le nouveau fichier index"
 
-#: sequencer.c:591
+#: sequencer.c:598
 msgid "unable to update cache tree"
 msgstr "impossible de mettre à jour l'arbre de cache"
 
-#: sequencer.c:604
+#: sequencer.c:612
 msgid "could not resolve HEAD commit"
 msgstr "impossible de résoudre le commit HEAD"
 
-#: sequencer.c:684
+#: sequencer.c:692
 #, c-format
 msgid "no key present in '%.*s'"
 msgstr "aucune clé présente dans '%.*s'"
 
-#: sequencer.c:695
+#: sequencer.c:703
 #, c-format
 msgid "unable to dequote value of '%s'"
 msgstr "Impossible de décoter la valeur de '%s'"
 
-#: sequencer.c:732 wrapper.c:227 wrapper.c:397 builtin/am.c:719
-#: builtin/am.c:811 builtin/merge.c:1081
+#: sequencer.c:740 wrapper.c:227 wrapper.c:397 builtin/am.c:704
+#: builtin/am.c:796 builtin/merge.c:1082 builtin/rebase.c:617
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "impossible d'ouvrir '%s' en lecture"
 
-#: sequencer.c:742
+#: sequencer.c:750
 msgid "'GIT_AUTHOR_NAME' already given"
 msgstr "'GIT_AUTHOR_NAME' déjà fourni"
 
-#: sequencer.c:747
+#: sequencer.c:755
 msgid "'GIT_AUTHOR_EMAIL' already given"
 msgstr "'GIT_AUTHOR_EMAIL' déjà fourni"
 
-#: sequencer.c:752
+#: sequencer.c:760
 msgid "'GIT_AUTHOR_DATE' already given"
 msgstr "'GIT_AUTHOR_DATE' déjà fourni"
 
-#: sequencer.c:756
+#: sequencer.c:764
 #, c-format
 msgid "unknown variable '%s'"
 msgstr "variable inconnue '%s'"
 
-#: sequencer.c:761
+#: sequencer.c:769
 msgid "missing 'GIT_AUTHOR_NAME'"
 msgstr "'GIT_AUTHOR_NAME' manquant"
 
-#: sequencer.c:763
+#: sequencer.c:771
 msgid "missing 'GIT_AUTHOR_EMAIL'"
 msgstr "'GIT_AUTHOR_EMAIL' manquant"
 
-#: sequencer.c:765
+#: sequencer.c:773
 msgid "missing 'GIT_AUTHOR_DATE'"
 msgstr "'GIT_AUTHOR_DATE' manquant"
 
-#: sequencer.c:825
+#: sequencer.c:833
 #, c-format
 msgid "invalid date format '%s' in '%s'"
 msgstr "format de date invalide '%s' dans '%s'"
 
-#: sequencer.c:842
+#: sequencer.c:850
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -4844,15 +5277,15 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:935
+#: sequencer.c:945
 msgid "writing root commit"
 msgstr "écriture du commit racine"
 
-#: sequencer.c:1142
+#: sequencer.c:1155
 msgid "'prepare-commit-msg' hook failed"
 msgstr "échec du crochet 'prepare-commit-msg'"
 
-#: sequencer.c:1149
+#: sequencer.c:1162
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -4871,7 +5304,8 @@ msgstr ""
 "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"
+"instructions dans votre éditeur pour éditer votre fichier de "
+"configuration :\n"
 "\n"
 "    git config --global --edit\n"
 "\n"
@@ -4880,7 +5314,7 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1162
+#: sequencer.c:1175
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -4906,302 +5340,295 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1202
+#: sequencer.c:1217
 msgid "couldn't look up newly created commit"
 msgstr "impossible de retrouver le commit nouvellement créé"
 
-#: sequencer.c:1204
+#: sequencer.c:1219
 msgid "could not parse newly created commit"
 msgstr "impossible d'analyser le commit nouvellement créé"
 
-#: sequencer.c:1250
+#: sequencer.c:1265
 msgid "unable to resolve HEAD after creating commit"
 msgstr "impossible de résoudre HEAD après création du commit"
 
-#: sequencer.c:1252
+#: sequencer.c:1267
 msgid "detached HEAD"
 msgstr "HEAD détachée"
 
-#: sequencer.c:1256
+#: sequencer.c:1271
 msgid " (root-commit)"
 msgstr " (commit racine)"
 
-#: sequencer.c:1277
+#: sequencer.c:1292
 msgid "could not parse HEAD"
 msgstr "impossible de lire HEAD"
 
-#: sequencer.c:1279
+#: sequencer.c:1294
 #, c-format
 msgid "HEAD %s is not a commit!"
 msgstr "HEAD %s n'est pas un commit !"
 
-#: sequencer.c:1283 builtin/commit.c:1543
+#: sequencer.c:1298 builtin/commit.c:1546
 msgid "could not parse HEAD commit"
 msgstr "impossible d'analyser le commit HEAD"
 
-#: sequencer.c:1334 sequencer.c:1934
+#: sequencer.c:1350 sequencer.c:1964
 msgid "unable to parse commit author"
 msgstr "impossible d'analyser l'auteur du commit"
 
-#: sequencer.c:1344 builtin/am.c:1585 builtin/merge.c:677
+#: sequencer.c:1360 builtin/am.c:1570 builtin/merge.c:678
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree a échoué à écrire un arbre"
 
-#: sequencer.c:1361 sequencer.c:1416
+#: sequencer.c:1377 sequencer.c:1433
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr "impossible de lire le message de validation de '%s'"
 
-#: sequencer.c:1383 builtin/am.c:1606 builtin/commit.c:1646 builtin/merge.c:858
-#: builtin/merge.c:883
+#: sequencer.c:1399 builtin/am.c:1591 builtin/commit.c:1649 builtin/merge.c:859
+#: builtin/merge.c:884
 msgid "failed to write commit object"
 msgstr "échec de l'écriture de l'objet commit"
 
-#: sequencer.c:1443
+#: sequencer.c:1460
 #, c-format
 msgid "could not parse commit %s"
 msgstr "impossible d'analyser le commit %s"
 
-#: sequencer.c:1448
+#: sequencer.c:1465
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr "impossible d'analyser le commit parent %s"
 
-#: sequencer.c:1546 sequencer.c:1654
+#: sequencer.c:1565 sequencer.c:1675
 #, c-format
 msgid "unknown command: %d"
 msgstr "commande inconnue : %d"
 
-#: sequencer.c:1601 sequencer.c:1626
+#: sequencer.c:1622 sequencer.c:1647
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Ceci est la combinaison de %d commits."
 
-#: sequencer.c:1611 sequencer.c:4744
+#: sequencer.c:1632 sequencer.c:4808
 msgid "need a HEAD to fixup"
 msgstr "une HEAD est nécessaire à la correction"
 
-#: sequencer.c:1613 sequencer.c:2912
+#: sequencer.c:1634 sequencer.c:2958
 msgid "could not read HEAD"
 msgstr "Impossible de lire HEAD"
 
-#: sequencer.c:1615
+#: sequencer.c:1636
 msgid "could not read HEAD's commit message"
 msgstr "impossible de lire le message de validation de HEAD"
 
-#: sequencer.c:1621
+#: sequencer.c:1642
 #, c-format
 msgid "cannot write '%s'"
 msgstr "impossible d'écrire '%s'"
 
-#: sequencer.c:1628 git-rebase--preserve-merges.sh:441
+#: sequencer.c:1649 git-rebase--preserve-merges.sh:441
 msgid "This is the 1st commit message:"
 msgstr "Ceci est le premier message de validation :"
 
-#: sequencer.c:1636
+#: sequencer.c:1657
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "impossible de lire le message de validation de %s"
 
-#: sequencer.c:1643
+#: sequencer.c:1664
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Ceci est le message de validation numéro %d :"
 
-#: sequencer.c:1649
+#: sequencer.c:1670
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Le message de validation %d sera ignoré :"
 
-#: sequencer.c:1732
+#: sequencer.c:1758
 msgid "your index file is unmerged."
 msgstr "votre fichier d'index n'est pas fusionné."
 
-#: sequencer.c:1739
+#: sequencer.c:1765
 msgid "cannot fixup root commit"
 msgstr "impossible de réparer le commit racine"
 
-#: sequencer.c:1758
+#: sequencer.c:1784
 #, 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:1766
+#: sequencer.c:1792 sequencer.c:1800
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "le commit %s n'a pas de parent %d"
 
-#: sequencer.c:1770
-#, 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:1776
+#: sequencer.c:1806
 #, 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:1795
+#: sequencer.c:1825
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s : impossible d'analyser le commit parent %s"
 
-#: sequencer.c:1860
+#: sequencer.c:1890
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "impossible de renommer '%s' en '%s'"
 
-#: sequencer.c:1915
+#: sequencer.c:1945
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "impossible d'annuler %s... %s"
 
-#: sequencer.c:1916
+#: sequencer.c:1946
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "impossible d'appliquer %s... %s"
 
-#: sequencer.c:1974
+#: sequencer.c:2005
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s : échec à la lecture de l'index"
 
-#: sequencer.c:1981
+#: sequencer.c:2012
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s : échec du rafraîchissement de l'index"
 
-#: sequencer.c:2062
+#: sequencer.c:2094
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s n'accepte pas d'argument : '%s'"
 
-#: sequencer.c:2071
+#: sequencer.c:2103
 #, c-format
 msgid "missing arguments for %s"
 msgstr "argument manquant pour %s"
 
-#: sequencer.c:2130
+#: sequencer.c:2163
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "ligne %d invalide : %.*s"
 
-#: sequencer.c:2138
+#: sequencer.c:2171
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "'%s' impossible avec le commit précédent"
 
-#: sequencer.c:2209
+#: sequencer.c:2243
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "veuillez corriger ceci en utilisant 'git rebase --edit-todo'."
 
-#: sequencer.c:2211
+#: sequencer.c:2245
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "feuille d'instruction inutilisable : '%s'"
 
-#: sequencer.c:2216
+#: sequencer.c:2250
 msgid "no commits parsed."
 msgstr "aucun commit analysé."
 
-#: sequencer.c:2227
+#: sequencer.c:2261
 msgid "cannot cherry-pick during a revert."
 msgstr "impossible de picorer pendant l'annulation d'un commit."
 
-#: sequencer.c:2229
+#: sequencer.c:2263
 msgid "cannot revert during a cherry-pick."
 msgstr "impossible d'annuler un commit pendant un picorage."
 
-#: sequencer.c:2299
+#: sequencer.c:2333
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "valeur invalide pour %s : %s"
 
-#: sequencer.c:2380
+#: sequencer.c:2420
 msgid "unusable squash-onto"
 msgstr "\"écrase-sur\" inutilisable"
 
-#: sequencer.c:2396
+#: sequencer.c:2436
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "feuille d'options malformée : %s"
 
-#: sequencer.c:2479 sequencer.c:4005
+#: sequencer.c:2518 sequencer.c:4067
 msgid "empty commit set passed"
 msgstr "l'ensemble de commits spécifié est vide"
 
-#: sequencer.c:2487
+#: sequencer.c:2526
 msgid "a cherry-pick or revert is already in progress"
 msgstr "un picorage ou un retour est déjà en cours"
 
-#: sequencer.c:2488
+#: sequencer.c:2527
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr "essayez \"git cherry-pick (--continue|--quit|-- abort)\""
 
-#: sequencer.c:2491
+#: sequencer.c:2530
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "impossible de créer le répertoire de séquenceur '%s'"
 
-#: sequencer.c:2505
+#: sequencer.c:2544
 msgid "could not lock HEAD"
 msgstr "impossible de verrouiller HEAD"
 
-#: sequencer.c:2560 sequencer.c:3761
+#: sequencer.c:2599 sequencer.c:3819
 msgid "no cherry-pick or revert in progress"
 msgstr "aucun picorage ou retour en cours"
 
-#: sequencer.c:2562
+#: sequencer.c:2601
 msgid "cannot resolve HEAD"
 msgstr "impossible de résoudre HEAD"
 
-#: sequencer.c:2564 sequencer.c:2599
+#: sequencer.c:2603 sequencer.c:2638
 msgid "cannot abort from a branch yet to be born"
 msgstr "impossible d'abandonner depuis une branche non encore créée"
 
-#: sequencer.c:2585 builtin/grep.c:721
+#: sequencer.c:2624 builtin/grep.c:732
 #, c-format
 msgid "cannot open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: sequencer.c:2587
+#: sequencer.c:2626
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "impossible de lire '%s' : %s"
 
-#: sequencer.c:2588
+#: sequencer.c:2627
 msgid "unexpected end of file"
 msgstr "fin de fichier inattendue"
 
-#: sequencer.c:2594
+#: sequencer.c:2633
 #, 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:2605
+#: sequencer.c:2644
 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:2709 sequencer.c:3679
+#: sequencer.c:2750 sequencer.c:3735
 #, c-format
 msgid "could not update %s"
 msgstr "impossible de mettre à jour %s"
 
-#: sequencer.c:2747 sequencer.c:3659
+#: sequencer.c:2788 sequencer.c:3715
 msgid "cannot read HEAD"
 msgstr "impossible de lire HEAD"
 
-#: sequencer.c:2762
+#: sequencer.c:2805
 #, c-format
 msgid "unable to copy '%s' to '%s'"
 msgstr "impossible de copier '%s' vers '%s'"
 
-#: sequencer.c:2770
+#: sequencer.c:2813
 #, c-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -5220,27 +5647,27 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:2780
+#: sequencer.c:2823
 #, c-format
 msgid "Could not apply %s... %.*s"
 msgstr "impossible d'appliquer %s... %.*s"
 
-#: sequencer.c:2787
+#: sequencer.c:2830
 #, c-format
 msgid "Could not merge %.*s"
 msgstr "Impossible de fusionner %.*s"
 
-#: sequencer.c:2798 sequencer.c:2802 builtin/difftool.c:640
+#: sequencer.c:2844 sequencer.c:2848 builtin/difftool.c:641
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "impossible de copier '%s' vers '%s'"
 
-#: sequencer.c:2824 sequencer.c:3242 builtin/rebase.c:580 builtin/rebase.c:1019
-#: builtin/rebase.c:1372 builtin/rebase.c:1426
+#: sequencer.c:2870 sequencer.c:3293 builtin/rebase.c:424 builtin/rebase.c:1230
+#: builtin/rebase.c:1591 builtin/rebase.c:1646
 msgid "could not read index"
 msgstr "impossible de lire l'index"
 
-#: sequencer.c:2829
+#: sequencer.c:2875
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -5255,11 +5682,11 @@ msgstr ""
 "git rebase --continue\n"
 "\n"
 
-#: sequencer.c:2835
+#: sequencer.c:2881
 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:2841
+#: sequencer.c:2887
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -5276,77 +5703,77 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:2902
+#: sequencer.c:2948
 #, c-format
 msgid "illegal label name: '%.*s'"
 msgstr "nom de label illégal '%.*s'"
 
-#: sequencer.c:2954
+#: sequencer.c:3002
 msgid "writing fake root commit"
 msgstr "écriture d'un commit racine bidon"
 
-#: sequencer.c:2959
+#: sequencer.c:3007
 msgid "writing squash-onto"
 msgstr "écriture de 'écraser-sur'"
 
-#: sequencer.c:2997 builtin/rebase.c:585 builtin/rebase.c:591
+#: sequencer.c:3045 builtin/rebase.c:429 builtin/rebase.c:435
 #, c-format
 msgid "failed to find tree of %s"
 msgstr "impossible de trouver l'arbre de %s"
 
-#: sequencer.c:3015 builtin/rebase.c:604
+#: sequencer.c:3063 builtin/rebase.c:448
 msgid "could not write index"
 msgstr "impossible d'écrire l'index"
 
-#: sequencer.c:3042
+#: sequencer.c:3090
 #, c-format
 msgid "could not resolve '%s'"
 msgstr "impossible de résoudre '%s'"
 
-#: sequencer.c:3068
+#: sequencer.c:3118
 msgid "cannot merge without a current revision"
 msgstr "impossible de fusionner avec une révision courante"
 
-#: sequencer.c:3090
+#: sequencer.c:3140
 #, c-format
 msgid "unable to parse '%.*s'"
 msgstr "impossible d'analyser '%.*s'"
 
-#: sequencer.c:3099
+#: sequencer.c:3149
 #, c-format
 msgid "nothing to merge: '%.*s'"
 msgstr "rien à fusionner : '%.*s'"
 
-#: sequencer.c:3111
+#: sequencer.c:3161
 msgid "octopus merge cannot be executed on top of a [new root]"
 msgstr ""
 "une fusion octopus ne peut pas être exécutée par dessus une nouvelle racine"
 
-#: sequencer.c:3126
+#: sequencer.c:3176
 #, c-format
 msgid "could not get commit message of '%s'"
 msgstr "impossible de lire le message de validation de '%s'"
 
-#: sequencer.c:3274
+#: sequencer.c:3325
 #, c-format
 msgid "could not even attempt to merge '%.*s'"
 msgstr "impossible de seulement essayer de fusionner '%.*s'"
 
-#: sequencer.c:3290
+#: sequencer.c:3341
 msgid "merge: Unable to write new index file"
 msgstr "fusion : Impossible d'écrire le nouveau fichier index"
 
-#: sequencer.c:3358 builtin/rebase.c:268
+#: sequencer.c:3409 builtin/rebase.c:298
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Autoremisage appliqué.\n"
 
-#: sequencer.c:3370
+#: sequencer.c:3421
 #, c-format
 msgid "cannot store %s"
 msgstr "impossible de stocker %s"
 
-#: sequencer.c:3373 builtin/rebase.c:284
+#: sequencer.c:3424 builtin/rebase.c:314
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -5357,31 +5784,31 @@ 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:3427
+#: sequencer.c:3478
 #, c-format
 msgid "could not checkout %s"
 msgstr "extraction de %s impossible"
 
-#: sequencer.c:3441
+#: sequencer.c:3492
 #, c-format
 msgid "%s: not a valid OID"
 msgstr "%s n'est pas un OID valide"
 
-#: sequencer.c:3446 git-rebase--preserve-merges.sh:724
+#: sequencer.c:3497 git-rebase--preserve-merges.sh:724
 msgid "could not detach HEAD"
 msgstr "Impossible de détacher HEAD"
 
-#: sequencer.c:3461
+#: sequencer.c:3512
 #, c-format
 msgid "Stopped at HEAD\n"
 msgstr "arrêt à HEAD\n"
 
-#: sequencer.c:3463
+#: sequencer.c:3514
 #, c-format
 msgid "Stopped at %s\n"
 msgstr "Arrêté à %s\n"
 
-#: sequencer.c:3471
+#: sequencer.c:3522
 #, c-format
 msgid ""
 "Could not execute the todo command\n"
@@ -5402,48 +5829,48 @@ msgstr ""
 "    git rebase --edit-todo\n"
 "    git rebase --continue\n"
 
-#: sequencer.c:3543
+#: sequencer.c:3597
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "arrêt à %s... %.*s\n"
 
-#: sequencer.c:3622
+#: sequencer.c:3677
 #, c-format
 msgid "unknown command %d"
 msgstr "commande inconnue %d"
 
-#: sequencer.c:3667
+#: sequencer.c:3723
 msgid "could not read orig-head"
 msgstr "impossible de lire orig-head"
 
-#: sequencer.c:3672 sequencer.c:4741
+#: sequencer.c:3728 sequencer.c:4805
 msgid "could not read 'onto'"
 msgstr "impossible de lire 'onto'"
 
-#: sequencer.c:3686
+#: sequencer.c:3742
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "impossible de mettre à jour HEAD sur %s"
 
-#: sequencer.c:3772
+#: sequencer.c:3831
 msgid "cannot rebase: You have unstaged changes."
 msgstr "impossible de rebaser : vous avez des modifications non indexées."
 
-#: sequencer.c:3781
+#: sequencer.c:3840
 msgid "cannot amend non-existing commit"
 msgstr "impossible de corriger un commit non-existant"
 
-#: sequencer.c:3783
+#: sequencer.c:3842
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "fichier invalide : '%s'"
 
-#: sequencer.c:3785
+#: sequencer.c:3844
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "contenu invalide : '%s'"
 
-#: sequencer.c:3788
+#: sequencer.c:3847
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -5453,54 +5880,54 @@ 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:3824 sequencer.c:3862
+#: sequencer.c:3883 sequencer.c:3921
 #, c-format
 msgid "could not write file: '%s'"
 msgstr "impossible d'écrire le fichier : '%s'"
 
-#: sequencer.c:3877
+#: sequencer.c:3936
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "impossible de supprimer CHERRY_PICK_HEAD"
 
-#: sequencer.c:3884
+#: sequencer.c:3943
 msgid "could not commit staged changes."
 msgstr "impossible de valider les modifications indexées."
 
-#: sequencer.c:3982
+#: sequencer.c:4044
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s : impossible de picorer un %s"
 
-#: sequencer.c:3986
+#: sequencer.c:4048
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s : mauvaise révision"
 
-#: sequencer.c:4021
+#: sequencer.c:4083
 msgid "can't revert as initial commit"
 msgstr "impossible d'annuler en tant que commit initial"
 
-#: sequencer.c:4466
+#: sequencer.c:4529
 msgid "make_script: unhandled options"
 msgstr "make_script : options non gérées"
 
-#: sequencer.c:4469
+#: sequencer.c:4532
 msgid "make_script: error preparing revisions"
 msgstr "make_script : erreur lors de la préparation des révisions"
 
-#: sequencer.c:4509 sequencer.c:4565 sequencer.c:4840
+#: sequencer.c:4573 sequencer.c:4629 sequencer.c:4904
 #, c-format
 msgid "unusable todo list: '%s'"
 msgstr "liste à faire inutilisable : '%s'"
 
-#: sequencer.c:4620
+#: sequencer.c:4684
 #, 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:4690
+#: sequencer.c:4754
 #, c-format
 msgid ""
 "Warning: some commits may have been dropped accidentally.\n"
@@ -5509,7 +5936,7 @@ msgstr ""
 "Attention : certains commits ont pu être accidentellement supprimés.\n"
 "Commits supprimés (du plus jeune au plus vieux) :\n"
 
-#: sequencer.c:4697
+#: sequencer.c:4761
 #, c-format
 msgid ""
 "To avoid this message, use \"drop\" to explicitly remove a commit.\n"
@@ -5527,7 +5954,7 @@ msgstr ""
 "Les comportements disponibles sont : ignore, warn, error.\n"
 "\n"
 
-#: sequencer.c:4710
+#: sequencer.c:4774
 #, c-format
 msgid ""
 "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
@@ -5538,31 +5965,31 @@ msgstr ""
 "rebase --continue'.\n"
 "Ou vous pouvez abandonner le rebasage avec 'git rebase --abort'.\n"
 
-#: sequencer.c:4848 sequencer.c:4886
+#: sequencer.c:4912 sequencer.c:4950
 msgid "nothing to do"
 msgstr "rien à faire"
 
-#: sequencer.c:4852
+#: sequencer.c:4916
 #, c-format
 msgid "Rebase %s onto %s (%d command)"
 msgid_plural "Rebase %s onto %s (%d commands)"
 msgstr[0] "Rebasage de %s sur %s (%d commande)"
 msgstr[1] "Rebasage de %s sur %s (%d commandes)"
 
-#: sequencer.c:4864
+#: sequencer.c:4928
 #, c-format
 msgid "could not copy '%s' to '%s'."
 msgstr "impossible de copier '%s' vers '%s'."
 
-#: sequencer.c:4868 sequencer.c:4897
+#: sequencer.c:4932 sequencer.c:4961
 msgid "could not transform the todo list"
 msgstr "impossible de générer la liste à-faire"
 
-#: sequencer.c:4900
+#: sequencer.c:4964
 msgid "could not skip unnecessary pick commands"
 msgstr "impossible d'éviter les commandes de picorage non nécessaires"
 
-#: sequencer.c:4983
+#: sequencer.c:5047
 msgid "the script was already rearranged."
 msgstr "le script a déjà été réarrangé."
 
@@ -5674,30 +6101,30 @@ msgstr "ce n'est pas un dépôt git : '%s'"
 msgid "cannot chdir to '%s'"
 msgstr "impossible de se déplacer vers le répertoire (chdir) '%s'"
 
-#: setup.c:711 setup.c:767 setup.c:777 setup.c:816 setup.c:824 setup.c:839
+#: setup.c:711 setup.c:767 setup.c:777 setup.c:816 setup.c:824
 msgid "cannot come back to cwd"
 msgstr "impossible de revenir au répertoire de travail courant"
 
-#: setup.c:837
-#, 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:848
+#: setup.c:838
 #, c-format
 msgid "failed to stat '%*s%s%s'"
 msgstr "échec du stat de '%*s%s%s'"
 
-#: setup.c:1078
+#: setup.c:1068
 msgid "Unable to read current working directory"
 msgstr "Impossible d'accéder au répertoire de travail courant"
 
-#: setup.c:1090 setup.c:1096
+#: setup.c:1077 setup.c:1083
 #, c-format
 msgid "cannot change to '%s'"
 msgstr "impossible de modifier en '%s'"
 
-#: setup.c:1109
+#: setup.c:1088
+#, 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:1094
 #, c-format
 msgid ""
 "not a git repository (or any parent up to mount point %s)\n"
@@ -5708,7 +6135,7 @@ msgstr ""
 "Arrêt à la limite du système de fichiers (GIT_DISCOVERY_ACROSS_FILESYSTEM "
 "n'est pas défini)."
 
-#: setup.c:1192
+#: setup.c:1204
 #, c-format
 msgid ""
 "problem with core.sharedRepository filemode value (0%.3o).\n"
@@ -5718,281 +6145,281 @@ msgstr ""
 "Le propriétaire des fichiers doit toujours avoir les droits en lecture et "
 "écriture."
 
-#: setup.c:1235
+#: setup.c:1247
 msgid "open /dev/null or dup failed"
 msgstr "échec de l'ouverture ou au dup de /dev/null"
 
-#: setup.c:1250
+#: setup.c:1262
 msgid "fork failed"
 msgstr "échec de la bifurcation"
 
-#: setup.c:1255
+#: setup.c:1267
 msgid "setsid failed"
 msgstr "échec du setsid"
 
-#: sha1-file.c:381
+#: sha1-file.c:445
 #, c-format
 msgid "object directory %s does not exist; check .git/objects/info/alternates"
 msgstr ""
 "le répertoire objet %s n'existe pas ; vérifiez .git/objects/info/alternates"
 
-#: sha1-file.c:432
+#: sha1-file.c:496
 #, c-format
 msgid "unable to normalize alternate object path: %s"
 msgstr "impossible de normaliser le chemin d'objet alternatif : %s"
 
-#: sha1-file.c:503
+#: sha1-file.c:568
 #, c-format
 msgid "%s: ignoring alternate object stores, nesting too deep"
 msgstr "%s : magasins d'objets alternatifs ignorés, récursion trop profonde"
 
-#: sha1-file.c:510
+#: sha1-file.c:575
 #, c-format
 msgid "unable to normalize object directory: %s"
 msgstr "impossible de normaliser le répertoire d'objet : %s"
 
-#: sha1-file.c:565
+#: sha1-file.c:618
 msgid "unable to fdopen alternates lockfile"
 msgstr "impossible d'ouvrir (fdopen) le fichier verrou des alternatives"
 
-#: sha1-file.c:583
+#: sha1-file.c:636
 msgid "unable to read alternates file"
 msgstr "lecture du fichier d'alternatives impossible"
 
-#: sha1-file.c:590
+#: sha1-file.c:643
 msgid "unable to move new alternates file into place"
 msgstr "impossible de déplacer le nouveau fichier d'alternative"
 
-#: sha1-file.c:625
+#: sha1-file.c:678
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "le chemin '%s' n'existe pas"
 
-#: sha1-file.c:651
+#: sha1-file.c:704
 #, 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:657
+#: sha1-file.c:710
 #, 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:663
+#: sha1-file.c:716
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "le dépôt de référence '%s' est superficiel"
 
-#: sha1-file.c:671
+#: sha1-file.c:724
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "le dépôt de référence '%s' est greffé"
 
-#: sha1-file.c:781
+#: sha1-file.c:838
 #, c-format
 msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
 msgstr "essai de mmap %<PRIuMAX> au delà de la limite %<PRIuMAX>"
 
-#: sha1-file.c:806
+#: sha1-file.c:863
 msgid "mmap failed"
 msgstr "échec de mmap"
 
-#: sha1-file.c:973
+#: sha1-file.c:1027
 #, c-format
 msgid "object file %s is empty"
 msgstr "le fichier objet %s est vide"
 
-#: sha1-file.c:1093 sha1-file.c:2215
+#: sha1-file.c:1151 sha1-file.c:2288
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr "objet libre corrompu '%s'"
 
-#: sha1-file.c:1095 sha1-file.c:2219
+#: sha1-file.c:1153 sha1-file.c:2292
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr "données incorrectes à la fin de l'objet libre '%s'"
 
-#: sha1-file.c:1137
+#: sha1-file.c:1195
 msgid "invalid object type"
 msgstr "type d'objet invalide"
 
-#: sha1-file.c:1219
+#: sha1-file.c:1279
 #, c-format
 msgid "unable to unpack %s header with --allow-unknown-type"
 msgstr "impossible de dépaqueter l'entête %s avec --allow-unknow-type"
 
-#: sha1-file.c:1222
+#: sha1-file.c:1282
 #, c-format
 msgid "unable to unpack %s header"
 msgstr "impossible de dépaqueter l'entête %s"
 
-#: sha1-file.c:1228
+#: sha1-file.c:1288
 #, c-format
 msgid "unable to parse %s header with --allow-unknown-type"
 msgstr "impossible d'analyser l'entête %s avec --allow-unknow-type"
 
-#: sha1-file.c:1231
+#: sha1-file.c:1291
 #, c-format
 msgid "unable to parse %s header"
 msgstr "impossible d'analyser l'entête %s"
 
-#: sha1-file.c:1422
+#: sha1-file.c:1481
 #, c-format
 msgid "failed to read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: sha1-file.c:1426
+#: sha1-file.c:1485
 #, c-format
 msgid "replacement %s not found for %s"
 msgstr "remplacement %s non trouvé pour %s"
 
-#: sha1-file.c:1430
+#: sha1-file.c:1489
 #, c-format
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr "l'objet libre %s (stocké dans %s) est corrompu"
 
-#: sha1-file.c:1434
+#: sha1-file.c:1493
 #, c-format
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr "l'objet empaqueté %s (stocké dans %s) est corrompu"
 
-#: sha1-file.c:1536
+#: sha1-file.c:1595
 #, c-format
-msgid "unable to write sha1 filename %s"
-msgstr "impossible d'écrire le fichier sha1 %s"
+msgid "unable to write file %s"
+msgstr "impossible d'écrire le fichier %s"
 
-#: sha1-file.c:1543
+#: sha1-file.c:1602
 #, c-format
 msgid "unable to set permission to '%s'"
 msgstr "impossible de régler les droits de '%s'"
 
-#: sha1-file.c:1550
+#: sha1-file.c:1609
 msgid "file write error"
 msgstr "erreur d'écriture d'un fichier"
 
-#: sha1-file.c:1569
-msgid "error when closing sha1 file"
-msgstr "erreur en fermeture du fichier sha1"
+#: sha1-file.c:1628
+msgid "error when closing loose object file"
+msgstr "erreur en fermeture du fichier d'objet esseulé"
 
-#: sha1-file.c:1635
+#: sha1-file.c:1693
 #, c-format
 msgid "insufficient permission for adding an object to repository database %s"
 msgstr ""
 "droits insuffisants pour ajouter un objet à la base de données %s du dépôt"
 
-#: sha1-file.c:1637
+#: sha1-file.c:1695
 msgid "unable to create temporary file"
 msgstr "impossible de créer un fichier temporaire"
 
-#: sha1-file.c:1661
-msgid "unable to write sha1 file"
-msgstr "impossible d'écrire le fichier sha1"
+#: sha1-file.c:1719
+msgid "unable to write loose object file"
+msgstr "impossible d'écrire le fichier d'objet esseulé"
 
-#: sha1-file.c:1667
+#: sha1-file.c:1725
 #, c-format
 msgid "unable to deflate new object %s (%d)"
 msgstr "impossible de compresser le nouvel objet %s (%d)"
 
-#: sha1-file.c:1671
+#: sha1-file.c:1729
 #, c-format
 msgid "deflateEnd on object %s failed (%d)"
 msgstr "échec de deflateEnd sur l'objet %s (%d)"
 
-#: sha1-file.c:1675
+#: sha1-file.c:1733
 #, c-format
 msgid "confused by unstable object source data for %s"
 msgstr "données de source d'objet instable pour %s"
 
-#: sha1-file.c:1685 builtin/pack-objects.c:918
+#: sha1-file.c:1743 builtin/pack-objects.c:919
 #, c-format
 msgid "failed utime() on %s"
 msgstr "échec de utime() sur %s"
 
-#: sha1-file.c:1760
+#: sha1-file.c:1818
 #, c-format
-msgid "cannot read sha1_file for %s"
-msgstr "impossible de lire le fichier sha1 pour %s"
+msgid "cannot read object for %s"
+msgstr "impossible de lire l'objet pour %s"
 
-#: sha1-file.c:1805
+#: sha1-file.c:1858
 msgid "corrupt commit"
 msgstr "commit corrompu"
 
-#: sha1-file.c:1813
+#: sha1-file.c:1866
 msgid "corrupt tag"
 msgstr "étiquette corrompue"
 
-#: sha1-file.c:1912
+#: sha1-file.c:1965
 #, c-format
 msgid "read error while indexing %s"
 msgstr "erreur de lecture à l'indexation de %s"
 
-#: sha1-file.c:1915
+#: sha1-file.c:1968
 #, c-format
 msgid "short read while indexing %s"
 msgstr "lecture tronquée pendant l'indexation de %s"
 
-#: sha1-file.c:1988 sha1-file.c:1997
+#: sha1-file.c:2041 sha1-file.c:2050
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr "%s : échec de l'insertion dans la base de données"
 
-#: sha1-file.c:2003
+#: sha1-file.c:2056
 #, c-format
 msgid "%s: unsupported file type"
 msgstr "%s : type de fichier non supporté"
 
-#: sha1-file.c:2027
+#: sha1-file.c:2080
 #, c-format
 msgid "%s is not a valid object"
 msgstr "%s n'est pas un objet valide"
 
-#: sha1-file.c:2029
+#: sha1-file.c:2082
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s n'est pas un objet '%s' valide"
 
-#: sha1-file.c:2056 builtin/index-pack.c:154
+#: sha1-file.c:2109 builtin/index-pack.c:154
 #, c-format
 msgid "unable to open %s"
 msgstr "impossible d'ouvrir %s"
 
-#: sha1-file.c:2226 sha1-file.c:2278
+#: sha1-file.c:2299 sha1-file.c:2351
 #, c-format
-msgid "sha1 mismatch for %s (expected %s)"
-msgstr "incohérence de sha1 pour %s (%s attendu)"
+msgid "hash mismatch for %s (expected %s)"
+msgstr "incohérence de hachage pour %s (%s attendu)"
 
-#: sha1-file.c:2250
+#: sha1-file.c:2323
 #, c-format
 msgid "unable to mmap %s"
 msgstr "impossible de mmap %s"
 
-#: sha1-file.c:2255
+#: sha1-file.c:2328
 #, c-format
 msgid "unable to unpack header of %s"
 msgstr "impossible de dépaqueter l'entête de %s"
 
-#: sha1-file.c:2261
+#: sha1-file.c:2334
 #, c-format
 msgid "unable to parse header of %s"
 msgstr "impossible d'analyser l'entête de %s"
 
-#: sha1-file.c:2272
+#: sha1-file.c:2345
 #, c-format
 msgid "unable to unpack contents of %s"
 msgstr "impossible de dépaqueter le contenu de %s"
 
-#: sha1-name.c:476
+#: sha1-name.c:448
 #, c-format
 msgid "short SHA1 %s is ambiguous"
 msgstr "le SHA1 court %s est ambigu"
 
-#: sha1-name.c:487
+#: sha1-name.c:459
 msgid "The candidates are:"
 msgstr "Les candidats sont :"
 
-#: sha1-name.c:770
+#: sha1-name.c:742
 msgid ""
 "Git normally never creates a ref that ends with 40 hex characters\n"
 "because it will be ignored when you just specify 40-hex. These refs\n"
@@ -6017,72 +6444,82 @@ msgstr ""
 "message\n"
 "en lançant \"git config advice.objectNameWarning false\""
 
-#: submodule.c:116 submodule.c:145
+#: submodule.c:114 submodule.c:143
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
 "Modification impossible de .gitmodules non fusionné, résolvez les conflits "
 "d'abord"
 
-#: submodule.c:120 submodule.c:149
+#: submodule.c:118 submodule.c:147
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr "Impossible de trouver une section où path=%s dans .gitmodules"
 
 # ici %s est un chemin
-#: submodule.c:156
+#: submodule.c:154
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr "Impossible de supprimer l'élément de .gitmodules pour %s"
 
-#: submodule.c:167
+#: submodule.c:165
 msgid "staging updated .gitmodules failed"
 msgstr "échec de la mise en index du .gitmodules mis à jour"
 
-#: submodule.c:329
+#: submodule.c:327
 #, c-format
 msgid "in unpopulated submodule '%s'"
 msgstr "dans le sous-module '%s' non populé"
 
-#: submodule.c:360
+#: submodule.c:358
 #, c-format
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr "Le chemin '%s' est dans le sous-module '%.*s'"
 
-#: submodule.c:857
+#: submodule.c:906
 #, c-format
 msgid "submodule entry '%s' (%s) is a %s, not a commit"
 msgstr "l'entrée de sous-module '%s' (%s) est un %s, pas un commit"
 
-#: submodule.c:1097 builtin/branch.c:656 builtin/submodule--helper.c:1985
+#: submodule.c:1143 builtin/branch.c:656 builtin/submodule--helper.c:1989
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Échec de résolution de HEAD comme référence valide."
 
-#: submodule.c:1404
+#: submodule.c:1477
+#, c-format
+msgid "Could not access submodule '%s'"
+msgstr "Impossible d'accéder au sous-module '%s'"
+
+#: submodule.c:1639
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr "'%s' n'est pas reconnu comme dépôt git"
 
-#: submodule.c:1542
+#: submodule.c:1777
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr "impossible de démarrer 'git status' dans le sous-module '%s'"
 
-#: submodule.c:1555
+#: submodule.c:1790
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr "impossible de lancer 'git status' dans le sous-module '%s'"
 
-#: submodule.c:1648
+#: submodule.c:1805
+#, c-format
+msgid "Could not unset core.worktree setting in submodule '%s'"
+msgstr "Impossible de désactiver core.worktree dans le sous-module '%s'"
+
+#: submodule.c:1895
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr "le sous-module '%s' a un index sale"
 
-#: submodule.c:1700
+#: submodule.c:1947
 #, c-format
 msgid "Submodule '%s' could not be updated."
 msgstr "le sous-module '%s' n'a pas pu être mis à jour."
 
-#: submodule.c:1747
+#: submodule.c:1996
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -6090,12 +6527,12 @@ msgstr ""
 "relocate_gitdir pour le sous-module '%s' avec plus d'un arbre de travail "
 "n'est pas supporté"
 
-#: submodule.c:1759 submodule.c:1815
+#: submodule.c:2008 submodule.c:2064
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "impossible de trouve le nom pour le sous-module '%s'"
 
-#: submodule.c:1766
+#: submodule.c:2015
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -6106,16 +6543,16 @@ msgstr ""
 "'%s' sur\n"
 "'%s'\n"
 
-#: submodule.c:1850
+#: submodule.c:2099
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr "récursion impossible dans le sous-module '%s'"
 
-#: submodule.c:1894
+#: submodule.c:2143
 msgid "could not start ls-files in .."
 msgstr "impossible de démarrer ls-files dans .."
 
-#: submodule.c:1933
+#: submodule.c:2182
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree a renvoyé un code de retour inattendu %d"
@@ -6176,7 +6613,7 @@ msgstr "impossible de lire le fichier d'entrée '%s'"
 msgid "could not read from stdin"
 msgstr "Impossible de lire depuis l'entrée standard"
 
-#: trailer.c:1011 builtin/am.c:47
+#: trailer.c:1011 wrapper.c:701
 #, c-format
 msgid "could not stat %s"
 msgstr "stat impossible de %s"
@@ -6215,38 +6652,38 @@ msgstr "impossible de lire la liasse '%s'"
 msgid "transport: invalid depth option '%s'"
 msgstr "transport : option de profondeur invalide '%s'"
 
-#: transport.c:616
+#: transport.c:617
 msgid "could not parse transport.color.* config"
 msgstr "impossible d'analyser la configuration transport.color.*"
 
-#: transport.c:689
+#: transport.c:690
 msgid "support for protocol v2 not implemented yet"
 msgstr "le support du protocole v2 n'est pas encore implanté"
 
-#: transport.c:816
+#: transport.c:817
 #, c-format
 msgid "unknown value for config '%s': %s"
 msgstr "valeur inconnue pour la config '%s' : %s"
 
-#: transport.c:882
+#: transport.c:883
 #, c-format
 msgid "transport '%s' not allowed"
 msgstr "transport '%s' non permis"
 
-#: transport.c:936
+#: transport.c:937
 msgid "git-over-rsync is no longer supported"
 msgstr "git-over-rsync n'est plus supporté"
 
-#: transport.c:1031
+#: transport.c:1032
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
 "not be found on any remote:\n"
 msgstr ""
-"Les chemins suivant de sous-module contiennent des modifications\n"
+"Les chemins suivants de sous-module contiennent des modifications\n"
 "qui ne peuvent être trouvées sur aucun distant :\n"
 
-#: transport.c:1035
+#: transport.c:1036
 #, c-format
 msgid ""
 "\n"
@@ -6273,19 +6710,19 @@ msgstr ""
 "pour les pousser vers un serveur distant.\n"
 "\n"
 
-#: transport.c:1043
+#: transport.c:1044
 msgid "Aborting."
 msgstr "Abandon."
 
-#: transport.c:1182
+#: transport.c:1184
 msgid "failed to push all needed submodules"
-msgstr "echec de la poussée de tout les sous-modules nécessaires"
+msgstr "échec de la poussée de tous les sous-modules nécessaires"
 
-#: transport.c:1315 transport-helper.c:643
+#: transport.c:1317 transport-helper.c:643
 msgid "operation not supported by protocol"
 msgstr "option non supportée par le protocole"
 
-#: transport.c:1419
+#: transport.c:1421
 #, c-format
 msgid "invalid line while parsing alternate refs: %s"
 msgstr "ligne invalide pendant l'analyse des refs alternatives : %s"
@@ -6335,7 +6772,7 @@ msgstr "impossible de lancer fast-import"
 msgid "error while running fast-import"
 msgstr "erreur au lancement de fast-import"
 
-#: transport-helper.c:531 transport-helper.c:1091
+#: transport-helper.c:531 transport-helper.c:1097
 #, c-format
 msgid "could not read ref %s"
 msgstr "impossible de lire la réf %s"
@@ -6358,58 +6795,58 @@ msgstr "chemin de service distant invalide"
 #: transport-helper.c:646
 #, c-format
 msgid "can't connect to subservice %s"
-msgstr "impossible de se connecter as sous-service %s"
+msgstr "impossible de se connecter au sous-service %s"
 
-#: transport-helper.c:713
+#: transport-helper.c:718
 #, c-format
 msgid "expected ok/error, helper said '%s'"
 msgstr "ok/error attendu, l'assistant a dit '%s'"
 
-#: transport-helper.c:766
+#: transport-helper.c:771
 #, c-format
 msgid "helper reported unexpected status of %s"
 msgstr "l'assistant a renvoyé un statut de retour inattendu %s"
 
-#: transport-helper.c:827
+#: transport-helper.c:832
 #, c-format
 msgid "helper %s does not support dry-run"
 msgstr "l'assistant %s ne gère pas dry-run"
 
-#: transport-helper.c:830
+#: transport-helper.c:835
 #, c-format
 msgid "helper %s does not support --signed"
 msgstr "l'assistant %s ne gère pas --signed"
 
-#: transport-helper.c:833
+#: transport-helper.c:838
 #, c-format
 msgid "helper %s does not support --signed=if-asked"
 msgstr "l'assistant %s ne gère pas --signed=if-asked"
 
-#: transport-helper.c:840
+#: transport-helper.c:845
 #, c-format
 msgid "helper %s does not support 'push-option'"
 msgstr "l'assistant %s ne gère pas 'push-option'"
 
-#: transport-helper.c:932
+#: transport-helper.c:937
 msgid "remote-helper doesn't support push; refspec needed"
 msgstr ""
 "l'assistant %s ne gère pas push ; un spécificateur de référence est "
 "nécessaire"
 
-#: transport-helper.c:937
+#: transport-helper.c:942
 #, c-format
 msgid "helper %s does not support 'force'"
 msgstr "l'assistant %s ne gère pas 'force'"
 
-#: transport-helper.c:984
+#: transport-helper.c:989
 msgid "couldn't run fast-export"
 msgstr "impossible de lancer fast-export"
 
-#: transport-helper.c:989
+#: transport-helper.c:994
 msgid "error while running fast-export"
 msgstr "erreur au lancement de fast-export"
 
-#: transport-helper.c:1014
+#: transport-helper.c:1019
 #, c-format
 msgid ""
 "No refs in common and none specified; doing nothing.\n"
@@ -6418,47 +6855,47 @@ msgstr ""
 "Aucune référence en commun et aucune spécfiée ; rien à faire.\n"
 "Vous devriez peut-être spécifier une branche telle que 'master'.\n"
 
-#: transport-helper.c:1077
+#: transport-helper.c:1083
 #, c-format
 msgid "malformed response in ref list: %s"
 msgstr "réponse malformée dans le liste de réfs : %s"
 
-#: transport-helper.c:1231
+#: transport-helper.c:1236
 #, c-format
 msgid "read(%s) failed"
 msgstr "échec de read(%s)"
 
-#: transport-helper.c:1258
+#: transport-helper.c:1263
 #, c-format
 msgid "write(%s) failed"
 msgstr "échec de write(%s)"
 
-#: transport-helper.c:1307
+#: transport-helper.c:1312
 #, c-format
 msgid "%s thread failed"
 msgstr "échec du fil d'exécution %s"
 
-#: transport-helper.c:1311
+#: transport-helper.c:1316
 #, c-format
 msgid "%s thread failed to join: %s"
 msgstr "échec de jonction du fil d'exécution %s : %s"
 
-#: transport-helper.c:1330 transport-helper.c:1334
+#: transport-helper.c:1335 transport-helper.c:1339
 #, c-format
 msgid "can't start thread for copying data: %s"
 msgstr "impossible de démarrer le fil d'exécution pour copier les données : %s"
 
-#: transport-helper.c:1371
+#: transport-helper.c:1376
 #, c-format
 msgid "%s process failed to wait"
 msgstr "échec du processus %s pour l'attente"
 
-#: transport-helper.c:1375
+#: transport-helper.c:1380
 #, c-format
 msgid "%s process failed"
 msgstr "échec du processus %s"
 
-#: transport-helper.c:1393 transport-helper.c:1402
+#: transport-helper.c:1398 transport-helper.c:1407
 msgid "can't start thread for copying data"
 msgstr "impossible de démarrer le fil d'exécution pour copier les données"
 
@@ -6474,11 +6911,11 @@ msgstr "mode invalide dans l'entrée d'arbre"
 msgid "empty filename in tree entry"
 msgstr "nom de fichier vide dans une entrée de l'arbre"
 
-#: tree-walk.c:115
+#: tree-walk.c:116
 msgid "too-short tree file"
 msgstr "fichier arbre trop court"
 
-#: unpack-trees.c:112
+#: unpack-trees.c:111
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -6489,7 +6926,7 @@ msgstr ""
 "%%sVeuillez valider ou remiser vos modifications avant de basculer de "
 "branche."
 
-#: unpack-trees.c:114
+#: unpack-trees.c:113
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -6499,7 +6936,7 @@ msgstr ""
 "l'extraction :\n"
 "%%s"
 
-#: unpack-trees.c:117
+#: unpack-trees.c:116
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -6509,7 +6946,7 @@ msgstr ""
 "fusion :\n"
 "%%sVeuillez valider ou remiser vos modifications avant la fusion."
 
-#: unpack-trees.c:119
+#: unpack-trees.c:118
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -6519,7 +6956,7 @@ msgstr ""
 "fusion :\n"
 "%%s"
 
-#: unpack-trees.c:122
+#: unpack-trees.c:121
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -6528,7 +6965,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:124
+#: unpack-trees.c:123
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -6537,7 +6974,7 @@ msgstr ""
 "Vos modifications locales aux fichiers suivants seraient écrasées par %s :\n"
 "%%s"
 
-#: unpack-trees.c:129
+#: unpack-trees.c:128
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
@@ -6547,7 +6984,7 @@ msgstr ""
 "contenus :\n"
 "%s"
 
-#: unpack-trees.c:133
+#: unpack-trees.c:132
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -6557,7 +6994,7 @@ msgstr ""
 "l'extraction :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant de basculer de branche."
 
-#: unpack-trees.c:135
+#: unpack-trees.c:134
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -6566,7 +7003,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient effacés par l'extraction :\n"
 "%%s"
 
-#: unpack-trees.c:138
+#: unpack-trees.c:137
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -6576,7 +7013,7 @@ msgstr ""
 "la fusion :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant la fusion."
 
-#: unpack-trees.c:140
+#: unpack-trees.c:139
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -6585,7 +7022,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient effacés par la fusion :\n"
 "%%s"
 
-#: unpack-trees.c:143
+#: unpack-trees.c:142
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -6595,7 +7032,7 @@ msgstr ""
 "%s :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant %s."
 
-#: unpack-trees.c:145
+#: unpack-trees.c:144
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -6604,7 +7041,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient effacés par %s :\n"
 "%%s"
 
-#: unpack-trees.c:151
+#: unpack-trees.c:150
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -6615,7 +7052,7 @@ msgstr ""
 "l'extraction :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant de basculer de branche."
 
-#: unpack-trees.c:153
+#: unpack-trees.c:152
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -6625,7 +7062,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient écrasés par l'extraction :\n"
 "%%s"
 
-#: unpack-trees.c:156
+#: unpack-trees.c:155
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -6635,7 +7072,7 @@ msgstr ""
 "la fusion :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant la fusion."
 
-#: unpack-trees.c:158
+#: unpack-trees.c:157
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -6644,7 +7081,7 @@ msgstr ""
 "Les fichiers suivants non suivis seraient écrasés par la fusion :\n"
 "%%s"
 
-#: unpack-trees.c:161
+#: unpack-trees.c:160
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -6654,7 +7091,7 @@ msgstr ""
 "%s :\n"
 "%%sVeuillez renommer ou effacer ces fichiers avant %s."
 
-#: unpack-trees.c:163
+#: unpack-trees.c:162
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -6663,12 +7100,12 @@ msgstr ""
 "Les fichiers suivants non suivis seraient écrasés par %s :\n"
 "%%s"
 
-#: unpack-trees.c:171
+#: unpack-trees.c:170
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr "L'entrée '%s' surcharge avec '%s'. Affectation impossible."
 
-#: unpack-trees.c:174
+#: unpack-trees.c:173
 #, c-format
 msgid ""
 "Cannot update sparse checkout: the following entries are not up to date:\n"
@@ -6678,7 +7115,7 @@ msgstr ""
 "pas à jour :\n"
 "%s"
 
-#: unpack-trees.c:176
+#: unpack-trees.c:175
 #, c-format
 msgid ""
 "The following working tree files would be overwritten by sparse checkout "
@@ -6689,7 +7126,7 @@ msgstr ""
 "jour par l'extraction creuse :\n"
 "%s"
 
-#: unpack-trees.c:178
+#: unpack-trees.c:177
 #, c-format
 msgid ""
 "The following working tree files would be removed by sparse checkout "
@@ -6700,7 +7137,7 @@ msgstr ""
 "à jour par extraction creuse :\n"
 "%s"
 
-#: unpack-trees.c:180
+#: unpack-trees.c:179
 #, c-format
 msgid ""
 "Cannot update submodule:\n"
@@ -6709,16 +7146,16 @@ msgstr ""
 "Mise à jour impossible pour le sous-module :\n"
 "%s"
 
-#: unpack-trees.c:254
+#: unpack-trees.c:253
 #, c-format
 msgid "Aborting\n"
 msgstr "Abandon\n"
 
-#: unpack-trees.c:336
+#: unpack-trees.c:335
 msgid "Checking out files"
 msgstr "Extraction des fichiers"
 
-#: unpack-trees.c:368
+#: unpack-trees.c:367
 msgid ""
 "the following paths have collided (e.g. case-sensitive paths\n"
 "on a case-insensitive filesystem) and only one from the same\n"
@@ -6757,7 +7194,7 @@ msgstr "numéro de port invalide"
 msgid "invalid '..' path segment"
 msgstr "segment de chemin '..' invalide"
 
-#: worktree.c:249 builtin/am.c:2100
+#: worktree.c:249 builtin/am.c:2094
 #, c-format
 msgid "failed to read '%s'"
 msgstr "échec de la lecture de '%s'"
@@ -6804,158 +7241,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:154
+#: wt-status.c:155
 msgid "Unmerged paths:"
 msgstr "Chemins non fusionnés :"
 
-#: wt-status.c:181 wt-status.c:208
+#: wt-status.c:182 wt-status.c:209
 #, c-format
 msgid "  (use \"git reset %s <file>...\" to unstage)"
 msgstr "  (utilisez \"git reset %s <fichier>...\" pour désindexer)"
 
-#: wt-status.c:183 wt-status.c:210
+#: wt-status.c:184 wt-status.c:211
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr "  (utilisez \"git rm --cached <fichier>...\" pour désindexer)"
 
-#: wt-status.c:187
+#: wt-status.c:188
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr "  (utilisez \"git add <fichier>...\" pour marquer comme résolu)"
 
-#: wt-status.c:189 wt-status.c:193
+#: wt-status.c:190 wt-status.c:194
 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:191
+#: wt-status.c:192
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr "  (utilisez \"git rm <fichier>...\" pour marquer comme résolu)"
 
-#: wt-status.c:202 wt-status.c:1042
+#: wt-status.c:203 wt-status.c:1046
 msgid "Changes to be committed:"
 msgstr "Modifications qui seront validées :"
 
-#: wt-status.c:220 wt-status.c:1051
+#: wt-status.c:221 wt-status.c:1055
 msgid "Changes not staged for commit:"
 msgstr "Modifications qui ne seront pas validées :"
 
-#: wt-status.c:224
+#: wt-status.c:225
 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:226
+#: wt-status.c:227
 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:227
+#: wt-status.c:228
 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:229
+#: wt-status.c:230
 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:241
+#: wt-status.c:242
 #, 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:256
+#: wt-status.c:257
 msgid "both deleted:"
 msgstr "supprimé des deux côtés :"
 
-#: wt-status.c:258
+#: wt-status.c:259
 msgid "added by us:"
 msgstr "ajouté par nous :"
 
-#: wt-status.c:260
+#: wt-status.c:261
 msgid "deleted by them:"
 msgstr "supprimé par eux :"
 
-#: wt-status.c:262
+#: wt-status.c:263
 msgid "added by them:"
 msgstr "ajouté par eux :"
 
-#: wt-status.c:264
+#: wt-status.c:265
 msgid "deleted by us:"
 msgstr "supprimé par nous :"
 
-#: wt-status.c:266
+#: wt-status.c:267
 msgid "both added:"
 msgstr "ajouté de deux côtés :"
 
-#: wt-status.c:268
+#: wt-status.c:269
 msgid "both modified:"
 msgstr "modifié des deux côtés :"
 
-#: wt-status.c:278
+#: wt-status.c:279
 msgid "new file:"
 msgstr "nouveau fichier :"
 
-#: wt-status.c:280
+#: wt-status.c:281
 msgid "copied:"
 msgstr "copié :"
 
-#: wt-status.c:282
+#: wt-status.c:283
 msgid "deleted:"
 msgstr "supprimé :"
 
-#: wt-status.c:284
+#: wt-status.c:285
 msgid "modified:"
 msgstr "modifié :"
 
-#: wt-status.c:286
+#: wt-status.c:287
 msgid "renamed:"
 msgstr "renommé :"
 
-#: wt-status.c:288
+#: wt-status.c:289
 msgid "typechange:"
 msgstr "modif. type :"
 
-#: wt-status.c:290
+#: wt-status.c:291
 msgid "unknown:"
 msgstr "inconnu :"
 
-#: wt-status.c:292
+#: wt-status.c:293
 msgid "unmerged:"
 msgstr "non fusionné :"
 
-#: wt-status.c:372
+#: wt-status.c:373
 msgid "new commits, "
 msgstr "nouveaux commits, "
 
-#: wt-status.c:374
+#: wt-status.c:375
 msgid "modified content, "
 msgstr "contenu modifié, "
 
-#: wt-status.c:376
+#: wt-status.c:377
 msgid "untracked content, "
 msgstr "contenu non suivi, "
 
-#: wt-status.c:880
+#: wt-status.c:884
 #, 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:912
+#: wt-status.c:916
 msgid "Submodules changed but not updated:"
 msgstr "Sous-modules modifiés mais non mis à jour :"
 
-#: wt-status.c:914
+#: wt-status.c:918
 msgid "Submodule changes to be committed:"
 msgstr "Changements du sous-module à valider :"
 
-#: wt-status.c:996
+#: wt-status.c:1000
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
@@ -6963,107 +7400,107 @@ msgstr ""
 "Ne touchez pas à la ligne ci-dessus.\n"
 "Tout ce qui suit sera éliminé."
 
-#: wt-status.c:1097
+#: wt-status.c:1101
 msgid "You have unmerged paths."
 msgstr "Vous avez des chemins non fusionnés."
 
-#: wt-status.c:1100
+#: wt-status.c:1104
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (réglez les conflits puis lancez \"git commit\")"
 
-#: wt-status.c:1102
+#: wt-status.c:1106
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr "  (utilisez \"git merge --abort\" pour annuler la fusion)"
 
-#: wt-status.c:1106
+#: wt-status.c:1110
 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:1109
+#: wt-status.c:1113
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (utilisez \"git commit\" pour terminer la fusion)"
 
-#: wt-status.c:1118
+#: wt-status.c:1122
 msgid "You are in the middle of an am session."
 msgstr "Vous êtes au milieu d'une session am."
 
-#: wt-status.c:1121
+#: wt-status.c:1125
 msgid "The current patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: wt-status.c:1125
+#: wt-status.c:1129
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git am --continue\")"
 
-#: wt-status.c:1127
+#: wt-status.c:1131
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (utilisez \"git am --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1129
+#: wt-status.c:1133
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (utilisez \"git am --abort\" pour restaurer la branche d'origine)"
 
-#: wt-status.c:1260
+#: wt-status.c:1264
 msgid "git-rebase-todo is missing."
 msgstr "git-rebase-todo est manquant."
 
-#: wt-status.c:1262
+#: wt-status.c:1266
 msgid "No commands done."
 msgstr "Aucune commande réalisée."
 
-#: wt-status.c:1265
+#: wt-status.c:1269
 #, 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:1276
+#: wt-status.c:1280
 #, c-format
 msgid "  (see more in file %s)"
 msgstr "  (voir plus dans le fichier %s)"
 
-#: wt-status.c:1281
+#: wt-status.c:1285
 msgid "No commands remaining."
 msgstr "Aucune commande restante."
 
-#: wt-status.c:1284
+#: wt-status.c:1288
 #, 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:1292
+#: wt-status.c:1296
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr "  (utilisez \"git rebase --edit-todo\" pour voir et éditer)"
 
-#: wt-status.c:1304
+#: wt-status.c:1308
 #, 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:1309
+#: wt-status.c:1313
 msgid "You are currently rebasing."
 msgstr "Vous êtes en train de rebaser."
 
-#: wt-status.c:1322
+#: wt-status.c:1326
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git rebase --continue\")"
 
-#: wt-status.c:1324
+#: wt-status.c:1328
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (utilisez \"git rebase --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1326
+#: wt-status.c:1330
 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:1333
+#: wt-status.c:1337
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git rebase --continue\")"
 
-#: wt-status.c:1337
+#: wt-status.c:1341
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -7071,128 +7508,128 @@ msgstr ""
 "Vous êtes actuellement en train de fractionner un commit pendant un rebasage "
 "de la branche '%s' sur '%s'."
 
-#: wt-status.c:1342
+#: wt-status.c:1346
 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:1345
+#: wt-status.c:1349
 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:1349
+#: wt-status.c:1353
 #, 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:1354
+#: wt-status.c:1358
 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:1357
+#: wt-status.c:1361
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (utilisez \"git commit --amend\" pour corriger le commit actuel)"
 
-#: wt-status.c:1359
+#: wt-status.c:1363
 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:1368
+#: wt-status.c:1372
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "Vous êtes actuellement en train de picorer le commit %s."
 
-#: wt-status.c:1373
+#: wt-status.c:1377
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git cherry-pick --continue\")"
 
-#: wt-status.c:1376
+#: wt-status.c:1380
 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:1378
+#: wt-status.c:1382
 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:1386
+#: wt-status.c:1390
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Vous êtes actuellement en train de rétablir le commit %s."
 
-#: wt-status.c:1391
+#: wt-status.c:1395
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git revert --continue\")"
 
-#: wt-status.c:1394
+#: wt-status.c:1398
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git revert --continue\")"
 
-#: wt-status.c:1396
+#: wt-status.c:1400
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (utilisez \"git revert --abort\" pour annuler le rétablissement)"
 
-#: wt-status.c:1406
+#: wt-status.c:1410
 #, 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:1410
+#: wt-status.c:1414
 msgid "You are currently bisecting."
 msgstr "Vous êtes en cours de bissection."
 
-#: wt-status.c:1413
+#: wt-status.c:1417
 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:1611
+#: wt-status.c:1617
 msgid "On branch "
 msgstr "Sur la branche "
 
-#: wt-status.c:1618
+#: wt-status.c:1624
 msgid "interactive rebase in progress; onto "
 msgstr "rebasage interactif en cours ; sur "
 
-#: wt-status.c:1620
+#: wt-status.c:1626
 msgid "rebase in progress; onto "
 msgstr "rebasage en cours ; sur "
 
-#: wt-status.c:1625
+#: wt-status.c:1631
 msgid "HEAD detached at "
 msgstr "HEAD détachée sur "
 
-#: wt-status.c:1627
+#: wt-status.c:1633
 msgid "HEAD detached from "
 msgstr "HEAD détachée depuis "
 
-#: wt-status.c:1630
+#: wt-status.c:1636
 msgid "Not currently on any branch."
 msgstr "Actuellement sur aucun branche."
 
-#: wt-status.c:1647
+#: wt-status.c:1653
 msgid "Initial commit"
 msgstr "Validation initiale"
 
-#: wt-status.c:1648
+#: wt-status.c:1654
 msgid "No commits yet"
 msgstr "Aucun commit"
 
-#: wt-status.c:1662
+#: wt-status.c:1668
 msgid "Untracked files"
 msgstr "Fichiers non suivis"
 
-#: wt-status.c:1664
+#: wt-status.c:1670
 msgid "Ignored files"
 msgstr "Fichiers ignorés"
 
-#: wt-status.c:1668
+#: wt-status.c:1674
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -7204,32 +7641,32 @@ msgstr ""
 "oublier d'ajouter les nouveaux fichiers par vous-même (voir 'git help "
 "status')."
 
-#: wt-status.c:1674
+#: wt-status.c:1680
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "Fichiers non suivis non affichés%s"
 
-#: wt-status.c:1676
+#: wt-status.c:1682
 msgid " (use -u option to show untracked files)"
 msgstr " (utilisez -u pour afficher les fichiers non suivis)"
 
-#: wt-status.c:1682
+#: wt-status.c:1688
 msgid "No changes"
 msgstr "Aucune modification"
 
-#: wt-status.c:1687
+#: wt-status.c:1693
 #, 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:1690
+#: wt-status.c:1696
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "aucune modification ajoutée à la validation\n"
 
-#: wt-status.c:1693
+#: wt-status.c:1699
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -7238,195 +7675,195 @@ 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:1696
+#: wt-status.c:1702
 #, 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:1699
+#: wt-status.c:1705
 #, 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:1702 wt-status.c:1707
+#: wt-status.c:1708 wt-status.c:1713
 #, c-format
 msgid "nothing to commit\n"
 msgstr "rien à valider\n"
 
-#: wt-status.c:1705
+#: wt-status.c:1711
 #, 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:1709
+#: wt-status.c:1715
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr "rien à valider, la copie de travail est propre\n"
 
-#: wt-status.c:1822
+#: wt-status.c:1828
 msgid "No commits yet on "
 msgstr "Encore aucun commit sur "
 
-#: wt-status.c:1826
+#: wt-status.c:1832
 msgid "HEAD (no branch)"
 msgstr "HEAD (aucune branche)"
 
-#: wt-status.c:1857
+#: wt-status.c:1863
 msgid "different"
 msgstr "différent"
 
-#: wt-status.c:1859 wt-status.c:1867
+#: wt-status.c:1865 wt-status.c:1873
 msgid "behind "
 msgstr "derrière "
 
-#: wt-status.c:1862 wt-status.c:1865
+#: wt-status.c:1868 wt-status.c:1871
 msgid "ahead "
 msgstr "devant "
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2374
+#: wt-status.c:2386
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr "Impossible de %s : vous avez des modifications non indexées."
 
-#: wt-status.c:2380
+#: wt-status.c:2392
 msgid "additionally, your index contains uncommitted changes."
 msgstr "de plus, votre index contient des modifications non validées."
 
-#: wt-status.c:2382
+#: wt-status.c:2394
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr "%s impossible : votre index contient des modifications non validées."
 
-#: builtin/add.c:24
+#: builtin/add.c:25
 msgid "git add [<options>] [--] <pathspec>..."
 msgstr "git add [<options>] [--] <chemin>..."
 
-#: builtin/add.c:83
+#: builtin/add.c:84
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "état de diff inattendu %c"
 
-#: builtin/add.c:88 builtin/commit.c:284
+#: builtin/add.c:89 builtin/commit.c:285
 msgid "updating files failed"
 msgstr "échec de la mise à jour des fichiers"
 
-#: builtin/add.c:98
+#: builtin/add.c:99
 #, c-format
 msgid "remove '%s'\n"
 msgstr "suppression de '%s'\n"
 
-#: builtin/add.c:173
+#: builtin/add.c:174
 msgid "Unstaged changes after refreshing the index:"
 msgstr "Modifications non indexées après rafraîchissement de l'index :"
 
-#: builtin/add.c:233 builtin/rev-parse.c:895
+#: builtin/add.c:234 builtin/rev-parse.c:896
 msgid "Could not read the index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/add.c:244
+#: builtin/add.c:245
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Impossible d'ouvrir '%s' en écriture."
 
-#: builtin/add.c:248
+#: builtin/add.c:249
 msgid "Could not write patch"
 msgstr "Impossible d'écrire le patch"
 
-#: builtin/add.c:251
+#: builtin/add.c:252
 msgid "editing patch failed"
 msgstr "échec de l'édition du patch"
 
-#: builtin/add.c:254
+#: builtin/add.c:255
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "Stat de '%s' impossible"
 
-#: builtin/add.c:256
+#: builtin/add.c:257
 msgid "Empty patch. Aborted."
 msgstr "Patch vide. Abandon."
 
-#: builtin/add.c:261
+#: builtin/add.c:262
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "Impossible d'appliquer '%s'"
 
-#: builtin/add.c:269
+#: builtin/add.c:270
 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:289 builtin/clean.c:907 builtin/fetch.c:137 builtin/mv.c:123
-#: builtin/prune-packed.c:56 builtin/pull.c:213 builtin/push.c:557
-#: builtin/remote.c:1345 builtin/rm.c:240 builtin/send-pack.c:165
+#: builtin/add.c:290 builtin/clean.c:908 builtin/fetch.c:137 builtin/mv.c:124
+#: builtin/prune-packed.c:56 builtin/pull.c:214 builtin/push.c:560
+#: builtin/remote.c:1345 builtin/rm.c:241 builtin/send-pack.c:165
 msgid "dry run"
 msgstr "simuler l'action"
 
-#: builtin/add.c:292
+#: builtin/add.c:293
 msgid "interactive picking"
 msgstr "sélection interactive"
 
-#: builtin/add.c:293 builtin/checkout.c:1258 builtin/reset.c:305
+#: builtin/add.c:294 builtin/checkout.c:1304 builtin/reset.c:306
 msgid "select hunks interactively"
 msgstr "sélection interactive des sections"
 
-#: builtin/add.c:294
+#: builtin/add.c:295
 msgid "edit current diff and apply"
 msgstr "édition du diff actuel et application"
 
-#: builtin/add.c:295
+#: builtin/add.c:296
 msgid "allow adding otherwise ignored files"
 msgstr "permettre l'ajout de fichiers ignorés"
 
-#: builtin/add.c:296
+#: builtin/add.c:297
 msgid "update tracked files"
 msgstr "mettre à jour les fichiers suivis"
 
-#: builtin/add.c:297
+#: builtin/add.c:298
 msgid "renormalize EOL of tracked files (implies -u)"
 msgstr ""
 "renormaliser les fins de lignes (EOL) des fichiers suivis (implique -u)"
 
-#: builtin/add.c:298
+#: builtin/add.c:299
 msgid "record only the fact that the path will be added later"
 msgstr "enregistrer seulement le fait que le chemin sera ajouté plus tard"
 
-#: builtin/add.c:299
+#: builtin/add.c:300
 msgid "add changes from all tracked and untracked files"
 msgstr "ajouter les modifications de tous les fichiers suivis et non suivis"
 
-#: builtin/add.c:302
+#: builtin/add.c:303
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr ""
 "ignorer les chemins effacés dans la copie de travail (identique à --no-all)"
 
-#: builtin/add.c:304
+#: builtin/add.c:305
 msgid "don't add, only refresh the index"
 msgstr "ne pas ajouter, juste rafraîchir l'index"
 
-#: builtin/add.c:305
+#: builtin/add.c:306
 msgid "just skip files which cannot be added because of errors"
 msgstr ""
 "sauter seulement les fichiers qui ne peuvent pas être ajoutés du fait "
 "d'erreurs"
 
-#: builtin/add.c:306
+#: builtin/add.c:307
 msgid "check if - even missing - files are ignored in dry run"
 msgstr "vérifier si des fichiers - même manquants - sont ignorés, à vide"
 
-#: builtin/add.c:308 builtin/update-index.c:990
+#: builtin/add.c:309 builtin/update-index.c:991
 msgid "override the executable bit of the listed files"
 msgstr "outrepasser le bit exécutable pour les fichiers listés"
 
-#: builtin/add.c:310
+#: builtin/add.c:311
 msgid "warn when adding an embedded repository"
 msgstr "avertir lors de l'ajout d'un dépôt embarqué"
 
-#: builtin/add.c:325
+#: builtin/add.c:326
 #, c-format
 msgid ""
 "You've added another git repository inside your current repository.\n"
@@ -7457,154 +7894,154 @@ msgstr ""
 "\n"
 "Référez-vous à \"git help submodule\" pour plus d'information."
 
-#: builtin/add.c:353
+#: builtin/add.c:354
 #, c-format
 msgid "adding embedded git repository: %s"
 msgstr "dépôt git embarqué ajouté : %s"
 
-#: builtin/add.c:371
+#: builtin/add.c:372
 #, c-format
 msgid "Use -f if you really want to add them.\n"
 msgstr "Utilisez -f si vous voulez réellement les ajouter.\n"
 
-#: builtin/add.c:379
+#: builtin/add.c:380
 msgid "adding files failed"
 msgstr "échec de l'ajout de fichiers"
 
-#: builtin/add.c:417
+#: builtin/add.c:418
 msgid "-A and -u are mutually incompatible"
 msgstr "-A et -u sont mutuellement incompatibles"
 
-#: builtin/add.c:424
+#: builtin/add.c:425
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr ""
 "L'option --ignore-missing ne peut être utilisée qu'en complément de --dry-run"
 
-#: builtin/add.c:428
+#: builtin/add.c:429
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "Le paramètre '%s' de --chmod doit être soit -x soit +x"
 
-#: builtin/add.c:443
+#: builtin/add.c:444
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr "Rien de spécifié, rien n'a été ajouté.\n"
 
-#: builtin/add.c:444
+#: builtin/add.c:445
 #, c-format
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr "Vous vouliez sûrement dire 'git add .' ?\n"
 
-#: builtin/am.c:363
+#: builtin/am.c:348
 msgid "could not parse author script"
 msgstr "impossible d'analyser le script author"
 
-#: builtin/am.c:447
+#: builtin/am.c:432
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr "'%s' a été effacé par le crochet applypatch-msg"
 
-#: builtin/am.c:488
+#: builtin/am.c:473
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Ligne en entrée malformée : '%s'."
 
-#: builtin/am.c:525
+#: builtin/am.c:510
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Impossible de copier les notes de '%s' vers '%s'"
 
-#: builtin/am.c:551
+#: builtin/am.c:536
 msgid "fseek failed"
 msgstr "échec de fseek"
 
-#: builtin/am.c:739
+#: builtin/am.c:724
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "impossible d'analyser le patch '%s'"
 
-#: builtin/am.c:804
+#: builtin/am.c:789
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "Seulement une série de patchs StGIT peut être appliquée à la fois"
 
-#: builtin/am.c:852
+#: builtin/am.c:837
 msgid "invalid timestamp"
 msgstr "horodatage invalide"
 
-#: builtin/am.c:857 builtin/am.c:869
+#: builtin/am.c:842 builtin/am.c:854
 msgid "invalid Date line"
 msgstr "ligne de Date invalide"
 
-#: builtin/am.c:864
+#: builtin/am.c:849
 msgid "invalid timezone offset"
 msgstr "décalage horaire invalide"
 
-#: builtin/am.c:957
+#: builtin/am.c:942
 msgid "Patch format detection failed."
 msgstr "Échec de détection du format du patch."
 
-#: builtin/am.c:962 builtin/clone.c:408
+#: builtin/am.c:947 builtin/clone.c:409
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "échec de la création du répertoire '%s'"
 
-#: builtin/am.c:967
+#: builtin/am.c:952
 msgid "Failed to split patches."
 msgstr "Échec de découpage des patchs."
 
-#: builtin/am.c:1097 builtin/commit.c:369
+#: builtin/am.c:1082 builtin/commit.c:371
 msgid "unable to write index file"
 msgstr "impossible d'écrire le fichier d'index"
 
-#: builtin/am.c:1111
+#: builtin/am.c:1096
 #, 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:1112
+#: builtin/am.c:1097
 #, 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:1113
+#: builtin/am.c:1098
 #, 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:1196
+#: builtin/am.c:1181
 msgid "Patch sent with format=flowed; space at the end of lines might be lost."
 msgstr ""
 "Rustine envoyée avec format=flowed ; les espaces en fin de ligne peuvent "
 "être perdus."
 
-#: builtin/am.c:1224
+#: builtin/am.c:1209
 msgid "Patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: builtin/am.c:1290
+#: builtin/am.c:1275
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr "ligne d'identification invalide : %.*s"
 
-#: builtin/am.c:1312
+#: builtin/am.c:1297
 #, c-format
 msgid "unable to parse commit %s"
 msgstr "impossible d'analyser le commit %s"
 
-#: builtin/am.c:1508
+#: builtin/am.c:1493
 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:1510
+#: builtin/am.c:1495
 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:1529
+#: builtin/am.c:1514
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -7612,29 +8049,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:1535
+#: builtin/am.c:1520
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Retour à un patch de la base et fusion à 3 points..."
 
-#: builtin/am.c:1561
+#: builtin/am.c:1546
 msgid "Failed to merge in the changes."
 msgstr "Échec d'intégration des modifications."
 
-#: builtin/am.c:1593
+#: builtin/am.c:1578
 msgid "applying to an empty history"
 msgstr "application à un historique vide"
 
-#: builtin/am.c:1639 builtin/am.c:1643
+#: builtin/am.c:1624 builtin/am.c:1628
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "impossible de continuer : %s n'existe pas."
 
-#: builtin/am.c:1659
+#: builtin/am.c:1644
 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:1664
+#: builtin/am.c:1649
 msgid "Commit Body is:"
 msgstr "Le corps de la validation est :"
 
@@ -7642,35 +8079,35 @@ msgstr "Le corps de la validation est :"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1674
+#: builtin/am.c:1659
 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:1724
+#: builtin/am.c:1709
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Index sale : impossible d'appliquer des patchs (sales : %s)"
 
-#: builtin/am.c:1764 builtin/am.c:1832
+#: builtin/am.c:1749 builtin/am.c:1817
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Application de  %.*s"
 
-#: builtin/am.c:1781
+#: builtin/am.c:1766
 msgid "No changes -- Patch already applied."
 msgstr "Pas de changement -- Patch déjà appliqué."
 
-#: builtin/am.c:1787
+#: builtin/am.c:1772
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "le patch a échoué à %s %.*s"
 
-#: builtin/am.c:1791
+#: builtin/am.c:1776
 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:1835
+#: builtin/am.c:1820
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -7681,7 +8118,7 @@ msgstr ""
 "introduit les mêmes changements ; vous pourriez avoir envie de sauter ce "
 "patch."
 
-#: builtin/am.c:1842
+#: builtin/am.c:1827
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -7694,17 +8131,17 @@ msgstr ""
 "Vous pouvez lancer 'git rm' sur un fichier \"supprimé par eux\" pour "
 "accepter son état."
 
-#: builtin/am.c:1949 builtin/am.c:1953 builtin/am.c:1965 builtin/reset.c:328
-#: builtin/reset.c:336
+#: builtin/am.c:1934 builtin/am.c:1938 builtin/am.c:1950 builtin/reset.c:329
+#: builtin/reset.c:337
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Impossible d'analyser l'objet '%s'."
 
-#: builtin/am.c:2001
+#: builtin/am.c:1986
 msgid "failed to clean index"
 msgstr "échec du nettoyage de l'index"
 
-#: builtin/am.c:2036
+#: builtin/am.c:2030
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -7712,145 +8149,145 @@ msgstr ""
 "Vous semblez avoir déplacé la HEAD depuis le dernier échec de 'am'.\n"
 "Pas de retour à ORIG_HEAD"
 
-#: builtin/am.c:2129
+#: builtin/am.c:2123
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Valeur invalide pour --patch-format : %s"
 
-#: builtin/am.c:2165
+#: builtin/am.c:2159
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<options>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/am.c:2166
+#: builtin/am.c:2160
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<options>] (--continue | --quit | --abort)"
 
-#: builtin/am.c:2172
+#: builtin/am.c:2166
 msgid "run interactively"
 msgstr "exécution interactive"
 
-#: builtin/am.c:2174
+#: builtin/am.c:2168
 msgid "historical option -- no-op"
 msgstr "option historique -- no-op"
 
-#: builtin/am.c:2176
+#: builtin/am.c:2170
 msgid "allow fall back on 3way merging if needed"
 msgstr "permettre de revenir à une fusion à 3 points si nécessaire"
 
-#: builtin/am.c:2177 builtin/init-db.c:486 builtin/prune-packed.c:58
+#: builtin/am.c:2171 builtin/init-db.c:486 builtin/prune-packed.c:58
 #: builtin/repack.c:306
 msgid "be quiet"
 msgstr "être silencieux"
 
-#: builtin/am.c:2179
+#: builtin/am.c:2173
 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:2182
+#: builtin/am.c:2176
 msgid "recode into utf8 (default)"
 msgstr "recoder en utf-8 (par défaut)"
 
-#: builtin/am.c:2184
+#: builtin/am.c:2178
 msgid "pass -k flag to git-mailinfo"
 msgstr "passer l'option -k à git-mailinfo"
 
-#: builtin/am.c:2186
+#: builtin/am.c:2180
 msgid "pass -b flag to git-mailinfo"
 msgstr "passer l'option -b à git-mailinfo"
 
-#: builtin/am.c:2188
+#: builtin/am.c:2182
 msgid "pass -m flag to git-mailinfo"
 msgstr "passer l'option -m à git-mailinfo"
 
-#: builtin/am.c:2190
+#: builtin/am.c:2184
 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:2193
+#: builtin/am.c:2187
 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:2196
+#: builtin/am.c:2190
 msgid "strip everything before a scissors line"
 msgstr "retirer tout le contenu avant la ligne des ciseaux"
 
-#: builtin/am.c:2198 builtin/am.c:2201 builtin/am.c:2204 builtin/am.c:2207
-#: builtin/am.c:2210 builtin/am.c:2213 builtin/am.c:2216 builtin/am.c:2219
-#: builtin/am.c:2225
+#: builtin/am.c:2192 builtin/am.c:2195 builtin/am.c:2198 builtin/am.c:2201
+#: builtin/am.c:2204 builtin/am.c:2207 builtin/am.c:2210 builtin/am.c:2213
+#: builtin/am.c:2219
 msgid "pass it through git-apply"
 msgstr "le passer jusqu'à git-apply"
 
-#: builtin/am.c:2215 builtin/commit.c:1340 builtin/fmt-merge-msg.c:671
-#: builtin/fmt-merge-msg.c:674 builtin/grep.c:868 builtin/merge.c:239
-#: builtin/pull.c:151 builtin/pull.c:209 builtin/rebase.c:854
+#: builtin/am.c:2209 builtin/commit.c:1343 builtin/fmt-merge-msg.c:671
+#: builtin/fmt-merge-msg.c:674 builtin/grep.c:879 builtin/merge.c:240
+#: builtin/pull.c:152 builtin/pull.c:210 builtin/rebase.c:1062
 #: builtin/repack.c:317 builtin/repack.c:321 builtin/repack.c:323
 #: builtin/show-branch.c:651 builtin/show-ref.c:171 builtin/tag.c:386
-#: parse-options.h:144 parse-options.h:146 parse-options.h:268
+#: parse-options.h:144 parse-options.h:146 parse-options.h:266
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2221 builtin/branch.c:637 builtin/for-each-ref.c:38
+#: builtin/am.c:2215 builtin/branch.c:637 builtin/for-each-ref.c:38
 #: builtin/replace.c:544 builtin/tag.c:422 builtin/verify-tag.c:39
 msgid "format"
 msgstr "format"
 
-#: builtin/am.c:2222
+#: builtin/am.c:2216
 msgid "format the patch(es) are in"
 msgstr "format de présentation des patchs"
 
-#: builtin/am.c:2228
+#: builtin/am.c:2222
 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:2230
+#: builtin/am.c:2224
 msgid "continue applying patches after resolving a conflict"
 msgstr "continuer à appliquer les patchs après résolution d'un conflit"
 
-#: builtin/am.c:2233
+#: builtin/am.c:2227
 msgid "synonyms for --continue"
 msgstr "synonymes de --continue"
 
-#: builtin/am.c:2236
+#: builtin/am.c:2230
 msgid "skip the current patch"
 msgstr "sauter le patch courant"
 
-#: builtin/am.c:2239
+#: builtin/am.c:2233
 msgid "restore the original branch and abort the patching operation."
 msgstr ""
 "restaurer la branche originale et abandonner les applications de patch."
 
-#: builtin/am.c:2242
+#: builtin/am.c:2236
 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:2245
+#: builtin/am.c:2239
 msgid "show the patch being applied."
 msgstr "afficher le patch en cours d'application."
 
-#: builtin/am.c:2249
+#: builtin/am.c:2243
 msgid "lie about committer date"
 msgstr "mentir sur la date de validation"
 
-#: builtin/am.c:2251
+#: builtin/am.c:2245
 msgid "use current timestamp for author date"
 msgstr "utiliser l'horodatage actuel pour la date d'auteur"
 
-#: builtin/am.c:2253 builtin/commit.c:1483 builtin/merge.c:273
-#: builtin/pull.c:184 builtin/rebase.c:898 builtin/rebase--interactive.c:183
-#: builtin/revert.c:113 builtin/tag.c:402
+#: builtin/am.c:2247 builtin/commit.c:1486 builtin/merge.c:274
+#: builtin/pull.c:185 builtin/rebase.c:1106 builtin/rebase--interactive.c:185
+#: builtin/revert.c:114 builtin/tag.c:402
 msgid "key-id"
 msgstr "id-clé"
 
-#: builtin/am.c:2254 builtin/rebase.c:899 builtin/rebase--interactive.c:184
+#: builtin/am.c:2248 builtin/rebase.c:1107 builtin/rebase--interactive.c:186
 msgid "GPG-sign commits"
 msgstr "signer les commits avec GPG"
 
-#: builtin/am.c:2257
+#: builtin/am.c:2251
 msgid "(internal use for git-rebase)"
 msgstr "(utilisation interne pour git-rebase)"
 
-#: builtin/am.c:2275
+#: builtin/am.c:2269
 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."
@@ -7858,17 +8295,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:2282
+#: builtin/am.c:2276
 msgid "failed to read the index"
 msgstr "échec à la lecture de l'index"
 
-#: builtin/am.c:2297
+#: builtin/am.c:2291
 #, 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:2321
+#: builtin/am.c:2315
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -7877,7 +8314,7 @@ msgstr ""
 "Répertoire abandonné %s trouvé.\n"
 "Utilisez \"git am --abort\" pour le supprimer."
 
-#: builtin/am.c:2327
+#: builtin/am.c:2321
 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 "
@@ -7900,86 +8337,298 @@ msgstr "impossible de rediriger la sortie"
 msgid "git archive: Remote with no URL"
 msgstr "git archive : Dépôt distant sans URL"
 
-#: builtin/archive.c:58
+#: builtin/archive.c:61
 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
+#: builtin/archive.c:64
 #, c-format
 msgid "git archive: NACK %s"
 msgstr "git archive : NACK %s"
 
-#: builtin/archive.c:64
+#: builtin/archive.c:65
 msgid "git archive: protocol error"
 msgstr "git archive : erreur de protocole"
 
-#: builtin/archive.c:68
+#: builtin/archive.c:69
 msgid "git archive: expected a flush"
 msgstr "git archive : vidage attendu"
 
-#: builtin/bisect--helper.c:12
+#: builtin/bisect--helper.c:22
 msgid "git bisect--helper --next-all [--no-checkout]"
 msgstr "git bisect --helper --next-all [--no-checkout]"
 
-#: builtin/bisect--helper.c:13
+#: builtin/bisect--helper.c:23
 msgid "git bisect--helper --write-terms <bad_term> <good_term>"
 msgstr "git bisect--helper --write-terms <terme-pour-mauvais> <terme-pour-bon>"
 
-#: builtin/bisect--helper.c:14
+#: builtin/bisect--helper.c:24
 msgid "git bisect--helper --bisect-clean-state"
 msgstr "git bisect--helper --bisect-clean-state"
 
-#: builtin/bisect--helper.c:46
+#: builtin/bisect--helper.c:25
+msgid "git bisect--helper --bisect-reset [<commit>]"
+msgstr "git bisect--helper --bisect-reset [<commit>]"
+
+#: builtin/bisect--helper.c:26
+msgid ""
+"git bisect--helper --bisect-write [--no-log] <state> <revision> <good_term> "
+"<bad_term>"
+msgstr ""
+"git bisect--helper --bisect-write [--no-log] <état> <révision> <terme-pour-"
+"bon> <terme-pour-mauvais>"
+
+#: builtin/bisect--helper.c:27
+msgid ""
+"git bisect--helper --bisect-check-and-set-terms <command> <good_term> "
+"<bad_term>"
+msgstr ""
+"git bisect--helper --bisect-check-and-set-terms <commande> <terme-pour-bon> "
+"<terme-pour-mauvais>"
+
+#: builtin/bisect--helper.c:28
+msgid "git bisect--helper --bisect-next-check <good_term> <bad_term> [<term>]"
+msgstr ""
+"git bisect--helper --bisect-next-check <terme-pour-bon> <terme-pour-mauvais> "
+"[<term>]"
+
+#: builtin/bisect--helper.c:29
+msgid ""
+"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
+"term-new]"
+msgstr ""
+"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
+"term-new]"
+
+#: builtin/bisect--helper.c:30
+msgid ""
+"git bisect--helper --bisect-start [--term-{old,good}=<term> --term-{new,bad}"
+"=<term>][--no-checkout] [<bad> [<good>...]] [--] [<paths>...]"
+msgstr ""
+"git bisect--helper --bisect-start [--term-{old,good}=<terme> --term-{new,bad}"
+"=<terme>][--no-checkout] [<mauvais> [<bon>...]] [--] [<chemins>...]"
+
+#: builtin/bisect--helper.c:86
 #, c-format
 msgid "'%s' is not a valid term"
 msgstr "'%s' n'est pas un terme valide"
 
-#: builtin/bisect--helper.c:50
+#: builtin/bisect--helper.c:90
 #, c-format
 msgid "can't use the builtin command '%s' as a term"
 msgstr "impossible d'utiliser la commande incluse '%s' comme terme"
 
-#: builtin/bisect--helper.c:60
+#: builtin/bisect--helper.c:100
 #, c-format
 msgid "can't change the meaning of the term '%s'"
 msgstr "impossible de modifier la signification du terme '%s'"
 
-#: builtin/bisect--helper.c:71
+#: builtin/bisect--helper.c:111
 msgid "please use two different terms"
 msgstr "veuillez utiliser deux termes différents"
 
-#: builtin/bisect--helper.c:78
+#: builtin/bisect--helper.c:118
 msgid "could not open the file BISECT_TERMS"
 msgstr "impossible d'ouvrir le fichier BISECT_TERMS"
 
-#: builtin/bisect--helper.c:120
+#: builtin/bisect--helper.c:155
+#, c-format
+msgid "We are not bisecting.\n"
+msgstr "Pas de bissection en cours.\n"
+
+#: builtin/bisect--helper.c:163
+#, c-format
+msgid "'%s' is not a valid commit"
+msgstr "'%s' n'est pas un commit valide"
+
+#: builtin/bisect--helper.c:174
+#, c-format
+msgid ""
+"could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
+msgstr ""
+"Échec d'extraction de la HEAD d'origine '%s'. Essayez 'git bisect reset "
+"<commit>'."
+
+#: builtin/bisect--helper.c:215
+#, c-format
+msgid "Bad bisect_write argument: %s"
+msgstr "Mauvais argument pour bisect_write : %s"
+
+#: builtin/bisect--helper.c:220
+#, c-format
+msgid "couldn't get the oid of the rev '%s'"
+msgstr "impossible d'obtenir l'oid de la révision '%s'"
+
+#: builtin/bisect--helper.c:232
+#, c-format
+msgid "couldn't open the file '%s'"
+msgstr "impossible d'ouvrir le fichier '%s'"
+
+#: builtin/bisect--helper.c:258
+#, c-format
+msgid "Invalid command: you're currently in a %s/%s bisect"
+msgstr "Commande invalide : vous êtes actuellement dans une bissection %s/%s"
+
+#: builtin/bisect--helper.c:285
+#, c-format
+msgid ""
+"You need to give me at least one %s and %s revision.\n"
+"You can use \"git bisect %s\" and \"git bisect %s\" for that."
+msgstr ""
+"Vous devez me donner au moins une révision %s et une révision %s.\n"
+"Vous pouvez utiliser \"git bisect %s\" et \"git bisect %s\" pour cela."
+
+#: builtin/bisect--helper.c:289
+#, c-format
+msgid ""
+"You need to start by \"git bisect start\".\n"
+"You then need to give me at least one %s and %s revision.\n"
+"You can use \"git bisect %s\" and \"git bisect %s\" for that."
+msgstr ""
+"Vous devez démarrer avec \"git bisect start\".\n"
+"Puis vous devez me donner au moins une révision %s et une révision %s.\n"
+"Vous pouvez utiliser \"git bisect %s\" et \"git bisect %s\" pour cela."
+
+#: builtin/bisect--helper.c:321
+#, c-format
+msgid "bisecting only with a %s commit"
+msgstr "Attention : bissection avec seulement une validation %s"
+
+#. TRANSLATORS: Make sure to include [Y] and [n] in your
+#. translation. The program will only accept English input
+#. at this point.
+#.
+#: builtin/bisect--helper.c:329
+msgid "Are you sure [Y/n]? "
+msgstr "Confirmez-vous [Y/n] ? "
+
+#: builtin/bisect--helper.c:376
+msgid "no terms defined"
+msgstr "aucun terme défini"
+
+#: builtin/bisect--helper.c:379
+#, c-format
+msgid ""
+"Your current terms are %s for the old state\n"
+"and %s for the new state.\n"
+msgstr ""
+"Vos termes actuels sont %s pour l'état ancien\n"
+"et %s pour le nouvel état.\n"
+
+#: builtin/bisect--helper.c:389
+#, c-format
+msgid ""
+"invalid argument %s for 'git bisect terms'.\n"
+"Supported options are: --term-good|--term-old and --term-bad|--term-new."
+msgstr ""
+"argument invalide %s pour 'git bisect terms'.\n"
+"Les options supportées sont : --term-good|--term-old et --term-bad|--term-"
+"new."
+
+#: builtin/bisect--helper.c:475
+#, c-format
+msgid "unrecognized option: '%s'"
+msgstr "option non reconnue : %s"
+
+#: builtin/bisect--helper.c:479
+#, c-format
+msgid "'%s' does not appear to be a valid revision"
+msgstr "'%s' ne semble être une révision valide"
+
+#: builtin/bisect--helper.c:511
+msgid "bad HEAD - I need a HEAD"
+msgstr "mauvaise HEAD - j'ai besoin d'une HEAD"
+
+#: builtin/bisect--helper.c:526
+#, c-format
+msgid "checking out '%s' failed. Try 'git bisect start <valid-branch>'."
+msgstr ""
+"L'extraction de '%s' a échoué. Essayez 'git bisect start <branche-valide>'."
+
+#: builtin/bisect--helper.c:547
+msgid "won't bisect on cg-seek'ed tree"
+msgstr "refus de bissecter sur un arbre 'cg-seeked'"
+
+#: builtin/bisect--helper.c:550
+msgid "bad HEAD - strange symbolic ref"
+msgstr "mauvaise HEAD - référence symbolique douteuse"
+
+#: builtin/bisect--helper.c:627
 msgid "perform 'git bisect next'"
 msgstr "effectuer 'git bisect next'"
 
-#: builtin/bisect--helper.c:122
+#: builtin/bisect--helper.c:629
 msgid "write the terms to .git/BISECT_TERMS"
 msgstr "écrire les termes dans .git/BISECT_TERMS"
 
-#: builtin/bisect--helper.c:124
+#: builtin/bisect--helper.c:631
 msgid "cleanup the bisection state"
 msgstr "vérifier l'état de la bissection"
 
-#: builtin/bisect--helper.c:126
+#: builtin/bisect--helper.c:633
 msgid "check for expected revs"
 msgstr "vérifier si des révisions sont attendues"
 
-#: builtin/bisect--helper.c:128
+#: builtin/bisect--helper.c:635
+msgid "reset the bisection state"
+msgstr "réinitialiser l'état de la bissection"
+
+#: builtin/bisect--helper.c:637
+msgid "write out the bisection state in BISECT_LOG"
+msgstr "écrire l'état de la bissection dans BISECT_LOG"
+
+#: builtin/bisect--helper.c:639
+msgid "check and set terms in a bisection state"
+msgstr "vérifier et régler les termes dans un état de la bissection"
+
+#: builtin/bisect--helper.c:641
+msgid "check whether bad or good terms exist"
+msgstr "vérifier si les termes bons ou mauvais existent"
+
+#: builtin/bisect--helper.c:643
+msgid "print out the bisect terms"
+msgstr "afficher les termes de bissection"
+
+#: builtin/bisect--helper.c:645
+msgid "start the bisect session"
+msgstr "démarrer une session de bissection"
+
+#: builtin/bisect--helper.c:647
 msgid "update BISECT_HEAD instead of checking out the current commit"
 msgstr "mettre à jour BISECT_HEAD au lieu d'extraire le commit actuel"
 
-#: builtin/bisect--helper.c:143
+#: builtin/bisect--helper.c:649
+msgid "no log for BISECT_WRITE"
+msgstr "pas de journal pour BISECT_WRITE"
+
+#: builtin/bisect--helper.c:666
 msgid "--write-terms requires two arguments"
 msgstr "--write-terms exige deux arguments"
 
-#: builtin/bisect--helper.c:147
+#: builtin/bisect--helper.c:670
 msgid "--bisect-clean-state requires no arguments"
 msgstr "--bisect-clean-state ne supporte aucun argument"
 
+#: builtin/bisect--helper.c:677
+msgid "--bisect-reset requires either no argument or a commit"
+msgstr "--bisect-reset supporte soit aucun argument, soit un commit"
+
+#: builtin/bisect--helper.c:681
+msgid "--bisect-write requires either 4 or 5 arguments"
+msgstr "--bisect-write supporte soit 4 arguments, soit 5 arguments"
+
+#: builtin/bisect--helper.c:687
+msgid "--check-and-set-terms requires 3 arguments"
+msgstr "--check-and-set-terms exige 3 arguments"
+
+#: builtin/bisect--helper.c:693
+msgid "--bisect-next-check requires 2 or 3 arguments"
+msgstr "--bisect-next-check exige 2 ou 3 arguments"
+
+#: builtin/bisect--helper.c:699
+msgid "--bisect-terms requires 0 or 1 argument"
+msgstr "--bisect-terms exige 0 ou 1 argument"
+
 #: builtin/blame.c:31
 msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgstr "git blame [<options>] [<rev-opts>] [<rev>] [--] <fichier>"
@@ -8121,7 +8770,7 @@ 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:873
+#: builtin/blame.c:875
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress ne peut pas être utilisé avec --incremental ou les formats "
@@ -8135,18 +8784,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:924
+#: builtin/blame.c:926
 msgid "4 years, 11 months ago"
 msgstr "il y a 10 ans et 11 mois"
 
-#: builtin/blame.c:1011
+#: builtin/blame.c:1018
 #, 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:1057
+#: builtin/blame.c:1064
 msgid "Blaming lines"
 msgstr "Assignation de blâme aux lignes"
 
@@ -8352,7 +9001,7 @@ msgstr "régler le mode de suivi (voir git-pull(1))"
 msgid "do not use"
 msgstr "ne pas utiliser"
 
-#: builtin/branch.c:602 builtin/rebase--interactive.c:180
+#: builtin/branch.c:602 builtin/rebase--interactive.c:182
 msgid "upstream"
 msgstr "amont"
 
@@ -8451,7 +9100,7 @@ msgid "field name to sort on"
 msgstr "nom du champ servant à trier"
 
 #: builtin/branch.c:633 builtin/for-each-ref.c:43 builtin/notes.c:415
-#: builtin/notes.c:418 builtin/notes.c:578 builtin/notes.c:581
+#: builtin/notes.c:418 builtin/notes.c:581 builtin/notes.c:584
 #: builtin/tag.c:418
 msgid "object"
 msgstr "objet"
@@ -8469,7 +9118,7 @@ msgstr "le tri et le filtrage sont non-sensibles à la casse"
 msgid "format to use for the output"
 msgstr "format à utiliser pour la sortie"
 
-#: builtin/branch.c:660 builtin/clone.c:739
+#: builtin/branch.c:660 builtin/clone.c:746
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD non trouvée sous refs/heads !"
 
@@ -8519,7 +9168,7 @@ msgstr ""
 "impossible de spécifier une branche amont de HEAD par %s qui ne pointe sur "
 "aucune branche."
 
-#: builtin/branch.c:776 builtin/branch.c:798
+#: builtin/branch.c:776 builtin/branch.c:799
 #, c-format
 msgid "no such branch '%s'"
 msgstr "pas de branche '%s'"
@@ -8529,27 +9178,27 @@ msgstr "pas de branche '%s'"
 msgid "branch '%s' does not exist"
 msgstr "la branche '%s' n'existe pas"
 
-#: builtin/branch.c:792
+#: builtin/branch.c:793
 msgid "too many arguments to unset upstream"
 msgstr "trop d'arguments pour désactiver un amont"
 
-#: builtin/branch.c:796
+#: builtin/branch.c:797
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr ""
 "impossible de désactiver une branche amont de HEAD quand elle ne pointe sur "
 "aucune branche."
 
-#: builtin/branch.c:802
+#: builtin/branch.c:803
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "La branche '%s' n'a aucune information de branche amont"
 
-#: builtin/branch.c:812
+#: builtin/branch.c:813
 msgid "-a and -r options to 'git branch' do not make sense with a branch name"
 msgstr ""
 "les options -a et -r de 'git branch' n'ont pas de sens avec un nom de branche"
 
-#: builtin/branch.c:815
+#: builtin/branch.c:816
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -8570,7 +9219,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:587
+#: builtin/cat-file.c:593
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
@@ -8578,7 +9227,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:588
+#: builtin/cat-file.c:594
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
@@ -8586,136 +9235,136 @@ msgstr ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 
-#: builtin/cat-file.c:609
+#: builtin/cat-file.c:615
 msgid "only one batch option may be specified"
 msgstr "une seule option de traitement ne peut être spécifiée à la fois"
 
-#: builtin/cat-file.c:627
+#: builtin/cat-file.c:633
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<type> peut être : blob, tree, commit ou tag"
 
-#: builtin/cat-file.c:628
+#: builtin/cat-file.c:634
 msgid "show object type"
 msgstr "afficher le type de l'objet"
 
-#: builtin/cat-file.c:629
+#: builtin/cat-file.c:635
 msgid "show object size"
 msgstr "afficher la taille de l'objet"
 
-#: builtin/cat-file.c:631
+#: builtin/cat-file.c:637
 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:632
+#: builtin/cat-file.c:638
 msgid "pretty-print object's content"
 msgstr "afficher avec mise en forme le contenu de l'objet"
 
-#: builtin/cat-file.c:634
+#: builtin/cat-file.c:640
 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:636
+#: builtin/cat-file.c:642
 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:637 git-submodule.sh:857
+#: builtin/cat-file.c:643 git-submodule.sh:860
 msgid "blob"
 msgstr "blob"
 
-#: builtin/cat-file.c:638
+#: builtin/cat-file.c:644
 msgid "use a specific path for --textconv/--filters"
 msgstr "utiliser un chemin spécifique pour --textconv/--filters"
 
-#: builtin/cat-file.c:640
+#: builtin/cat-file.c:646
 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:641
+#: builtin/cat-file.c:647
 msgid "buffer --batch output"
 msgstr "bufferiser la sortie de --batch"
 
-#: builtin/cat-file.c:643
+#: builtin/cat-file.c:649
 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:647
+#: builtin/cat-file.c:653
 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:651
+#: builtin/cat-file.c:657
 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:653
+#: builtin/cat-file.c:659
 msgid "show all objects with --batch or --batch-check"
 msgstr "montrer tous les objets avec --batch ou --batch-check"
 
-#: builtin/cat-file.c:655
+#: builtin/cat-file.c:661
 msgid "do not order --batch-all-objects output"
 msgstr "ne pas ordonner la sortie de --batch-all-objects"
 
-#: builtin/check-attr.c:12
+#: builtin/check-attr.c:13
 msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
 msgstr "git check-attr [-a | --all | <attr>...] [--] <chemin>..."
 
-#: builtin/check-attr.c:13
+#: builtin/check-attr.c:14
 msgid "git check-attr --stdin [-z] [-a | --all | <attr>...]"
 msgstr "git check-attr --stdin [-z] [-a | --all | <attr>...]"
 
-#: builtin/check-attr.c:20
+#: builtin/check-attr.c:21
 msgid "report all attributes set on file"
 msgstr "afficher tous les attributs associés au fichier"
 
-#: builtin/check-attr.c:21
+#: builtin/check-attr.c:22
 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:101
+#: builtin/check-attr.c:23 builtin/check-ignore.c:25 builtin/hash-object.c:102
 msgid "read file names from stdin"
 msgstr "lire les noms de fichier depuis l'entrée standard"
 
-#: builtin/check-attr.c:24 builtin/check-ignore.c:26
+#: builtin/check-attr.c:25 builtin/check-ignore.c:27
 msgid "terminate input and output records by a NUL character"
 msgstr ""
 "terminer les enregistrements en entrée et en sortie par un caractère NUL"
 
-#: builtin/check-ignore.c:20 builtin/checkout.c:1234 builtin/gc.c:517
-#: builtin/worktree.c:495
+#: builtin/check-ignore.c:21 builtin/checkout.c:1280 builtin/gc.c:517
+#: builtin/worktree.c:496
 msgid "suppress progress reporting"
 msgstr "supprimer l'état d'avancement"
 
-#: builtin/check-ignore.c:28
+#: builtin/check-ignore.c:29
 msgid "show non-matching input paths"
 msgstr "afficher les chemins en entrée qui ne correspondent pas"
 
-#: builtin/check-ignore.c:30
+#: builtin/check-ignore.c:31
 msgid "ignore index when checking"
 msgstr "ignorer l'index pendant la vérification"
 
-#: builtin/check-ignore.c:159
+#: builtin/check-ignore.c:160
 msgid "cannot specify pathnames with --stdin"
 msgstr "impossible de spécifier les chemins avec --stdin"
 
-#: builtin/check-ignore.c:162
+#: builtin/check-ignore.c:163
 msgid "-z only makes sense with --stdin"
 msgstr "-z n'a de sens qu'avec l'option --stdin"
 
-#: builtin/check-ignore.c:164
+#: builtin/check-ignore.c:165
 msgid "no path specified"
 msgstr "aucun chemin spécifié"
 
-#: builtin/check-ignore.c:168
+#: builtin/check-ignore.c:169
 msgid "--quiet is only valid with a single pathname"
 msgstr "--quiet n'est valide qu'avec un seul chemin"
 
-#: builtin/check-ignore.c:170
+#: builtin/check-ignore.c:171
 msgid "cannot have both --quiet and --verbose"
 msgstr "impossible d'avoir --quiet et --verbose"
 
-#: builtin/check-ignore.c:173
+#: builtin/check-ignore.c:174
 msgid "--non-matching is only valid with --verbose"
 msgstr "--non-matching n'est valide qu'avec --verbose"
 
@@ -8736,168 +9385,189 @@ msgstr "impossible d'analyser le contact : %s"
 msgid "no contacts specified"
 msgstr "aucun contact spécifié"
 
-#: builtin/checkout-index.c:128
+#: builtin/checkout-index.c:131
 msgid "git checkout-index [<options>] [--] [<file>...]"
 msgstr "git checkout-index [<options>] [--] [<fichier>...]"
 
-#: builtin/checkout-index.c:145
+#: builtin/checkout-index.c:148
 msgid "stage should be between 1 and 3 or all"
 msgstr "stage doit valoir entre 1 et 3, ou all"
 
-#: builtin/checkout-index.c:161
+#: builtin/checkout-index.c:164
 msgid "check out all files in the index"
 msgstr "extraire tous les fichiers présents dans l'index"
 
-#: builtin/checkout-index.c:162
+#: builtin/checkout-index.c:165
 msgid "force overwrite of existing files"
 msgstr "forcer l'écrasement des fichiers existants"
 
-#: builtin/checkout-index.c:164
+#: builtin/checkout-index.c:167
 msgid "no warning for existing files and files not in index"
 msgstr ""
 "pas d'avertissement pour les fichiers existants et les fichiers absents de "
 "l'index"
 
-#: builtin/checkout-index.c:166
+#: builtin/checkout-index.c:169
 msgid "don't checkout new files"
 msgstr "ne pas extraire les nouveaux fichiers"
 
-#: builtin/checkout-index.c:168
+#: builtin/checkout-index.c:171
 msgid "update stat information in the index file"
 msgstr "mettre à jour l'information de stat dans le fichier d'index"
 
-#: builtin/checkout-index.c:172
+#: builtin/checkout-index.c:175
 msgid "read list of paths from the standard input"
 msgstr "lire la liste des chemins depuis l'entrée standard"
 
-#: builtin/checkout-index.c:174
+#: builtin/checkout-index.c:177
 msgid "write the content to temporary files"
 msgstr "écrire le contenu dans des fichiers temporaires"
 
-#: builtin/checkout-index.c:175 builtin/column.c:31
-#: builtin/submodule--helper.c:1368 builtin/submodule--helper.c:1371
-#: builtin/submodule--helper.c:1379 builtin/submodule--helper.c:1853
-#: builtin/worktree.c:668
+#: builtin/checkout-index.c:178 builtin/column.c:31
+#: builtin/submodule--helper.c:1372 builtin/submodule--helper.c:1375
+#: builtin/submodule--helper.c:1383 builtin/submodule--helper.c:1857
+#: builtin/worktree.c:669
 msgid "string"
 msgstr "chaîne"
 
-#: builtin/checkout-index.c:176
+#: builtin/checkout-index.c:179
 msgid "when creating files, prepend <string>"
 msgstr "lors de la création de fichiers, préfixer par <chaîne>"
 
-#: builtin/checkout-index.c:178
+#: builtin/checkout-index.c:181
 msgid "copy out the files from named stage"
 msgstr "copier les fichiers depuis l'index nommé"
 
-#: builtin/checkout.c:31
+#: builtin/checkout.c:32
 msgid "git checkout [<options>] <branch>"
 msgstr "git checkout [<options>] <branche>"
 
-#: builtin/checkout.c:32
+#: builtin/checkout.c:33
 msgid "git checkout [<options>] [<branch>] -- <file>..."
 msgstr "git checkout [<options>] [<branche>] -- <fichier>..."
 
-#: builtin/checkout.c:144 builtin/checkout.c:177
+#: builtin/checkout.c:147 builtin/checkout.c:181
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "le chemin '%s' n'a pas notre version"
 
-#: builtin/checkout.c:146 builtin/checkout.c:179
+#: builtin/checkout.c:149 builtin/checkout.c:183
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "le chemin '%s' n'a pas leur version"
 
-#: builtin/checkout.c:162
+#: builtin/checkout.c:165
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr "le chemin '%s' n'a aucune des versions nécessaires"
 
-#: builtin/checkout.c:206
+#: builtin/checkout.c:210
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr "le chemin '%s' n'a pas les versions nécessaires"
 
-#: builtin/checkout.c:224
+#: builtin/checkout.c:228
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "chemin '%s' : impossible de fusionner"
 
-#: builtin/checkout.c:240
+#: builtin/checkout.c:244
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "Impossible d'ajouter le résultat de fusion pour '%s'"
 
-#: builtin/checkout.c:262 builtin/checkout.c:265 builtin/checkout.c:268
-#: builtin/checkout.c:271
+#: builtin/checkout.c:267 builtin/checkout.c:270 builtin/checkout.c:273
+#: builtin/checkout.c:276
 #, 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:274 builtin/checkout.c:277
+#: builtin/checkout.c:279 builtin/checkout.c:282
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' ne peut pas être utilisé avec %s"
 
-#: builtin/checkout.c:280
+#: builtin/checkout.c:285
 #, 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:349 builtin/checkout.c:356
+#: builtin/checkout.c:354 builtin/checkout.c:361
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "le chemin '%s' n'est pas fusionné"
 
-#: builtin/checkout.c:608
+#: builtin/checkout.c:397
+#, c-format
+msgid "Recreated %d merge conflict"
+msgid_plural "Recreated %d merge conflicts"
+msgstr[0] "%d conflit du fusion recréé"
+msgstr[1] "%d conflits du fusion recréés"
+
+#: builtin/checkout.c:402
+#, c-format
+msgid "Updated %d path from %s"
+msgid_plural "Updated %d paths from %s"
+msgstr[0] "%d chemin mis à jour depuis %s"
+msgstr[1] "%d chemins mis à jour depuis %s"
+
+#: builtin/checkout.c:409
+#, c-format
+msgid "Updated %d path from the index"
+msgid_plural "Updated %d paths from the index"
+msgstr[0] "%d chemin mis à jour depuis l'index"
+msgstr[1] "%d chemins mis à jour depuis l'index"
+
+#: builtin/checkout.c:645
 msgid "you need to resolve your current index first"
 msgstr "vous devez d'abord résoudre votre index courant"
 
-#: builtin/checkout.c:745
+#: builtin/checkout.c:782
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Impossible de faire un reflog pour '%s' : %s\n"
 
-#: builtin/checkout.c:786
+#: builtin/checkout.c:824
 msgid "HEAD is now at"
 msgstr "HEAD est maintenant sur"
 
-#: builtin/checkout.c:790 builtin/clone.c:692
+#: builtin/checkout.c:828 builtin/clone.c:699
 msgid "unable to update HEAD"
 msgstr "impossible de mettre à jour HEAD"
 
-#: builtin/checkout.c:794
+#: builtin/checkout.c:832
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:797
+#: builtin/checkout.c:835
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Déjà sur '%s'\n"
 
-#: builtin/checkout.c:801
+#: builtin/checkout.c:839
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Basculement et remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:803 builtin/checkout.c:1166
+#: builtin/checkout.c:841 builtin/checkout.c:1212
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Basculement sur la nouvelle branche '%s'\n"
 
-#: builtin/checkout.c:805
+#: builtin/checkout.c:843
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Basculement sur la branche '%s'\n"
 
-#: builtin/checkout.c:856
+#: builtin/checkout.c:894
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... et %d en plus.\n"
 
-#: builtin/checkout.c:862
+#: builtin/checkout.c:900
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -8920,7 +9590,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:881
+#: builtin/checkout.c:919
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -8949,162 +9619,171 @@ msgstr[1] ""
 "git branch <nouvelle-branche> %s\n"
 "\n"
 
-#: builtin/checkout.c:913
+#: builtin/checkout.c:951
 msgid "internal error in revision walk"
 msgstr "erreur interne lors du parcours des révisions"
 
-#: builtin/checkout.c:917
+#: builtin/checkout.c:955
 msgid "Previous HEAD position was"
 msgstr "La position précédente de HEAD était sur"
 
-#: builtin/checkout.c:945 builtin/checkout.c:1161
+#: builtin/checkout.c:983 builtin/checkout.c:1207
 msgid "You are on a branch yet to be born"
 msgstr "Vous êtes sur une branche qui doit encore naître"
 
-#: builtin/checkout.c:1066
+#: builtin/checkout.c:1104
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "une seule référence attendue, %d fournies."
 
-#: builtin/checkout.c:1107 builtin/worktree.c:289 builtin/worktree.c:444
+#: builtin/checkout.c:1140
+#, c-format
+msgid ""
+"'%s' could be both a local file and a tracking branch.\n"
+"Please use -- (and optionally --no-guess) to disambiguate"
+msgstr ""
+"'%s' pourrait être un fichier local ou un branche de suivi.\n"
+"Veuillez utiliser -- (et --no-guess en facultatif) pour les distinguer"
+
+#: builtin/checkout.c:1153 builtin/worktree.c:290 builtin/worktree.c:445
 #, c-format
 msgid "invalid reference: %s"
 msgstr "référence invalide : %s"
 
-#: builtin/checkout.c:1136
+#: builtin/checkout.c:1182
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "la référence n'est pas un arbre : %s"
 
-#: builtin/checkout.c:1175
+#: builtin/checkout.c:1221
 msgid "paths cannot be used with switching branches"
 msgstr "impossible d'utiliser des chemins avec un basculement de branches"
 
-#: builtin/checkout.c:1178 builtin/checkout.c:1182
+#: builtin/checkout.c:1224 builtin/checkout.c:1228
 #, 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:1186 builtin/checkout.c:1189 builtin/checkout.c:1194
-#: builtin/checkout.c:1197
+#: builtin/checkout.c:1232 builtin/checkout.c:1235 builtin/checkout.c:1240
+#: builtin/checkout.c:1243
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' ne peut pas être utilisé avec '%s'"
 
-#: builtin/checkout.c:1202
+#: builtin/checkout.c:1248
 #, 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:1235 builtin/checkout.c:1237 builtin/clone.c:119
-#: builtin/remote.c:169 builtin/remote.c:171 builtin/worktree.c:488
-#: builtin/worktree.c:490
+#: builtin/checkout.c:1281 builtin/checkout.c:1283 builtin/clone.c:120
+#: builtin/remote.c:169 builtin/remote.c:171 builtin/worktree.c:489
+#: builtin/worktree.c:491
 msgid "branch"
 msgstr "branche"
 
-#: builtin/checkout.c:1236
+#: builtin/checkout.c:1282
 msgid "create and checkout a new branch"
 msgstr "créer et extraire une nouvelle branche"
 
-#: builtin/checkout.c:1238
+#: builtin/checkout.c:1284
 msgid "create/reset and checkout a branch"
 msgstr "créer/réinitialiser et extraire une branche"
 
-#: builtin/checkout.c:1239
+#: builtin/checkout.c:1285
 msgid "create reflog for new branch"
 msgstr "créer un reflog pour une nouvelle branche"
 
-#: builtin/checkout.c:1240 builtin/worktree.c:492
+#: builtin/checkout.c:1286 builtin/worktree.c:493
 msgid "detach HEAD at named commit"
 msgstr "détacher la HEAD au commit nommé"
 
-#: builtin/checkout.c:1241
+#: builtin/checkout.c:1287
 msgid "set upstream info for new branch"
 msgstr "paramétrer les coordonnées de branche amont pour une nouvelle branche"
 
-#: builtin/checkout.c:1243
+#: builtin/checkout.c:1289
 msgid "new-branch"
 msgstr "nouvelle branche"
 
-#: builtin/checkout.c:1243
+#: builtin/checkout.c:1289
 msgid "new unparented branch"
 msgstr "nouvelle branche sans parent"
 
-#: builtin/checkout.c:1245
+#: builtin/checkout.c:1291
 msgid "checkout our version for unmerged files"
 msgstr "extraire notre version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1248
+#: builtin/checkout.c:1294
 msgid "checkout their version for unmerged files"
 msgstr "extraire leur version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1250
+#: builtin/checkout.c:1296
 msgid "force checkout (throw away local modifications)"
 msgstr "forcer l'extraction (laisser tomber les modifications locales)"
 
-#: builtin/checkout.c:1252
+#: builtin/checkout.c:1298
 msgid "perform a 3-way merge with the new branch"
 msgstr "effectuer une fusion à 3 points avec la nouvelle branche"
 
-#: builtin/checkout.c:1254 builtin/merge.c:275
+#: builtin/checkout.c:1300 builtin/merge.c:276
 msgid "update ignored files (default)"
 msgstr "mettre à jour les fichiers ignorés (par défaut)"
 
-#: builtin/checkout.c:1256 builtin/log.c:1573 parse-options.h:274
+#: builtin/checkout.c:1302 builtin/log.c:1586 parse-options.h:272
 msgid "style"
 msgstr "style"
 
-#: builtin/checkout.c:1257
+#: builtin/checkout.c:1303
 msgid "conflict style (merge or diff3)"
 msgstr "style de conflit (merge (fusion) ou diff3)"
 
-#: builtin/checkout.c:1260
+#: builtin/checkout.c:1306
 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:1262
-msgid "second guess 'git checkout <no-such-branch>'"
-msgstr "essayer d'interpréter 'git checkout <branche-inexistante>'"
+#: builtin/checkout.c:1308
+msgid "do not second guess 'git checkout <no-such-branch>'"
+msgstr "ne pas essayer d'interpréter 'git checkout <branche-inexistante>'"
 
-#: builtin/checkout.c:1264
+#: builtin/checkout.c:1310
 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:1268 builtin/clone.c:86 builtin/fetch.c:141
-#: builtin/merge.c:272 builtin/pull.c:129 builtin/push.c:572
+#: builtin/checkout.c:1314 builtin/clone.c:87 builtin/fetch.c:141
+#: builtin/merge.c:273 builtin/pull.c:130 builtin/push.c:575
 #: builtin/send-pack.c:174
 msgid "force progress reporting"
 msgstr "forcer l'affichage de l'état d'avancement"
 
-#: builtin/checkout.c:1298
+#: builtin/checkout.c:1345
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "-b, -B et --orphan sont mutuellement exclusifs"
 
-#: builtin/checkout.c:1315
+#: builtin/checkout.c:1362
 msgid "--track needs a branch name"
 msgstr "--track requiert un nom de branche"
 
-#: builtin/checkout.c:1320
+#: builtin/checkout.c:1367
 msgid "missing branch name; try -b"
 msgstr "nom de branche manquant ; essayez -b"
 
-#: builtin/checkout.c:1357
+#: builtin/checkout.c:1404
 msgid "invalid path specification"
 msgstr "spécification de chemin invalide"
 
-#: builtin/checkout.c:1364
+#: builtin/checkout.c:1411
 #, 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:1368
+#: builtin/checkout.c:1415
 #, 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:1372
+#: builtin/checkout.c:1419
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -9112,7 +9791,7 @@ msgstr ""
 "git checkout: --ours/--theirs, --force et --merge sont incompatibles lors\n"
 "de l'extraction de l'index."
 
-#: builtin/checkout.c:1392
+#: builtin/checkout.c:1439
 #, c-format
 msgid ""
 "'%s' matched more than one remote tracking branch.\n"
@@ -9141,38 +9820,38 @@ msgstr ""
 "ambigu, vous pouvez positionner checkout.defaultRemote=origin dans\n"
 "votre config."
 
-#: builtin/clean.c:27
+#: builtin/clean.c:28
 msgid ""
 "git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
 msgstr ""
 "git clean [-d] [-f] [-i] [-n] [-q] [-e <motif>] [-x | -X] [--] <chemins>..."
 
-#: builtin/clean.c:31
+#: builtin/clean.c:32
 #, c-format
 msgid "Removing %s\n"
 msgstr "Suppression de %s\n"
 
-#: builtin/clean.c:32
+#: builtin/clean.c:33
 #, c-format
 msgid "Would remove %s\n"
 msgstr "Supprimerait %s\n"
 
-#: builtin/clean.c:33
+#: builtin/clean.c:34
 #, c-format
 msgid "Skipping repository %s\n"
 msgstr "Ignore le dépôt %s\n"
 
-#: builtin/clean.c:34
+#: builtin/clean.c:35
 #, c-format
 msgid "Would skip repository %s\n"
 msgstr "Ignorerait le dépôt %s\n"
 
-#: builtin/clean.c:35
+#: builtin/clean.c:36
 #, c-format
 msgid "failed to remove %s"
 msgstr "échec de la suppression de %s"
 
-#: builtin/clean.c:298 git-add--interactive.perl:579
+#: builtin/clean.c:299 git-add--interactive.perl:579
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -9185,7 +9864,7 @@ msgstr ""
 "foo         - sélectionner un élément par un préfixe unique\n"
 "            - (vide) ne rien sélectionner\n"
 
-#: builtin/clean.c:302 git-add--interactive.perl:588
+#: builtin/clean.c:303 git-add--interactive.perl:588
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -9206,38 +9885,38 @@ msgstr ""
 "*          - choisir tous les éléments\n"
 "           - (vide) terminer la sélection\n"
 
-#: builtin/clean.c:518 git-add--interactive.perl:554
+#: builtin/clean.c:519 git-add--interactive.perl:554
 #: git-add--interactive.perl:559
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr "Hein (%s) ?\n"
 
-#: builtin/clean.c:660
+#: builtin/clean.c:661
 #, c-format
 msgid "Input ignore patterns>> "
 msgstr "Entrez les motifs à ignorer>> "
 
-#: builtin/clean.c:697
+#: builtin/clean.c:698
 #, c-format
 msgid "WARNING: Cannot find items matched by: %s"
 msgstr "ATTENTION : Impossible de trouver les éléments correspondant à : %s"
 
-#: builtin/clean.c:718
+#: builtin/clean.c:719
 msgid "Select items to delete"
 msgstr "Sélectionner les éléments à supprimer"
 
 #. TRANSLATORS: Make sure to keep [y/N] as is
-#: builtin/clean.c:759
+#: builtin/clean.c:760
 #, c-format
 msgid "Remove %s [y/N]? "
 msgstr "Supprimer %s [y/N] ? "
 
-#: builtin/clean.c:784 git-add--interactive.perl:1717
+#: builtin/clean.c:785 git-add--interactive.perl:1717
 #, c-format
 msgid "Bye.\n"
 msgstr "Au revoir.\n"
 
-#: builtin/clean.c:792
+#: builtin/clean.c:793
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -9255,64 +9934,64 @@ msgstr ""
 "help                - cet écran\n"
 "?                   - aide pour la sélection en ligne"
 
-#: builtin/clean.c:819 git-add--interactive.perl:1793
+#: builtin/clean.c:820 git-add--interactive.perl:1793
 msgid "*** Commands ***"
 msgstr "*** Commandes ***"
 
-#: builtin/clean.c:820 git-add--interactive.perl:1790
+#: builtin/clean.c:821 git-add--interactive.perl:1790
 msgid "What now"
 msgstr "Et maintenant ?"
 
-#: builtin/clean.c:828
+#: builtin/clean.c:829
 msgid "Would remove the following item:"
 msgid_plural "Would remove the following items:"
 msgstr[0] "Supprimerait l'élément suivant :"
 msgstr[1] "Supprimerait les éléments suivants :"
 
-#: builtin/clean.c:844
+#: builtin/clean.c:845
 msgid "No more files to clean, exiting."
 msgstr "Plus de fichier à nettoyer, sortie."
 
-#: builtin/clean.c:906
+#: builtin/clean.c:907
 msgid "do not print names of files removed"
 msgstr "ne pas afficher les noms des fichiers supprimés"
 
-#: builtin/clean.c:908
+#: builtin/clean.c:909
 msgid "force"
 msgstr "forcer"
 
-#: builtin/clean.c:909
+#: builtin/clean.c:910
 msgid "interactive cleaning"
 msgstr "nettoyage interactif"
 
-#: builtin/clean.c:911
+#: builtin/clean.c:912
 msgid "remove whole directories"
 msgstr "supprimer les répertoires entiers"
 
-#: builtin/clean.c:912 builtin/describe.c:545 builtin/describe.c:547
-#: builtin/grep.c:886 builtin/log.c:166 builtin/log.c:168
-#: builtin/ls-files.c:556 builtin/name-rev.c:415 builtin/name-rev.c:417
+#: builtin/clean.c:913 builtin/describe.c:546 builtin/describe.c:548
+#: builtin/grep.c:897 builtin/log.c:167 builtin/log.c:169
+#: builtin/ls-files.c:557 builtin/name-rev.c:415 builtin/name-rev.c:417
 #: builtin/show-ref.c:178
 msgid "pattern"
 msgstr "motif"
 
-#: builtin/clean.c:913
+#: builtin/clean.c:914
 msgid "add <pattern> to ignore rules"
 msgstr "ajouter <motif> aux règles ignore"
 
-#: builtin/clean.c:914
+#: builtin/clean.c:915
 msgid "remove ignored files, too"
 msgstr "supprimer les fichiers ignorés, aussi"
 
-#: builtin/clean.c:916
+#: builtin/clean.c:917
 msgid "remove only ignored files"
 msgstr "supprimer seulement les fichiers ignorés"
 
-#: builtin/clean.c:934
+#: builtin/clean.c:935
 msgid "-x and -X cannot be used together"
 msgstr "-x et -X ne peuvent pas être utilisés ensemble"
 
-#: builtin/clean.c:938
+#: builtin/clean.c:939
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
@@ -9320,7 +9999,7 @@ msgstr ""
 "clean.requireForce positionné à true et ni -i, -n ou -f fourni ; refus de "
 "nettoyer"
 
-#: builtin/clean.c:941
+#: builtin/clean.c:942
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -9328,149 +10007,149 @@ msgstr ""
 "clean.requireForce à true par défaut et ni -i, -n ou -f fourni ; refus de "
 "nettoyer"
 
-#: builtin/clone.c:43
+#: builtin/clone.c:44
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<options>] [--] <dépôt> [<répertoire>]"
 
-#: builtin/clone.c:88
+#: builtin/clone.c:89
 msgid "don't create a checkout"
 msgstr "ne pas créer d'extraction"
 
-#: builtin/clone.c:89 builtin/clone.c:91 builtin/init-db.c:481
+#: builtin/clone.c:90 builtin/clone.c:92 builtin/init-db.c:481
 msgid "create a bare repository"
 msgstr "créer un dépôt nu"
 
-#: builtin/clone.c:93
+#: builtin/clone.c:94
 msgid "create a mirror repository (implies bare)"
 msgstr "créer un dépôt miroir (implique dépôt nu)"
 
-#: builtin/clone.c:95
+#: builtin/clone.c:96
 msgid "to clone from a local repository"
 msgstr "pour cloner depuis un dépôt local"
 
-#: builtin/clone.c:97
+#: builtin/clone.c:98
 msgid "don't use local hardlinks, always copy"
 msgstr "ne pas utiliser de liens durs locaux, toujours copier"
 
-#: builtin/clone.c:99
+#: builtin/clone.c:100
 msgid "setup as shared repository"
 msgstr "régler comme dépôt partagé"
 
-#: builtin/clone.c:101 builtin/clone.c:105
+#: builtin/clone.c:102 builtin/clone.c:106
 msgid "pathspec"
 msgstr "spécificateur de chemin"
 
-#: builtin/clone.c:101 builtin/clone.c:105
+#: builtin/clone.c:102 builtin/clone.c:106
 msgid "initialize submodules in the clone"
 msgstr "initialiser les sous-modules dans le clone"
 
-#: builtin/clone.c:108
+#: builtin/clone.c:109
 msgid "number of submodules cloned in parallel"
 msgstr "nombre de sous-modules clonés en parallèle"
 
-#: builtin/clone.c:109 builtin/init-db.c:478
+#: builtin/clone.c:110 builtin/init-db.c:478
 msgid "template-directory"
 msgstr "répertoire-modèle"
 
-#: builtin/clone.c:110 builtin/init-db.c:479
+#: builtin/clone.c:111 builtin/init-db.c:479
 msgid "directory from which templates will be used"
 msgstr "répertoire depuis lequel les modèles vont être utilisés"
 
-#: builtin/clone.c:112 builtin/clone.c:114 builtin/submodule--helper.c:1375
-#: builtin/submodule--helper.c:1856
+#: builtin/clone.c:113 builtin/clone.c:115 builtin/submodule--helper.c:1379
+#: builtin/submodule--helper.c:1860
 msgid "reference repository"
 msgstr "dépôt de référence"
 
-#: builtin/clone.c:116 builtin/submodule--helper.c:1377
-#: builtin/submodule--helper.c:1858
+#: builtin/clone.c:117 builtin/submodule--helper.c:1381
+#: builtin/submodule--helper.c:1862
 msgid "use --reference only while cloning"
 msgstr "utiliser seulement --reference pour cloner"
 
-#: builtin/clone.c:117 builtin/column.c:27 builtin/merge-file.c:46
-#: builtin/pack-objects.c:3301 builtin/repack.c:329
+#: builtin/clone.c:118 builtin/column.c:27 builtin/merge-file.c:46
+#: builtin/pack-objects.c:3303 builtin/repack.c:329
 msgid "name"
 msgstr "nom"
 
-#: builtin/clone.c:118
+#: builtin/clone.c:119
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "utiliser <nom> au lieu de 'origin' pour suivre la branche amont"
 
-#: builtin/clone.c:120
+#: builtin/clone.c:121
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "extraire <branche> au lieu de la HEAD du répertoire distant"
 
-#: builtin/clone.c:122
+#: builtin/clone.c:123
 msgid "path to git-upload-pack on the remote"
 msgstr "chemin vers git-upload-pack sur le serveur distant"
 
-#: builtin/clone.c:123 builtin/fetch.c:142 builtin/grep.c:825
-#: builtin/pull.c:217
+#: builtin/clone.c:124 builtin/fetch.c:142 builtin/grep.c:836
+#: builtin/pull.c:218
 msgid "depth"
 msgstr "profondeur"
 
-#: builtin/clone.c:124
+#: builtin/clone.c:125
 msgid "create a shallow clone of that depth"
 msgstr "créer un clone superficiel de cette profondeur"
 
-#: builtin/clone.c:125 builtin/fetch.c:144 builtin/pack-objects.c:3292
+#: builtin/clone.c:126 builtin/fetch.c:144 builtin/pack-objects.c:3292
 msgid "time"
 msgstr "heure"
 
-#: builtin/clone.c:126
+#: builtin/clone.c:127
 msgid "create a shallow clone since a specific time"
 msgstr "créer un clone superficiel depuis une date spécifique"
 
-#: builtin/clone.c:127 builtin/fetch.c:146 builtin/fetch.c:169
-#: builtin/rebase.c:831
+#: builtin/clone.c:128 builtin/fetch.c:146 builtin/fetch.c:169
+#: builtin/rebase.c:1039
 msgid "revision"
 msgstr "révision"
 
-#: builtin/clone.c:128 builtin/fetch.c:147
+#: builtin/clone.c:129 builtin/fetch.c:147
 msgid "deepen history of shallow clone, excluding rev"
 msgstr ""
 "approfondir l'historique d'un clone superficiel en excluant une révision"
 
-#: builtin/clone.c:130
+#: builtin/clone.c:131
 msgid "clone only one branch, HEAD or --branch"
 msgstr "cloner seulement une branche, HEAD ou --branch"
 
-#: builtin/clone.c:132
+#: builtin/clone.c:133
 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:134
+#: builtin/clone.c:135
 msgid "any cloned submodules will be shallow"
 msgstr "tous les sous-modules clonés seront superficiels"
 
-#: builtin/clone.c:135 builtin/init-db.c:487
+#: builtin/clone.c:136 builtin/init-db.c:487
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:136 builtin/init-db.c:488
+#: builtin/clone.c:137 builtin/init-db.c:488
 msgid "separate git dir from working tree"
 msgstr "séparer le répertoire git de la copie de travail"
 
-#: builtin/clone.c:137
+#: builtin/clone.c:138
 msgid "key=value"
 msgstr "clé=valeur"
 
-#: builtin/clone.c:138
+#: builtin/clone.c:139
 msgid "set config inside the new repository"
 msgstr "régler la configuration dans le nouveau dépôt"
 
-#: builtin/clone.c:139 builtin/fetch.c:165 builtin/pull.c:230
-#: builtin/push.c:583
+#: builtin/clone.c:140 builtin/fetch.c:165 builtin/pull.c:231
+#: builtin/push.c:586
 msgid "use IPv4 addresses only"
 msgstr "n'utiliser que des adresses IPv4"
 
-#: builtin/clone.c:141 builtin/fetch.c:167 builtin/pull.c:233
-#: builtin/push.c:585
+#: builtin/clone.c:142 builtin/fetch.c:167 builtin/pull.c:234
+#: builtin/push.c:588
 msgid "use IPv6 addresses only"
 msgstr "n'utiliser que des adresses IPv6"
 
-#: builtin/clone.c:279
+#: builtin/clone.c:280
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -9478,47 +10157,47 @@ 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:332
+#: builtin/clone.c:333
 #, 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:404
+#: builtin/clone.c:405
 #, c-format
 msgid "failed to open '%s'"
 msgstr "échec à l'ouverture de '%s'"
 
-#: builtin/clone.c:412
+#: builtin/clone.c:413
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s existe et n'est pas un répertoire"
 
-#: builtin/clone.c:426
+#: builtin/clone.c:427
 #, c-format
 msgid "failed to stat %s\n"
 msgstr "échec du stat de %s\n"
 
-#: builtin/clone.c:443
+#: builtin/clone.c:444
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "échec lors de l'unlink de '%s'"
 
-#: builtin/clone.c:448
+#: builtin/clone.c:449
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "échec de la création du lien '%s'"
 
-#: builtin/clone.c:452
+#: builtin/clone.c:453
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "échec de la copie vers '%s'"
 
-#: builtin/clone.c:478
+#: builtin/clone.c:479
 #, c-format
 msgid "done.\n"
 msgstr "fait.\n"
 
-#: builtin/clone.c:492
+#: builtin/clone.c:493
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -9528,98 +10207,98 @@ 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:569
+#: builtin/clone.c:570
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Impossible de trouver la branche distante '%s' à cloner."
 
-#: builtin/clone.c:680
+#: builtin/clone.c:687
 #, c-format
 msgid "unable to update %s"
 msgstr "impossible de mettre à jour %s"
 
-#: builtin/clone.c:730
+#: builtin/clone.c:737
 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:761
+#: builtin/clone.c:768
 msgid "unable to checkout working tree"
 msgstr "impossible d'extraire la copie de travail"
 
-#: builtin/clone.c:806
+#: builtin/clone.c:813
 msgid "unable to write parameters to config file"
 msgstr "impossible d'écrire les paramètres dans le fichier de configuration"
 
-#: builtin/clone.c:869
+#: builtin/clone.c:876
 msgid "cannot repack to clean up"
 msgstr "impossible de remballer pour nettoyer"
 
-#: builtin/clone.c:871
+#: builtin/clone.c:878
 msgid "cannot unlink temporary alternates file"
 msgstr "impossible de unlinker le fichier temporaire alternates"
 
-#: builtin/clone.c:911 builtin/receive-pack.c:1941
+#: builtin/clone.c:918 builtin/receive-pack.c:1941
 msgid "Too many arguments."
 msgstr "Trop d'arguments."
 
-#: builtin/clone.c:915
+#: builtin/clone.c:922
 msgid "You must specify a repository to clone."
 msgstr "Vous devez spécifier un dépôt à cloner."
 
-#: builtin/clone.c:928
+#: builtin/clone.c:935
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "les options --bare et --origin %s sont incompatibles."
 
-#: builtin/clone.c:931
+#: builtin/clone.c:938
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "--bare et --separate-git-dir sont incompatibles."
 
-#: builtin/clone.c:944
+#: builtin/clone.c:951
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "le dépôt '%s' n'existe pas"
 
-#: builtin/clone.c:950 builtin/fetch.c:1606
+#: builtin/clone.c:957 builtin/fetch.c:1608
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "la profondeur %s n'est pas un entier positif"
 
-#: builtin/clone.c:960
+#: builtin/clone.c:967
 #, 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:970
+#: builtin/clone.c:977
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "la copie de travail '%s' existe déjà."
 
-#: builtin/clone.c:985 builtin/clone.c:1006 builtin/difftool.c:271
-#: builtin/worktree.c:295 builtin/worktree.c:325
+#: builtin/clone.c:992 builtin/clone.c:1013 builtin/difftool.c:272
+#: builtin/worktree.c:296 builtin/worktree.c:326
 #, 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:990
+#: builtin/clone.c:997
 #, 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:1010
+#: builtin/clone.c:1017
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Clonage dans le dépôt nu '%s'\n"
 
-#: builtin/clone.c:1012
+#: builtin/clone.c:1019
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Clonage dans '%s'...\n"
 
-#: builtin/clone.c:1036
+#: builtin/clone.c:1043
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -9627,41 +10306,41 @@ msgstr ""
 "clone --recursive n'est pas compatible avec à la fois --reference et --"
 "reference-if-able"
 
-#: builtin/clone.c:1097
+#: builtin/clone.c:1104
 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:1099
+#: builtin/clone.c:1106
 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:1101
+#: builtin/clone.c:1108
 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:1103
+#: builtin/clone.c:1110
 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:1106
+#: builtin/clone.c:1113
 msgid "source repository is shallow, ignoring --local"
 msgstr "le dépôt source est superficiel, option --local ignorée"
 
-#: builtin/clone.c:1111
+#: builtin/clone.c:1118
 msgid "--local is ignored"
 msgstr "--local est ignoré"
 
-#: builtin/clone.c:1181 builtin/clone.c:1189
+#: builtin/clone.c:1192 builtin/clone.c:1200
 #, 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:1192
+#: builtin/clone.c:1203
 msgid "You appear to have cloned an empty repository."
 msgstr "Vous semblez avoir cloné un dépôt vide."
 
@@ -9697,15 +10376,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:40
+#: builtin/commit.c:41
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr "git commit [<options>] [--] <spécification-de-chemin>..."
 
-#: builtin/commit.c:45
+#: builtin/commit.c:46
 msgid "git status [<options>] [--] <pathspec>..."
 msgstr "git status [<options>] [--] <spécification-de-chemin>..."
 
-#: builtin/commit.c:50
+#: builtin/commit.c:51
 msgid ""
 "You asked to amend the most recent commit, but doing so would make\n"
 "it empty. You can repeat your command with --allow-empty, or you can\n"
@@ -9716,7 +10395,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:55
+#: builtin/commit.c:56
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -9731,11 +10410,11 @@ msgstr ""
 "    git commit --allow-empty\n"
 "\n"
 
-#: builtin/commit.c:62
+#: builtin/commit.c:63
 msgid "Otherwise, please use 'git reset'\n"
 msgstr "Sinon, veuillez utiliser 'git reset'\n"
 
-#: builtin/commit.c:65
+#: builtin/commit.c:66
 msgid ""
 "If you wish to skip this commit, use:\n"
 "\n"
@@ -9751,61 +10430,61 @@ msgstr ""
 "Puis \"git cherry-pick --continue\" continuera le picorage \n"
 "des commits restants.\n"
 
-#: builtin/commit.c:311
+#: builtin/commit.c:312
 msgid "failed to unpack HEAD tree object"
 msgstr "échec du dépaquetage de l'objet arbre HEAD"
 
-#: builtin/commit.c:352
+#: builtin/commit.c:353
 msgid "unable to create temporary index"
 msgstr "impossible de créer l'index temporaire"
 
-#: builtin/commit.c:358
+#: builtin/commit.c:359
 msgid "interactive add failed"
 msgstr "échec de l'ajout interactif"
 
-#: builtin/commit.c:371
+#: builtin/commit.c:373
 msgid "unable to update temporary index"
 msgstr "impossible de mettre à jour l'index temporaire"
 
-#: builtin/commit.c:373
+#: builtin/commit.c:375
 msgid "Failed to update main cache tree"
 msgstr "Impossible de mettre à jour l'arbre de cache principal"
 
-#: builtin/commit.c:398 builtin/commit.c:421 builtin/commit.c:467
+#: builtin/commit.c:400 builtin/commit.c:423 builtin/commit.c:469
 msgid "unable to write new_index file"
 msgstr "impossible d'écrire le fichier new_index"
 
-#: builtin/commit.c:450
+#: builtin/commit.c:452
 msgid "cannot do a partial commit during a merge."
 msgstr "impossible de faire une validation partielle pendant une fusion."
 
-#: builtin/commit.c:452
+#: builtin/commit.c:454
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "impossible de faire une validation partielle pendant un picorage."
 
-#: builtin/commit.c:460
+#: builtin/commit.c:462
 msgid "cannot read the index"
 msgstr "impossible de lire l'index"
 
-#: builtin/commit.c:479
+#: builtin/commit.c:481
 msgid "unable to write temporary index file"
 msgstr "impossible d'écrire le fichier d'index temporaire"
 
-#: builtin/commit.c:577
+#: builtin/commit.c:579
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "entête d'auteur manquant dans le commit '%s'"
 
-#: builtin/commit.c:579
+#: builtin/commit.c:581
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr "le commit '%s' a une ligne d'auteur malformée"
 
-#: builtin/commit.c:598
+#: builtin/commit.c:600
 msgid "malformed --author parameter"
 msgstr "paramètre --author mal formé"
 
-#: builtin/commit.c:650
+#: builtin/commit.c:652
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -9813,38 +10492,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:687 builtin/commit.c:720 builtin/commit.c:1049
+#: builtin/commit.c:689 builtin/commit.c:722 builtin/commit.c:1052
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "impossible de rechercher le commit %s"
 
-#: builtin/commit.c:699 builtin/shortlog.c:317
+#: builtin/commit.c:701 builtin/shortlog.c:319
 #, 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:701
+#: builtin/commit.c:703
 msgid "could not read log from standard input"
 msgstr "impossible de lire le journal depuis l'entrée standard"
 
-#: builtin/commit.c:705
+#: builtin/commit.c:707
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "impossible de lire le fichier de journal '%s'"
 
-#: builtin/commit.c:734 builtin/commit.c:742
+#: builtin/commit.c:736 builtin/commit.c:744
 msgid "could not read SQUASH_MSG"
 msgstr "impossible de lire SQUASH_MSG"
 
-#: builtin/commit.c:739
+#: builtin/commit.c:741
 msgid "could not read MERGE_MSG"
 msgstr "impossible de lire MERGE_MSG"
 
-#: builtin/commit.c:793
+#: builtin/commit.c:795
 msgid "could not write commit template"
 msgstr "impossible d'écrire le modèle de commit"
 
-#: builtin/commit.c:811
+#: builtin/commit.c:813
 #, c-format
 msgid ""
 "\n"
@@ -9859,7 +10538,7 @@ msgstr ""
 "\t%s\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:816
+#: builtin/commit.c:818
 #, c-format
 msgid ""
 "\n"
@@ -9874,7 +10553,7 @@ msgstr ""
 "\t%s\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:829
+#: builtin/commit.c:831
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -9884,7 +10563,7 @@ msgstr ""
 "commençant par '%c' seront ignorées, et un message vide abandonne la "
 "validation.\n"
 
-#: builtin/commit.c:837
+#: builtin/commit.c:839
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -9895,152 +10574,152 @@ 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:854
+#: builtin/commit.c:856
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sAuteur :     %.*s <%.*s>"
 
-#: builtin/commit.c:862
+#: builtin/commit.c:864
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sDate :       %s"
 
-#: builtin/commit.c:869
+#: builtin/commit.c:871
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sValidateur : %.*s <%.*s>"
 
-#: builtin/commit.c:887
+#: builtin/commit.c:889
 msgid "Cannot read index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/commit.c:953
+#: builtin/commit.c:956
 msgid "Error building trees"
 msgstr "Erreur lors de la construction des arbres"
 
-#: builtin/commit.c:967 builtin/tag.c:258
+#: builtin/commit.c:970 builtin/tag.c:258
 #, 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:1011
+#: builtin/commit.c:1014
 #, 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:1025
+#: builtin/commit.c:1028
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr "Mode de fichier ignoré invalide '%s'"
 
-#: builtin/commit.c:1039 builtin/commit.c:1276
+#: builtin/commit.c:1042 builtin/commit.c:1279
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Mode de fichier non suivi invalide '%s'"
 
-#: builtin/commit.c:1077
+#: builtin/commit.c:1080
 msgid "--long and -z are incompatible"
 msgstr "--long et -z sont incompatibles"
 
-#: builtin/commit.c:1110
+#: builtin/commit.c:1113
 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:1119
+#: builtin/commit.c:1122
 msgid "You have nothing to amend."
 msgstr "Il n'y a rien à corriger."
 
-#: builtin/commit.c:1122
+#: builtin/commit.c:1125
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Vous êtes en pleine fusion -- impossible de corriger (amend)."
 
-#: builtin/commit.c:1124
+#: builtin/commit.c:1127
 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:1127
+#: builtin/commit.c:1130
 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:1137
+#: builtin/commit.c:1140
 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:1139
+#: builtin/commit.c:1142
 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:1147
+#: builtin/commit.c:1150
 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:1164
+#: builtin/commit.c:1167
 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:1166
+#: builtin/commit.c:1169
 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:1180 builtin/tag.c:546
+#: builtin/commit.c:1183 builtin/tag.c:546
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Mode de nettoyage invalide %s"
 
-#: builtin/commit.c:1185
+#: builtin/commit.c:1188
 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:1311 builtin/commit.c:1495
+#: builtin/commit.c:1314 builtin/commit.c:1498
 msgid "show status concisely"
 msgstr "afficher l'état avec concision"
 
-#: builtin/commit.c:1313 builtin/commit.c:1497
+#: builtin/commit.c:1316 builtin/commit.c:1500
 msgid "show branch information"
 msgstr "afficher l'information de branche"
 
-#: builtin/commit.c:1315
+#: builtin/commit.c:1318
 msgid "show stash information"
 msgstr "afficher l'information de remisage"
 
-#: builtin/commit.c:1317 builtin/commit.c:1499
+#: builtin/commit.c:1320 builtin/commit.c:1502
 msgid "compute full ahead/behind values"
 msgstr "calcule les valeurs complètes en avance/en retard"
 
-#: builtin/commit.c:1319
+#: builtin/commit.c:1322
 msgid "version"
 msgstr "version"
 
-#: builtin/commit.c:1319 builtin/commit.c:1501 builtin/push.c:558
-#: builtin/worktree.c:639
+#: builtin/commit.c:1322 builtin/commit.c:1504 builtin/push.c:561
+#: builtin/worktree.c:640
 msgid "machine-readable output"
 msgstr "sortie pour traitement automatique"
 
-#: builtin/commit.c:1322 builtin/commit.c:1503
+#: builtin/commit.c:1325 builtin/commit.c:1506
 msgid "show status in long format (default)"
 msgstr "afficher l'état en format long (par défaut)"
 
-#: builtin/commit.c:1325 builtin/commit.c:1506
+#: builtin/commit.c:1328 builtin/commit.c:1509
 msgid "terminate entries with NUL"
 msgstr "terminer les éléments par NUL"
 
-#: builtin/commit.c:1327 builtin/commit.c:1331 builtin/commit.c:1509
-#: builtin/fast-export.c:1007 builtin/fast-export.c:1010 builtin/rebase.c:910
+#: builtin/commit.c:1330 builtin/commit.c:1334 builtin/commit.c:1512
+#: builtin/fast-export.c:1085 builtin/fast-export.c:1088 builtin/rebase.c:1118
 #: builtin/tag.c:400
 msgid "mode"
 msgstr "mode"
 
-#: builtin/commit.c:1328 builtin/commit.c:1509
+#: builtin/commit.c:1331 builtin/commit.c:1512
 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:1332
+#: builtin/commit.c:1335
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
@@ -10048,11 +10727,11 @@ msgstr ""
 "afficher les fichiers ignorés, \"mode\" facultatif : traditional "
 "(traditionnel), matching (correspondant), no. (Défaut : traditional)"
 
-#: builtin/commit.c:1334 parse-options.h:164
+#: builtin/commit.c:1337 parse-options.h:164
 msgid "when"
 msgstr "quand"
 
-#: builtin/commit.c:1335
+#: builtin/commit.c:1338
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -10060,197 +10739,197 @@ msgstr ""
 "ignorer les modifications dans les sous-modules, \"quand\" facultatif : all "
 "(tous), dirty (sale), untracked (non suivi). (Défaut : all)"
 
-#: builtin/commit.c:1337
+#: builtin/commit.c:1340
 msgid "list untracked files in columns"
 msgstr "afficher les fichiers non suivis en colonnes"
 
-#: builtin/commit.c:1338
+#: builtin/commit.c:1341
 msgid "do not detect renames"
 msgstr "ne pas détecter les renommages"
 
-#: builtin/commit.c:1340
+#: builtin/commit.c:1343
 msgid "detect renames, optionally set similarity index"
 msgstr ""
 "détecter les renommages, en spécifiant optionnellement le facteur de "
 "similarité"
 
-#: builtin/commit.c:1360
+#: builtin/commit.c:1363
 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:1465
+#: builtin/commit.c:1468
 msgid "suppress summary after successful commit"
 msgstr "supprimer le résumé après une validation réussie"
 
-#: builtin/commit.c:1466
+#: builtin/commit.c:1469
 msgid "show diff in commit message template"
 msgstr "afficher les diff dans le modèle de message de validation"
 
-#: builtin/commit.c:1468
+#: builtin/commit.c:1471
 msgid "Commit message options"
 msgstr "Options du message de validation"
 
-#: builtin/commit.c:1469 builtin/merge.c:263 builtin/tag.c:397
+#: builtin/commit.c:1472 builtin/merge.c:264 builtin/tag.c:397
 msgid "read message from file"
 msgstr "lire le message depuis un fichier"
 
-#: builtin/commit.c:1470
+#: builtin/commit.c:1473
 msgid "author"
 msgstr "auteur"
 
-#: builtin/commit.c:1470
+#: builtin/commit.c:1473
 msgid "override author for commit"
 msgstr "remplacer l'auteur pour la validation"
 
-#: builtin/commit.c:1471 builtin/gc.c:518
+#: builtin/commit.c:1474 builtin/gc.c:518
 msgid "date"
 msgstr "date"
 
-#: builtin/commit.c:1471
+#: builtin/commit.c:1474
 msgid "override date for commit"
 msgstr "remplacer la date pour la validation"
 
-#: builtin/commit.c:1472 builtin/merge.c:259 builtin/notes.c:409
-#: builtin/notes.c:572 builtin/tag.c:395
+#: builtin/commit.c:1475 builtin/merge.c:260 builtin/notes.c:409
+#: builtin/notes.c:575 builtin/tag.c:395
 msgid "message"
 msgstr "message"
 
-#: builtin/commit.c:1472
+#: builtin/commit.c:1475
 msgid "commit message"
 msgstr "message de validation"
 
-#: builtin/commit.c:1473 builtin/commit.c:1474 builtin/commit.c:1475
-#: builtin/commit.c:1476 ref-filter.h:92 parse-options.h:280
+#: builtin/commit.c:1476 builtin/commit.c:1477 builtin/commit.c:1478
+#: builtin/commit.c:1479 parse-options.h:278 ref-filter.h:92
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1473
+#: builtin/commit.c:1476
 msgid "reuse and edit message from specified commit"
 msgstr "réutiliser et éditer le message du commit spécifié"
 
-#: builtin/commit.c:1474
+#: builtin/commit.c:1477
 msgid "reuse message from specified commit"
 msgstr "réutiliser le message du commit spécifié"
 
-#: builtin/commit.c:1475
+#: builtin/commit.c:1478
 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:1476
+#: builtin/commit.c:1479
 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:1477
+#: builtin/commit.c:1480
 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:1478 builtin/log.c:1520 builtin/merge.c:276
-#: builtin/pull.c:155 builtin/revert.c:106
+#: builtin/commit.c:1481 builtin/log.c:1533 builtin/merge.c:277
+#: builtin/pull.c:156 builtin/revert.c:107
 msgid "add Signed-off-by:"
 msgstr "ajouter une entrée Signed-off-by :"
 
-#: builtin/commit.c:1479
+#: builtin/commit.c:1482
 msgid "use specified template file"
 msgstr "utiliser le fichier de modèle spécifié"
 
-#: builtin/commit.c:1480
+#: builtin/commit.c:1483
 msgid "force edit of commit"
 msgstr "forcer l'édition du commit"
 
-#: builtin/commit.c:1481
+#: builtin/commit.c:1484
 msgid "default"
 msgstr "défaut"
 
-#: builtin/commit.c:1481 builtin/tag.c:401
+#: builtin/commit.c:1484 builtin/tag.c:401
 msgid "how to strip spaces and #comments from message"
 msgstr "comment éliminer les espaces et les commentaires # du message"
 
-#: builtin/commit.c:1482
+#: builtin/commit.c:1485
 msgid "include status in commit message template"
 msgstr "inclure l'état dans le modèle de message de validation"
 
-#: builtin/commit.c:1484 builtin/merge.c:274 builtin/pull.c:185
-#: builtin/revert.c:114
+#: builtin/commit.c:1487 builtin/merge.c:275 builtin/pull.c:186
+#: builtin/revert.c:115
 msgid "GPG sign commit"
 msgstr "signer la validation avec GPG"
 
-#: builtin/commit.c:1487
+#: builtin/commit.c:1490
 msgid "Commit contents options"
 msgstr "Valider les options des contenus"
 
-#: builtin/commit.c:1488
+#: builtin/commit.c:1491
 msgid "commit all changed files"
 msgstr "valider tous les fichiers modifiés"
 
-#: builtin/commit.c:1489
+#: builtin/commit.c:1492
 msgid "add specified files to index for commit"
 msgstr "ajouter les fichiers spécifiés à l'index pour la validation"
 
-#: builtin/commit.c:1490
+#: builtin/commit.c:1493
 msgid "interactively add files"
 msgstr "ajouter des fichiers en mode interactif"
 
-#: builtin/commit.c:1491
+#: builtin/commit.c:1494
 msgid "interactively add changes"
 msgstr "ajouter les modifications en mode interactif"
 
-#: builtin/commit.c:1492
+#: builtin/commit.c:1495
 msgid "commit only specified files"
 msgstr "valider seulement les fichiers spécifiés"
 
-#: builtin/commit.c:1493
+#: builtin/commit.c:1496
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "éviter d'utiliser les crochets pre-commit et commit-msg"
 
-#: builtin/commit.c:1494
+#: builtin/commit.c:1497
 msgid "show what would be committed"
 msgstr "afficher ce qui serait validé"
 
-#: builtin/commit.c:1507
+#: builtin/commit.c:1510
 msgid "amend previous commit"
 msgstr "corriger la validation précédente"
 
-#: builtin/commit.c:1508
+#: builtin/commit.c:1511
 msgid "bypass post-rewrite hook"
 msgstr "éviter d'utiliser le crochet post-rewrite"
 
-#: builtin/commit.c:1513
+#: builtin/commit.c:1516
 msgid "ok to record an empty change"
 msgstr "accepter d'enregistrer une modification vide"
 
-#: builtin/commit.c:1515
+#: builtin/commit.c:1518
 msgid "ok to record a change with an empty message"
 msgstr "accepter d'enregistrer une modification avec un message vide"
 
-#: builtin/commit.c:1588
+#: builtin/commit.c:1591
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Fichier MERGE_HEAD corrompu (%s)"
 
-#: builtin/commit.c:1595
+#: builtin/commit.c:1598
 msgid "could not read MERGE_MODE"
 msgstr "impossible de lire MERGE_MODE"
 
-#: builtin/commit.c:1614
+#: builtin/commit.c:1617
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "impossible de lire le message de validation : %s"
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1628
 #, 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:1630
+#: builtin/commit.c:1633
 #, 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:1665
+#: builtin/commit.c:1668
 msgid ""
 "repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -10282,7 +10961,7 @@ msgstr ""
 
 #: builtin/commit-graph.c:48 builtin/commit-graph.c:78
 #: builtin/commit-graph.c:132 builtin/commit-graph.c:190 builtin/fetch.c:153
-#: builtin/log.c:1540
+#: builtin/log.c:1553
 msgid "dir"
 msgstr "répertoire"
 
@@ -10476,48 +11155,48 @@ msgstr "valeur"
 msgid "with --get, use default value when missing entry"
 msgstr "avec --get, utiliser le valeur par défaut quand l'entrée n'existe pas"
 
-#: builtin/config.c:171
+#: builtin/config.c:172
 #, c-format
 msgid "wrong number of arguments, should be %d"
 msgstr "mauvais nombre d'arguments, devrait être %d"
 
-#: builtin/config.c:173
+#: builtin/config.c:174
 #, c-format
 msgid "wrong number of arguments, should be from %d to %d"
 msgstr "mauvais nombre d'arguments, devrait être entre %d et %d"
 
-#: builtin/config.c:307
+#: builtin/config.c:308
 #, c-format
 msgid "invalid key pattern: %s"
 msgstr "motif de clé invalide : %s"
 
-#: builtin/config.c:343
+#: builtin/config.c:344
 #, c-format
 msgid "failed to format default config value: %s"
 msgstr "échec du formatage de la valeur de config par défaut : %s"
 
-#: builtin/config.c:400
+#: builtin/config.c:401
 #, c-format
 msgid "cannot parse color '%s'"
 msgstr "impossible d'analyser la couleur '%s'"
 
-#: builtin/config.c:442
+#: builtin/config.c:443
 msgid "unable to parse default color value"
 msgstr "impossible de lire la valeur de couleur par défaut"
 
-#: builtin/config.c:495 builtin/config.c:741
+#: builtin/config.c:496 builtin/config.c:742
 msgid "not in a git directory"
 msgstr "pas dans un répertoire git"
 
-#: builtin/config.c:498
+#: builtin/config.c:499
 msgid "writing to stdin is not supported"
 msgstr "l'écriture sur stdin n'est pas supportée"
 
-#: builtin/config.c:501
+#: builtin/config.c:502
 msgid "writing config blobs is not supported"
 msgstr "l'écriture de blob de configuration n'est pas supportée<"
 
-#: builtin/config.c:586
+#: builtin/config.c:587
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -10532,23 +11211,23 @@ msgstr ""
 "#\tname = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:610
+#: builtin/config.c:611
 msgid "only one config file at a time"
 msgstr "un seul fichier de configuration à la fois"
 
-#: builtin/config.c:615
+#: builtin/config.c:616
 msgid "--local can only be used inside a git repository"
 msgstr "--local ne peut être utilisé qu'à l'intérieur d'un dépôt git"
 
-#: builtin/config.c:618
+#: builtin/config.c:619
 msgid "--blob can only be used inside a git repository"
 msgstr "--blob ne peut être utilisé qu'à l'intérieur d'un dépôt git"
 
-#: builtin/config.c:637
+#: builtin/config.c:638
 msgid "$HOME not set"
 msgstr "$HOME n'est pas défini"
 
-#: builtin/config.c:657
+#: builtin/config.c:658
 msgid ""
 "--worktree cannot be used with multiple working trees unless the config\n"
 "extension worktreeConfig is enabled. Please read \"CONFIGURATION FILE\"\n"
@@ -10559,19 +11238,19 @@ msgstr ""
 "la section \"CONFIGURATION FILE\" de \"git help worktree\" pour plus de "
 "détails"
 
-#: builtin/config.c:687
+#: builtin/config.c:688
 msgid "--get-color and variable type are incoherent"
 msgstr "--get-color et le type de la variable sont incohérents"
 
-#: builtin/config.c:692
+#: builtin/config.c:693
 msgid "only one action at a time"
 msgstr "une seule action à la fois"
 
-#: builtin/config.c:705
+#: builtin/config.c:706
 msgid "--name-only is only applicable to --list or --get-regexp"
 msgstr "--name-only n'est applicable qu'avec --list ou --get-regexp"
 
-#: builtin/config.c:711
+#: builtin/config.c:712
 msgid ""
 "--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
 "list"
@@ -10579,33 +11258,33 @@ msgstr ""
 "--show-origin n'est applicable qu'avec --get, --get-all, --get-regexp ou --"
 "list"
 
-#: builtin/config.c:717
+#: builtin/config.c:718
 msgid "--default is only applicable to --get"
 msgstr "--default n'est applicable qu'avec --get"
 
-#: builtin/config.c:730
+#: builtin/config.c:731
 #, c-format
 msgid "unable to read config file '%s'"
 msgstr "lecture du fichier de configuration '%s' impossible"
 
-#: builtin/config.c:733
+#: builtin/config.c:734
 msgid "error processing config file(s)"
 msgstr "erreur lors du traitement de fichier(s) de configuration"
 
-#: builtin/config.c:743
+#: builtin/config.c:744
 msgid "editing stdin is not supported"
 msgstr "l'édition de stdin n'est pas supportée"
 
-#: builtin/config.c:745
+#: builtin/config.c:746
 msgid "editing blobs is not supported"
 msgstr "l'édition de blobs n'est pas supportée"
 
-#: builtin/config.c:759
+#: builtin/config.c:760
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "création impossible du fichier de configuration '%s'"
 
-#: builtin/config.c:772
+#: builtin/config.c:773
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
@@ -10614,7 +11293,7 @@ msgstr ""
 "impossible de surcharger des valeurs multiples avec une seule valeur\n"
 "       Utilisez une regexp, --add ou --replace-all pour modifier %s."
 
-#: builtin/config.c:846 builtin/config.c:857
+#: builtin/config.c:847 builtin/config.c:858
 #, c-format
 msgid "no such section: %s"
 msgstr "section inexistante : %s"
@@ -10627,59 +11306,59 @@ msgstr "git count-objects [-v] [-H | --human-readable]"
 msgid "print sizes in human readable format"
 msgstr "affiche les tailles dans un format humainement lisible"
 
-#: builtin/describe.c:26
+#: builtin/describe.c:27
 msgid "git describe [<options>] [<commit-ish>...]"
 msgstr "git describe [<options>] <commit ou apparenté>*"
 
-#: builtin/describe.c:27
+#: builtin/describe.c:28
 msgid "git describe [<options>] --dirty"
 msgstr "git describe [<options>] --dirty"
 
-#: builtin/describe.c:62
+#: builtin/describe.c:63
 msgid "head"
 msgstr "tête"
 
-#: builtin/describe.c:62
+#: builtin/describe.c:63
 msgid "lightweight"
 msgstr "léger"
 
-#: builtin/describe.c:62
+#: builtin/describe.c:63
 msgid "annotated"
 msgstr "annoté"
 
-#: builtin/describe.c:272
+#: builtin/describe.c:273
 #, c-format
 msgid "annotated tag %s not available"
 msgstr "l'étiquette annotée %s n'est pas disponible"
 
-#: builtin/describe.c:276
+#: builtin/describe.c:277
 #, c-format
 msgid "annotated tag %s has no embedded name"
 msgstr "l'étiquette annotée %s n'a pas de nom embarqué"
 
-#: builtin/describe.c:278
+#: builtin/describe.c:279
 #, c-format
 msgid "tag '%s' is really '%s' here"
 msgstr "l'étiquette '%s' est en fait '%s'"
 
-#: builtin/describe.c:322
+#: builtin/describe.c:323
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr "aucune étiquette ne correspond parfaitement à '%s'"
 
-#: builtin/describe.c:324
+#: builtin/describe.c:325
 #, 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:378
+#: builtin/describe.c:379
 #, c-format
 msgid "finished search at %s\n"
 msgstr "recherche terminée à %s\n"
 
-#: builtin/describe.c:404
+#: builtin/describe.c:405
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
@@ -10688,7 +11367,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:408
+#: builtin/describe.c:409
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
@@ -10697,12 +11376,12 @@ msgstr ""
 "Aucune étiquette ne peut décrire '%s'.\n"
 "Essayez --always, ou créez des étiquettes."
 
-#: builtin/describe.c:438
+#: builtin/describe.c:439
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr "%lu commits parcourus\n"
 
-#: builtin/describe.c:441
+#: builtin/describe.c:442
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
@@ -10712,149 +11391,149 @@ msgstr ""
 "affichées\n"
 "abandon de la recherche à %s\n"
 
-#: builtin/describe.c:509
+#: builtin/describe.c:510
 #, c-format
 msgid "describe %s\n"
 msgstr "décrire %s\n"
 
-#: builtin/describe.c:512 builtin/log.c:513
+#: builtin/describe.c:513 builtin/log.c:516
 #, c-format
 msgid "Not a valid object name %s"
 msgstr "%s n'est pas un nom d'objet valide"
 
-#: builtin/describe.c:520
+#: builtin/describe.c:521
 #, c-format
 msgid "%s is neither a commit nor blob"
 msgstr "%s n'est ni un commit ni un blob"
 
-#: builtin/describe.c:534
+#: builtin/describe.c:535
 msgid "find the tag that comes after the commit"
 msgstr "rechercher l'étiquette qui suit le commit"
 
-#: builtin/describe.c:535
+#: builtin/describe.c:536
 msgid "debug search strategy on stderr"
 msgstr "déboguer la stratégie de recherche sur stderr"
 
-#: builtin/describe.c:536
+#: builtin/describe.c:537
 msgid "use any ref"
 msgstr "utiliser n'importe quelle référence"
 
-#: builtin/describe.c:537
+#: builtin/describe.c:538
 msgid "use any tag, even unannotated"
 msgstr "utiliser n'importe quelle étiquette, même non-annotée"
 
-#: builtin/describe.c:538
+#: builtin/describe.c:539
 msgid "always use long format"
 msgstr "toujours utiliser le format long"
 
-#: builtin/describe.c:539
+#: builtin/describe.c:540
 msgid "only follow first parent"
 msgstr "ne suivre que le premier parent"
 
-#: builtin/describe.c:542
+#: builtin/describe.c:543
 msgid "only output exact matches"
 msgstr "n'afficher que les correspondances exactes"
 
-#: builtin/describe.c:544
+#: builtin/describe.c:545
 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:546
+#: builtin/describe.c:547
 msgid "only consider tags matching <pattern>"
 msgstr "ne considérer que les étiquettes correspondant à <motif>"
 
-#: builtin/describe.c:548
+#: builtin/describe.c:549
 msgid "do not consider tags matching <pattern>"
 msgstr "ne pas considérer les étiquettes correspondant à <motif>"
 
-#: builtin/describe.c:550 builtin/name-rev.c:424
+#: builtin/describe.c:551 builtin/name-rev.c:424
 msgid "show abbreviated commit object as fallback"
 msgstr "afficher les objets commits abrégés en dernier recours"
 
-#: builtin/describe.c:551 builtin/describe.c:554
+#: builtin/describe.c:552 builtin/describe.c:555
 msgid "mark"
 msgstr "marque"
 
-#: builtin/describe.c:552
+#: builtin/describe.c:553
 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:555
+#: builtin/describe.c:556
 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:573
+#: builtin/describe.c:574
 msgid "--long is incompatible with --abbrev=0"
 msgstr "--long et --abbrev=0 sont incompatibles"
 
-#: builtin/describe.c:602
+#: builtin/describe.c:603
 msgid "No names found, cannot describe anything."
 msgstr "aucun nom trouvé, impossible de décrire quoi que ce soit."
 
-#: builtin/describe.c:652
+#: builtin/describe.c:654
 msgid "--dirty is incompatible with commit-ishes"
 msgstr "--dirty est incompatible avec la spécification de commits ou assimilés"
 
-#: builtin/describe.c:654
+#: builtin/describe.c:656
 msgid "--broken is incompatible with commit-ishes"
 msgstr "--broken est incompatible avec les commits ou assimilés"
 
-#: builtin/diff.c:83
+#: builtin/diff.c:84
 #, c-format
 msgid "'%s': not a regular file or symlink"
 msgstr "'%s' : n'est pas un fichier régulier ni un lien symbolique"
 
-#: builtin/diff.c:234
+#: builtin/diff.c:235
 #, c-format
 msgid "invalid option: %s"
 msgstr "option invalide : %s"
 
-#: builtin/diff.c:363
+#: builtin/diff.c:364
 msgid "Not a git repository"
 msgstr "Ce n'est pas un dépôt git !"
 
-#: builtin/diff.c:407
+#: builtin/diff.c:408
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "objet spécifié '%s' invalide."
 
-#: builtin/diff.c:416
+#: builtin/diff.c:417
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr "plus de deux blobs spécifiés : '%s'"
 
-#: builtin/diff.c:421
+#: builtin/diff.c:422
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "objet non géré '%s' spécifié."
 
-#: builtin/difftool.c:30
+#: builtin/difftool.c:31
 msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
 msgstr "git difftool [<options>] [<commit> [<commit>]] [--] [<chemin>...]"
 
-#: builtin/difftool.c:260
+#: builtin/difftool.c:261
 #, c-format
 msgid "failed: %d"
 msgstr "échec : %d"
 
-#: builtin/difftool.c:302
+#: builtin/difftool.c:303
 #, c-format
 msgid "could not read symlink %s"
 msgstr "lecture du lien symbolique %s impossible"
 
-#: builtin/difftool.c:304
+#: builtin/difftool.c:305
 #, c-format
 msgid "could not read symlink file %s"
 msgstr "impossible de lire le fichier symlink %s"
 
-#: builtin/difftool.c:312
+#: builtin/difftool.c:313
 #, c-format
 msgid "could not read object %s for symlink %s"
 msgstr "Impossible de lire l'objet %s pour le symlink %s"
 
-#: builtin/difftool.c:413
+#: builtin/difftool.c:414
 msgid ""
 "combined diff formats('-c' and '--cc') are not supported in\n"
 "directory diff mode('-d' and '--dir-diff')."
@@ -10862,53 +11541,53 @@ msgstr ""
 "les formats de diff combinés ('-c' et '--cc') ne sont pas supportés\n"
 "dans le mode de diff de répertoire ('-d' et '--dir-diff')."
 
-#: builtin/difftool.c:633
+#: builtin/difftool.c:634
 #, c-format
 msgid "both files modified: '%s' and '%s'."
 msgstr "les deux fichiers sont modifiés : '%s' et '%s'."
 
-#: builtin/difftool.c:635
+#: builtin/difftool.c:636
 msgid "working tree file has been left."
 msgstr "le fichier dans l'arbre de travail a été laissé."
 
-#: builtin/difftool.c:646
+#: builtin/difftool.c:647
 #, c-format
 msgid "temporary files exist in '%s'."
 msgstr "des fichiers temporaires existent dans '%s'."
 
-#: builtin/difftool.c:647
+#: builtin/difftool.c:648
 msgid "you may want to cleanup or recover these."
 msgstr "vous pourriez souhaiter les nettoyer ou les récupérer."
 
-#: builtin/difftool.c:696
+#: builtin/difftool.c:697
 msgid "use `diff.guitool` instead of `diff.tool`"
 msgstr "utiliser `diff.guitool` au lieu de `diff.tool`"
 
-#: builtin/difftool.c:698
+#: builtin/difftool.c:699
 msgid "perform a full-directory diff"
 msgstr "réalise un diff de répertoire complet"
 
-#: builtin/difftool.c:700
+#: builtin/difftool.c:701
 msgid "do not prompt before launching a diff tool"
 msgstr "ne pas confirmer avant de lancer l'outil de diff"
 
-#: builtin/difftool.c:705
+#: builtin/difftool.c:706
 msgid "use symlinks in dir-diff mode"
 msgstr "utiliser les liens symboliques en mode de diff de répertoire"
 
-#: builtin/difftool.c:706
+#: builtin/difftool.c:707
 msgid "tool"
 msgstr "outil"
 
-#: builtin/difftool.c:707
+#: builtin/difftool.c:708
 msgid "use the specified diff tool"
 msgstr "utiliser l'outil de diff spécifié"
 
-#: builtin/difftool.c:709
+#: builtin/difftool.c:710
 msgid "print a list of diff tools that may be used with `--tool`"
 msgstr "afficher une liste des outils de diff utilisables avec `--tool`"
 
-#: builtin/difftool.c:712
+#: builtin/difftool.c:713
 msgid ""
 "make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
 "code"
@@ -10916,15 +11595,15 @@ msgstr ""
 "provoque la fin de 'git-difftool' si l'outil de diff invoqué renvoie un code "
 "non-nul"
 
-#: builtin/difftool.c:715
+#: builtin/difftool.c:716
 msgid "specify a custom command for viewing diffs"
 msgstr "spécifier une commande personnalisée pour visualiser les différences"
 
-#: builtin/difftool.c:739
+#: builtin/difftool.c:740
 msgid "no <tool> given for --tool=<tool>"
 msgstr "pas d'<outil> spécifié pour --tool=<outil>"
 
-#: builtin/difftool.c:746
+#: builtin/difftool.c:747
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr "pas de <commande> spécifié pour --extcmd=<commande>"
 
@@ -10932,55 +11611,65 @@ msgstr "pas de <commande> spécifié pour --extcmd=<commande>"
 msgid "git fast-export [rev-list-opts]"
 msgstr "git fast-export [options-de-liste-de-révisions]"
 
-#: builtin/fast-export.c:1006
+#: builtin/fast-export.c:1084
 msgid "show progress after <n> objects"
 msgstr "afficher la progression après <n> objets"
 
-#: builtin/fast-export.c:1008
+#: builtin/fast-export.c:1086
 msgid "select handling of signed tags"
 msgstr "sélectionner la gestion des étiquettes signées"
 
-#: builtin/fast-export.c:1011
+#: builtin/fast-export.c:1089
 msgid "select handling of tags that tag filtered objects"
 msgstr ""
 "sélectionner la gestion des étiquettes qui pointent sur des objets filtrés"
 
-#: builtin/fast-export.c:1014
+#: builtin/fast-export.c:1092
 msgid "Dump marks to this file"
 msgstr "Enregistrer les marques dans ce fichier"
 
-#: builtin/fast-export.c:1016
+#: builtin/fast-export.c:1094
 msgid "Import marks from this file"
 msgstr "importer les marques depuis ce fichier"
 
-#: builtin/fast-export.c:1018
+#: builtin/fast-export.c:1096
 msgid "Fake a tagger when tags lack one"
 msgstr "falsifier un auteur d'étiquette si l'étiquette n'en présente pas"
 
-#: builtin/fast-export.c:1020
+#: builtin/fast-export.c:1098
 msgid "Output full tree for each commit"
 msgstr "Afficher l'arbre complet pour chaque commit"
 
-#: builtin/fast-export.c:1022
+#: builtin/fast-export.c:1100
 msgid "Use the done feature to terminate the stream"
 msgstr "Utiliser la fonction \"done\" pour terminer le flux"
 
-#: builtin/fast-export.c:1023
+#: builtin/fast-export.c:1101
 msgid "Skip output of blob data"
 msgstr "Sauter l'affichage de données de blob"
 
-#: builtin/fast-export.c:1024 builtin/log.c:1588
+#: builtin/fast-export.c:1102 builtin/log.c:1601
 msgid "refspec"
 msgstr "spécificateur de référence"
 
-#: builtin/fast-export.c:1025
+#: builtin/fast-export.c:1103
 msgid "Apply refspec to exported refs"
 msgstr "Appliquer le spécificateur de référence aux références exportées"
 
-#: builtin/fast-export.c:1026
+#: builtin/fast-export.c:1104
 msgid "anonymize output"
 msgstr "anonymise la sortie"
 
+#: builtin/fast-export.c:1106
+msgid "Reference parents which are not in fast-export stream by object id"
+msgstr ""
+"les parents références qui ne sont pas dans le flux d'export rapide par id "
+"d'objet"
+
+#: builtin/fast-export.c:1108
+msgid "Show original object ids of blobs/commits"
+msgstr "Afficher les ids d'objet originaux des blobs/commits"
+
 #: builtin/fetch.c:28
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr "git fetch [<options>] [<dépôt> [<spécification-de-référence>...]]"
@@ -10997,15 +11686,15 @@ msgstr "git fetch --multiple [<options>] [(<dépôt> | <groupe>)...]"
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<options>]"
 
-#: builtin/fetch.c:115 builtin/pull.c:194
+#: builtin/fetch.c:115 builtin/pull.c:195
 msgid "fetch from all remotes"
 msgstr "récupérer depuis tous les dépôts distants"
 
-#: builtin/fetch.c:117 builtin/pull.c:197
+#: builtin/fetch.c:117 builtin/pull.c:198
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "ajouter à .git/FETCH_HEAD au lieu de l'écraser"
 
-#: builtin/fetch.c:119 builtin/pull.c:200
+#: builtin/fetch.c:119 builtin/pull.c:201
 msgid "path to upload pack on remote end"
 msgstr "chemin vers lequel télécharger le paquet sur le poste distant"
 
@@ -11017,7 +11706,7 @@ msgstr "forcer l'écrasement de la branche locale"
 msgid "fetch from multiple remotes"
 msgstr "récupérer depuis plusieurs dépôts distants"
 
-#: builtin/fetch.c:124 builtin/pull.c:204
+#: builtin/fetch.c:124 builtin/pull.c:205
 msgid "fetch all tags and associated objects"
 msgstr "récupérer toutes les étiquettes et leurs objets associés"
 
@@ -11029,7 +11718,7 @@ msgstr "ne pas récupérer toutes les étiquettes (--no-tags)"
 msgid "number of submodules fetched in parallel"
 msgstr "nombre de sous-modules récupérés en parallèle"
 
-#: builtin/fetch.c:130 builtin/pull.c:207
+#: builtin/fetch.c:130 builtin/pull.c:208
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 "éliminer les branches de suivi distant si la branche n'existe plus dans le "
@@ -11041,7 +11730,7 @@ msgstr ""
 "éliminer les étiquettes locales qui ont disparu du dépôt distant et qui "
 "encombrent les étiquettes modifiées"
 
-#: builtin/fetch.c:133 builtin/fetch.c:156 builtin/pull.c:132
+#: builtin/fetch.c:133 builtin/fetch.c:156 builtin/pull.c:133
 msgid "on-demand"
 msgstr "à la demande"
 
@@ -11049,7 +11738,7 @@ msgstr "à la demande"
 msgid "control recursive fetching of submodules"
 msgstr "contrôler la récupération récursive dans les sous-modules"
 
-#: builtin/fetch.c:138 builtin/pull.c:215
+#: builtin/fetch.c:138 builtin/pull.c:216
 msgid "keep downloaded pack"
 msgstr "conserver le paquet téléchargé"
 
@@ -11057,7 +11746,7 @@ msgstr "conserver le paquet téléchargé"
 msgid "allow updating of HEAD ref"
 msgstr "permettre la mise à jour de la référence HEAD"
 
-#: builtin/fetch.c:143 builtin/fetch.c:149 builtin/pull.c:218
+#: builtin/fetch.c:143 builtin/fetch.c:149 builtin/pull.c:219
 msgid "deepen history of shallow clone"
 msgstr "approfondir l'historique d'un clone superficiel"
 
@@ -11065,7 +11754,7 @@ msgstr "approfondir l'historique d'un clone superficiel"
 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:151 builtin/pull.c:221
+#: builtin/fetch.c:151 builtin/pull.c:222
 msgid "convert to a complete repository"
 msgstr "convertir en un dépôt complet"
 
@@ -11081,24 +11770,24 @@ 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:161 builtin/pull.c:224
+#: builtin/fetch.c:161 builtin/pull.c:225
 msgid "accept refs that update .git/shallow"
 msgstr "accepter les références qui mettent à jour .git/shallow"
 
-#: builtin/fetch.c:162 builtin/pull.c:226
+#: builtin/fetch.c:162 builtin/pull.c:227
 msgid "refmap"
 msgstr "correspondance de référence"
 
-#: builtin/fetch.c:163 builtin/pull.c:227
+#: builtin/fetch.c:163 builtin/pull.c:228
 msgid "specify fetch refmap"
 msgstr "spécifier une correspondance de référence pour la récupération"
 
-#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:582
+#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:585
 #: builtin/send-pack.c:172
 msgid "server-specific"
 msgstr "spécifique au serveur"
 
-#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:582
+#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:585
 #: builtin/send-pack.c:173
 msgid "option to transmit"
 msgstr "option à transmettre"
@@ -11107,83 +11796,83 @@ msgstr "option à transmettre"
 msgid "report that we have only objects reachable from this object"
 msgstr "rapporte que nous n'avons que des objets joignables depuis cet objet"
 
-#: builtin/fetch.c:470
+#: builtin/fetch.c:469
 msgid "Couldn't find remote ref HEAD"
 msgstr "impossible de trouver la référence HEAD distante"
 
-#: builtin/fetch.c:609
+#: builtin/fetch.c:608
 #, 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:702
+#: builtin/fetch.c:705
 #, c-format
 msgid "object %s not found"
 msgstr "objet %s non trouvé"
 
-#: builtin/fetch.c:706
+#: builtin/fetch.c:709
 msgid "[up to date]"
 msgstr "[à jour]"
 
-#: builtin/fetch.c:719 builtin/fetch.c:735 builtin/fetch.c:807
+#: builtin/fetch.c:722 builtin/fetch.c:738 builtin/fetch.c:801
 msgid "[rejected]"
 msgstr "[rejeté]"
 
-#: builtin/fetch.c:720
+#: builtin/fetch.c:723
 msgid "can't fetch in current branch"
 msgstr "impossible de récupérer dans la branche actuelle"
 
-#: builtin/fetch.c:730
+#: builtin/fetch.c:733
 msgid "[tag update]"
 msgstr "[mise à jour de l'étiquette]"
 
-#: builtin/fetch.c:731 builtin/fetch.c:771 builtin/fetch.c:787
-#: builtin/fetch.c:802
+#: builtin/fetch.c:734 builtin/fetch.c:771 builtin/fetch.c:784
+#: builtin/fetch.c:796
 msgid "unable to update local ref"
 msgstr "impossible de mettre à jour la référence locale"
 
-#: builtin/fetch.c:735
+#: builtin/fetch.c:738
 msgid "would clobber existing tag"
 msgstr "écraserait l'étiquette existante"
 
-#: builtin/fetch.c:757
+#: builtin/fetch.c:760
 msgid "[new tag]"
 msgstr "[nouvelle étiquette]"
 
-#: builtin/fetch.c:760
+#: builtin/fetch.c:763
 msgid "[new branch]"
 msgstr "[nouvelle branche]"
 
-#: builtin/fetch.c:763
+#: builtin/fetch.c:766
 msgid "[new ref]"
 msgstr "[nouvelle référence]"
 
-#: builtin/fetch.c:802
+#: builtin/fetch.c:796
 msgid "forced update"
 msgstr "mise à jour forcée"
 
-#: builtin/fetch.c:807
+#: builtin/fetch.c:801
 msgid "non-fast-forward"
 msgstr "pas en avance rapide"
 
-#: builtin/fetch.c:853
+#: builtin/fetch.c:847
 #, 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:874
+#: builtin/fetch.c:868
 #, 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:963 builtin/fetch.c:1085
+#: builtin/fetch.c:959 builtin/fetch.c:1081
 #, c-format
 msgid "From %.*s\n"
 msgstr "Depuis %.*s\n"
 
-#: builtin/fetch.c:974
+#: builtin/fetch.c:970
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -11192,57 +11881,58 @@ 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:1055
+#: builtin/fetch.c:1051
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s sera en suspens)"
 
-#: builtin/fetch.c:1056
+#: builtin/fetch.c:1052
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s est devenu en suspens)"
 
-#: builtin/fetch.c:1088
+#: builtin/fetch.c:1084
 msgid "[deleted]"
 msgstr "[supprimé]"
 
-#: builtin/fetch.c:1089 builtin/remote.c:1036
+#: builtin/fetch.c:1085 builtin/remote.c:1036
 msgid "(none)"
 msgstr "(aucun(e))"
 
-#: builtin/fetch.c:1112
+#: builtin/fetch.c:1108
 #, 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:1131
+#: builtin/fetch.c:1127
 #, 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:1134
+#: builtin/fetch.c:1130
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "L'option \"%s\" est ignorée pour %s\n"
 
-#: builtin/fetch.c:1433
+#: builtin/fetch.c:1434
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Récupération de %s\n"
 
-#: builtin/fetch.c:1435 builtin/remote.c:100
+#: builtin/fetch.c:1436 builtin/remote.c:100
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Impossible de récupérer %s"
 
-#: builtin/fetch.c:1481 builtin/fetch.c:1649
+#: builtin/fetch.c:1482
 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."
+"--filter can only be used with the remote configured in extensions."
 "partialClone"
+msgstr ""
+"--filter ne peut être utilisé qu'avec le dépôt distant configuré dans "
+"extensions.partialClone"
 
-#: builtin/fetch.c:1504
+#: builtin/fetch.c:1506
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -11250,45 +11940,53 @@ 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:1541
+#: builtin/fetch.c:1543
 msgid "You need to specify a tag name."
 msgstr "Vous devez spécifier un nom d'étiquette."
 
-#: builtin/fetch.c:1590
+#: builtin/fetch.c:1592
 msgid "Negative depth in --deepen is not supported"
 msgstr "Une profondeur négative dans --deepen n'est pas supportée"
 
-#: builtin/fetch.c:1592
+#: builtin/fetch.c:1594
 msgid "--deepen and --depth are mutually exclusive"
 msgstr "--deepen et --depth sont mutuellement exclusifs"
 
-#: builtin/fetch.c:1597
+#: builtin/fetch.c:1599
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth et --unshallow ne peuvent pas être utilisés ensemble"
 
-#: builtin/fetch.c:1599
+#: builtin/fetch.c:1601
 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:1615
+#: builtin/fetch.c:1617
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all n'accepte pas d'argument de dépôt"
 
-#: builtin/fetch.c:1617
+#: builtin/fetch.c:1619
 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:1626
+#: builtin/fetch.c:1628
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "distant ou groupe distant inexistant : %s"
 
-#: builtin/fetch.c:1633
+#: builtin/fetch.c:1635
 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 "
 "sens"
 
+#: builtin/fetch.c:1651
+msgid ""
+"--filter can only be used with the remote configured in extensions."
+"partialclone"
+msgstr ""
+"--filter ne peut être utilisé qu'avec le dépôt distant configuré dans "
+"extensions.partialClone"
+
 #: builtin/fmt-merge-msg.c:18
 msgid ""
 "git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
@@ -11375,67 +12073,250 @@ 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:598
+#: builtin/fsck.c:88 builtin/fsck.c:160 builtin/fsck.c:161
+msgid "unknown"
+msgstr "inconnu"
+
+#. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
+#: builtin/fsck.c:120 builtin/fsck.c:136
+#, c-format
+msgid "error in %s %s: %s"
+msgstr "erreur dans l'objet %s %s : %s"
+
+#. TRANSLATORS: e.g. warning in tree 01bfda: <more explanation>
+#: builtin/fsck.c:131
+#, c-format
+msgid "warning in %s %s: %s"
+msgstr "avertissement dans l'objet %s %s : %s"
+
+#: builtin/fsck.c:157 builtin/fsck.c:159
+#, c-format
+msgid "broken link from %7s %s"
+msgstr "lien cassé dans l'objet %7s %s"
+
+#: builtin/fsck.c:168
+msgid "wrong object type in link"
+msgstr "type d'objet inconnu dans le lien"
+
+#: builtin/fsck.c:184
+#, c-format
+msgid ""
+"broken link from %7s %s\n"
+"              to %7s %s"
+msgstr ""
+"lien cassé depuis %7s %s\n"
+"             vers %7s %s"
+
+#: builtin/fsck.c:253
+#, c-format
+msgid "missing %s %s"
+msgstr "objet %s manquant %s"
+
+#: builtin/fsck.c:279
+#, c-format
+msgid "unreachable %s %s"
+msgstr "objet %s inatteignable %s"
+
+#: builtin/fsck.c:298
+#, c-format
+msgid "dangling %s %s"
+msgstr "objet %s fantôme %s"
+
+#: builtin/fsck.c:307
+msgid "could not create lost-found"
+msgstr "impossible de créer le fichier lost-found"
+
+#: builtin/fsck.c:318
+#, c-format
+msgid "could not finish '%s'"
+msgstr "impossible de finir '%s'"
+
+#: builtin/fsck.c:335
+#, c-format
+msgid "Checking %s"
+msgstr "Vérification de l'objet %s"
+
+#: builtin/fsck.c:353
+#, c-format
+msgid "Checking connectivity (%d objects)"
+msgstr "Vérification de la connectivité (%d objets)"
+
+#: builtin/fsck.c:372
+#, c-format
+msgid "Checking %s %s"
+msgstr "Vérification de l'objet %s %s"
+
+#: builtin/fsck.c:376
+msgid "broken links"
+msgstr "liens cassés"
+
+#: builtin/fsck.c:385
+#, c-format
+msgid "root %s"
+msgstr "racine %s"
+
+#: builtin/fsck.c:393
+#, c-format
+msgid "tagged %s %s (%s) in %s"
+msgstr "étiquetage de l'objet %s %s (%s) dans %s"
+
+#: builtin/fsck.c:422
+#, c-format
+msgid "%s: object corrupt or missing"
+msgstr "%s : objet corrompu ou manquant"
+
+#: builtin/fsck.c:447
+#, c-format
+msgid "%s: invalid reflog entry %s"
+msgstr "%s : entrée %s de journal de références invalide"
+
+#: builtin/fsck.c:461
+#, c-format
+msgid "Checking reflog %s->%s"
+msgstr "Vérification du journal de réferences %s-> %s"
+
+#: builtin/fsck.c:495
+#, c-format
+msgid "%s: invalid sha1 pointer %s"
+msgstr "%s : pointeur de sha1 invalide %s"
+
+#: builtin/fsck.c:502
+#, c-format
+msgid "%s: not a commit"
+msgstr "l'objet %s n'est pas un commit"
+
+#: builtin/fsck.c:557
+msgid "notice: No default references"
+msgstr "Note : pas de référence par défaut"
+
+#: builtin/fsck.c:572
+#, c-format
+msgid "%s: object corrupt or missing: %s"
+msgstr "%s : objet corrompu ou manquant : %s"
+
+#: builtin/fsck.c:585
+#, c-format
+msgid "%s: object could not be parsed: %s"
+msgstr "%s : impossible d'analyser : %s"
+
+#: builtin/fsck.c:605
+#, c-format
+msgid "bad sha1 file: %s"
+msgstr "mauvais fichier de sha1 : %s"
+
+#: builtin/fsck.c:620
+msgid "Checking object directory"
+msgstr "Vérification du répertoire d'objet"
+
+#: builtin/fsck.c:623
 msgid "Checking object directories"
 msgstr "Vérification des répertoires d'objet"
 
-#: builtin/fsck.c:693
+#: builtin/fsck.c:638
+#, c-format
+msgid "Checking %s link"
+msgstr "Vérification du lien %s"
+
+#: builtin/fsck.c:643 builtin/index-pack.c:833
+#, c-format
+msgid "invalid %s"
+msgstr "%s invalide"
+
+#: builtin/fsck.c:650
+#, c-format
+msgid "%s points to something strange (%s)"
+msgstr "%s pointe sur quelque chose bizarre (%s)"
+
+#: builtin/fsck.c:656
+#, c-format
+msgid "%s: detached HEAD points at nothing"
+msgstr "%s : la HEAD détachée ne pointe sur rien"
+
+#: builtin/fsck.c:660
+#, c-format
+msgid "notice: %s points to an unborn branch (%s)"
+msgstr "note : %s pointe sur une branche non-née (%s)"
+
+#: builtin/fsck.c:672
+msgid "Checking cache tree"
+msgstr "Vérification de l'arbre cache"
+
+#: builtin/fsck.c:677
+#, c-format
+msgid "%s: invalid sha1 pointer in cache-tree"
+msgstr "%s : pointer sha1 invalide dans l'arbre de cache"
+
+#: builtin/fsck.c:688
+msgid "non-tree in cache-tree"
+msgstr "non-arbre dans l'arbre de cache"
+
+#: builtin/fsck.c:719
 msgid "git fsck [<options>] [<object>...]"
 msgstr "git fsck [<options>] [<objet>...]"
 
-#: builtin/fsck.c:699
+#: builtin/fsck.c:725
 msgid "show unreachable objects"
 msgstr "afficher les objets inaccessibles"
 
-#: builtin/fsck.c:700
+#: builtin/fsck.c:726
 msgid "show dangling objects"
 msgstr "afficher les objets en suspens"
 
-#: builtin/fsck.c:701
+#: builtin/fsck.c:727
 msgid "report tags"
 msgstr "afficher les étiquettes"
 
-#: builtin/fsck.c:702
+#: builtin/fsck.c:728
 msgid "report root nodes"
 msgstr "signaler les nœuds racines"
 
-#: builtin/fsck.c:703
+#: builtin/fsck.c:729
 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:704
+#: builtin/fsck.c:730
 msgid "make reflogs head nodes (default)"
 msgstr "considérer les reflogs comme nœuds tête (par défaut)"
 
-#: builtin/fsck.c:705
+#: builtin/fsck.c:731
 msgid "also consider packs and alternate objects"
 msgstr "inspecter aussi les objets pack et alternatifs"
 
-#: builtin/fsck.c:706
+#: builtin/fsck.c:732
 msgid "check only connectivity"
 msgstr "ne vérifier que la connectivité"
 
-#: builtin/fsck.c:707
+#: builtin/fsck.c:733
 msgid "enable more strict checking"
 msgstr "activer une vérification plus strict"
 
-#: builtin/fsck.c:709
+#: builtin/fsck.c:735
 msgid "write dangling objects in .git/lost-found"
 msgstr "écrire les objets en suspens dans .git/lost-found"
 
-#: builtin/fsck.c:710 builtin/prune.c:110
+#: builtin/fsck.c:736 builtin/prune.c:110
 msgid "show progress"
 msgstr "afficher la progression"
 
-#: builtin/fsck.c:711
+#: builtin/fsck.c:737
 msgid "show verbose names for reachable objects"
 msgstr "afficher les noms étendus pour les objets inaccessibles"
 
-#: builtin/fsck.c:776
+#: builtin/fsck.c:797
 msgid "Checking objects"
 msgstr "Vérification des objets"
 
+#: builtin/fsck.c:825
+#, c-format
+msgid "%s: object missing"
+msgstr "%s : objet manquant"
+
+#: builtin/fsck.c:837
+#, c-format
+msgid "invalid parameter: expected sha1, got '%s'"
+msgstr "paramètre invalide : sha-1 attendu, '%s' trouvé"
+
 #: builtin/gc.c:34
 msgid "git gc [<options>]"
 msgstr "git gc [<options>]"
@@ -11528,23 +12409,23 @@ 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:670
+#: builtin/gc.c:672
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
 "Il y a trop d'objets seuls inaccessibles ; lancez 'git prune' pour les "
 "supprimer."
 
-#: builtin/grep.c:28
+#: builtin/grep.c:29
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr "git grep [<options>] [-e] <motif> [<révision>...] [[--] <chemin>...]"
 
-#: builtin/grep.c:224
+#: 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:278
+#: builtin/grep.c:279
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
 msgstr "nombre de fils spécifié invalide (%d) pour %s"
@@ -11553,270 +12434,270 @@ msgstr "nombre de fils spécifié invalide (%d) pour %s"
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:286 builtin/index-pack.c:1506 builtin/index-pack.c:1697
-#: builtin/pack-objects.c:2719
+#: builtin/grep.c:287 builtin/index-pack.c:1506 builtin/index-pack.c:1697
+#: builtin/pack-objects.c:2717
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "pas de support des fils, ignore %s"
 
-#: builtin/grep.c:458 builtin/grep.c:579 builtin/grep.c:620
+#: builtin/grep.c:466 builtin/grep.c:590 builtin/grep.c:631
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "impossible de lire l'arbre (%s)"
 
-#: builtin/grep.c:635
+#: builtin/grep.c:646
 #, 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:701
+#: builtin/grep.c:712
 #, c-format
 msgid "switch `%c' expects a numerical value"
-msgstr "l'option '%c' attend un valeur numérique"
+msgstr "l'option '%c' attend une valeur numérique"
 
-#: builtin/grep.c:800
+#: builtin/grep.c:811
 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:802
+#: builtin/grep.c:813
 msgid "find in contents not managed by git"
 msgstr "rechercher dans les contenus non gérés par git"
 
-#: builtin/grep.c:804
+#: builtin/grep.c:815
 msgid "search in both tracked and untracked files"
 msgstr "rechercher dans les fichiers suivis et non-suivis"
 
-#: builtin/grep.c:806
+#: builtin/grep.c:817
 msgid "ignore files specified via '.gitignore'"
 msgstr "ignorer les fichiers spécifiés via '.gitignore'"
 
-#: builtin/grep.c:808
+#: builtin/grep.c:819
 msgid "recursively search in each submodule"
 msgstr "rechercher récursivement dans chaque sous-module"
 
-#: builtin/grep.c:811
+#: builtin/grep.c:822
 msgid "show non-matching lines"
 msgstr "afficher les lignes qui ne correspondent pas"
 
-#: builtin/grep.c:813
+#: builtin/grep.c:824
 msgid "case insensitive matching"
 msgstr "correspondance insensible à la casse"
 
-#: builtin/grep.c:815
+#: builtin/grep.c:826
 msgid "match patterns only at word boundaries"
 msgstr "rechercher les motifs aux séparateurs de mots"
 
-#: builtin/grep.c:817
+#: builtin/grep.c:828
 msgid "process binary files as text"
 msgstr "traiter les fichiers binaires comme texte"
 
-#: builtin/grep.c:819
+#: builtin/grep.c:830
 msgid "don't match patterns in binary files"
 msgstr "ne pas chercher les motifs dans les fichiers binaires"
 
-#: builtin/grep.c:822
+#: builtin/grep.c:833
 msgid "process binary files with textconv filters"
 msgstr "traiter les fichiers binaires avec les filtres textconv"
 
-#: builtin/grep.c:824
+#: builtin/grep.c:835
 msgid "search in subdirectories (default)"
 msgstr "rechercher dans les sous-répertoires (défaut)"
 
-#: builtin/grep.c:826
+#: builtin/grep.c:837
 msgid "descend at most <depth> levels"
 msgstr "descendre au plus de <profondeur> dans l'arborescence"
 
-#: builtin/grep.c:830
+#: builtin/grep.c:841
 msgid "use extended POSIX regular expressions"
 msgstr "utiliser des expressions régulières étendues POSIX"
 
-#: builtin/grep.c:833
+#: builtin/grep.c:844
 msgid "use basic POSIX regular expressions (default)"
 msgstr "utiliser des expressions régulières basiques POSIX (par défaut)"
 
-#: builtin/grep.c:836
+#: builtin/grep.c:847
 msgid "interpret patterns as fixed strings"
 msgstr "interpréter les motifs comme de chaînes fixes"
 
-#: builtin/grep.c:839
+#: builtin/grep.c:850
 msgid "use Perl-compatible regular expressions"
 msgstr "utiliser des expressions régulières compatibles avec Perl"
 
-#: builtin/grep.c:842
+#: builtin/grep.c:853
 msgid "show line numbers"
 msgstr "afficher les numéros de ligne"
 
-#: builtin/grep.c:843
+#: builtin/grep.c:854
 msgid "show column number of first match"
 msgstr "afficher le numéro de colonne de la première correspondance"
 
-#: builtin/grep.c:844
+#: builtin/grep.c:855
 msgid "don't show filenames"
 msgstr "ne pas pas afficher les noms de fichier"
 
-#: builtin/grep.c:845
+#: builtin/grep.c:856
 msgid "show filenames"
 msgstr "afficher les noms de fichier"
 
-#: builtin/grep.c:847
+#: builtin/grep.c:858
 msgid "show filenames relative to top directory"
 msgstr "afficher les noms de fichiers relativement au répertoire de base"
 
-#: builtin/grep.c:849
+#: builtin/grep.c:860
 msgid "show only filenames instead of matching lines"
 msgstr "n'afficher que les noms de fichiers au lieu des lignes correspondant"
 
-#: builtin/grep.c:851
+#: builtin/grep.c:862
 msgid "synonym for --files-with-matches"
 msgstr "synonyme pour --files-with-matches"
 
-#: builtin/grep.c:854
+#: builtin/grep.c:865
 msgid "show only the names of files without match"
 msgstr "n'afficher que les noms des fichiers sans correspondance"
 
-#: builtin/grep.c:856
+#: builtin/grep.c:867
 msgid "print NUL after filenames"
 msgstr "imprimer une caractère NUL après le noms de fichier"
 
-#: builtin/grep.c:859
+#: builtin/grep.c:870
 msgid "show only matching parts of a line"
 msgstr "n'afficher que les parties correspondantes d'une ligne"
 
-#: builtin/grep.c:861
+#: builtin/grep.c:872
 msgid "show the number of matches instead of matching lines"
 msgstr "afficher le nombre de correspondances au lieu des lignes correspondant"
 
-#: builtin/grep.c:862
+#: builtin/grep.c:873
 msgid "highlight matches"
 msgstr "mettre en évidence les correspondances"
 
-#: builtin/grep.c:864
+#: builtin/grep.c:875
 msgid "print empty line between matches from different files"
 msgstr ""
 "imprimer une ligne vide entre les correspondances de fichiers différents"
 
-#: builtin/grep.c:866
+#: builtin/grep.c:877
 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:869
+#: builtin/grep.c:880
 msgid "show <n> context lines before and after matches"
 msgstr "afficher <n> lignes de contexte avant et après les correspondances"
 
-#: builtin/grep.c:872
+#: builtin/grep.c:883
 msgid "show <n> context lines before matches"
 msgstr "afficher <n> lignes de contexte avant les correspondances"
 
-#: builtin/grep.c:874
+#: builtin/grep.c:885
 msgid "show <n> context lines after matches"
 msgstr "afficher <n> lignes de contexte après les correspondances"
 
-#: builtin/grep.c:876
+#: builtin/grep.c:887
 msgid "use <n> worker threads"
 msgstr "utiliser <n> fils de travail"
 
-#: builtin/grep.c:877
+#: builtin/grep.c:888
 msgid "shortcut for -C NUM"
 msgstr "raccourci pour -C NUM"
 
-#: builtin/grep.c:880
+#: builtin/grep.c:891
 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:882
+#: builtin/grep.c:893
 msgid "show the surrounding function"
 msgstr "afficher la fonction contenante"
 
-#: builtin/grep.c:885
+#: builtin/grep.c:896
 msgid "read patterns from file"
 msgstr "lire les motifs depuis fichier"
 
-#: builtin/grep.c:887
+#: builtin/grep.c:898
 msgid "match <pattern>"
 msgstr "rechercher <motif>"
 
-#: builtin/grep.c:889
+#: builtin/grep.c:900
 msgid "combine patterns specified with -e"
 msgstr "combiner les motifs spécifiés par -e"
 
-#: builtin/grep.c:901
+#: builtin/grep.c:912
 msgid "indicate hit with exit status without output"
 msgstr ""
 "indiquer des correspondances avec le code de sortie mais sans rien afficher"
 
-#: builtin/grep.c:903
+#: builtin/grep.c:914
 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:905
+#: builtin/grep.c:916
 msgid "show parse tree for grep expression"
 msgstr "afficher l'arbre d'analyse pour le motif grep"
 
-#: builtin/grep.c:909
+#: builtin/grep.c:920
 msgid "pager"
 msgstr "pagineur"
 
-#: builtin/grep.c:909
+#: builtin/grep.c:920
 msgid "show matching files in the pager"
 msgstr "afficher les fichiers correspondant dans le pagineur"
 
-#: builtin/grep.c:913
+#: builtin/grep.c:924
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "permettre l'appel de grep(1) (ignoré par ce build)"
 
-#: builtin/grep.c:977
+#: builtin/grep.c:988
 msgid "no pattern given"
 msgstr "aucun motif fourni"
 
-#: builtin/grep.c:1013
+#: builtin/grep.c:1024
 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:1020
+#: builtin/grep.c:1032
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "impossible de résoudre la révision : %s"
 
-#: builtin/grep.c:1051
+#: builtin/grep.c:1063
 msgid "invalid option combination, ignoring --threads"
 msgstr "option de combinaison invalide, ignore --threads"
 
-#: builtin/grep.c:1054 builtin/pack-objects.c:3397
+#: builtin/grep.c:1066 builtin/pack-objects.c:3400
 msgid "no threads support, ignoring --threads"
 msgstr "pas de support des fils, ignore --threads"
 
-#: builtin/grep.c:1057 builtin/index-pack.c:1503 builtin/pack-objects.c:2716
+#: builtin/grep.c:1069 builtin/index-pack.c:1503 builtin/pack-objects.c:2714
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "nombre de fils spécifié invalide (%d)"
 
-#: builtin/grep.c:1080
+#: builtin/grep.c:1092
 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:1103
+#: builtin/grep.c:1115
 msgid "option not supported with --recurse-submodules"
 msgstr "option non supportée avec --recurse-submodules"
 
-#: builtin/grep.c:1109
+#: builtin/grep.c:1121
 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:1115
+#: builtin/grep.c:1127
 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:1123
+#: builtin/grep.c:1135
 msgid "both --cached and trees are given"
 msgstr "--cached et des arbres sont fournis en même temps"
 
-#: builtin/hash-object.c:84
+#: builtin/hash-object.c:85
 msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
@@ -11824,38 +12705,38 @@ msgstr ""
 "git hash-object [-t <type>] [-w] [--path=<fichier> | --no-filters] [--stdin] "
 "[--] <fichier>..."
 
-#: builtin/hash-object.c:85
+#: builtin/hash-object.c:86
 msgid "git hash-object  --stdin-paths"
 msgstr "git hash-object  --stdin-paths"
 
-#: builtin/hash-object.c:97
+#: builtin/hash-object.c:98
 msgid "type"
 msgstr "type"
 
-#: builtin/hash-object.c:97
+#: builtin/hash-object.c:98
 msgid "object type"
 msgstr "type d'objet"
 
-#: builtin/hash-object.c:98
+#: builtin/hash-object.c:99
 msgid "write the object into the object database"
 msgstr "écrire l'objet dans la base de donnée d'objets"
 
-#: builtin/hash-object.c:100
+#: builtin/hash-object.c:101
 msgid "read the object from stdin"
 msgstr "lire l'objet depuis l'entrée standard"
 
-#: builtin/hash-object.c:102
+#: builtin/hash-object.c:103
 msgid "store file as is without filters"
 msgstr "stocker le fichier tel quel sans filtrage"
 
-#: builtin/hash-object.c:103
+#: builtin/hash-object.c:104
 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:104
+#: builtin/hash-object.c:105
 msgid "process file as it were from this path"
 msgstr "traiter le fichier comme s'il venait de ce chemin"
 
@@ -11949,12 +12830,12 @@ msgstr "aucun visualiseur de manuel n'a pris en charge la demande"
 msgid "no info viewer handled the request"
 msgstr "aucun visualiseur de 'info' n'a pris en charge la demande"
 
-#: builtin/help.c:430 builtin/help.c:441 git.c:322
+#: builtin/help.c:430 builtin/help.c:441 git.c:323
 #, c-format
 msgid "'%s' is aliased to '%s'"
 msgstr "'%s' est un alias de '%s'"
 
-#: builtin/help.c:444
+#: builtin/help.c:444 git.c:347
 #, c-format
 msgid "bad alias.%s string: %s"
 msgstr "Mauvais chaîne alias.%s : %s"
@@ -12002,7 +12883,7 @@ msgstr "erreur de lecture sur l'entrée"
 msgid "used more bytes than were available"
 msgstr "plus d'octets utilisés que disponibles"
 
-#: builtin/index-pack.c:279 builtin/pack-objects.c:598
+#: builtin/index-pack.c:279 builtin/pack-objects.c:599
 msgid "pack too large for current definition of off_t"
 msgstr "le paquet est trop grand pour la définition actuelle de off_t"
 
@@ -12010,7 +12891,7 @@ msgstr "le paquet est trop grand pour la définition actuelle de off_t"
 msgid "pack exceeds maximum allowed size"
 msgstr "le paquet dépasse la taille maximale permise"
 
-#: builtin/index-pack.c:297
+#: builtin/index-pack.c:297 builtin/repack.c:250
 #, c-format
 msgid "unable to create '%s'"
 msgstr "impossible de créer '%s'"
@@ -12073,8 +12954,8 @@ msgstr "grave incohérence dans la décompression (inflate)"
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "COLLISION SHA1 TROUVÉE AVEC %s !"
 
-#: builtin/index-pack.c:729 builtin/pack-objects.c:151
-#: builtin/pack-objects.c:211 builtin/pack-objects.c:305
+#: builtin/index-pack.c:729 builtin/pack-objects.c:152
+#: builtin/pack-objects.c:212 builtin/pack-objects.c:306
 #, c-format
 msgid "unable to read %s"
 msgstr "impossible de lire %s"
@@ -12098,11 +12979,6 @@ msgstr "objet blob invalide %s"
 msgid "fsck error in packed object"
 msgstr "erreur de fsck dans l'objet empaqueté"
 
-#: builtin/index-pack.c:833
-#, c-format
-msgid "invalid %s"
-msgstr "%s invalide"
-
 #: builtin/index-pack.c:838
 #, c-format
 msgid "Not all child objects of %s are reachable"
@@ -12140,7 +13016,7 @@ msgstr "confusion extrême dans parse_pack_objects()"
 msgid "Resolving deltas"
 msgstr "Résolution des deltas"
 
-#: builtin/index-pack.c:1196 builtin/pack-objects.c:2492
+#: builtin/index-pack.c:1196 builtin/pack-objects.c:2486
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "impossible de créer le fil : %s"
@@ -12206,7 +13082,7 @@ msgstr "impossible de stocker le fichier paquet"
 msgid "cannot store index file"
 msgstr "impossible de stocker le fichier d'index"
 
-#: builtin/index-pack.c:1497 builtin/pack-objects.c:2727
+#: builtin/index-pack.c:1497 builtin/pack-objects.c:2725
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "mauvais pack.indexversion=%<PRIu32>"
@@ -12440,122 +13316,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:54
+#: builtin/log.c:55
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<options>] [<plage de révisions>] [[--] <chemin>...]"
 
-#: builtin/log.c:55
+#: builtin/log.c:56
 msgid "git show [<options>] <object>..."
 msgstr "git show [<options>] <objet>..."
 
-#: builtin/log.c:99
+#: builtin/log.c:100
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "option --decorate invalide : %s"
 
-#: builtin/log.c:162
+#: builtin/log.c:163
 msgid "suppress diff output"
 msgstr "supprimer la sortie des différences"
 
-#: builtin/log.c:163
+#: builtin/log.c:164
 msgid "show source"
 msgstr "afficher la source"
 
-#: builtin/log.c:164
+#: builtin/log.c:165
 msgid "Use mail map file"
 msgstr "Utiliser le fichier de correspondance de mail"
 
-#: builtin/log.c:166
+#: builtin/log.c:167
 msgid "only decorate refs that match <pattern>"
 msgstr "décorer seulement les références correspondant à <motif>"
 
-#: builtin/log.c:168
+#: builtin/log.c:169
 msgid "do not decorate refs that match <pattern>"
 msgstr "ne pas décorer les références correspondant à <motif>"
 
-#: builtin/log.c:169
+#: builtin/log.c:170
 msgid "decorate options"
 msgstr "décorer les options"
 
-#: builtin/log.c:172
+#: builtin/log.c:173
 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:270
+#: builtin/log.c:271
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Sortie finale : %d %s\n"
 
-#: builtin/log.c:522
+#: builtin/log.c:525
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s : fichier incorrect"
 
-#: builtin/log.c:537 builtin/log.c:631
+#: builtin/log.c:540 builtin/log.c:634
 #, c-format
 msgid "Could not read object %s"
 msgstr "Impossible de lire l'objet %s"
 
-#: builtin/log.c:655
+#: builtin/log.c:659
 #, c-format
 msgid "Unknown type: %d"
 msgstr "Type inconnu : %d"
 
-#: builtin/log.c:776
+#: builtin/log.c:780
 msgid "format.headers without value"
 msgstr "format.headers sans valeur"
 
-#: builtin/log.c:877
+#: builtin/log.c:881
 msgid "name of output directory is too long"
 msgstr "le nom du répertoire de sortie est trop long"
 
-#: builtin/log.c:893
+#: builtin/log.c:897
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr "Impossible d'ouvrir le fichier correctif %s"
 
-#: builtin/log.c:910
+#: builtin/log.c:914
 msgid "Need exactly one range."
 msgstr "Exactement une plage nécessaire."
 
-#: builtin/log.c:920
+#: builtin/log.c:924
 msgid "Not a range."
 msgstr "Ceci n'est pas une plage."
 
-#: builtin/log.c:1043
+#: builtin/log.c:1047
 msgid "Cover letter needs email format"
 msgstr "La lettre de motivation doit être au format courriel"
 
-#: builtin/log.c:1119
+#: builtin/log.c:1132
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to aberrant : %s"
 
-#: builtin/log.c:1146
+#: builtin/log.c:1159
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<options>] [<depuis> | <plage de révisions>]"
 
-#: builtin/log.c:1204
+#: builtin/log.c:1217
 msgid "Two output directories?"
 msgstr "Deux répertoires de sortie ?"
 
-#: builtin/log.c:1311 builtin/log.c:2054 builtin/log.c:2056 builtin/log.c:2068
+#: builtin/log.c:1324 builtin/log.c:2068 builtin/log.c:2070 builtin/log.c:2082
 #, c-format
 msgid "Unknown commit %s"
 msgstr "Commit inconnu %s"
 
-#: builtin/log.c:1321 builtin/notes.c:894 builtin/tag.c:526
+#: builtin/log.c:1334 builtin/notes.c:897 builtin/tag.c:526
 #, 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:1326
+#: builtin/log.c:1339
 msgid "Could not find exact merge base."
 msgstr "Impossible de trouver la base de fusion exacte."
 
-#: builtin/log.c:1330
+#: builtin/log.c:1343
 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"
@@ -12568,284 +13444,284 @@ msgstr ""
 "ou vous pouvez spécifier le commit de base par --base=<id-du-commit-de-base> "
 "manuellement."
 
-#: builtin/log.c:1350
+#: builtin/log.c:1363
 msgid "Failed to find exact merge base"
 msgstr "Impossible de trouver la base de fusion exacte"
 
-#: builtin/log.c:1361
+#: builtin/log.c:1374
 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:1365
+#: builtin/log.c:1378
 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:1418
+#: builtin/log.c:1431
 msgid "cannot get patch id"
 msgstr "impossible d'obtenir l'id du patch"
 
-#: builtin/log.c:1470
+#: builtin/log.c:1483
 msgid "failed to infer range-diff ranges"
 msgstr "échec d'inférence d'intervalles de différence d'intervalles"
 
-#: builtin/log.c:1515
+#: builtin/log.c:1528
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "utiliser [PATCH n/m] même avec un patch unique"
 
-#: builtin/log.c:1518
+#: builtin/log.c:1531
 msgid "use [PATCH] even with multiple patches"
 msgstr "utiliser [PATCH] même avec des patchs multiples"
 
-#: builtin/log.c:1522
+#: builtin/log.c:1535
 msgid "print patches to standard out"
 msgstr "afficher les patchs sur la sortie standard"
 
-#: builtin/log.c:1524
+#: builtin/log.c:1537
 msgid "generate a cover letter"
 msgstr "générer une lettre de motivation"
 
-#: builtin/log.c:1526
+#: builtin/log.c:1539
 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:1527
+#: builtin/log.c:1540
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1528
+#: builtin/log.c:1541
 msgid "use <sfx> instead of '.patch'"
 msgstr "utiliser <sfx> au lieu de '.patch'"
 
-#: builtin/log.c:1530
+#: builtin/log.c:1543
 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:1532
+#: builtin/log.c:1545
 msgid "mark the series as Nth re-roll"
 msgstr "marquer la série comme une Nième réédition"
 
-#: builtin/log.c:1534
+#: builtin/log.c:1547
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr "utiliser [RFC PATCH] au lieu de [PATCH]"
 
-#: builtin/log.c:1537
+#: builtin/log.c:1550
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "utiliser [<préfixe>] au lieu de [PATCH]"
 
-#: builtin/log.c:1540
+#: builtin/log.c:1553
 msgid "store resulting files in <dir>"
 msgstr "stocker les fichiers résultats dans <répertoire>"
 
-#: builtin/log.c:1543
+#: builtin/log.c:1556
 msgid "don't strip/add [PATCH]"
 msgstr "ne pas retirer/ajouter [PATCH]"
 
-#: builtin/log.c:1546
+#: builtin/log.c:1559
 msgid "don't output binary diffs"
 msgstr "ne pas imprimer les diffs binaires"
 
-#: builtin/log.c:1548
+#: builtin/log.c:1561
 msgid "output all-zero hash in From header"
 msgstr "écrire une empreinte à zéro dans l'entête From"
 
-#: builtin/log.c:1550
+#: builtin/log.c:1563
 msgid "don't include a patch matching a commit upstream"
 msgstr "ne pas inclure un patch correspondant à un commit amont"
 
-#: builtin/log.c:1552
+#: builtin/log.c:1565
 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:1554
+#: builtin/log.c:1567
 msgid "Messaging"
 msgstr "Communication"
 
-#: builtin/log.c:1555
+#: builtin/log.c:1568
 msgid "header"
 msgstr "en-tête"
 
-#: builtin/log.c:1556
+#: builtin/log.c:1569
 msgid "add email header"
 msgstr "ajouter l'en-tête de courriel"
 
-#: builtin/log.c:1557 builtin/log.c:1559
+#: builtin/log.c:1570 builtin/log.c:1572
 msgid "email"
 msgstr "courriel"
 
-#: builtin/log.c:1557
+#: builtin/log.c:1570
 msgid "add To: header"
 msgstr "ajouter l'en-tête \"To:\""
 
-#: builtin/log.c:1559
+#: builtin/log.c:1572
 msgid "add Cc: header"
 msgstr "ajouter l'en-tête \"Cc:\""
 
-#: builtin/log.c:1561
+#: builtin/log.c:1574
 msgid "ident"
 msgstr "ident"
 
-#: builtin/log.c:1562
+#: builtin/log.c:1575
 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:1564
+#: builtin/log.c:1577
 msgid "message-id"
 msgstr "id-message"
 
-#: builtin/log.c:1565
+#: builtin/log.c:1578
 msgid "make first mail a reply to <message-id>"
 msgstr "répondre dans le premier message à <id-message>"
 
-#: builtin/log.c:1566 builtin/log.c:1569
+#: builtin/log.c:1579 builtin/log.c:1582
 msgid "boundary"
 msgstr "limite"
 
-#: builtin/log.c:1567
+#: builtin/log.c:1580
 msgid "attach the patch"
 msgstr "attacher le patch"
 
-#: builtin/log.c:1570
+#: builtin/log.c:1583
 msgid "inline the patch"
 msgstr "patch à l'intérieur"
 
-#: builtin/log.c:1574
+#: builtin/log.c:1587
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
 "activer l'enfilage de message, styles : shallow (superficiel), deep (profond)"
 
-#: builtin/log.c:1576
+#: builtin/log.c:1589
 msgid "signature"
 msgstr "signature"
 
-#: builtin/log.c:1577
+#: builtin/log.c:1590
 msgid "add a signature"
 msgstr "ajouter une signature"
 
-#: builtin/log.c:1578
+#: builtin/log.c:1591
 msgid "base-commit"
 msgstr "commit-de-base"
 
-#: builtin/log.c:1579
+#: builtin/log.c:1592
 msgid "add prerequisite tree info to the patch series"
 msgstr "Ajouter un arbre prérequis à la série de patchs"
 
-#: builtin/log.c:1581
+#: builtin/log.c:1594
 msgid "add a signature from a file"
 msgstr "ajouter une signature depuis un fichier"
 
-#: builtin/log.c:1582
+#: builtin/log.c:1595
 msgid "don't print the patch filenames"
 msgstr "ne pas afficher les noms de fichiers des patchs"
 
-#: builtin/log.c:1584
+#: builtin/log.c:1597
 msgid "show progress while generating patches"
 msgstr ""
 "afficher la barre de progression durant la phase de génération des patchs"
 
-#: builtin/log.c:1585
+#: builtin/log.c:1598
 msgid "rev"
 msgstr "rév"
 
-#: builtin/log.c:1586
+#: builtin/log.c:1599
 msgid "show changes against <rev> in cover letter or single patch"
 msgstr ""
 "afficher les modifications par rapport à <rév> dans la première page ou une "
 "rustine"
 
-#: builtin/log.c:1589
+#: builtin/log.c:1602
 msgid "show changes against <refspec> in cover letter or single patch"
 msgstr ""
 "afficher les modifications par rapport à <refspec> dans la première page ou "
 "une rustine"
 
-#: builtin/log.c:1591
+#: builtin/log.c:1604
 msgid "percentage by which creation is weighted"
 msgstr "pourcentage par lequel la création est pondérée"
 
-#: builtin/log.c:1666
+#: builtin/log.c:1679
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "ligne d'identification invalide : %s"
 
-#: builtin/log.c:1681
+#: builtin/log.c:1694
 msgid "-n and -k are mutually exclusive"
 msgstr "-n et -k sont mutuellement exclusifs"
 
-#: builtin/log.c:1683
+#: builtin/log.c:1696
 msgid "--subject-prefix/--rfc and -k are mutually exclusive"
 msgstr "--subject-prefix/--rfc et -k sont mutuellement exclusifs"
 
-#: builtin/log.c:1691
+#: builtin/log.c:1704
 msgid "--name-only does not make sense"
 msgstr "--name-only n'a pas de sens"
 
-#: builtin/log.c:1693
+#: builtin/log.c:1706
 msgid "--name-status does not make sense"
 msgstr "--name-status n'a pas de sens"
 
-#: builtin/log.c:1695
+#: builtin/log.c:1708
 msgid "--check does not make sense"
 msgstr "--check n'a pas de sens"
 
-#: builtin/log.c:1727
+#: builtin/log.c:1740
 msgid "standard output, or directory, which one?"
 msgstr "sortie standard, ou répertoire, lequel ?"
 
-#: builtin/log.c:1729
+#: builtin/log.c:1742
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "Impossible de créer le répertoire '%s'"
 
-#: builtin/log.c:1816
+#: builtin/log.c:1829
 msgid "--interdiff requires --cover-letter or single patch"
 msgstr "--interdiff requiert --cover-letter ou une rustine unique"
 
-#: builtin/log.c:1820
+#: builtin/log.c:1833
 msgid "Interdiff:"
 msgstr "Interdiff :"
 
-#: builtin/log.c:1821
+#: builtin/log.c:1834
 #, c-format
 msgid "Interdiff against v%d:"
 msgstr "Interdiff contre v%d :"
 
-#: builtin/log.c:1827
+#: builtin/log.c:1840
 msgid "--creation-factor requires --range-diff"
 msgstr "--creation-factor requiert --range-diff"
 
-#: builtin/log.c:1831
+#: builtin/log.c:1844
 msgid "--range-diff requires --cover-letter or single patch"
 msgstr "--range-diff requiert --cover-letter ou une rustine unique"
 
-#: builtin/log.c:1839
+#: builtin/log.c:1852
 msgid "Range-diff:"
 msgstr "Diff-intervalle :"
 
-#: builtin/log.c:1840
+#: builtin/log.c:1853
 #, c-format
 msgid "Range-diff against v%d:"
 msgstr "Diff-intervalle contre v%d :"
 
-#: builtin/log.c:1851
+#: builtin/log.c:1864
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "lecture du fichier de signature '%s' impossible"
 
-#: builtin/log.c:1887
+#: builtin/log.c:1900
 msgid "Generating patches"
 msgstr "Génération des patchs"
 
-#: builtin/log.c:1931
+#: builtin/log.c:1944
 msgid "Failed to create output files"
 msgstr "Échec de création des fichiers en sortie"
 
-#: builtin/log.c:1989
+#: builtin/log.c:2003
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<branche_amont> [<head> [<limite>]]]"
 
-#: builtin/log.c:2043
+#: builtin/log.c:2057
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -12853,110 +13729,110 @@ msgstr ""
 "Impossible de trouver une branche distante suivie, merci de spécifier "
 "<branche_amont> manuellement.\n"
 
-#: builtin/ls-files.c:469
+#: builtin/ls-files.c:470
 msgid "git ls-files [<options>] [<file>...]"
 msgstr "git ls-files [<options>] [<fichier>...]"
 
-#: builtin/ls-files.c:525
+#: builtin/ls-files.c:526
 msgid "identify the file status with tags"
 msgstr "identifier l'état de fichier avec les étiquettes"
 
-#: builtin/ls-files.c:527
+#: builtin/ls-files.c:528
 msgid "use lowercase letters for 'assume unchanged' files"
 msgstr "utiliser des minuscules pour les fichiers 'assumés inchangés'"
 
-#: builtin/ls-files.c:529
+#: builtin/ls-files.c:530
 msgid "use lowercase letters for 'fsmonitor clean' files"
 msgstr "utiliser des minuscules pour les fichiers 'fsmonitor clean'"
 
-#: builtin/ls-files.c:531
+#: builtin/ls-files.c:532
 msgid "show cached files in the output (default)"
 msgstr "afficher les fichiers mis en cache dans la sortie (défaut)"
 
-#: builtin/ls-files.c:533
+#: builtin/ls-files.c:534
 msgid "show deleted files in the output"
 msgstr "afficher les fichiers supprimés dans la sortie"
 
-#: builtin/ls-files.c:535
+#: builtin/ls-files.c:536
 msgid "show modified files in the output"
 msgstr "afficher les fichiers modifiés dans la sortie"
 
-#: builtin/ls-files.c:537
+#: builtin/ls-files.c:538
 msgid "show other files in the output"
 msgstr "afficher les autres fichiers dans la sortie"
 
-#: builtin/ls-files.c:539
+#: builtin/ls-files.c:540
 msgid "show ignored files in the output"
 msgstr "afficher les fichiers ignorés dans la sortie"
 
-#: builtin/ls-files.c:542
+#: builtin/ls-files.c:543
 msgid "show staged contents' object name in the output"
 msgstr "afficher les nom des objets indexés dans la sortie"
 
-#: builtin/ls-files.c:544
+#: builtin/ls-files.c:545
 msgid "show files on the filesystem that need to be removed"
 msgstr ""
 "afficher les fichiers du système de fichiers qui ont besoin d'être supprimés"
 
-#: builtin/ls-files.c:546
+#: builtin/ls-files.c:547
 msgid "show 'other' directories' names only"
 msgstr "afficher seulement les noms des répertoires 'other'"
 
-#: builtin/ls-files.c:548
+#: builtin/ls-files.c:549
 msgid "show line endings of files"
 msgstr "afficher les fins de lignes des fichiers"
 
-#: builtin/ls-files.c:550
+#: builtin/ls-files.c:551
 msgid "don't show empty directories"
 msgstr "ne pas afficher les répertoires vides"
 
-#: builtin/ls-files.c:553
+#: builtin/ls-files.c:554
 msgid "show unmerged files in the output"
 msgstr "afficher les fichiers non fusionnés dans la sortie"
 
-#: builtin/ls-files.c:555
+#: builtin/ls-files.c:556
 msgid "show resolve-undo information"
 msgstr "afficher l'information resolv-undo"
 
-#: builtin/ls-files.c:557
+#: builtin/ls-files.c:558
 msgid "skip files matching pattern"
 msgstr "sauter les fichiers correspondant au motif"
 
-#: builtin/ls-files.c:560
+#: builtin/ls-files.c:561
 msgid "exclude patterns are read from <file>"
 msgstr "les motifs d'exclusion sont lus depuis <fichier>"
 
-#: builtin/ls-files.c:563
+#: builtin/ls-files.c:564
 msgid "read additional per-directory exclude patterns in <file>"
 msgstr "lire des motifs d'exclusion additionnels par répertoire dans <fichier>"
 
-#: builtin/ls-files.c:565
+#: builtin/ls-files.c:566
 msgid "add the standard git exclusions"
 msgstr "ajouter les exclusions git standard"
 
-#: builtin/ls-files.c:569
+#: builtin/ls-files.c:570
 msgid "make the output relative to the project top directory"
 msgstr "afficher en relatif par rapport au répertoire racine du projet"
 
-#: builtin/ls-files.c:572
+#: builtin/ls-files.c:573
 msgid "recurse through submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/ls-files.c:574
+#: builtin/ls-files.c:575
 msgid "if any <file> is not in the index, treat this as an error"
 msgstr "si un <fichier> n'est pas dans l'index, traiter cela comme une erreur"
 
-#: builtin/ls-files.c:575
+#: builtin/ls-files.c:576
 msgid "tree-ish"
 msgstr "arbre ou apparenté"
 
-#: builtin/ls-files.c:576
+#: builtin/ls-files.c:577
 msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr ""
 "considérer que les chemins supprimés depuis <arbre ou apparenté> sont "
 "toujours présents"
 
-#: builtin/ls-files.c:578
+#: builtin/ls-files.c:579
 msgid "show debugging data"
 msgstr "afficher les données de débogage"
 
@@ -12974,7 +13850,7 @@ msgstr ""
 msgid "do not print remote URL"
 msgstr "ne pas afficher les URL distantes"
 
-#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:903
+#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1111
 msgid "exec"
 msgstr "exécutable"
 
@@ -13051,185 +13927,190 @@ msgstr ""
 msgid "empty mbox: '%s'"
 msgstr "mbox vide : '%s'"
 
-#: builtin/merge.c:52
+#: builtin/merge.c:53
 msgid "git merge [<options>] [<commit>...]"
 msgstr "git merge [<options>] [<commit>...]"
 
-#: builtin/merge.c:53
+#: builtin/merge.c:54
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:54
+#: builtin/merge.c:55
 msgid "git merge --continue"
 msgstr "git merge --continue"
 
-#: builtin/merge.c:111
+#: builtin/merge.c:112
 msgid "switch `m' requires a value"
 msgstr "le commutateur `m' a besoin d'une valeur"
 
-#: builtin/merge.c:177
+#: builtin/merge.c:132
 #, c-format
-msgid "Could not find merge strategy '%s'.\n"
-msgstr "Impossible de trouver la stratégie de fusion '%s'.\n"
+msgid "option `%s' requires a value"
+msgstr "le commutateur '%s' a besoin d'une valeur"
 
 #: builtin/merge.c:178
 #, c-format
+msgid "Could not find merge strategy '%s'.\n"
+msgstr "Impossible de trouver la stratégie de fusion '%s'.\n"
+
+#: builtin/merge.c:179
+#, c-format
 msgid "Available strategies are:"
 msgstr "Les stratégies disponibles sont :"
 
-#: builtin/merge.c:183
+#: builtin/merge.c:184
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Les stratégies personnalisées sont :"
 
-#: builtin/merge.c:234 builtin/pull.c:143
+#: builtin/merge.c:235 builtin/pull.c:144
 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:237 builtin/pull.c:146
+#: builtin/merge.c:238 builtin/pull.c:147
 msgid "show a diffstat at the end of the merge"
 msgstr "afficher un diffstat à la fin de la fusion"
 
-#: builtin/merge.c:238 builtin/pull.c:149
+#: builtin/merge.c:239 builtin/pull.c:150
 msgid "(synonym to --stat)"
 msgstr "(synonyme de --stat)"
 
-#: builtin/merge.c:240 builtin/pull.c:152
+#: builtin/merge.c:241 builtin/pull.c:153
 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:243 builtin/pull.c:158
+#: builtin/merge.c:244 builtin/pull.c:159
 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:245 builtin/pull.c:161
+#: builtin/merge.c:246 builtin/pull.c:162
 msgid "perform a commit if the merge succeeds (default)"
 msgstr "effectuer une validation si la fusion réussit (défaut)"
 
-#: builtin/merge.c:247 builtin/pull.c:164
+#: builtin/merge.c:248 builtin/pull.c:165
 msgid "edit message before committing"
 msgstr "éditer le message avant la validation"
 
-#: builtin/merge.c:248
+#: builtin/merge.c:249
 msgid "allow fast-forward (default)"
 msgstr "autoriser l'avance rapide (défaut)"
 
-#: builtin/merge.c:250 builtin/pull.c:170
+#: builtin/merge.c:251 builtin/pull.c:171
 msgid "abort if fast-forward is not possible"
 msgstr "abandonner si l'avance rapide n'est pas possible"
 
-#: builtin/merge.c:254 builtin/pull.c:173
+#: builtin/merge.c:255 builtin/pull.c:174
 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:255 builtin/notes.c:784 builtin/pull.c:177
-#: builtin/rebase.c:916 builtin/rebase--interactive.c:186 builtin/revert.c:110
+#: builtin/merge.c:256 builtin/notes.c:787 builtin/pull.c:178
+#: builtin/rebase.c:1124 builtin/rebase--interactive.c:188 builtin/revert.c:111
 msgid "strategy"
 msgstr "stratégie"
 
-#: builtin/merge.c:256 builtin/pull.c:178
+#: builtin/merge.c:257 builtin/pull.c:179
 msgid "merge strategy to use"
 msgstr "stratégie de fusion à utiliser"
 
-#: builtin/merge.c:257 builtin/pull.c:181
+#: builtin/merge.c:258 builtin/pull.c:182
 msgid "option=value"
 msgstr "option=valeur"
 
-#: builtin/merge.c:258 builtin/pull.c:182
+#: builtin/merge.c:259 builtin/pull.c:183
 msgid "option for selected merge strategy"
 msgstr "option pour la stratégie de fusion sélectionnée"
 
-#: builtin/merge.c:260
+#: builtin/merge.c:261
 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:267
+#: builtin/merge.c:268
 msgid "abort the current in-progress merge"
 msgstr "abandonner la fusion en cours"
 
-#: builtin/merge.c:269
+#: builtin/merge.c:270
 msgid "continue the current in-progress merge"
 msgstr "continuer la fusion en cours"
 
-#: builtin/merge.c:271 builtin/pull.c:189
+#: builtin/merge.c:272 builtin/pull.c:190
 msgid "allow merging unrelated histories"
 msgstr "permettre la fusion d'historiques sans rapport"
 
-#: builtin/merge.c:277
+#: builtin/merge.c:278
 msgid "verify commit-msg hook"
 msgstr "vérifier le crochet commit-msg"
 
-#: builtin/merge.c:302
+#: builtin/merge.c:303
 msgid "could not run stash."
 msgstr "impossible de lancer le remisage."
 
-#: builtin/merge.c:307
+#: builtin/merge.c:308
 msgid "stash failed"
 msgstr "échec du remisage"
 
-#: builtin/merge.c:312
+#: builtin/merge.c:313
 #, c-format
 msgid "not a valid object: %s"
 msgstr "pas un objet valide : %s"
 
-#: builtin/merge.c:334 builtin/merge.c:351
+#: builtin/merge.c:335 builtin/merge.c:352
 msgid "read-tree failed"
 msgstr "read-tree a échoué"
 
-#: builtin/merge.c:381
+#: builtin/merge.c:382
 msgid " (nothing to squash)"
 msgstr " (rien à compresser)"
 
-#: builtin/merge.c:392
+#: builtin/merge.c:393
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "Validation compressée -- HEAD non mise à jour\n"
 
-#: builtin/merge.c:442
+#: builtin/merge.c:443
 #, 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:493
+#: builtin/merge.c:494
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "'%s' ne pointe pas sur un commit"
 
-#: builtin/merge.c:580
+#: builtin/merge.c:581
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Mauvaise chaîne branch.%s.mergeoptions : %s"
 
-#: builtin/merge.c:701
+#: builtin/merge.c:702
 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:715
+#: builtin/merge.c:716
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Options inconnue pour merge-recursive : -X%s"
 
-#: builtin/merge.c:730
+#: builtin/merge.c:731
 #, c-format
 msgid "unable to write %s"
 msgstr "impossible d'écrire %s"
 
-#: builtin/merge.c:782
+#: builtin/merge.c:783
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Impossible de lire depuis '%s'"
 
-#: builtin/merge.c:791
+#: builtin/merge.c:792
 #, 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:797
+#: builtin/merge.c:798
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -13246,70 +14127,70 @@ msgstr ""
 "Les lignes commençant par '%c' seront ignorées, et un message vide\n"
 "abandonne la validation.\n"
 
-#: builtin/merge.c:833
+#: builtin/merge.c:834
 msgid "Empty commit message."
 msgstr "Message de validation vide."
 
-#: builtin/merge.c:852
+#: builtin/merge.c:853
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Merveilleux.\n"
 
-#: builtin/merge.c:905
+#: builtin/merge.c:906
 #, 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:944
+#: builtin/merge.c:945
 msgid "No current branch."
 msgstr "Pas de branche courante."
 
-#: builtin/merge.c:946
+#: builtin/merge.c:947
 msgid "No remote for the current branch."
 msgstr "Pas de branche distante pour la branche courante."
 
-#: builtin/merge.c:948
+#: builtin/merge.c:949
 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:953
+#: builtin/merge.c:954
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Pas de branche de suivi pour %s depuis %s"
 
-#: builtin/merge.c:1010
+#: builtin/merge.c:1011
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr "Mauvaise valeur '%s' dans l'environnement '%s'"
 
-#: builtin/merge.c:1113
+#: builtin/merge.c:1114
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr "pas possible de fusionner ceci dans %s : %s"
 
-#: builtin/merge.c:1147
+#: builtin/merge.c:1148
 msgid "not something we can merge"
 msgstr "pas possible de fusionner ceci"
 
-#: builtin/merge.c:1250
+#: builtin/merge.c:1251
 msgid "--abort expects no arguments"
 msgstr "--abort n'accepte pas d'argument"
 
-#: builtin/merge.c:1254
+#: builtin/merge.c:1255
 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:1266
+#: builtin/merge.c:1267
 msgid "--continue expects no arguments"
 msgstr "--continue ne supporte aucun argument"
 
-#: builtin/merge.c:1270
+#: builtin/merge.c:1271
 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:1286
+#: builtin/merge.c:1287
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -13317,7 +14198,7 @@ msgstr ""
 "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe).\n"
 "Veuillez valider vos modifications avant de pouvoir fusionner."
 
-#: builtin/merge.c:1293
+#: builtin/merge.c:1294
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -13325,94 +14206,94 @@ msgstr ""
 "Vous n'avez pas terminé votre picorage (CHERRY_PICK_HEAD existe).\n"
 "Veuillez valider vos modifications avant de pouvoir fusionner."
 
-#: builtin/merge.c:1296
+#: builtin/merge.c:1297
 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:1305
+#: builtin/merge.c:1306
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Vous ne pouvez pas combiner --squash avec --no-ff."
 
-#: builtin/merge.c:1313
+#: builtin/merge.c:1314
 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:1330
+#: builtin/merge.c:1331
 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:1332
+#: builtin/merge.c:1333
 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:1337
+#: builtin/merge.c:1338
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - pas possible de fusionner ceci"
 
-#: builtin/merge.c:1339
+#: builtin/merge.c:1340
 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:1421
+#: builtin/merge.c:1422
 msgid "refusing to merge unrelated histories"
 msgstr "refus de fusionner des historiques sans relation"
 
-#: builtin/merge.c:1430
+#: builtin/merge.c:1431
 msgid "Already up to date."
 msgstr "Déjà à jour."
 
-#: builtin/merge.c:1440
+#: builtin/merge.c:1441
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Mise à jour %s..%s\n"
 
-#: builtin/merge.c:1482
+#: builtin/merge.c:1483
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "Essai de fusion vraiment triviale dans l'index...\n"
 
-#: builtin/merge.c:1489
+#: builtin/merge.c:1490
 #, c-format
 msgid "Nope.\n"
 msgstr "Non.\n"
 
-#: builtin/merge.c:1514
+#: builtin/merge.c:1515
 msgid "Already up to date. Yeeah!"
 msgstr "Déjà à jour. Ouais !"
 
-#: builtin/merge.c:1520
+#: builtin/merge.c:1521
 msgid "Not possible to fast-forward, aborting."
 msgstr "Pas possible d'avancer rapidement, abandon."
 
-#: builtin/merge.c:1543 builtin/merge.c:1622
+#: builtin/merge.c:1544 builtin/merge.c:1623
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "Retour de l'arbre à l'original...\n"
 
-#: builtin/merge.c:1547
+#: builtin/merge.c:1548
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Essai de la stratégie de fusion %s...\n"
 
-#: builtin/merge.c:1613
+#: builtin/merge.c:1614
 #, 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:1615
+#: builtin/merge.c:1616
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "La fusion avec la stratégie %s a échoué.\n"
 
-#: builtin/merge.c:1624
+#: builtin/merge.c:1625
 #, 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:1636
+#: builtin/merge.c:1637
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -13498,33 +14379,33 @@ msgstr "ne pas avertir à propos des conflits"
 msgid "set labels for file1/orig-file/file2"
 msgstr "définir les labels pour fichier1/fichier-orig/fichier2"
 
-#: builtin/merge-recursive.c:45
+#: builtin/merge-recursive.c:46
 #, c-format
 msgid "unknown option %s"
 msgstr "option inconnue %s"
 
-#: builtin/merge-recursive.c:51
+#: builtin/merge-recursive.c:52
 #, c-format
 msgid "could not parse object '%s'"
 msgstr "Impossible d'analyser l'objet '%s'"
 
-#: builtin/merge-recursive.c:55
+#: builtin/merge-recursive.c:56
 #, c-format
 msgid "cannot handle more than %d base. Ignoring %s."
 msgid_plural "cannot handle more than %d bases. Ignoring %s."
 msgstr[0] "impossible de gérer plus de %d base. %s ignoré."
 msgstr[1] "impossible de gérer plus de %d bases. %s ignoré."
 
-#: builtin/merge-recursive.c:63
+#: builtin/merge-recursive.c:64
 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-recursive.c:69 builtin/merge-recursive.c:71
+#: builtin/merge-recursive.c:70 builtin/merge-recursive.c:72
 #, c-format
 msgid "could not resolve ref '%s'"
 msgstr "impossible de résoudre la référence '%s'"
 
-#: builtin/merge-recursive.c:77
+#: builtin/merge-recursive.c:78
 #, c-format
 msgid "Merging %s with %s\n"
 msgstr "Fusion de %s avec %s\n"
@@ -13537,7 +14418,7 @@ msgstr "git mktree [-z] [--missing] [--batch]"
 msgid "input is NUL terminated"
 msgstr "l'entrée se termine par NUL"
 
-#: builtin/mktree.c:155 builtin/write-tree.c:25
+#: builtin/mktree.c:155 builtin/write-tree.c:26
 msgid "allow missing objects"
 msgstr "autoriser les objets manquants"
 
@@ -13564,96 +14445,96 @@ msgstr "trop d'arguments"
 msgid "unrecognized verb: %s"
 msgstr "verbe non reconnu : %s"
 
-#: builtin/mv.c:17
+#: builtin/mv.c:18
 msgid "git mv [<options>] <source>... <destination>"
 msgstr "git mv [<options>] <source>... <destination>"
 
-#: builtin/mv.c:82
+#: builtin/mv.c:83
 #, c-format
 msgid "Directory %s is in index and no submodule?"
 msgstr "Le répertoire %s est dans l'index et pourtant aucun sous-module ?"
 
-#: builtin/mv.c:84
+#: builtin/mv.c:85
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 "Veuillez indexer vos modifications de .gitmodules ou les remiser pour "
 "continuer"
 
-#: builtin/mv.c:102
+#: builtin/mv.c:103
 #, c-format
 msgid "%.*s is in index"
 msgstr "%.*s est dans l'index"
 
-#: builtin/mv.c:124
+#: builtin/mv.c:125
 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:168
+#: builtin/mv.c:169
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr "la destination '%s' n'est pas un répertoire"
 
-#: builtin/mv.c:179
+#: builtin/mv.c:180
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr "Vérification du renommage de '%s' en '%s'\n"
 
-#: builtin/mv.c:183
+#: builtin/mv.c:184
 msgid "bad source"
 msgstr "mauvaise source"
 
-#: builtin/mv.c:186
+#: builtin/mv.c:187
 msgid "can not move directory into itself"
 msgstr "impossible de déplacer un répertoire dans lui-même"
 
-#: builtin/mv.c:189
+#: builtin/mv.c:190
 msgid "cannot move directory over file"
 msgstr "impossible de déplacer un répertoire sur un fichier"
 
-#: builtin/mv.c:198
+#: builtin/mv.c:199
 msgid "source directory is empty"
 msgstr "le répertoire source est vide"
 
-#: builtin/mv.c:223
+#: builtin/mv.c:224
 msgid "not under version control"
 msgstr "pas sous le contrôle de version"
 
-#: builtin/mv.c:226
+#: builtin/mv.c:227
 msgid "destination exists"
 msgstr "la destination existe"
 
-#: builtin/mv.c:234
+#: builtin/mv.c:235
 #, c-format
 msgid "overwriting '%s'"
 msgstr "écrasement de '%s'"
 
-#: builtin/mv.c:237
+#: builtin/mv.c:238
 msgid "Cannot overwrite"
 msgstr "Impossible d'écraser"
 
-#: builtin/mv.c:240
+#: builtin/mv.c:241
 msgid "multiple sources for the same target"
 msgstr "multiples sources pour la même destination"
 
-#: builtin/mv.c:242
+#: builtin/mv.c:243
 msgid "destination directory does not exist"
 msgstr "le répertoire de destination n'existe pas"
 
-#: builtin/mv.c:249
+#: builtin/mv.c:250
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr "%s, source=%s, destination=%s"
 
-#: builtin/mv.c:270
+#: builtin/mv.c:271
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr "Renommage de %s en %s\n"
 
-#: builtin/mv.c:276 builtin/remote.c:717 builtin/repack.c:511
+#: builtin/mv.c:277 builtin/remote.c:717 builtin/repack.c:513
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "le renommage de '%s' a échoué"
@@ -13852,8 +14733,8 @@ msgid "could not open or read '%s'"
 msgstr "impossible d'ouvrir ou lire '%s'"
 
 #: builtin/notes.c:263 builtin/notes.c:313 builtin/notes.c:315
-#: builtin/notes.c:383 builtin/notes.c:438 builtin/notes.c:524
-#: builtin/notes.c:529 builtin/notes.c:607 builtin/notes.c:669
+#: builtin/notes.c:383 builtin/notes.c:438 builtin/notes.c:526
+#: builtin/notes.c:531 builtin/notes.c:610 builtin/notes.c:672
 #, c-format
 msgid "failed to resolve '%s' as a valid ref."
 msgstr "impossible de résoudre '%s' comme une référence valide."
@@ -13886,38 +14767,38 @@ msgstr "impossible de copier les notes de '%s' vers '%s'"
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
 msgstr "Refus de faire %s sur des notes dans %s (hors de refs/notes/)"
 
-#: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:507
-#: builtin/notes.c:519 builtin/notes.c:595 builtin/notes.c:662
-#: builtin/notes.c:812 builtin/notes.c:959 builtin/notes.c:980
+#: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:509
+#: builtin/notes.c:521 builtin/notes.c:598 builtin/notes.c:665
+#: builtin/notes.c:815 builtin/notes.c:963 builtin/notes.c:985
 msgid "too many parameters"
 msgstr "trop de paramètres"
 
-#: builtin/notes.c:389 builtin/notes.c:675
+#: builtin/notes.c:389 builtin/notes.c:678
 #, c-format
 msgid "no note found for object %s."
 msgstr "pas de note trouvée pour l'objet %s."
 
-#: builtin/notes.c:410 builtin/notes.c:573
+#: builtin/notes.c:410 builtin/notes.c:576
 msgid "note contents as a string"
 msgstr "contenu de la note sous forme de chaîne"
 
-#: builtin/notes.c:413 builtin/notes.c:576
+#: builtin/notes.c:413 builtin/notes.c:579
 msgid "note contents in a file"
 msgstr "contenu de la note dans un fichier"
 
-#: builtin/notes.c:416 builtin/notes.c:579
+#: builtin/notes.c:416 builtin/notes.c:582
 msgid "reuse and edit specified note object"
 msgstr "réutiliser et éditer l'objet de note spécifié"
 
-#: builtin/notes.c:419 builtin/notes.c:582
+#: builtin/notes.c:419 builtin/notes.c:585
 msgid "reuse specified note object"
 msgstr "réutiliser l'objet de note spécifié"
 
-#: builtin/notes.c:422 builtin/notes.c:585
+#: builtin/notes.c:422 builtin/notes.c:588
 msgid "allow storing empty note"
 msgstr "permettre de stocker une note vide"
 
-#: builtin/notes.c:423 builtin/notes.c:494
+#: builtin/notes.c:423 builtin/notes.c:496
 msgid "replace existing notes"
 msgstr "remplacer les notes existantes"
 
@@ -13930,30 +14811,30 @@ msgstr ""
 "Impossible d'ajouter des notes. Des notes ont été trouvées pour l'objet %s. "
 "Utilisez '-f' pour écraser les notes existantes"
 
-#: builtin/notes.c:463 builtin/notes.c:542
+#: builtin/notes.c:463 builtin/notes.c:544
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "Écrasement des notes existantes pour l'objet %s\n"
 
-#: builtin/notes.c:474 builtin/notes.c:634 builtin/notes.c:899
+#: builtin/notes.c:475 builtin/notes.c:637 builtin/notes.c:902
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "Suppression de la note pour l'objet %s\n"
 
-#: builtin/notes.c:495
+#: builtin/notes.c:497
 msgid "read objects from stdin"
 msgstr "lire les objets depuis l'entrée standard"
 
-#: builtin/notes.c:497
+#: builtin/notes.c:499
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr ""
 "charger la configuration de réécriture pour <commande> (implique --stdin)"
 
-#: builtin/notes.c:515
+#: builtin/notes.c:517
 msgid "too few parameters"
 msgstr "pas assez de paramètres"
 
-#: builtin/notes.c:536
+#: builtin/notes.c:538
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -13962,12 +14843,12 @@ msgstr ""
 "Impossible de copier des notes. Des notes ont été trouvées pour l'objet %s. "
 "Utilisez '-f' pour écraser les notes existantes"
 
-#: builtin/notes.c:548
+#: builtin/notes.c:550
 #, c-format
 msgid "missing notes on source object %s. Cannot copy."
 msgstr "notes manquantes sur l'objet source %s. Impossible de copier."
 
-#: builtin/notes.c:600
+#: builtin/notes.c:603
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -13976,52 +14857,52 @@ msgstr ""
 "Les options -m/-F/-c/-C sont obsolètes pour la sous-commande 'edit'.\n"
 "Veuillez utiliser 'git notes add -f -m/-F/-c/-C' à la place.\n"
 
-#: builtin/notes.c:695
+#: builtin/notes.c:698
 msgid "failed to delete ref NOTES_MERGE_PARTIAL"
 msgstr "échec de la suppression de la référence NOTES_MERGE_PARTIAL"
 
-#: builtin/notes.c:697
+#: builtin/notes.c:700
 msgid "failed to delete ref NOTES_MERGE_REF"
 msgstr "échec de la suppression de la référence NOTES_MERGE_REF"
 
-#: builtin/notes.c:699
+#: builtin/notes.c:702
 msgid "failed to remove 'git notes merge' worktree"
 msgstr "échec de la suppression de la copie de travail 'git notes merge'"
 
-#: builtin/notes.c:719
+#: builtin/notes.c:722
 msgid "failed to read ref NOTES_MERGE_PARTIAL"
 msgstr "échec de la lecture de la référence NOTES_MERGE_PARTIAL"
 
-#: builtin/notes.c:721
+#: builtin/notes.c:724
 msgid "could not find commit from NOTES_MERGE_PARTIAL."
 msgstr "impossible de trouver le commit de NOTES_MERGE_PARTIAL."
 
-#: builtin/notes.c:723
+#: builtin/notes.c:726
 msgid "could not parse commit from NOTES_MERGE_PARTIAL."
 msgstr "impossible d'analyser le commit de NOTES_MERGE_PARTIAL."
 
-#: builtin/notes.c:736
+#: builtin/notes.c:739
 msgid "failed to resolve NOTES_MERGE_REF"
 msgstr "échec de la résolution de NOTES_MERGE_REF"
 
-#: builtin/notes.c:739
+#: builtin/notes.c:742
 msgid "failed to finalize notes merge"
 msgstr "impossible de finaliser la fusion de notes"
 
-#: builtin/notes.c:765
+#: builtin/notes.c:768
 #, c-format
 msgid "unknown notes merge strategy %s"
 msgstr "stratégie de fusion de notes inconnue %s"
 
-#: builtin/notes.c:781
+#: builtin/notes.c:784
 msgid "General options"
 msgstr "Options générales"
 
-#: builtin/notes.c:783
+#: builtin/notes.c:786
 msgid "Merge options"
 msgstr "Options de fusion"
 
-#: builtin/notes.c:785
+#: builtin/notes.c:788
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
@@ -14029,47 +14910,47 @@ msgstr ""
 "résoudre les conflits de notes en utilisant la stratégie donnée (manual/ours/"
 "theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:787
+#: builtin/notes.c:790
 msgid "Committing unmerged notes"
 msgstr "Validation des notes non fusionnées"
 
-#: builtin/notes.c:789
+#: builtin/notes.c:792
 msgid "finalize notes merge by committing unmerged notes"
 msgstr "finaliser la fusion de notes en validant les notes non fusionnées"
 
-#: builtin/notes.c:791
+#: builtin/notes.c:794
 msgid "Aborting notes merge resolution"
 msgstr "Abandon de la résolution de fusion des notes"
 
-#: builtin/notes.c:793
+#: builtin/notes.c:796
 msgid "abort notes merge"
 msgstr "abandonner la fusion de notes"
 
-#: builtin/notes.c:804
+#: builtin/notes.c:807
 msgid "cannot mix --commit, --abort or -s/--strategy"
 msgstr "--commit, --abort et -s/--strategy sont mutuellement incompatibles"
 
-#: builtin/notes.c:809
+#: builtin/notes.c:812
 msgid "must specify a notes ref to merge"
 msgstr "vous devez spécifier une référence de notes à fusionner"
 
-#: builtin/notes.c:833
+#: builtin/notes.c:836
 #, c-format
 msgid "unknown -s/--strategy: %s"
 msgstr "-s/--strategy inconnu : %s"
 
-#: builtin/notes.c:870
+#: builtin/notes.c:873
 #, c-format
 msgid "a notes merge into %s is already in-progress at %s"
 msgstr "une fusion de notes dans %s est déjà en cours avec %s"
 
-#: builtin/notes.c:873
+#: builtin/notes.c:876
 #, c-format
 msgid "failed to store link to current notes ref (%s)"
 msgstr ""
 "impossible de stocker le lien vers la référence actuelle aux notes (%s)"
 
-#: builtin/notes.c:875
+#: builtin/notes.c:878
 #, c-format
 msgid ""
 "Automatic notes merge failed. Fix conflicts in %s and commit the result with "
@@ -14077,40 +14958,40 @@ msgid ""
 "abort'.\n"
 msgstr ""
 "La fusion automatique des notes a échoué. Corrigez les conflits dans %s et "
-"valide le résultat avec 'git notes merges --commit', ou abandonnez la fusion "
-"avec 'git notes merge --abort'.\n"
+"validez le résultat avec 'git notes merges --commit', ou abandonnez la "
+"fusion avec 'git notes merge --abort'.\n"
 
-#: builtin/notes.c:897
+#: builtin/notes.c:900
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "L'objet %s n'a pas de note\n"
 
-#: builtin/notes.c:909
+#: builtin/notes.c:912
 msgid "attempt to remove non-existent note is not an error"
 msgstr ""
 "la tentative de suppression d'une note non existante n'est pas une erreur"
 
-#: builtin/notes.c:912
+#: builtin/notes.c:915
 msgid "read object names from the standard input"
 msgstr "lire les noms d'objet depuis l'entrée standard"
 
-#: builtin/notes.c:950 builtin/prune.c:108 builtin/worktree.c:164
+#: builtin/notes.c:954 builtin/prune.c:108 builtin/worktree.c:165
 msgid "do not remove, show only"
 msgstr "ne pas supprimer, afficher seulement"
 
-#: builtin/notes.c:951
+#: builtin/notes.c:955
 msgid "report pruned notes"
 msgstr "afficher les notes éliminées"
 
-#: builtin/notes.c:993
+#: builtin/notes.c:998
 msgid "notes-ref"
 msgstr "références-notes"
 
-#: builtin/notes.c:994
+#: builtin/notes.c:999
 msgid "use notes from <notes-ref>"
 msgstr "utiliser les notes depuis <références-notes>"
 
-#: builtin/notes.c:1029
+#: builtin/notes.c:1034
 #, c-format
 msgid "unknown subcommand: %s"
 msgstr "sous-commande inconnue : %s"
@@ -14129,129 +15010,129 @@ msgstr ""
 "git pack-objects [options...] base-name [< <liste-références> | < <liste-"
 "objets>]"
 
-#: builtin/pack-objects.c:422
+#: builtin/pack-objects.c:423
 #, c-format
 msgid "bad packed object CRC for %s"
 msgstr "mauvais CRC d'objet empaqueté pour %s"
 
-#: builtin/pack-objects.c:433
+#: builtin/pack-objects.c:434
 #, c-format
 msgid "corrupt packed object for %s"
 msgstr "objet empaqueté corrompu pour %s"
 
-#: builtin/pack-objects.c:564
+#: builtin/pack-objects.c:565
 #, c-format
 msgid "recursive delta detected for object %s"
 msgstr "delta récursif détecté pour l'objet %s"
 
-#: builtin/pack-objects.c:775
+#: builtin/pack-objects.c:776
 #, c-format
 msgid "ordered %u objects, expected %<PRIu32>"
 msgstr "%u objets commandés, %<PRIu32> attendus"
 
-#: builtin/pack-objects.c:788
+#: builtin/pack-objects.c:789
 #, c-format
 msgid "packfile is invalid: %s"
 msgstr "le fichier packet est invalide : %s"
 
-#: builtin/pack-objects.c:792
+#: builtin/pack-objects.c:793
 #, c-format
 msgid "unable to open packfile for reuse: %s"
 msgstr "ouverture du fichier paquet pour réutilisation impossible : %s"
 
-#: builtin/pack-objects.c:796
+#: builtin/pack-objects.c:797
 msgid "unable to seek in reused packfile"
 msgstr "impossible de rechercher (seek) dans le fichier paquet réutilisé"
 
-#: builtin/pack-objects.c:807
+#: builtin/pack-objects.c:808
 msgid "unable to read from reused packfile"
 msgstr "lecture du fichier de paquet réutilisé impossible"
 
-#: builtin/pack-objects.c:835
+#: builtin/pack-objects.c:836
 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:848
+#: builtin/pack-objects.c:849
 msgid "Writing objects"
 msgstr "Écriture des objets"
 
-#: builtin/pack-objects.c:910 builtin/update-index.c:88
+#: builtin/pack-objects.c:911 builtin/update-index.c:89
 #, c-format
 msgid "failed to stat %s"
 msgstr "échec du stat de %s"
 
-#: builtin/pack-objects.c:963
+#: builtin/pack-objects.c:964
 #, c-format
 msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
 msgstr "%<PRIu32> objets écrits, %<PRIu32> attendus"
 
-#: builtin/pack-objects.c:1157
+#: builtin/pack-objects.c:1158
 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:1585
+#: builtin/pack-objects.c:1586
 #, c-format
 msgid "delta base offset overflow in pack for %s"
 msgstr "dépassement de décalage de base de delta pour %s"
 
-#: builtin/pack-objects.c:1594
+#: builtin/pack-objects.c:1595
 #, c-format
 msgid "delta base offset out of bound for %s"
 msgstr "décalage de base de delta est hors limite pour %s"
 
-#: builtin/pack-objects.c:1863
+#: builtin/pack-objects.c:1864
 msgid "Counting objects"
 msgstr "Décompte des objets"
 
-#: builtin/pack-objects.c:1998
+#: builtin/pack-objects.c:1994
 #, c-format
 msgid "unable to get size of %s"
 msgstr "impossible de récupérer la taille de %s"
 
-#: builtin/pack-objects.c:2013
+#: builtin/pack-objects.c:2009
 #, c-format
 msgid "unable to parse object header of %s"
 msgstr "impossible d'analyser l'entête d'objet de %s"
 
-#: builtin/pack-objects.c:2083 builtin/pack-objects.c:2099
-#: builtin/pack-objects.c:2109
+#: builtin/pack-objects.c:2079 builtin/pack-objects.c:2095
+#: builtin/pack-objects.c:2105
 #, c-format
 msgid "object %s cannot be read"
 msgstr "l'objet %s ne peut être lu"
 
-#: builtin/pack-objects.c:2086 builtin/pack-objects.c:2113
+#: builtin/pack-objects.c:2082 builtin/pack-objects.c:2109
 #, c-format
 msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
 msgstr ""
 "objet %s longueur de l'objet inconsistante (%<PRIuMAX> contre %<PRIuMAX>)"
 
-#: builtin/pack-objects.c:2123
+#: builtin/pack-objects.c:2119
 msgid "suboptimal pack - out of memory"
 msgstr "paquet sous-optimal - mémoire insuffisante"
 
-#: builtin/pack-objects.c:2451
+#: builtin/pack-objects.c:2445
 #, c-format
 msgid "Delta compression using up to %d threads"
 msgstr "Compression par delta en utilisant jusqu'à %d fils d'exécution"
 
-#: builtin/pack-objects.c:2583
+#: builtin/pack-objects.c:2577
 #, c-format
 msgid "unable to pack objects reachable from tag %s"
 msgstr "impossible d'empaqueter les objets joignables depuis l'étiquette %s"
 
-#: builtin/pack-objects.c:2670
+#: builtin/pack-objects.c:2664
 msgid "Compressing objects"
 msgstr "Compression des objets"
 
-#: builtin/pack-objects.c:2676
+#: builtin/pack-objects.c:2670
 msgid "inconsistency with delta count"
 msgstr "inconsistance dans le compte de delta"
 
-#: builtin/pack-objects.c:2753
+#: builtin/pack-objects.c:2751
 #, c-format
 msgid ""
 "expected edge object ID, got garbage:\n"
@@ -14260,7 +15141,7 @@ msgstr ""
 "ID d'objet de bord attendu, reçu des données illisibles :\n"
 "%s"
 
-#: builtin/pack-objects.c:2759
+#: builtin/pack-objects.c:2757
 #, c-format
 msgid ""
 "expected object ID, got garbage:\n"
@@ -14269,20 +15150,20 @@ msgstr ""
 "ID d'objet attendu, reçu des données illisibles :\n"
 "%s"
 
-#: builtin/pack-objects.c:2857
+#: builtin/pack-objects.c:2855
 msgid "invalid value for --missing"
 msgstr "valeur invalide pour --missing"
 
-#: builtin/pack-objects.c:2916 builtin/pack-objects.c:3024
+#: builtin/pack-objects.c:2914 builtin/pack-objects.c:3022
 msgid "cannot open pack index"
 msgstr "impossible d'ouvrir l'index de paquet"
 
-#: builtin/pack-objects.c:2947
+#: builtin/pack-objects.c:2945
 #, c-format
 msgid "loose object at %s could not be examined"
 msgstr "l'objet libre à %s n'a pas pu être examiné"
 
-#: builtin/pack-objects.c:3032
+#: builtin/pack-objects.c:3030
 msgid "unable to force loose object"
 msgstr "impossible de forcer l'objet libre"
 
@@ -14377,7 +15258,7 @@ msgstr "utiliser les objets OFS_DELTA"
 #: builtin/pack-objects.c:3267
 msgid "use threads when searching for best delta matches"
 msgstr ""
-"utiliser des fils lors de la recherche pour une meilleurs correspondance des "
+"utiliser des fils lors de la recherche pour une meilleure correspondance des "
 "deltas"
 
 #: builtin/pack-objects.c:3269
@@ -14425,88 +15306,92 @@ msgid "unpack unreachable objects newer than <time>"
 msgstr "dépaqueter les objets inaccessibles plus récents que <heure>"
 
 #: builtin/pack-objects.c:3296
+msgid "use the sparse reachability algorithm"
+msgstr "utiliser l'algorithme de joignabilité creuse"
+
+#: builtin/pack-objects.c:3298
 msgid "create thin packs"
 msgstr "créer des paquets légers"
 
-#: builtin/pack-objects.c:3298
+#: builtin/pack-objects.c:3300
 msgid "create packs suitable for shallow fetches"
 msgstr "créer des paquets permettant des récupérations superficielles"
 
-#: builtin/pack-objects.c:3300
+#: builtin/pack-objects.c:3302
 msgid "ignore packs that have companion .keep file"
 msgstr "ignorer les paquets qui ont un fichier .keep"
 
-#: builtin/pack-objects.c:3302
+#: builtin/pack-objects.c:3304
 msgid "ignore this pack"
 msgstr "ignorer ce paquet"
 
-#: builtin/pack-objects.c:3304
+#: builtin/pack-objects.c:3306
 msgid "pack compression level"
 msgstr "niveau de compression du paquet"
 
-#: builtin/pack-objects.c:3306
+#: builtin/pack-objects.c:3308
 msgid "do not hide commits by grafts"
 msgstr "ne pas cacher les validations par greffes"
 
-#: builtin/pack-objects.c:3308
+#: builtin/pack-objects.c:3310
 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:3310
+#: builtin/pack-objects.c:3312
 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:3313
+#: builtin/pack-objects.c:3315
 msgid "handling for missing objects"
 msgstr "gestion des objets manquants"
 
-#: builtin/pack-objects.c:3316
+#: builtin/pack-objects.c:3318
 msgid "do not pack objects in promisor packfiles"
 msgstr "ne pas empaqueter les objets dans les fichiers paquets prometteurs"
 
-#: builtin/pack-objects.c:3318
+#: builtin/pack-objects.c:3320
 msgid "respect islands during delta compression"
 msgstr "respecter les îlots pendant la compression des deltas"
 
-#: builtin/pack-objects.c:3342
+#: builtin/pack-objects.c:3345
 #, c-format
 msgid "delta chain depth %d is too deep, forcing %d"
 msgstr "la profondeur %d de chaîne de delta est trop grande, forcée à %d"
 
-#: builtin/pack-objects.c:3347
+#: builtin/pack-objects.c:3350
 #, c-format
 msgid "pack.deltaCacheLimit is too high, forcing %d"
 msgstr "pack.deltaCacheLimit est trop grand, forcé à %d"
 
-#: builtin/pack-objects.c:3401
+#: builtin/pack-objects.c:3404
 msgid "--max-pack-size cannot be used to build a pack for transfer"
 msgstr ""
 "--max-pack-size ne peut pas être utilisé pour construire un paquet à "
 "transférer"
 
-#: builtin/pack-objects.c:3403
+#: builtin/pack-objects.c:3406
 msgid "minimum pack size limit is 1 MiB"
 msgstr "la taille limite minimale d'un paquet est 1 MiB"
 
-#: builtin/pack-objects.c:3408
+#: builtin/pack-objects.c:3411
 msgid "--thin cannot be used to build an indexable pack"
 msgstr "--thin ne peut pas être utilisé pour construire un paquet indexable"
 
-#: builtin/pack-objects.c:3411
+#: builtin/pack-objects.c:3414
 msgid "--keep-unreachable and --unpack-unreachable are incompatible"
 msgstr "--keep-unreachable et --unpack-unreachable sont incompatibles"
 
-#: builtin/pack-objects.c:3417
+#: builtin/pack-objects.c:3420
 msgid "cannot use --filter without --stdout"
 msgstr "impossible d'utiliser --filter sans --stdout"
 
-#: builtin/pack-objects.c:3476
+#: builtin/pack-objects.c:3479
 msgid "Enumerating objects"
 msgstr "Énumération des objets"
 
-#: builtin/pack-objects.c:3495
+#: builtin/pack-objects.c:3498
 #, c-format
 msgid "Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>)"
 msgstr ""
@@ -14548,57 +15433,57 @@ msgstr "faire expirer les objets plus vieux que <heure>"
 msgid "limit traversal to objects outside promisor packfiles"
 msgstr "limiter la traversée aux objets hors des fichiers paquets prometteurs"
 
-#: builtin/prune.c:129
+#: builtin/prune.c:128
 msgid "cannot prune in a precious-objects repo"
 msgstr "impossible de nettoyer dans un dépôt d'objets précieux"
 
-#: builtin/pull.c:60 builtin/pull.c:62
+#: builtin/pull.c:61 builtin/pull.c:63
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr "Valeur invalide pour %s : %s"
 
-#: builtin/pull.c:82
+#: builtin/pull.c:83
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
 msgstr "git pull [<options>] [<dépôt> [<spécification-de-référence>...]]"
 
-#: builtin/pull.c:133
+#: builtin/pull.c:134
 msgid "control for recursive fetching of submodules"
 msgstr "contrôler la récupération récursive dans les sous-modules"
 
-#: builtin/pull.c:137
+#: builtin/pull.c:138
 msgid "Options related to merging"
 msgstr "Options relatives à la fusion"
 
-#: builtin/pull.c:140
+#: builtin/pull.c:141
 msgid "incorporate changes by rebasing rather than merging"
 msgstr "incorporer les modifications en rebasant plutôt qu'en fusionnant"
 
-#: builtin/pull.c:167 builtin/rebase--interactive.c:147 builtin/revert.c:122
+#: builtin/pull.c:168 builtin/rebase--interactive.c:149 builtin/revert.c:123
 msgid "allow fast-forward"
 msgstr "autoriser l'avance rapide"
 
-#: builtin/pull.c:176
+#: builtin/pull.c:177
 msgid "automatically stash/stash pop before and after rebase"
 msgstr "remiser avant et réappliquer après le rebasage automatiquement"
 
-#: builtin/pull.c:192
+#: builtin/pull.c:193
 msgid "Options related to fetching"
 msgstr "Options relatives au rapatriement"
 
-#: builtin/pull.c:202
+#: builtin/pull.c:203
 msgid "force overwrite of local branch"
 msgstr "forcer l'écrasement de la branche locale"
 
-#: builtin/pull.c:210
+#: builtin/pull.c:211
 msgid "number of submodules pulled in parallel"
 msgstr "nombre de sous-modules tirés en parallèle"
 
-#: builtin/pull.c:305
+#: builtin/pull.c:306
 #, c-format
 msgid "Invalid value for pull.ff: %s"
 msgstr "Valeur invalide pour pull.ff : %s"
 
-#: builtin/pull.c:421
+#: builtin/pull.c:422
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
@@ -14606,14 +15491,14 @@ msgstr ""
 "Il n'y a pas de candidate sur laquelle rebaser parmi les références que vous "
 "venez de récupérer."
 
-#: builtin/pull.c:423
+#: builtin/pull.c:424
 msgid ""
 "There are no candidates for merging among the refs that you just fetched."
 msgstr ""
 "Il n'y a pas de candidate avec laquelle fusionner parmi les références que "
 "vous venez de récupérer."
 
-#: builtin/pull.c:424
+#: builtin/pull.c:425
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
@@ -14621,7 +15506,7 @@ msgstr ""
 "Généralement, cela signifie que vous avez indiqué un spécificateur\n"
 "de référence joker qui n'a pas eu de correspondance sur le serveur distant."
 
-#: builtin/pull.c:427
+#: builtin/pull.c:428
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
@@ -14633,44 +15518,44 @@ msgstr ""
 "configuration\n"
 "pour la branche actuelle, vous devez spécifier la branche avec la commande."
 
-#: builtin/pull.c:432 builtin/rebase.c:761 git-parse-remote.sh:73
+#: builtin/pull.c:433 builtin/rebase.c:956 git-parse-remote.sh:73
 msgid "You are not currently on a branch."
 msgstr "Vous n'êtes actuellement sur aucune branche."
 
-#: builtin/pull.c:434 builtin/pull.c:449 git-parse-remote.sh:79
+#: builtin/pull.c:435 builtin/pull.c:450 git-parse-remote.sh:79
 msgid "Please specify which branch you want to rebase against."
 msgstr "Veuillez spécifier sur quelle branche vous souhaiter rebaser."
 
-#: builtin/pull.c:436 builtin/pull.c:451 git-parse-remote.sh:82
+#: builtin/pull.c:437 builtin/pull.c:452 git-parse-remote.sh:82
 msgid "Please specify which branch you want to merge with."
 msgstr "Veuillez spécifier une branche avec laquelle fusionner."
 
-#: builtin/pull.c:437 builtin/pull.c:452
+#: builtin/pull.c:438 builtin/pull.c:453
 msgid "See git-pull(1) for details."
 msgstr "Référez-vous à git-pull(1) pour de plus amples détails."
 
-#: builtin/pull.c:439 builtin/pull.c:445 builtin/pull.c:454
-#: builtin/rebase.c:767 git-parse-remote.sh:64
+#: builtin/pull.c:440 builtin/pull.c:446 builtin/pull.c:455
+#: builtin/rebase.c:962 git-parse-remote.sh:64
 msgid "<remote>"
 msgstr "<distant>"
 
-#: builtin/pull.c:439 builtin/pull.c:454 builtin/pull.c:459
-#: git-legacy-rebase.sh:556 git-parse-remote.sh:65
+#: builtin/pull.c:440 builtin/pull.c:455 builtin/pull.c:460
+#: git-legacy-rebase.sh:564 git-parse-remote.sh:65
 msgid "<branch>"
 msgstr "<branche>"
 
-#: builtin/pull.c:447 builtin/rebase.c:759 git-parse-remote.sh:75
+#: builtin/pull.c:448 builtin/rebase.c:954 git-parse-remote.sh:75
 msgid "There is no tracking information for the current branch."
 msgstr "Pas d'information de suivi distant pour la branche actuelle."
 
-#: builtin/pull.c:456 git-parse-remote.sh:95
+#: builtin/pull.c:457 git-parse-remote.sh:95
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:"
 msgstr ""
 "Si vous souhaitez indiquer l'information de suivi distant pour cette "
 "branche, vous pouvez le faire avec :"
 
-#: builtin/pull.c:461
+#: builtin/pull.c:462
 #, c-format
 msgid ""
 "Your configuration specifies to merge with the ref '%s'\n"
@@ -14680,34 +15565,34 @@ msgstr ""
 "'%s'\n"
 "du serveur distant, mais cette référence n'a pas été récupérée."
 
-#: builtin/pull.c:565
+#: builtin/pull.c:566
 #, c-format
 msgid "unable to access commit %s"
 msgstr "impossible d'accéder le commit %s"
 
-#: builtin/pull.c:843
+#: builtin/pull.c:844
 msgid "ignoring --verify-signatures for rebase"
 msgstr "--verify-signatures est ignoré pour un rebasage"
 
-#: builtin/pull.c:891
+#: builtin/pull.c:892
 msgid "--[no-]autostash option is only valid with --rebase."
 msgstr "l'option --[no-]autostash n'est valide qu'avec --rebase."
 
-#: builtin/pull.c:899
+#: builtin/pull.c:900
 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:902
+#: builtin/pull.c:904
 msgid "pull with rebase"
 msgstr "tirer avec un rebasage"
 
-#: builtin/pull.c:903
+#: builtin/pull.c:905
 msgid "please commit or stash them."
 msgstr "veuillez les valider ou les remiser."
 
-#: builtin/pull.c:928
+#: builtin/pull.c:930
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -14718,7 +15603,7 @@ msgstr ""
 "avance rapide de votre copie de travail\n"
 "depuis le commit %s."
 
-#: builtin/pull.c:934
+#: builtin/pull.c:936
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -14735,15 +15620,15 @@ msgstr ""
 "$ git reset --hard\n"
 "pour régénérer."
 
-#: builtin/pull.c:949
+#: builtin/pull.c:951
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Impossible de fusionner de multiples branches sur une tête vide."
 
-#: builtin/pull.c:953
+#: builtin/pull.c:955
 msgid "Cannot rebase onto multiple branches."
 msgstr "Impossible de rebaser sur de multiples branches."
 
-#: builtin/pull.c:960
+#: builtin/pull.c:962
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 "impossible de rebaser avec des modifications de sous-modules enregistrées "
@@ -14761,7 +15646,7 @@ msgstr "raccourci d'étiquette sans <étiquette>"
 msgid "--delete only accepts plain target ref names"
 msgstr "--delete accepte seulement des noms entiers de références cibles"
 
-#: builtin/push.c:165
+#: builtin/push.c:167
 msgid ""
 "\n"
 "To choose either option permanently, see push.default in 'git help config'."
@@ -14770,7 +15655,7 @@ msgstr ""
 "Pour choisir l'option de manière permanente, voir push.default dans 'git "
 "help config'."
 
-#: builtin/push.c:168
+#: builtin/push.c:170
 #, c-format
 msgid ""
 "The upstream branch of your current branch does not match\n"
@@ -14795,7 +15680,7 @@ msgstr ""
 "    git push %s HEAD\n"
 "%s"
 
-#: builtin/push.c:183
+#: builtin/push.c:185
 #, c-format
 msgid ""
 "You are not currently on a branch.\n"
@@ -14810,7 +15695,7 @@ msgstr ""
 "\n"
 "    git push %s HEAD:<nom-de-la-branche-amont>\n"
 
-#: builtin/push.c:197
+#: builtin/push.c:199
 #, c-format
 msgid ""
 "The current branch %s has no upstream branch.\n"
@@ -14824,13 +15709,13 @@ msgstr ""
 "\n"
 "    git push --set-upstream %s %s\n"
 
-#: builtin/push.c:205
+#: builtin/push.c:207
 #, c-format
 msgid "The current branch %s has multiple upstream branches, refusing to push."
 msgstr ""
 "La branche courante %s a de multiples branches amont, impossible de pousser."
 
-#: builtin/push.c:208
+#: builtin/push.c:210
 #, c-format
 msgid ""
 "You are pushing to remote '%s', which is not the upstream of\n"
@@ -14841,14 +15726,14 @@ msgstr ""
 "pas une branche amont de votre branche courante '%s', sans me dire\n"
 "quoi pousser pour mettre à jour quelle branche amont."
 
-#: builtin/push.c:267
+#: builtin/push.c:269
 msgid ""
 "You didn't specify any refspecs to push, and push.default is \"nothing\"."
 msgstr ""
 "Vous n'avez pas spécifié de spécifications de référence à pousser, et push."
 "default est \"nothing\"."
 
-#: builtin/push.c:274
+#: builtin/push.c:276
 msgid ""
 "Updates were rejected because the tip of your current branch is behind\n"
 "its remote counterpart. Integrate the remote changes (e.g.\n"
@@ -14863,7 +15748,7 @@ msgstr ""
 "Voir la 'Note à propos des avances rapides' dans 'git push --help' pour plus "
 "d'information."
 
-#: builtin/push.c:280
+#: builtin/push.c:282
 msgid ""
 "Updates were rejected because a pushed branch tip is behind its remote\n"
 "counterpart. Check out this branch and integrate the remote changes\n"
@@ -14878,7 +15763,7 @@ msgstr ""
 "Voir la 'Note à propos des avances rapides' dans 'git push --help' pour plus "
 "d'information."
 
-#: builtin/push.c:286
+#: builtin/push.c:288
 msgid ""
 "Updates were rejected because the remote contains work that you do\n"
 "not have locally. This is usually caused by another repository pushing\n"
@@ -14896,13 +15781,13 @@ msgstr ""
 "Voir la 'Note à propos des avances rapides' dans 'git push --help' pour plus "
 "d'information."
 
-#: builtin/push.c:293
+#: builtin/push.c:295
 msgid "Updates were rejected because the tag already exists in the remote."
 msgstr ""
 "Les mises à jour ont été rejetées car l'étiquette existe déjà dans la "
 "branche distante."
 
-#: builtin/push.c:296
+#: builtin/push.c:298
 msgid ""
 "You cannot update a remote ref that points at a non-commit object,\n"
 "or update a remote ref to make it point at a non-commit object,\n"
@@ -14914,22 +15799,22 @@ msgstr ""
 "pointer\n"
 "vers un objet qui n'est pas un commit, sans utiliser l'option '--force'.\n"
 
-#: builtin/push.c:357
+#: builtin/push.c:359
 #, c-format
 msgid "Pushing to %s\n"
 msgstr "Poussée vers %s\n"
 
-#: builtin/push.c:361
+#: builtin/push.c:364
 #, c-format
 msgid "failed to push some refs to '%s'"
 msgstr "impossible de pousser des références vers '%s'"
 
-#: builtin/push.c:395
+#: builtin/push.c:398
 #, c-format
 msgid "bad repository '%s'"
 msgstr "mauvais dépôt '%s'"
 
-#: builtin/push.c:396
+#: builtin/push.c:399
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -14951,105 +15836,105 @@ msgstr ""
 "\n"
 "    git push <nom>\n"
 
-#: builtin/push.c:551
+#: builtin/push.c:554
 msgid "repository"
 msgstr "dépôt"
 
-#: builtin/push.c:552 builtin/send-pack.c:164
+#: builtin/push.c:555 builtin/send-pack.c:164
 msgid "push all refs"
 msgstr "pousser toutes les références"
 
-#: builtin/push.c:553 builtin/send-pack.c:166
+#: builtin/push.c:556 builtin/send-pack.c:166
 msgid "mirror all refs"
 msgstr "refléter toutes les références"
 
-#: builtin/push.c:555
+#: builtin/push.c:558
 msgid "delete refs"
 msgstr "supprimer les références"
 
-#: builtin/push.c:556
+#: builtin/push.c:559
 msgid "push tags (can't be used with --all or --mirror)"
 msgstr ""
 "pousser les étiquettes (ne peut pas être utilisé avec --all ou --mirror)"
 
-#: builtin/push.c:559 builtin/send-pack.c:167
+#: builtin/push.c:562 builtin/send-pack.c:167
 msgid "force updates"
 msgstr "forcer les mises à jour"
 
-#: builtin/push.c:561 builtin/send-pack.c:181
+#: builtin/push.c:564 builtin/send-pack.c:181
 msgid "<refname>:<expect>"
 msgstr "<nom-de-ref>:<attendu>"
 
-#: builtin/push.c:562 builtin/send-pack.c:182
+#: builtin/push.c:565 builtin/send-pack.c:182
 msgid "require old value of ref to be at this value"
 msgstr "exiger que l'ancienne valeur de la référence soit à cette valeur"
 
-#: builtin/push.c:565
+#: builtin/push.c:568
 msgid "control recursive pushing of submodules"
 msgstr "contrôler la poussée récursive des sous-modules"
 
-#: builtin/push.c:567 builtin/send-pack.c:175
+#: builtin/push.c:570 builtin/send-pack.c:175
 msgid "use thin pack"
 msgstr "utiliser un empaquetage léger"
 
-#: builtin/push.c:568 builtin/push.c:569 builtin/send-pack.c:161
+#: builtin/push.c:571 builtin/push.c:572 builtin/send-pack.c:161
 #: builtin/send-pack.c:162
 msgid "receive pack program"
 msgstr "recevoir le programme d'empaquetage"
 
-#: builtin/push.c:570
+#: builtin/push.c:573
 msgid "set upstream for git pull/status"
 msgstr "définir la branche amont pour git pull/status"
 
-#: builtin/push.c:573
+#: builtin/push.c:576
 msgid "prune locally removed refs"
 msgstr "éliminer les références locales supprimées"
 
-#: builtin/push.c:575
+#: builtin/push.c:578
 msgid "bypass pre-push hook"
 msgstr "éviter d'utiliser le crochet pre-push"
 
-#: builtin/push.c:576
+#: builtin/push.c:579
 msgid "push missing but relevant tags"
 msgstr "pousser les étiquettes manquantes mais pertinentes"
 
-#: builtin/push.c:579 builtin/send-pack.c:169
+#: builtin/push.c:582 builtin/send-pack.c:169
 msgid "GPG sign the push"
 msgstr "signer la poussée avec GPG"
 
-#: builtin/push.c:581 builtin/send-pack.c:176
+#: builtin/push.c:584 builtin/send-pack.c:176
 msgid "request atomic transaction on remote side"
 msgstr "demande une transaction atomique sur le serveur distant"
 
-#: builtin/push.c:599
+#: builtin/push.c:602
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete est incompatible avec --all, --mirror et --tags"
 
-#: builtin/push.c:601
+#: builtin/push.c:604
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete n'a pas de sens sans aucune référence"
 
-#: builtin/push.c:604
+#: builtin/push.c:607
 msgid "--all and --tags are incompatible"
 msgstr "--all et --tags sont incompatibles"
 
-#: builtin/push.c:606
+#: builtin/push.c:609
 msgid "--all can't be combined with refspecs"
 msgstr "--all ne peut pas être combiné avec des spécifications de référence"
 
-#: builtin/push.c:610
+#: builtin/push.c:613
 msgid "--mirror and --tags are incompatible"
 msgstr "--mirror et --tags sont incompatibles"
 
-#: builtin/push.c:612
+#: builtin/push.c:615
 msgid "--mirror can't be combined with refspecs"
 msgstr "--mirror ne peut pas être combiné avec des spécifications de référence"
 
-#: builtin/push.c:615
+#: builtin/push.c:618
 msgid "--all and --mirror are incompatible"
 msgstr "--all et --mirror sont incompatibles"
 
-#: builtin/push.c:634
+#: builtin/push.c:637
 msgid "push options must not have new line characters"
 msgstr ""
 "les options de poussée ne peuvent pas contenir de caractères de nouvelle "
@@ -15090,7 +15975,7 @@ msgstr "un format d'argument unique doit être une plage symétrique"
 msgid "need two commit ranges"
 msgstr "plage entre deux commits requise"
 
-#: builtin/read-tree.c:40
+#: builtin/read-tree.c:41
 msgid ""
 "git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
 "[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
@@ -15101,71 +15986,71 @@ msgstr ""
 "sparse-checkout] [--index-output=<fichier>] (--empty | <arbre ou apparenté "
 "1> [<arbre ou apparenté 2> [<arbre ou apparenté 3>]])"
 
-#: builtin/read-tree.c:123
+#: builtin/read-tree.c:124
 msgid "write resulting index to <file>"
 msgstr "écrire l'index résultant dans <fichier>"
 
-#: builtin/read-tree.c:126
+#: builtin/read-tree.c:127
 msgid "only empty the index"
 msgstr "juste vider l'index"
 
-#: builtin/read-tree.c:128
+#: builtin/read-tree.c:129
 msgid "Merging"
 msgstr "Fusion"
 
-#: builtin/read-tree.c:130
+#: builtin/read-tree.c:131
 msgid "perform a merge in addition to a read"
 msgstr "effectuer une fusion en plus d'une lecture"
 
-#: builtin/read-tree.c:132
+#: builtin/read-tree.c:133
 msgid "3-way merge if no file level merging required"
 msgstr "fusion à 3 points si aucune fusion de niveau fichier n'est requise"
 
-#: builtin/read-tree.c:134
+#: builtin/read-tree.c:135
 msgid "3-way merge in presence of adds and removes"
 msgstr "fusion à 3 points en présence d'ajouts et suppressions"
 
-#: builtin/read-tree.c:136
+#: builtin/read-tree.c:137
 msgid "same as -m, but discard unmerged entries"
 msgstr "comme -m, mais annule les éléments non fusionnés"
 
-#: builtin/read-tree.c:137
+#: builtin/read-tree.c:138
 msgid "<subdirectory>/"
 msgstr "<sous-répertoire>/"
 
-#: builtin/read-tree.c:138
+#: builtin/read-tree.c:139
 msgid "read the tree into the index under <subdirectory>/"
 msgstr "lire l'arbre dans l'index dans <sous-répertoire>/"
 
-#: builtin/read-tree.c:141
+#: builtin/read-tree.c:142
 msgid "update working tree with merge result"
 msgstr "mettre à jour la copie de travail avec le résultat de la fusion"
 
-#: builtin/read-tree.c:143
+#: builtin/read-tree.c:144
 msgid "gitignore"
 msgstr "gitignore"
 
-#: builtin/read-tree.c:144
+#: builtin/read-tree.c:145
 msgid "allow explicitly ignored files to be overwritten"
 msgstr "autoriser explicitement les fichiers ignorés à être écrasés"
 
-#: builtin/read-tree.c:147
+#: builtin/read-tree.c:148
 msgid "don't check the working tree after merging"
 msgstr "ne pas vérifier la copie de travail après la fusion"
 
-#: builtin/read-tree.c:148
+#: builtin/read-tree.c:149
 msgid "don't update the index or the work tree"
 msgstr "ne pas mettre à jour l'index ou la copie de travail"
 
-#: builtin/read-tree.c:150
+#: builtin/read-tree.c:151
 msgid "skip applying sparse checkout filter"
 msgstr "sauter l'application du filtre d'extraction creuse"
 
-#: builtin/read-tree.c:152
+#: builtin/read-tree.c:153
 msgid "debug unpack-trees"
 msgstr "déboguer unpack-trees"
 
-#: builtin/rebase.c:29
+#: builtin/rebase.c:30
 msgid ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] [<upstream>] "
 "[<branch>]"
@@ -15173,48 +16058,52 @@ msgstr ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <nouvelle-base>] [<amont>] "
 "[<branche>]"
 
-#: builtin/rebase.c:31
+#: builtin/rebase.c:32
 msgid ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
 msgstr ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <nouvelle-base>] --root "
 "[<branche>]"
 
-#: builtin/rebase.c:33
+#: builtin/rebase.c:34
 msgid "git rebase --continue | --abort | --skip | --edit-todo"
 msgstr "git rebase --continue | --abort | --skip | --edit-todo"
 
-#: builtin/rebase.c:119
+#: builtin/rebase.c:121 builtin/rebase.c:1437
 #, c-format
 msgid "%s requires an interactive rebase"
 msgstr "%s requiert un rebasage interactif"
 
-#: builtin/rebase.c:171
+#: builtin/rebase.c:173
 #, c-format
 msgid "could not get 'onto': '%s'"
 msgstr "impossible d'accéder 'onto' : '%s'"
 
-#: builtin/rebase.c:186
+#: builtin/rebase.c:188
 #, c-format
 msgid "invalid orig-head: '%s'"
 msgstr "orig-head invalide : '%s'"
 
-#: builtin/rebase.c:214
+#: builtin/rebase.c:213
 #, c-format
 msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
 msgstr "allow_rerere_autoupdate invalide ignoré : '%s'"
 
-#: builtin/rebase.c:259
+#: builtin/rebase.c:289
 #, c-format
 msgid "Could not read '%s'"
 msgstr "Impossible de lire '%s'"
 
-#: builtin/rebase.c:277
+#: builtin/rebase.c:307
 #, c-format
 msgid "Cannot store %s"
 msgstr "Impossible de stocker %s"
 
-#: builtin/rebase.c:337
+#: builtin/rebase.c:402
+msgid "could not determine HEAD revision"
+msgstr "impossible de déterminer la révision HEAD"
+
+#: builtin/rebase.c:522
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -15228,11 +16117,26 @@ msgstr ""
 "arrêter\n"
 "et revenir à l'état antérieur à la commande, lancez \"git rebase --abort\"."
 
-#: builtin/rebase.c:561
-msgid "could not determine HEAD revision"
-msgstr "impossible de déterminer la révision HEAD"
+#: builtin/rebase.c:603
+#, c-format
+msgid ""
+"\n"
+"git encountered an error while preparing the patches to replay\n"
+"these revisions:\n"
+"\n"
+"    %s\n"
+"\n"
+"As a result, git cannot rebase them."
+msgstr ""
+"\n"
+"git a rencontré une erreur lors de la préparation des correctifs\n"
+"pour rejouer ces révisions : \n"
+"\n"
+"    %s\n"
+"\n"
+"Résultat, git ne peut pas les rebaser."
 
-#: builtin/rebase.c:753
+#: builtin/rebase.c:948
 #, c-format
 msgid ""
 "%s\n"
@@ -15249,7 +16153,7 @@ msgstr ""
 "    git rebase '<branche>'\n"
 "\n"
 
-#: builtin/rebase.c:769
+#: builtin/rebase.c:964
 #, c-format
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:\n"
@@ -15263,150 +16167,162 @@ msgstr ""
 "    git branch --set-upstream-to=%s/<branche> %s\n"
 "\n"
 
-#: builtin/rebase.c:832
+#: builtin/rebase.c:994
+msgid "exec commands cannot contain newlines"
+msgstr "les commandes exec ne peut pas contenir de retour à la ligne"
+
+#: builtin/rebase.c:998
+msgid "empty exec command"
+msgstr "commande exec vide"
+
+#: builtin/rebase.c:1040
 msgid "rebase onto given branch instead of upstream"
 msgstr "rebaser sur la branche %s au lieu de la branche amont"
 
-#: builtin/rebase.c:834
+#: builtin/rebase.c:1042
 msgid "allow pre-rebase hook to run"
 msgstr "permettre le lancement du crochet pre-rebase"
 
-#: builtin/rebase.c:836
+#: builtin/rebase.c:1044
 msgid "be quiet. implies --no-stat"
 msgstr "être silencieux. implique --no-stat"
 
-#: builtin/rebase.c:839
+#: builtin/rebase.c:1047
 msgid "display a diffstat of what changed upstream"
 msgstr "afficher un diffstat de ce qui a changé en amont"
 
-#: builtin/rebase.c:842
+#: builtin/rebase.c:1050
 msgid "do not show diffstat of what changed upstream"
 msgstr "ne pas afficher un diffstat de ce qui a changé en amont"
 
-#: builtin/rebase.c:845
+#: builtin/rebase.c:1053
 msgid "add a Signed-off-by: line to each commit"
 msgstr "ajouter une ligne Signed-off-by à chaque message de validation"
 
-#: builtin/rebase.c:847 builtin/rebase.c:851 builtin/rebase.c:853
+#: builtin/rebase.c:1055 builtin/rebase.c:1059 builtin/rebase.c:1061
 msgid "passed to 'git am'"
 msgstr "passé à 'git am'"
 
-#: builtin/rebase.c:855 builtin/rebase.c:857
+#: builtin/rebase.c:1063 builtin/rebase.c:1065
 msgid "passed to 'git apply'"
 msgstr "passé jusqu'à git-apply"
 
-#: builtin/rebase.c:859 builtin/rebase.c:862
+#: builtin/rebase.c:1067 builtin/rebase.c:1070
 msgid "cherry-pick all commits, even if unchanged"
 msgstr "picorer tous les commits, même sans modifiant"
 
-#: builtin/rebase.c:864
+#: builtin/rebase.c:1072
 msgid "continue"
 msgstr "continuer"
 
-#: builtin/rebase.c:867
+#: builtin/rebase.c:1075
 msgid "skip current patch and continue"
 msgstr "sauter le patch courant et continuer"
 
-#: builtin/rebase.c:869
+#: builtin/rebase.c:1077
 msgid "abort and check out the original branch"
 msgstr "abandonner et extraire la branche d'origine"
 
-#: builtin/rebase.c:872
+#: builtin/rebase.c:1080
 msgid "abort but keep HEAD where it is"
 msgstr "abandonne mais garde HEAD où il est"
 
-#: builtin/rebase.c:873
+#: builtin/rebase.c:1081
 msgid "edit the todo list during an interactive rebase"
 msgstr "éditer la liste à faire lors d'un rebasage interactif"
 
-#: builtin/rebase.c:876
+#: builtin/rebase.c:1084
 msgid "show the patch file being applied or merged"
 msgstr "afficher le patch en cours d'application ou de fusion"
 
-#: builtin/rebase.c:879
+#: builtin/rebase.c:1087
 msgid "use merging strategies to rebase"
 msgstr "utiliser des stratégies de fusion pour rebaser"
 
-#: builtin/rebase.c:883
+#: builtin/rebase.c:1091
 msgid "let the user edit the list of commits to rebase"
 msgstr "laisser l'utilisateur éditer la liste des commits à rebaser"
 
-#: builtin/rebase.c:887
+#: builtin/rebase.c:1095
 msgid "try to recreate merges instead of ignoring them"
 msgstr "essayer de recréer les fusions au lieu de les ignorer"
 
-#: builtin/rebase.c:891
+#: builtin/rebase.c:1099
 msgid "allow rerere to update index with resolved conflict"
 msgstr "permettre à rerere à mettre à jour l'index avec des conflits résolus"
 
-#: builtin/rebase.c:894
+#: builtin/rebase.c:1102
 msgid "preserve empty commits during rebase"
 msgstr "préserver les validations vides pendant le rebasage"
 
-#: builtin/rebase.c:896
+#: builtin/rebase.c:1104
 msgid "move commits that begin with squash!/fixup! under -i"
 msgstr "déplace les commits qui commencent par squash!/fixup! sous -i"
 
-#: builtin/rebase.c:902
+#: builtin/rebase.c:1110
 msgid "automatically stash/stash pop before and after"
 msgstr "remiser et réappliquer automatiquement avant et après"
 
-#: builtin/rebase.c:904
+#: builtin/rebase.c:1112
 msgid "add exec lines after each commit of the editable list"
 msgstr "ajouter les lignes exec après chaque commit de la liste éditable"
 
-#: builtin/rebase.c:908
+#: builtin/rebase.c:1116
 msgid "allow rebasing commits with empty messages"
 msgstr "autoriser les commits de rebasage avec des messages vides"
 
-#: builtin/rebase.c:911
+#: builtin/rebase.c:1119
 msgid "try to rebase merges instead of skipping them"
 msgstr "essayer de rebaser les fusions au lieu de les garder"
 
-#: builtin/rebase.c:914
+#: builtin/rebase.c:1122
 msgid "use 'merge-base --fork-point' to refine upstream"
 msgstr "utiliser 'merge-base --fork-point' pour raffiner l'amont"
 
-#: builtin/rebase.c:916
+#: builtin/rebase.c:1124
 msgid "use the given merge strategy"
 msgstr "utiliser la stratégie de fusion indiquée"
 
-#: builtin/rebase.c:918 builtin/revert.c:111
+#: builtin/rebase.c:1126 builtin/revert.c:112
 msgid "option"
 msgstr "option"
 
-#: builtin/rebase.c:919
+#: builtin/rebase.c:1127
 msgid "pass the argument through to the merge strategy"
 msgstr "passer les arguments jusqu'à la stratégie de fusion"
 
-#: builtin/rebase.c:922
+#: builtin/rebase.c:1130
 msgid "rebase all reachable commits up to the root(s)"
 msgstr "rebaser tous les objets inatteignables depuis les racines"
 
-#: builtin/rebase.c:938
+#: builtin/rebase.c:1133 builtin/rebase--interactive.c:198
+msgid "automatically re-schedule any `exec` that fails"
+msgstr "re-planifier automatiquement tout `exec` qui échoue"
+
+#: builtin/rebase.c:1149
 #, c-format
 msgid "could not exec %s"
 msgstr "impossible d'exécuter %s"
 
-#: builtin/rebase.c:956 git-legacy-rebase.sh:213
+#: builtin/rebase.c:1167 git-legacy-rebase.sh:220
 msgid "It looks like 'git am' is in progress. Cannot rebase."
 msgstr "Il semble que 'git-am' soit en cours. Impossible de rebaser."
 
-#: builtin/rebase.c:997 git-legacy-rebase.sh:395
+#: builtin/rebase.c:1208 git-legacy-rebase.sh:406
 msgid "No rebase in progress?"
 msgstr "Pas de rebasage en cours ?"
 
-#: builtin/rebase.c:1001 git-legacy-rebase.sh:406
+#: builtin/rebase.c:1212 git-legacy-rebase.sh:417
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
 "L'action --edit-todo peut seulement être utilisée lors d'un rebasage "
 "interactif."
 
-#: builtin/rebase.c:1015 git-legacy-rebase.sh:413
+#: builtin/rebase.c:1226 git-legacy-rebase.sh:424
 msgid "Cannot read HEAD"
 msgstr "Impossible de lire HEAD"
 
-#: builtin/rebase.c:1028 git-legacy-rebase.sh:416
+#: builtin/rebase.c:1238 git-legacy-rebase.sh:427
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -15414,21 +16330,21 @@ msgstr ""
 "Vous devez éditer tous les conflits de fusion et\n"
 "les marquer comme résolus avec git add"
 
-#: builtin/rebase.c:1047
+#: builtin/rebase.c:1257
 msgid "could not discard worktree changes"
 msgstr "Impossible de supprimer les changements de l'arbre de travail"
 
-#: builtin/rebase.c:1066
+#: builtin/rebase.c:1276
 #, c-format
 msgid "could not move back to %s"
 msgstr "Impossible de revenir à %s"
 
-#: builtin/rebase.c:1077 builtin/rm.c:368
+#: builtin/rebase.c:1287 builtin/rm.c:369
 #, c-format
 msgid "could not remove '%s'"
 msgstr "impossible de supprimer '%s'"
 
-#: builtin/rebase.c:1103
+#: builtin/rebase.c:1313
 #, c-format
 msgid ""
 "It seems that there is already a %s directory, and\n"
@@ -15450,338 +16366,328 @@ msgstr ""
 "chose\n"
 "d'important ici.\n"
 
-#: builtin/rebase.c:1124
+#: builtin/rebase.c:1334
 msgid "switch `C' expects a numerical value"
 msgstr "l'option `C' attend un valeur numérique"
 
-#: builtin/rebase.c:1161
+#: builtin/rebase.c:1375
 #, c-format
 msgid "Unknown mode: %s"
 msgstr "mode inconnu : %s"
 
-#: builtin/rebase.c:1183
+#: builtin/rebase.c:1397
 msgid "--strategy requires --merge or --interactive"
 msgstr "--stratégie requiert --merge ou --interactive"
 
-#: builtin/rebase.c:1226
-#, c-format
-msgid ""
-"error: cannot combine interactive options (--interactive, --exec, --rebase-"
-"merges, --preserve-merges, --keep-empty, --root + --onto) with am options "
-"(%s)"
+#: builtin/rebase.c:1446
+msgid "cannot combine am options with either interactive or merge options"
 msgstr ""
-"erreur: impossible de combiner des options interactive (--interactive, --"
-"exec, --rebase-merges, --preserve-merges, --keep-empty, --root + --onto) "
-"avec les options am (%s)"
+"impossible de combiner les options am avec l'options interactive ou merge"
 
-#: builtin/rebase.c:1231
-#, c-format
-msgid ""
-"error: cannot combine merge options (--merge, --strategy, --strategy-option) "
-"with am options (%s)"
-msgstr ""
-"erreur : impossible de combiner les options de fusion (--merge, --strategy, "
-"--strategy-option) avec les options am (%s)"
+#: builtin/rebase.c:1465
+msgid "cannot combine '--preserve-merges' with '--rebase-merges'"
+msgstr "impossible de combiner '--preserve-merges' avec '--rebase-merges'"
 
-#: builtin/rebase.c:1251 git-legacy-rebase.sh:536
-msgid "error: cannot combine '--preserve-merges' with '--rebase-merges'"
+#: builtin/rebase.c:1469 git-legacy-rebase.sh:544
+msgid ""
+"error: cannot combine '--preserve-merges' with '--reschedule-failed-exec'"
 msgstr ""
-"erreur : impossible de combiner '--preserve-merges' avec '--rebase-merges'"
+"erreur : impossible de combiner '--preserve-merges' avec '--reschedule-"
+"failed-exec'"
 
-#: builtin/rebase.c:1256 git-legacy-rebase.sh:542
-msgid "error: cannot combine '--rebase-merges' with '--strategy-option'"
-msgstr ""
-"erreur : impossible de combiner '--rebase-merges' avec '--strategy-option'"
+#: builtin/rebase.c:1475
+msgid "cannot combine '--rebase-merges' with '--strategy-option'"
+msgstr "impossible de combiner '--rebase-merges' avec '--strategy-option'"
 
-#: builtin/rebase.c:1259 git-legacy-rebase.sh:544
-msgid "error: cannot combine '--rebase-merges' with '--strategy'"
-msgstr "erreur : impossible de combiner '--rebase-merges' avec '--strategy'"
+#: builtin/rebase.c:1478
+msgid "cannot combine '--rebase-merges' with '--strategy'"
+msgstr "impossible de combiner '--rebase-merges' avec '--strategy'"
 
-#: builtin/rebase.c:1283
+#: builtin/rebase.c:1502
 #, c-format
 msgid "invalid upstream '%s'"
 msgstr "amont invalide '%s'"
 
-#: builtin/rebase.c:1289
+#: builtin/rebase.c:1508
 msgid "Could not create new root commit"
 msgstr "Impossible de créer un nouveau commit racine"
 
-#: builtin/rebase.c:1307
+#: builtin/rebase.c:1526
 #, c-format
 msgid "'%s': need exactly one merge base"
 msgstr "'%s': exactement une base de fusion nécessaire"
 
-#: builtin/rebase.c:1314
+#: builtin/rebase.c:1533
 #, c-format
 msgid "Does not point to a valid commit '%s'"
 msgstr "ne pointe pas sur une validation valide : '%s'"
 
-#: builtin/rebase.c:1339
+#: builtin/rebase.c:1558
 #, c-format
 msgid "fatal: no such branch/commit '%s'"
 msgstr "fatal : pas de branche ou commit '%s'"
 
-#: builtin/rebase.c:1347 builtin/submodule--helper.c:37
-#: builtin/submodule--helper.c:1930
+#: builtin/rebase.c:1566 builtin/submodule--helper.c:38
+#: builtin/submodule--helper.c:1934
 #, c-format
 msgid "No such ref: %s"
 msgstr "Référence inexistante : %s"
 
-#: builtin/rebase.c:1359
+#: builtin/rebase.c:1578
 msgid "Could not resolve HEAD to a revision"
 msgstr "Impossible de résoudre le commit HEAD vers un révision"
 
-#: builtin/rebase.c:1399 git-legacy-rebase.sh:665
+#: builtin/rebase.c:1619 git-legacy-rebase.sh:673
 msgid "Cannot autostash"
 msgstr "Autoremisage impossible"
 
-#: builtin/rebase.c:1402
+#: builtin/rebase.c:1622
 #, c-format
 msgid "Unexpected stash response: '%s'"
 msgstr "réponse de remisage inattendue : '%s'"
 
-#: builtin/rebase.c:1408
+#: builtin/rebase.c:1628
 #, c-format
 msgid "Could not create directory for '%s'"
 msgstr "Impossible de créer le répertoire pour '%s'"
 
-#: builtin/rebase.c:1411
+#: builtin/rebase.c:1631
 #, c-format
 msgid "Created autostash: %s\n"
 msgstr "Autoremisage créé : %s\n"
 
-#: builtin/rebase.c:1414
+#: builtin/rebase.c:1634
 msgid "could not reset --hard"
 msgstr "impossible de réinitialiser --hard"
 
-#: builtin/rebase.c:1415 builtin/reset.c:113
+#: builtin/rebase.c:1635 builtin/reset.c:114
 #, c-format
 msgid "HEAD is now at %s"
 msgstr "HEAD est maintenant à %s"
 
-#: builtin/rebase.c:1431 git-legacy-rebase.sh:674
+#: builtin/rebase.c:1651 git-legacy-rebase.sh:682
 msgid "Please commit or stash them."
 msgstr "Veuillez les valider ou les remiser."
 
-#: builtin/rebase.c:1458
+#: builtin/rebase.c:1678
 #, c-format
 msgid "could not parse '%s'"
 msgstr "impossible d'analyser '%s'"
 
-#: builtin/rebase.c:1470
+#: builtin/rebase.c:1691
 #, c-format
 msgid "could not switch to %s"
 msgstr "Impossible de basculer vers %s"
 
-#: builtin/rebase.c:1481 git-legacy-rebase.sh:697
+#: builtin/rebase.c:1702 git-legacy-rebase.sh:705
 #, sh-format
 msgid "HEAD is up to date."
 msgstr "HEAD est à jour."
 
-#: builtin/rebase.c:1483
+#: builtin/rebase.c:1704
 #, c-format
 msgid "Current branch %s is up to date.\n"
 msgstr "La branche courante %s est à jour.\n"
 
-#: builtin/rebase.c:1491 git-legacy-rebase.sh:707
+#: builtin/rebase.c:1712 git-legacy-rebase.sh:715
 #, sh-format
 msgid "HEAD is up to date, rebase forced."
 msgstr "HEAD est à jour, rebasage forcé."
 
-#: builtin/rebase.c:1493
+#: builtin/rebase.c:1714
 #, c-format
 msgid "Current branch %s is up to date, rebase forced.\n"
 msgstr "La branche courante %s est à jour, rebasage forcé.\n"
 
-#: builtin/rebase.c:1501 git-legacy-rebase.sh:208
+#: builtin/rebase.c:1722 git-legacy-rebase.sh:215
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Le crochet pre-rebase a refusé de rebaser."
 
-#: builtin/rebase.c:1508
+#: builtin/rebase.c:1729
 #, c-format
 msgid "Changes to %s:\n"
 msgstr "Changements vers %s :\n"
 
-#: builtin/rebase.c:1511
+#: builtin/rebase.c:1732
 #, c-format
 msgid "Changes from %s to %s:\n"
 msgstr "Changements de %s sur %s :\n"
 
-#: builtin/rebase.c:1536
+#: builtin/rebase.c:1757
 #, c-format
 msgid "First, rewinding head to replay your work on top of it...\n"
 msgstr ""
 "Rembobinage préalable de head pour pouvoir rejouer votre travail par-"
 "dessus...\n"
 
-#: builtin/rebase.c:1543
+#: builtin/rebase.c:1765
 msgid "Could not detach HEAD"
 msgstr "Impossible de détacher HEAD"
 
-#: builtin/rebase.c:1552
+#: builtin/rebase.c:1774
 #, c-format
 msgid "Fast-forwarded %s to %s.\n"
 msgstr "Avance rapide de %s sur %s.\n"
 
-#: builtin/rebase--interactive.c:24
+#: builtin/rebase--interactive.c:25
 msgid "no HEAD?"
 msgstr "pas de HEAD ?"
 
-#: builtin/rebase--interactive.c:51
+#: builtin/rebase--interactive.c:52
 #, c-format
 msgid "could not create temporary %s"
 msgstr "impossible de créer un fichier temporaire %s"
 
-#: builtin/rebase--interactive.c:57
+#: builtin/rebase--interactive.c:58
 msgid "could not mark as interactive"
 msgstr "impossible de marquer comme interactif"
 
-#: builtin/rebase--interactive.c:101
+#: builtin/rebase--interactive.c:102
 #, c-format
 msgid "could not open %s"
 msgstr "impossible d'ouvrir %s"
 
-#: builtin/rebase--interactive.c:114
+#: builtin/rebase--interactive.c:115
 msgid "could not generate todo list"
 msgstr "impossible de générer la liste à-faire"
 
-#: builtin/rebase--interactive.c:129
+#: builtin/rebase--interactive.c:131
 msgid "git rebase--interactive [<options>]"
 msgstr "git rebase--interactive [<options>]"
 
-#: builtin/rebase--interactive.c:148
+#: builtin/rebase--interactive.c:150
 msgid "keep empty commits"
 msgstr "garder les validations vides"
 
-#: builtin/rebase--interactive.c:150 builtin/revert.c:124
+#: builtin/rebase--interactive.c:152 builtin/revert.c:125
 msgid "allow commits with empty messages"
 msgstr "autoriser les validations avec des messages vides"
 
-#: builtin/rebase--interactive.c:151
+#: builtin/rebase--interactive.c:153
 msgid "rebase merge commits"
 msgstr "rebaser les commits de fusion"
 
-#: builtin/rebase--interactive.c:153
+#: builtin/rebase--interactive.c:155
 msgid "keep original branch points of cousins"
 msgstr "conserver les points de branchement de cousins originaux"
 
-#: builtin/rebase--interactive.c:155
+#: builtin/rebase--interactive.c:157
 msgid "move commits that begin with squash!/fixup!"
 msgstr "déplacer les commits qui commencent par squash!/fixup!"
 
-#: builtin/rebase--interactive.c:156
+#: builtin/rebase--interactive.c:158
 msgid "sign commits"
 msgstr "signer les commits"
 
-#: builtin/rebase--interactive.c:158
+#: builtin/rebase--interactive.c:160
 msgid "continue rebase"
 msgstr "continuer le rebasage"
 
-#: builtin/rebase--interactive.c:160
+#: builtin/rebase--interactive.c:162
 msgid "skip commit"
 msgstr "sauter le commit"
 
-#: builtin/rebase--interactive.c:161
+#: builtin/rebase--interactive.c:163
 msgid "edit the todo list"
 msgstr "éditer la liste à-faire"
 
-#: builtin/rebase--interactive.c:163
+#: builtin/rebase--interactive.c:165
 msgid "show the current patch"
 msgstr "afficher le patch courant"
 
-#: builtin/rebase--interactive.c:166
+#: builtin/rebase--interactive.c:168
 msgid "shorten commit ids in the todo list"
 msgstr "raccourcir les identifiants de commits dans la liste à-faire"
 
-#: builtin/rebase--interactive.c:168
+#: builtin/rebase--interactive.c:170
 msgid "expand commit ids in the todo list"
 msgstr "étendre les identifiants de commit dans la liste à-faire"
 
-#: builtin/rebase--interactive.c:170
+#: builtin/rebase--interactive.c:172
 msgid "check the todo list"
 msgstr "vérifier la liste à-faire"
 
-#: builtin/rebase--interactive.c:172
+#: builtin/rebase--interactive.c:174
 msgid "rearrange fixup/squash lines"
 msgstr "réarranger les lignes fixup/squash"
 
-#: builtin/rebase--interactive.c:174
+#: builtin/rebase--interactive.c:176
 msgid "insert exec commands in todo list"
 msgstr "insérer les commandes exec dans la liste à-faire"
 
-#: builtin/rebase--interactive.c:175
+#: builtin/rebase--interactive.c:177
 msgid "onto"
 msgstr "sur"
 
-#: builtin/rebase--interactive.c:177
+#: builtin/rebase--interactive.c:179
 msgid "restrict-revision"
 msgstr "restrict-revision"
 
-#: builtin/rebase--interactive.c:177
+#: builtin/rebase--interactive.c:179
 msgid "restrict revision"
 msgstr "restreindre la révision"
 
-#: builtin/rebase--interactive.c:178
+#: builtin/rebase--interactive.c:180
 msgid "squash-onto"
 msgstr "écraser-sur"
 
-#: builtin/rebase--interactive.c:179
+#: builtin/rebase--interactive.c:181
 msgid "squash onto"
 msgstr "écraser sur"
 
-#: builtin/rebase--interactive.c:181
+#: builtin/rebase--interactive.c:183
 msgid "the upstream commit"
 msgstr "le commit amont"
 
-#: builtin/rebase--interactive.c:182
+#: builtin/rebase--interactive.c:184
 msgid "head-name"
 msgstr "nom du head"
 
-#: builtin/rebase--interactive.c:182
+#: builtin/rebase--interactive.c:184
 msgid "head name"
 msgstr "nom du head"
 
-#: builtin/rebase--interactive.c:187
+#: builtin/rebase--interactive.c:189
 msgid "rebase strategy"
 msgstr "stratégie de rebasage"
 
-#: builtin/rebase--interactive.c:188
+#: builtin/rebase--interactive.c:190
 msgid "strategy-opts"
 msgstr "options de stratégie"
 
-#: builtin/rebase--interactive.c:189
+#: builtin/rebase--interactive.c:191
 msgid "strategy options"
 msgstr "options de stratégie"
 
-#: builtin/rebase--interactive.c:190
+#: builtin/rebase--interactive.c:192
 msgid "switch-to"
 msgstr "switch-to"
 
-#: builtin/rebase--interactive.c:191
+#: builtin/rebase--interactive.c:193
 msgid "the branch or commit to checkout"
 msgstr "la branche ou le commit à extraire"
 
-#: builtin/rebase--interactive.c:192
+#: builtin/rebase--interactive.c:194
 msgid "onto-name"
 msgstr "sur-le-nom"
 
-#: builtin/rebase--interactive.c:192
+#: builtin/rebase--interactive.c:194
 msgid "onto name"
 msgstr "sur le nom"
 
-#: builtin/rebase--interactive.c:193
+#: builtin/rebase--interactive.c:195
 msgid "cmd"
 msgstr "cmd"
 
-#: builtin/rebase--interactive.c:193
+#: builtin/rebase--interactive.c:195
 msgid "the command to run"
 msgstr "la commande à lancer"
 
-#: builtin/rebase--interactive.c:220
+#: builtin/rebase--interactive.c:224
 msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
 msgstr "--[no-]rebase-cousins n'a aucun effet sans --rebase-merges"
 
-#: builtin/rebase--interactive.c:226
+#: builtin/rebase--interactive.c:230
 msgid "a base commit must be provided with --upstream or --onto"
 msgstr "un commit de base doit être fourni avec --upstream ou --onto"
 
@@ -15847,11 +16753,66 @@ msgstr "quiet"
 msgid "You must specify a directory."
 msgstr "Vous devez spécifier un répertoire."
 
-#: builtin/reflog.c:563 builtin/reflog.c:568
+#: builtin/reflog.c:17
+msgid ""
+"git reflog expire [--expire=<time>] [--expire-unreachable=<time>] [--"
+"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
+"<refs>..."
+msgstr ""
+"git reflog expire [--expire=<date>] [--expire-unreachable=<date>] [--"
+"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
+"<réferences>..."
+
+#: builtin/reflog.c:22
+msgid ""
+"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
+"<refs>..."
+msgstr ""
+"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
+"<références>..."
+
+#: builtin/reflog.c:25
+msgid "git reflog exists <ref>"
+msgstr "git reflog exists <référence>"
+
+#: builtin/reflog.c:567 builtin/reflog.c:572
 #, c-format
 msgid "'%s' is not a valid timestamp"
 msgstr "'%s' n'est pas un horodatage valide"
 
+#: builtin/reflog.c:605
+#, c-format
+msgid "Marking reachable objects..."
+msgstr "Marquage des objets inaccessibles..."
+
+#: builtin/reflog.c:643
+#, c-format
+msgid "%s points nowhere!"
+msgstr "%s ne pointe nulle part !"
+
+#: builtin/reflog.c:695
+msgid "no reflog specified to delete"
+msgstr "pas de journal de références à supprimer spécifié"
+
+#: builtin/reflog.c:704
+#, c-format
+msgid "not a reflog: %s"
+msgstr "'%s' n'est pas un journal de références"
+
+#: builtin/reflog.c:709
+#, c-format
+msgid "no reflog for '%s'"
+msgstr "pas de journal de références pour '%s'"
+
+#: builtin/reflog.c:755
+#, c-format
+msgid "invalid ref format: %s"
+msgstr "format de référence invalide : %s"
+
+#: builtin/reflog.c:764
+msgid "git reflog [ show | expire | delete | exists ]"
+msgstr "git reflog [ show | expire | delete | exists ]"
+
 #: builtin/remote.c:16
 msgid "git remote [-v | --verbose]"
 msgstr "git remote [-v | --verbose]"
@@ -15909,7 +16870,7 @@ msgstr "git remote set-url --add <nom> <nouvelle-URL>"
 
 #: builtin/remote.c:28 builtin/remote.c:81
 msgid "git remote set-url --delete <name> <url>"
-msgstr "git remote set-url --delete <nom> <URL>"
+msgstr "git remote set-url --delete <nom> <url>"
 
 #: builtin/remote.c:33
 msgid "git remote add [<options>] <name> <url>"
@@ -16383,6 +17344,23 @@ msgstr ""
 "Utilisez\n"
 "--no-write-bitmap-index ou désactivez le paramètre pack.writebitmaps."
 
+#: builtin/repack.c:200
+msgid "could not start pack-objects to repack promisor objects"
+msgstr ""
+"ne pas démarrer pack-objects pour ré-empaqueter les objects de prometteur"
+
+#: builtin/repack.c:239 builtin/repack.c:411
+msgid "repack: Expecting full hex object ID lines only from pack-objects."
+msgstr ""
+"repack : attente de lignes d'Id d'objets en hexa complet seulement depuis "
+"les objects de paquet."
+
+#: builtin/repack.c:256
+msgid "could not finish pack-objects to repack promisor objects"
+msgstr ""
+"impossible de terminer pack-objects  pour ré-empaqueter les objets de "
+"prometteur"
+
 #: builtin/repack.c:294
 msgid "pack everything in a single pack"
 msgstr "empaqueter tout dans un seul paquet"
@@ -16472,7 +17450,30 @@ msgstr "impossible de supprimer les paquets dans un dépôt d'objets précieux"
 msgid "--keep-unreachable and -A are incompatible"
 msgstr "--keep-unreachable et -A sont incompatibles"
 
-#: builtin/repack.c:527
+#: builtin/repack.c:420
+msgid "Nothing new to pack."
+msgstr "Rien de neuf à empaqueter."
+
+#: builtin/repack.c:481
+#, c-format
+msgid ""
+"WARNING: Some packs in use have been renamed by\n"
+"WARNING: prefixing old- to their name, in order to\n"
+"WARNING: replace them with the new version of the\n"
+"WARNING: file.  But the operation failed, and the\n"
+"WARNING: attempt to rename them back to their\n"
+"WARNING: original names also failed.\n"
+"WARNING: Please rename them in %s manually:\n"
+msgstr ""
+"ALERTE : certains paquets utilisés ont été renommés\n"
+"ALERTE : en les préfixant par old-, de manière à\n"
+"ALERTE : les remplacer par une nouvelle version de\n"
+"ALERTE : fichier. Mais l'opération a échoué et la\n"
+"ALERTE : tentative de renommage en sens inverse a\n"
+"ALERTE : aussi échoué.\n"
+"ALERTE : Veuillez les renommer manuellement dans %s :\n"
+
+#: builtin/repack.c:529
 #, c-format
 msgid "failed to remove '%s'"
 msgstr "échec de la suppression de '%s'"
@@ -16738,128 +17739,128 @@ msgstr "enregistrer des résolutions propres dans l'index"
 msgid "'git rerere forget' without paths is deprecated"
 msgstr "'git rerere forget' sans chemin est obsolète"
 
-#: builtin/rerere.c:111
+#: builtin/rerere.c:113
 #, c-format
 msgid "unable to generate diff for '%s'"
 msgstr "échec de la génération de diff pour '%s'"
 
-#: builtin/reset.c:31
+#: builtin/reset.c:32
 msgid ""
 "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 msgstr ""
 "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 
-#: builtin/reset.c:32
+#: builtin/reset.c:33
 msgid "git reset [-q] [<tree-ish>] [--] <paths>..."
 msgstr "git reset [-q] [<arbre ou apparenté>] [--] <chemins>..."
 
-#: builtin/reset.c:33
+#: builtin/reset.c:34
 msgid "git reset --patch [<tree-ish>] [--] [<paths>...]"
 msgstr "git reset --patch [<arbre ou apparenté>] [--] [<chemins>...]"
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "mixed"
 msgstr "mixed"
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "soft"
 msgstr "soft"
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "hard"
 msgstr "hard"
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "merge"
 msgstr "merge"
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "keep"
 msgstr "keep"
 
-#: builtin/reset.c:80
+#: builtin/reset.c:81
 msgid "You do not have a valid HEAD."
 msgstr "Vous n'avez pas une HEAD valide."
 
-#: builtin/reset.c:82
+#: builtin/reset.c:83
 msgid "Failed to find tree of HEAD."
 msgstr "Impossible de trouver l'arbre pour HEAD."
 
-#: builtin/reset.c:88
+#: builtin/reset.c:89
 #, c-format
 msgid "Failed to find tree of %s."
 msgstr "Impossible de trouver l'arbre pour %s."
 
-#: builtin/reset.c:192
+#: builtin/reset.c:193
 #, 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:292
+#: builtin/reset.c:293
 msgid "be quiet, only report errors"
 msgstr "être silencieux, afficher seulement les erreurs"
 
-#: builtin/reset.c:294
+#: builtin/reset.c:295
 msgid "reset HEAD and index"
 msgstr "réinitialiser HEAD et l'index"
 
-#: builtin/reset.c:295
+#: builtin/reset.c:296
 msgid "reset only HEAD"
 msgstr "réinitialiser seulement HEAD"
 
-#: builtin/reset.c:297 builtin/reset.c:299
+#: builtin/reset.c:298 builtin/reset.c:300
 msgid "reset HEAD, index and working tree"
 msgstr "réinitialiser HEAD, l'index et la copie de travail"
 
-#: builtin/reset.c:301
+#: builtin/reset.c:302
 msgid "reset HEAD but keep local changes"
 msgstr "réinitialiser HEAD mais garder les changements locaux"
 
-#: builtin/reset.c:307
+#: builtin/reset.c:308
 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:325
+#: builtin/reset.c:326
 #, 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:333
+#: builtin/reset.c:334
 #, 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:342
+#: builtin/reset.c:343
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr "--patch est incompatible avec --{hard,mixed,soft}"
 
-#: builtin/reset.c:351
+#: builtin/reset.c:352
 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:353
+#: builtin/reset.c:354
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "Impossible de faire un \"%s reset\" avec des chemins."
 
-#: builtin/reset.c:363
+#: builtin/reset.c:364
 #, 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:367
+#: builtin/reset.c:368
 msgid "-N can only be used with --mixed"
 msgstr "-N ne peut être utilisé qu'avec --mixed"
 
-#: builtin/reset.c:387
+#: builtin/reset.c:388
 msgid "Unstaged changes after reset:"
 msgstr "Modifications non indexées après reset :"
 
-#: builtin/reset.c:390
+#: builtin/reset.c:391
 #, c-format
 msgid ""
 "\n"
@@ -16868,59 +17869,59 @@ msgid ""
 "to make this the default.\n"
 msgstr ""
 "\n"
-"Les modifications non-indexées on pris %.2f secondes à énumerer après "
+"Les modifications non-indexées ont pris %.2f secondes à énumérer après "
 "reset.\n"
 "Vous pouvez utiliser '--quiet' pour éviter ce message. Réglez le paramètre "
 "de\n"
 "config reset.quiet à true pour avoir ce comportement en permanence.\n"
 
-#: builtin/reset.c:400
+#: builtin/reset.c:401
 #, 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:404
+#: builtin/reset.c:405
 msgid "Could not write new index file."
 msgstr "Impossible d'écrire le nouveau fichier d'index."
 
-#: builtin/rev-list.c:403
+#: builtin/rev-list.c:406
 msgid "cannot combine --exclude-promisor-objects and --missing"
 msgstr "impossible de combiner --exclude-promisor-objects et --missing"
 
-#: builtin/rev-list.c:461
+#: builtin/rev-list.c:464
 msgid "object filtering requires --objects"
 msgstr "le filtrage d'objet exige --objects"
 
-#: builtin/rev-list.c:464
+#: builtin/rev-list.c:467
 #, c-format
 msgid "invalid sparse value '%s'"
 msgstr "valeur invalide de 'sparse' '%s'"
 
-#: builtin/rev-list.c:505
+#: builtin/rev-list.c:508
 msgid "rev-list does not support display of notes"
 msgstr "rev-list ne supporte l'affichage des notes"
 
-#: builtin/rev-list.c:508
+#: builtin/rev-list.c:511
 msgid "cannot combine --use-bitmap-index with object filtering"
 msgstr "impossible de combiner --use-bitmap-index avec le filtrage d'objet"
 
-#: builtin/rev-parse.c:407
+#: builtin/rev-parse.c:408
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
 msgstr "git rev-parse --parseopt [<options>] -- [<arguments>...]"
 
-#: builtin/rev-parse.c:412
+#: builtin/rev-parse.c:413
 msgid "keep the `--` passed as an arg"
 msgstr "garder le `--` passé en argument"
 
-#: builtin/rev-parse.c:414
+#: builtin/rev-parse.c:415
 msgid "stop parsing after the first non-option argument"
 msgstr "arrêt de l'analyse après le premier argument qui n'est pas une option"
 
-#: builtin/rev-parse.c:417
+#: builtin/rev-parse.c:418
 msgid "output in stuck long form"
 msgstr "sortie en forme longue fixée"
 
-#: builtin/rev-parse.c:550
+#: builtin/rev-parse.c:551
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -16951,72 +17952,77 @@ msgstr "git cherry-pick [<options>] <commit ou apparenté>..."
 msgid "git cherry-pick <subcommand>"
 msgstr "git cherry-pick <sous-commande>"
 
-#: builtin/revert.c:91
+#: builtin/revert.c:72
+#, c-format
+msgid "option `%s' expects a number greater than zero"
+msgstr "l'option '%s' attend un nombre supérieur à zéro"
+
+#: builtin/revert.c:92
 #, c-format
 msgid "%s: %s cannot be used with %s"
 msgstr "%s : %s ne peut pas être utilisé avec %s"
 
-#: builtin/revert.c:100
+#: builtin/revert.c:101
 msgid "end revert or cherry-pick sequence"
 msgstr "mettre fin au retour ou picorage"
 
-#: builtin/revert.c:101
+#: builtin/revert.c:102
 msgid "resume revert or cherry-pick sequence"
 msgstr "reprendre le retour ou picorage"
 
-#: builtin/revert.c:102
+#: builtin/revert.c:103
 msgid "cancel revert or cherry-pick sequence"
 msgstr "annuler le retour ou picorage"
 
-#: builtin/revert.c:103
+#: builtin/revert.c:104
 msgid "don't automatically commit"
 msgstr "ne pas valider automatiquement"
 
-#: builtin/revert.c:104
+#: builtin/revert.c:105
 msgid "edit the commit message"
 msgstr "éditer le message de validation"
 
-#: builtin/revert.c:107
+#: builtin/revert.c:108
 msgid "parent-number"
 msgstr "numéro-de-parent"
 
-#: builtin/revert.c:108
+#: builtin/revert.c:109
 msgid "select mainline parent"
 msgstr "sélectionner le parent principal"
 
-#: builtin/revert.c:110
+#: builtin/revert.c:111
 msgid "merge strategy"
 msgstr "stratégie de fusion"
 
-#: builtin/revert.c:112
+#: builtin/revert.c:113
 msgid "option for merge strategy"
 msgstr "option pour la stratégie de fusion"
 
-#: builtin/revert.c:121
+#: builtin/revert.c:122
 msgid "append commit name"
 msgstr "ajouter le nom de validation"
 
-#: builtin/revert.c:123
+#: builtin/revert.c:124
 msgid "preserve initially empty commits"
 msgstr "préserver les validations vides initialement"
 
-#: builtin/revert.c:125
+#: builtin/revert.c:126
 msgid "keep redundant, empty commits"
 msgstr "garder les validations redondantes, vides"
 
-#: builtin/revert.c:219
+#: builtin/revert.c:220
 msgid "revert failed"
 msgstr "revert a échoué"
 
-#: builtin/revert.c:232
+#: builtin/revert.c:233
 msgid "cherry-pick failed"
 msgstr "le picorage a échoué"
 
-#: builtin/rm.c:18
+#: builtin/rm.c:19
 msgid "git rm [<options>] [--] <file>..."
 msgstr "git rm [<options>] [--] <fichier>..."
 
-#: builtin/rm.c:206
+#: builtin/rm.c:207
 msgid ""
 "the following file has staged content different from both the\n"
 "file and the HEAD:"
@@ -17030,7 +18036,7 @@ msgstr[1] ""
 "les fichiers suivants ont du contenu indexé différent\n"
 "du fichier et de HEAD :"
 
-#: builtin/rm.c:211
+#: builtin/rm.c:212
 msgid ""
 "\n"
 "(use -f to force removal)"
@@ -17038,13 +18044,13 @@ msgstr ""
 "\n"
 "(utilisez -f pour forcer la suppression)"
 
-#: builtin/rm.c:215
+#: builtin/rm.c:216
 msgid "the following file has changes staged in the index:"
 msgid_plural "the following files have changes staged in the index:"
 msgstr[0] "le fichier suivant a des changements indexés :"
 msgstr[1] "les fichiers suivants ont des changements indexés :"
 
-#: builtin/rm.c:219 builtin/rm.c:228
+#: builtin/rm.c:220 builtin/rm.c:229
 msgid ""
 "\n"
 "(use --cached to keep the file, or -f to force removal)"
@@ -17052,44 +18058,44 @@ msgstr ""
 "\n"
 "(utilisez --cached pour garder le fichier, ou -f pour forcer la suppression)"
 
-#: builtin/rm.c:225
+#: builtin/rm.c:226
 msgid "the following file has local modifications:"
 msgid_plural "the following files have local modifications:"
 msgstr[0] "le fichier suivant a des modifications locales :"
 msgstr[1] "les fichiers suivants ont des modifications locales :"
 
-#: builtin/rm.c:241
+#: builtin/rm.c:242
 msgid "do not list removed files"
 msgstr "ne pas afficher les fichiers supprimés"
 
-#: builtin/rm.c:242
+#: builtin/rm.c:243
 msgid "only remove from the index"
 msgstr "supprimer seulement de l'index"
 
-#: builtin/rm.c:243
+#: builtin/rm.c:244
 msgid "override the up-to-date check"
 msgstr "outrepasser la vérification des fichiers à jour"
 
-#: builtin/rm.c:244
+#: builtin/rm.c:245
 msgid "allow recursive removal"
 msgstr "autoriser la suppression récursive"
 
-#: builtin/rm.c:246
+#: builtin/rm.c:247
 msgid "exit with a zero status even if nothing matched"
 msgstr "sortir avec un état zéro même si rien ne correspondait"
 
-#: builtin/rm.c:288
+#: builtin/rm.c:289
 msgid "please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 "veuillez indexer vos modifications de .gitmodules ou les remiser pour "
 "continuer"
 
-#: builtin/rm.c:306
+#: builtin/rm.c:307
 #, c-format
 msgid "not removing '%s' recursively without -r"
 msgstr "pas de suppression récursive de '%s' sans -r"
 
-#: builtin/rm.c:345
+#: builtin/rm.c:346
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr "git rm : impossible de supprimer %s"
@@ -17169,7 +18175,7 @@ msgstr "<w>[,<i1>[,<i2>]]"
 msgid "Linewrap output"
 msgstr "Couper les lignes"
 
-#: builtin/shortlog.c:299
+#: builtin/shortlog.c:301
 msgid "too many arguments given outside repository"
 msgstr "trop d'arguments fournis hors d'un dépôt"
 
@@ -17368,50 +18374,50 @@ msgstr "git stripspace [-s | --strip-comments]"
 msgid "git stripspace [-c | --comment-lines]"
 msgstr "git stripspace [-c | --comment-lines]"
 
-#: builtin/stripspace.c:36
+#: builtin/stripspace.c:37
 msgid "skip and remove all lines starting with comment character"
 msgstr ""
 "sauter et supprimer toutes les lignes commençant par le caractère de "
 "commentaire"
 
-#: builtin/stripspace.c:39
+#: builtin/stripspace.c:40
 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:44 builtin/submodule--helper.c:1939
+#: builtin/submodule--helper.c:45 builtin/submodule--helper.c:1943
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr "Nom de référence complet attendu, %s obtenu"
 
-#: builtin/submodule--helper.c:61
+#: builtin/submodule--helper.c:62
 msgid "submodule--helper print-default-remote takes no arguments"
 msgstr "submodule--helper  print-default-remote n'accepte aucun argument"
 
-#: builtin/submodule--helper.c:99
+#: builtin/submodule--helper.c:100
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr "impossible de supprimer un composant de l'URL '%s'"
 
-#: builtin/submodule--helper.c:407 builtin/submodule--helper.c:1363
+#: builtin/submodule--helper.c:408 builtin/submodule--helper.c:1367
 msgid "alternative anchor for relative paths"
 msgstr "ancre alternative pour les chemins relatifs"
 
-#: builtin/submodule--helper.c:412
+#: builtin/submodule--helper.c:413
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper list [--prefix=<chemin>] [<chemin>...]"
 
-#: builtin/submodule--helper.c:469 builtin/submodule--helper.c:626
-#: builtin/submodule--helper.c:649
+#: builtin/submodule--helper.c:470 builtin/submodule--helper.c:627
+#: builtin/submodule--helper.c:650
 #, 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:521
+#: builtin/submodule--helper.c:522
 #, c-format
 msgid "Entering '%s'\n"
 msgstr "Entrée dans '%s'\n"
 
-#: builtin/submodule--helper.c:524
+#: builtin/submodule--helper.c:525
 #, c-format
 msgid ""
 "run_command returned non-zero status for %s\n"
@@ -17420,7 +18426,7 @@ msgstr ""
 "run_command a retourné un statut non-nul pour %s\n"
 "."
 
-#: builtin/submodule--helper.c:545
+#: builtin/submodule--helper.c:546
 #, c-format
 msgid ""
 "run_command returned non-zero status while recursing in the nested "
@@ -17431,20 +18437,20 @@ msgstr ""
 "modules inclus de %s\n"
 "."
 
-#: builtin/submodule--helper.c:561
+#: builtin/submodule--helper.c:562
 msgid "Suppress output of entering each submodule command"
 msgstr ""
 "Supprimer la sortie lors de l'entrée dans chaque commande de sous-module"
 
-#: builtin/submodule--helper.c:563 builtin/submodule--helper.c:1048
+#: builtin/submodule--helper.c:564 builtin/submodule--helper.c:1049
 msgid "Recurse into nested submodules"
 msgstr "Parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:568
+#: builtin/submodule--helper.c:569
 msgid "git submodule--helper foreach [--quiet] [--recursive] <command>"
 msgstr "git submodule--helper foreach [--quiet] [--recursive] <chemin>"
 
-#: builtin/submodule--helper.c:595
+#: builtin/submodule--helper.c:596
 #, c-format
 msgid ""
 "could not look up configuration '%s'. Assuming this repository is its own "
@@ -17453,60 +18459,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:663
+#: builtin/submodule--helper.c:664
 #, 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:667
+#: builtin/submodule--helper.c:668
 #, 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:677
+#: builtin/submodule--helper.c:678
 #, 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:684
+#: builtin/submodule--helper.c:685
 #, 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:706
+#: builtin/submodule--helper.c:707
 msgid "Suppress output for initializing a submodule"
 msgstr "Supprimer la sortie lors de l'initialisation d'un sous-module"
 
-#: builtin/submodule--helper.c:711
+#: builtin/submodule--helper.c:712
 msgid "git submodule--helper init [<path>]"
 msgstr "git submodule--helper init [<chemin>]"
 
-#: builtin/submodule--helper.c:783 builtin/submodule--helper.c:909
+#: builtin/submodule--helper.c:784 builtin/submodule--helper.c:910
 #, c-format
 msgid "no submodule mapping found in .gitmodules for path '%s'"
 msgstr ""
 "Pas de mise en correspondance du sous-module trouvé dans .gitmodules pour le "
 "chemin '%s'"
 
-#: builtin/submodule--helper.c:822
+#: builtin/submodule--helper.c:823
 #, c-format
 msgid "could not resolve HEAD ref inside the submodule '%s'"
 msgstr "impossible de résoudre HEAD dans le sous-module '%s'"
 
-#: builtin/submodule--helper.c:849 builtin/submodule--helper.c:1018
+#: builtin/submodule--helper.c:850 builtin/submodule--helper.c:1019
 #, c-format
 msgid "failed to recurse into submodule '%s'"
 msgstr "récursion impossible dans le sous-module '%s'"
 
-#: builtin/submodule--helper.c:873 builtin/submodule--helper.c:1182
+#: builtin/submodule--helper.c:874 builtin/submodule--helper.c:1185
 msgid "Suppress submodule status output"
 msgstr "supprimer la sortie d'état du sous-module"
 
-#: builtin/submodule--helper.c:874
+#: builtin/submodule--helper.c:875
 msgid ""
 "Use commit stored in the index instead of the one stored in the submodule "
 "HEAD"
@@ -17514,48 +18520,48 @@ msgstr ""
 "Utiliser le commit stocké dans l'index au lieu de celui stocké dans la HEAD "
 "du sous-module"
 
-#: builtin/submodule--helper.c:875
+#: builtin/submodule--helper.c:876
 msgid "recurse into nested submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:880
+#: builtin/submodule--helper.c:881
 msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
 msgstr "git submodule status [--quiet] [--cached] [--recursive] [<chemin>...]"
 
-#: builtin/submodule--helper.c:904
+#: builtin/submodule--helper.c:905
 msgid "git submodule--helper name <path>"
 msgstr "git submodule--helper <nom> <chemin>"
 
-#: builtin/submodule--helper.c:968
+#: builtin/submodule--helper.c:969
 #, c-format
 msgid "Synchronizing submodule url for '%s'\n"
 msgstr "Synchronisation de l'URL sous-module pour '%s'\n"
 
-#: builtin/submodule--helper.c:974
+#: builtin/submodule--helper.c:975
 #, 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:988
+#: builtin/submodule--helper.c:989
 #, 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:999
+#: builtin/submodule--helper.c:1000
 #, 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:1046
+#: builtin/submodule--helper.c:1047
 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:1053
+#: builtin/submodule--helper.c:1054
 msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
 msgstr "git submodule--helper sync [--quiet] [--recursive] [<chemin>]"
 
-#: builtin/submodule--helper.c:1107
+#: builtin/submodule--helper.c:1108
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains a .git directory (use 'rm -rf' if you "
@@ -17565,7 +18571,7 @@ msgstr ""
 "'rm -rf' si vous voulez vraiment le supprimer en incluant tout son "
 "historique)"
 
-#: builtin/submodule--helper.c:1119
+#: builtin/submodule--helper.c:1120
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains local modifications; use '-f' to discard "
@@ -17574,84 +18580,84 @@ msgstr ""
 "L'arbre de travail du sous-module '%s' contient des modifications locales ; "
 "utilisez '-f' pour les annuler"
 
-#: builtin/submodule--helper.c:1127
+#: builtin/submodule--helper.c:1128
 #, c-format
 msgid "Cleared directory '%s'\n"
 msgstr "Répertoire '%s' nettoyé\n"
 
-#: builtin/submodule--helper.c:1129
+#: builtin/submodule--helper.c:1130
 #, 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:1138
+#: builtin/submodule--helper.c:1141
 #, 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:1154
+#: builtin/submodule--helper.c:1157
 #, 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:1183
+#: builtin/submodule--helper.c:1186
 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:1184
+#: builtin/submodule--helper.c:1187
 msgid "Unregister all submodules"
 msgstr "Désenregistrer tous les sous-modules"
 
-#: builtin/submodule--helper.c:1189
+#: builtin/submodule--helper.c:1192
 msgid ""
 "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
 msgstr ""
 "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<chemin>...]]"
 
-#: builtin/submodule--helper.c:1203
+#: builtin/submodule--helper.c:1206
 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:1297 builtin/submodule--helper.c:1300
+#: builtin/submodule--helper.c:1301 builtin/submodule--helper.c:1304
 #, 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:1336
+#: builtin/submodule--helper.c:1340
 #, 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:1343
+#: builtin/submodule--helper.c:1347
 #, 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:1366
+#: builtin/submodule--helper.c:1370
 msgid "where the new submodule will be cloned to"
 msgstr "emplacement où le sous-module sera cloné"
 
-#: builtin/submodule--helper.c:1369
+#: builtin/submodule--helper.c:1373
 msgid "name of the new submodule"
 msgstr "nom du nouveau sous-module"
 
-#: builtin/submodule--helper.c:1372
+#: builtin/submodule--helper.c:1376
 msgid "url where to clone the submodule from"
 msgstr "URL depuis laquelle cloner le sous-module"
 
-#: builtin/submodule--helper.c:1380
+#: builtin/submodule--helper.c:1384
 msgid "depth for shallow clones"
 msgstr "profondeur de l'historique des clones superficiels"
 
-#: builtin/submodule--helper.c:1383 builtin/submodule--helper.c:1868
+#: builtin/submodule--helper.c:1387 builtin/submodule--helper.c:1872
 msgid "force cloning progress"
 msgstr "forcer l'affichage de la progression du clonage"
 
-#: builtin/submodule--helper.c:1388
+#: builtin/submodule--helper.c:1392
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
 "<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
@@ -17659,94 +18665,94 @@ msgstr ""
 "git submodule--helper clone [--prefix=<chemin>] [--quiet] [--reference "
 "<dépôt>] [--name <nom>] [--depth <profondeur>]  --url <url> --path <chemin>"
 
-#: builtin/submodule--helper.c:1419
+#: builtin/submodule--helper.c:1423
 #, 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:1433
+#: builtin/submodule--helper.c:1437
 #, 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:1469
+#: builtin/submodule--helper.c:1473
 #, c-format
 msgid "Invalid update mode '%s' for submodule path '%s'"
 msgstr "mode de mise à jour '%s' invalide pour le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:1473
+#: builtin/submodule--helper.c:1477
 #, c-format
 msgid "Invalid update mode '%s' configured for submodule path '%s'"
 msgstr ""
 "Mode de mise à jour '%s'invalide configuré pour le chemin de sous-module '%s'"
 
-#: builtin/submodule--helper.c:1566
+#: builtin/submodule--helper.c:1570
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr "Le chemin de sous-module '%s' n'est pas initialisé"
 
-#: builtin/submodule--helper.c:1570
+#: builtin/submodule--helper.c:1574
 msgid "Maybe you want to use 'update --init'?"
 msgstr "Vous voudriez sûrement utiliser 'update --init' ?"
 
-#: builtin/submodule--helper.c:1600
+#: builtin/submodule--helper.c:1604
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr "Sous-module non fusionné %s non traité"
 
-#: builtin/submodule--helper.c:1629
+#: builtin/submodule--helper.c:1633
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr "Sous-module '%s' non traité"
 
-#: builtin/submodule--helper.c:1773
+#: builtin/submodule--helper.c:1777
 #, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
 msgstr "Impossible de cloner '%s'. Réessai prévu"
 
-#: builtin/submodule--helper.c:1784
+#: builtin/submodule--helper.c:1788
 #, 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:1847 builtin/submodule--helper.c:2089
+#: builtin/submodule--helper.c:1851 builtin/submodule--helper.c:2093
 msgid "path into the working tree"
 msgstr "chemin dans la copie de travail"
 
-#: builtin/submodule--helper.c:1850
+#: builtin/submodule--helper.c:1854
 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:1854
+#: builtin/submodule--helper.c:1858
 msgid "rebase, merge, checkout or none"
 msgstr "valeurs possibles : rebase, merge, checkout ou none"
 
-#: builtin/submodule--helper.c:1860
+#: builtin/submodule--helper.c:1864
 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:1863
+#: builtin/submodule--helper.c:1867
 msgid "parallel jobs"
 msgstr "jobs parallèles"
 
-#: builtin/submodule--helper.c:1865
+#: builtin/submodule--helper.c:1869
 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:1866
+#: builtin/submodule--helper.c:1870
 msgid "don't print cloning progress"
 msgstr "ne pas afficher la progression du clonage"
 
-#: builtin/submodule--helper.c:1873
+#: builtin/submodule--helper.c:1877
 msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper update_clone [--prefix=<chemin>] [<chemin>...]"
 
-#: builtin/submodule--helper.c:1886
+#: builtin/submodule--helper.c:1890
 msgid "bad value for update parameter"
 msgstr "valeur invalide pour la mise à jour du paramètre"
 
-#: builtin/submodule--helper.c:1934
+#: builtin/submodule--helper.c:1938
 #, c-format
 msgid ""
 "Submodule (%s) branch configured to inherit branch from superproject, but "
@@ -17755,43 +18761,43 @@ 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:2057
+#: builtin/submodule--helper.c:2061
 #, c-format
 msgid "could not get a repository handle for submodule '%s'"
 msgstr "impossible de trouver une poignée de dépôt pour le sous-module '%s'"
 
-#: builtin/submodule--helper.c:2090
+#: builtin/submodule--helper.c:2094
 msgid "recurse into submodules"
 msgstr "parcourir récursivement les sous-modules"
 
-#: builtin/submodule--helper.c:2096
+#: builtin/submodule--helper.c:2100
 msgid "git submodule--helper embed-git-dir [<path>...]"
 msgstr "git submodule--helper embed-git-dir [<chemin>...]"
 
-#: builtin/submodule--helper.c:2152
+#: builtin/submodule--helper.c:2156
 msgid "check if it is safe to write to the .gitmodules file"
 msgstr "vérifier si écrire dans le fichier .gitmodules est sur"
 
-#: builtin/submodule--helper.c:2157
+#: builtin/submodule--helper.c:2161
 msgid "git submodule--helper config name [value]"
 msgstr "git submodule--helper config name [valeur]"
 
-#: builtin/submodule--helper.c:2158
+#: builtin/submodule--helper.c:2162
 msgid "git submodule--helper config --check-writeable"
 msgstr "git submodule--helper config --check-writeable"
 
-#: builtin/submodule--helper.c:2175 git-submodule.sh:169
+#: builtin/submodule--helper.c:2179 git-submodule.sh:169
 #, sh-format
 msgid "please make sure that the .gitmodules file is in the working tree"
 msgstr ""
-"veuillez vous assurer que le fichier .gitmodules dans l'arbre de travail"
+"veuillez vous assurer que le fichier .gitmodules est dans l'arbre de travail"
 
-#: builtin/submodule--helper.c:2225
+#: builtin/submodule--helper.c:2229 git.c:413 git.c:658
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr "%s ne gère pas --super-prefix"
 
-#: builtin/submodule--helper.c:2231
+#: builtin/submodule--helper.c:2235
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr "'%s' n'est pas une sous-commande valide de submodule--helper"
@@ -18038,210 +19044,210 @@ msgstr "Étiquette '%s' mise à jour (elle était sur %s)\n"
 msgid "Unpacking objects"
 msgstr "Dépaquetage des objets"
 
-#: builtin/update-index.c:82
+#: builtin/update-index.c:83
 #, c-format
 msgid "failed to create directory %s"
 msgstr "échec de la création du répertoire %s"
 
-#: builtin/update-index.c:98
+#: builtin/update-index.c:99
 #, c-format
 msgid "failed to create file %s"
 msgstr "échec de la création du fichier %s"
 
-#: builtin/update-index.c:106
+#: builtin/update-index.c:107
 #, c-format
 msgid "failed to delete file %s"
 msgstr "échec de la suppression du fichier %s"
 
-#: builtin/update-index.c:113 builtin/update-index.c:219
+#: builtin/update-index.c:114 builtin/update-index.c:220
 #, c-format
 msgid "failed to delete directory %s"
 msgstr "échec de la suppression du répertoire %s"
 
-#: builtin/update-index.c:138
+#: builtin/update-index.c:139
 #, c-format
 msgid "Testing mtime in '%s' "
 msgstr "Test du mtime dans '%s' "
 
-#: builtin/update-index.c:152
+#: builtin/update-index.c:153
 msgid "directory stat info does not change after adding a new file"
 msgstr ""
 "l'information de stat du répertoire ne change pas après ajout d'un fichier"
 
-#: builtin/update-index.c:165
+#: builtin/update-index.c:166
 msgid "directory stat info does not change after adding a new directory"
 msgstr ""
 "l'information de stat du répertoire ne change pas après ajout d'un répertoire"
 
-#: builtin/update-index.c:178
+#: builtin/update-index.c:179
 msgid "directory stat info changes after updating a file"
 msgstr ""
 "l'information de stat du répertoire change après mise à jour d'un fichier"
 
-#: builtin/update-index.c:189
+#: builtin/update-index.c:190
 msgid "directory stat info changes after adding a file inside subdirectory"
 msgstr ""
 "l'information de stat du répertoire change après l'ajout d'un fichier dans "
 "un sous-répertoire"
 
-#: builtin/update-index.c:200
+#: builtin/update-index.c:201
 msgid "directory stat info does not change after deleting a file"
 msgstr ""
 "l'information de stat du répertoire ne change pas après la suppression d'un "
 "fichier<"
 
-#: builtin/update-index.c:213
+#: builtin/update-index.c:214
 msgid "directory stat info does not change after deleting a directory"
 msgstr ""
 "l'information de stat du répertoire ne change pas après la suppression d'un "
 "répertoire"
 
-#: builtin/update-index.c:220
+#: builtin/update-index.c:221
 msgid " OK"
 msgstr " OK"
 
-#: builtin/update-index.c:588
+#: builtin/update-index.c:589
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr "git update-index [<options>] [--] [<fichier>...]"
 
-#: builtin/update-index.c:961
+#: builtin/update-index.c:962
 msgid "continue refresh even when index needs update"
 msgstr "continuer de rafraîchir même si l'index a besoin d'une mise à jour"
 
-#: builtin/update-index.c:964
+#: builtin/update-index.c:965
 msgid "refresh: ignore submodules"
 msgstr "rafraîchir : ignorer les sous-modules"
 
-#: builtin/update-index.c:967
+#: builtin/update-index.c:968
 msgid "do not ignore new files"
 msgstr "ne pas ignorer les nouveaux fichiers"
 
-#: builtin/update-index.c:969
+#: builtin/update-index.c:970
 msgid "let files replace directories and vice-versa"
 msgstr "laisser les fichiers remplacer des répertoires et vice-versa"
 
-#: builtin/update-index.c:971
+#: builtin/update-index.c:972
 msgid "notice files missing from worktree"
 msgstr "aviser des fichiers manquants dans la copie de travail"
 
-#: builtin/update-index.c:973
+#: builtin/update-index.c:974
 msgid "refresh even if index contains unmerged entries"
 msgstr "rafraîchir même si l'index contient des éléments non fusionnés"
 
-#: builtin/update-index.c:976
+#: builtin/update-index.c:977
 msgid "refresh stat information"
 msgstr "rafraîchir l'information de stat"
 
-#: builtin/update-index.c:980
+#: builtin/update-index.c:981
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "comme --refresh, mais en ignorant l'option assume-unchanged"
 
-#: builtin/update-index.c:984
+#: builtin/update-index.c:985
 msgid "<mode>,<object>,<path>"
 msgstr "<mode>, <objet>, <chemin>"
 
-#: builtin/update-index.c:985
+#: builtin/update-index.c:986
 msgid "add the specified entry to the index"
 msgstr "ajouter l'élément spécifié dans l'index"
 
-#: builtin/update-index.c:994
+#: builtin/update-index.c:995
 msgid "mark files as \"not changing\""
 msgstr "marquer les fichiers comme \"non changeants\""
 
-#: builtin/update-index.c:997
+#: builtin/update-index.c:998
 msgid "clear assumed-unchanged bit"
 msgstr "mettre à zéro le bit supposé-non-modifié"
 
-#: builtin/update-index.c:1000
+#: builtin/update-index.c:1001
 msgid "mark files as \"index-only\""
 msgstr "marquer les fichiers comme \"index seulement\""
 
-#: builtin/update-index.c:1003
+#: builtin/update-index.c:1004
 msgid "clear skip-worktree bit"
 msgstr "mettre à zéro le bit sauter-la-copie-de travail"
 
-#: builtin/update-index.c:1006
+#: builtin/update-index.c:1007
 msgid "add to index only; do not add content to object database"
 msgstr ""
 "ajouter seulement à l'index ; ne pas ajouter le contenu dans la base de "
 "données des objets"
 
-#: builtin/update-index.c:1008
+#: builtin/update-index.c:1009
 msgid "remove named paths even if present in worktree"
 msgstr ""
 "supprimer les chemins nommés même s'ils sont présents dans la copie de "
 "travail"
 
-#: builtin/update-index.c:1010
+#: builtin/update-index.c:1011
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr "avec --stdin : les lignes en entrée sont terminées par des octets nuls"
 
-#: builtin/update-index.c:1012
+#: builtin/update-index.c:1013
 msgid "read list of paths to be updated from standard input"
 msgstr "lire la liste des chemins à mettre à jour depuis l'entrée standard"
 
-#: builtin/update-index.c:1016
+#: builtin/update-index.c:1017
 msgid "add entries from standard input to the index"
 msgstr "ajouter les éléments depuis l'entrée standard à l'index"
 
-#: builtin/update-index.c:1020
+#: builtin/update-index.c:1021
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr "repeupler les étapes n°2 et n°3 pour les chemins listés"
 
-#: builtin/update-index.c:1024
+#: builtin/update-index.c:1025
 msgid "only update entries that differ from HEAD"
 msgstr "mettre à jour seulement les éléments qui diffèrent de HEAD"
 
-#: builtin/update-index.c:1028
+#: builtin/update-index.c:1029
 msgid "ignore files missing from worktree"
 msgstr "ignorer les fichiers manquants dans la copie de travail"
 
-#: builtin/update-index.c:1031
+#: builtin/update-index.c:1032
 msgid "report actions to standard output"
 msgstr "afficher les actions sur la sortie standard"
 
-#: builtin/update-index.c:1033
+#: builtin/update-index.c:1034
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr "(pour porcelaines) oublier les conflits sauvés et non résolus"
 
-#: builtin/update-index.c:1037
+#: builtin/update-index.c:1038
 msgid "write index in this format"
 msgstr "écrire l'index dans ce format"
 
-#: builtin/update-index.c:1039
+#: builtin/update-index.c:1040
 msgid "enable or disable split index"
 msgstr "activer ou désactiver l'index divisé"
 
-#: builtin/update-index.c:1041
+#: builtin/update-index.c:1042
 msgid "enable/disable untracked cache"
 msgstr "activer ou désactiver le cache de non-suivis"
 
-#: builtin/update-index.c:1043
+#: builtin/update-index.c:1044
 msgid "test if the filesystem supports untracked cache"
 msgstr "tester si le système de fichier supporte le cache de non-suivis"
 
-#: builtin/update-index.c:1045
+#: builtin/update-index.c:1046
 msgid "enable untracked cache without testing the filesystem"
 msgstr "activer le cache de non-suivis sans tester le système de fichier"
 
-#: builtin/update-index.c:1047
+#: builtin/update-index.c:1048
 msgid "write out the index even if is not flagged as changed"
 msgstr "écrire l'index même s'il n'est pas marqué comme modifié"
 
-#: builtin/update-index.c:1049
+#: builtin/update-index.c:1050
 msgid "enable or disable file system monitor"
 msgstr ""
 "activer ou désactiver la surveillance du système de fichier (fsmonitor)"
 
-#: builtin/update-index.c:1051
+#: builtin/update-index.c:1052
 msgid "mark files as fsmonitor valid"
 msgstr "marquer les fichiers comme valides pour fsmonitor"
 
-#: builtin/update-index.c:1054
+#: builtin/update-index.c:1055
 msgid "clear fsmonitor valid bit"
 msgstr "effacer le bit de validité fsmonitor"
 
-#: builtin/update-index.c:1153
+#: builtin/update-index.c:1156
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
@@ -18249,7 +19255,7 @@ msgstr ""
 "core.splitIndex est réglé à false ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment activer l'index coupé"
 
-#: builtin/update-index.c:1162
+#: builtin/update-index.c:1165
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
@@ -18257,7 +19263,7 @@ msgstr ""
 "core.splitIndex est réglé à vrai ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment désactiver l'index coupé"
 
-#: builtin/update-index.c:1173
+#: builtin/update-index.c:1176
 msgid ""
 "core.untrackedCache is set to true; remove or change it, if you really want "
 "to disable the untracked cache"
@@ -18265,11 +19271,11 @@ msgstr ""
 "core.untrackedCache est réglé à true ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment désactiver le cache des fichiers non-suivis"
 
-#: builtin/update-index.c:1177
+#: builtin/update-index.c:1180
 msgid "Untracked cache disabled"
 msgstr "Le cache non suivi est désactivé"
 
-#: builtin/update-index.c:1185
+#: builtin/update-index.c:1188
 msgid ""
 "core.untrackedCache is set to false; remove or change it, if you really want "
 "to enable the untracked cache"
@@ -18277,29 +19283,29 @@ msgstr ""
 "core.untrackedCache est réglé à false ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment activer le cache des fichiers non-suivis"
 
-#: builtin/update-index.c:1189
+#: builtin/update-index.c:1192
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr "Le cache non suivi est activé pour '%s'"
 
-#: builtin/update-index.c:1197
+#: builtin/update-index.c:1200
 msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
 msgstr ""
 "core.fsmonitor est réglé à false ; changez-le si vous souhaitez vraiment "
 "activer la surveillance du système de fichiers"
 
-#: builtin/update-index.c:1201
+#: builtin/update-index.c:1204
 msgid "fsmonitor enabled"
 msgstr "fsmonitor activé"
 
-#: builtin/update-index.c:1204
+#: builtin/update-index.c:1207
 msgid ""
 "core.fsmonitor is set; remove it if you really want to disable fsmonitor"
 msgstr ""
 "core.fsmonitor est réglé à true ; supprimez-le ou changez-le si vous "
 "souhaitez vraiment désactiver la surveillance du système de fichiers"
 
-#: builtin/update-index.c:1208
+#: builtin/update-index.c:1211
 msgid "fsmonitor disabled"
 msgstr "fsmonitor désactivé"
 
@@ -18391,56 +19397,56 @@ msgstr "git verify-tag [-v | --verbose] [--format=<format>] <étiquette>..."
 msgid "print tag contents"
 msgstr "afficher le contenu de l'étiquette"
 
-#: builtin/worktree.c:17
+#: builtin/worktree.c:18
 msgid "git worktree add [<options>] <path> [<commit-ish>]"
 msgstr "git worktree add [<options>] <chemin> [<commit>]"
 
-#: builtin/worktree.c:18
+#: builtin/worktree.c:19
 msgid "git worktree list [<options>]"
 msgstr "git worktree list [<options>]"
 
-#: builtin/worktree.c:19
+#: builtin/worktree.c:20
 msgid "git worktree lock [<options>] <path>"
 msgstr "git worktree lock [<options>] <chemin>"
 
-#: builtin/worktree.c:20
+#: builtin/worktree.c:21
 msgid "git worktree move <worktree> <new-path>"
 msgstr "git worktree move <arbre-de-travail> <nouveau-chemin>"
 
-#: builtin/worktree.c:21
+#: builtin/worktree.c:22
 msgid "git worktree prune [<options>]"
 msgstr "git worktree prune [<options>]"
 
-#: builtin/worktree.c:22
+#: builtin/worktree.c:23
 msgid "git worktree remove [<options>] <worktree>"
 msgstr "git worktree remove [<options>] <arbre-de-travail>"
 
-#: builtin/worktree.c:23
+#: builtin/worktree.c:24
 msgid "git worktree unlock <path>"
 msgstr "git worktree unlock <chemin>"
 
-#: builtin/worktree.c:60 builtin/worktree.c:871
+#: builtin/worktree.c:61 builtin/worktree.c:888
 #, c-format
 msgid "failed to delete '%s'"
 msgstr "échec de la suppression de '%s'"
 
-#: builtin/worktree.c:79
+#: builtin/worktree.c:80
 #, c-format
 msgid "Removing worktrees/%s: not a valid directory"
 msgstr "Suppression de worktrees/%s : répertoire invalide"
 
-#: builtin/worktree.c:85
+#: builtin/worktree.c:86
 #, 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:90 builtin/worktree.c:99
+#: builtin/worktree.c:91 builtin/worktree.c:100
 #, c-format
 msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
 msgstr ""
-"Suppression de worktrees/%s : echec de la lecture du fichier gitdir (%s)"
+"Suppression de worktrees/%s : échec de la lecture du fichier gitdir (%s)"
 
-#: builtin/worktree.c:109
+#: builtin/worktree.c:110
 #, c-format
 msgid ""
 "Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
@@ -18449,37 +19455,37 @@ msgstr ""
 "Suppression de worktrees/%s: lecture trop courte ( %<PRIuMAX> octets "
 "attendus, %<PRIuMAX> octets lus)"
 
-#: builtin/worktree.c:117
+#: builtin/worktree.c:118
 #, c-format
 msgid "Removing worktrees/%s: invalid gitdir file"
 msgstr "Suppression de worktrees/%s : fichier gitdir invalide"
 
-#: builtin/worktree.c:126
+#: builtin/worktree.c:127
 #, 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:165
+#: builtin/worktree.c:166
 msgid "report pruned working trees"
 msgstr "afficher les arbres de travail éliminés"
 
-#: builtin/worktree.c:167
+#: builtin/worktree.c:168
 msgid "expire working trees older than <time>"
 msgstr "faire expirer les arbres de travail plus vieux que <temps>"
 
-#: builtin/worktree.c:234
+#: builtin/worktree.c:235
 #, c-format
 msgid "'%s' already exists"
 msgstr "'%s' existe déjà"
 
-#: builtin/worktree.c:251
+#: builtin/worktree.c:252
 #, c-format
 msgid "unable to re-add worktree '%s'"
 msgstr "impossible de ré-ajouter l'arbre de travail '%s'"
 
-#: builtin/worktree.c:256
+#: builtin/worktree.c:257
 #, c-format
 msgid ""
 "'%s' is a missing but locked worktree;\n"
@@ -18489,7 +19495,7 @@ msgstr ""
 "utilisez 'add -f -f' pour passer outre, ou 'unlock' et 'prune' ou 'remove' "
 "pour corriger"
 
-#: builtin/worktree.c:258
+#: builtin/worktree.c:259
 #, c-format
 msgid ""
 "'%s' is a missing but already registered worktree;\n"
@@ -18498,129 +19504,129 @@ msgstr ""
 "'%s' est un arbre de travail manquant mais déjà enregistré ;\n"
 "utilisez 'add -f' pour passer outre, ou 'prune' ou 'remove' pour corriger"
 
-#: builtin/worktree.c:309
+#: builtin/worktree.c:310
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "impossible de créer le répertoire de '%s'"
 
-#: builtin/worktree.c:428 builtin/worktree.c:434
+#: builtin/worktree.c:429 builtin/worktree.c:435
 #, c-format
 msgid "Preparing worktree (new branch '%s')"
 msgstr "Préparation de l'arbre de travail (nouvelle branche '%s')"
 
-#: builtin/worktree.c:430
+#: builtin/worktree.c:431
 #, c-format
 msgid "Preparing worktree (resetting branch '%s'; was at %s)"
 msgstr ""
 "Préparation de l'arbre de travail (réinitialisation de la branche '%s' ; "
 "précédemment sur %s)"
 
-#: builtin/worktree.c:439
+#: builtin/worktree.c:440
 #, c-format
 msgid "Preparing worktree (checking out '%s')"
 msgstr "Préparation de l'arbre de travail (extraction de '%s')"
 
-#: builtin/worktree.c:445
+#: builtin/worktree.c:446
 #, c-format
 msgid "Preparing worktree (detached HEAD %s)"
 msgstr "Préparation de l'arbre de travail (HEAD détachée %s)"
 
-#: builtin/worktree.c:486
+#: builtin/worktree.c:487
 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:489
+#: builtin/worktree.c:490
 msgid "create a new branch"
 msgstr "créer une nouvelle branche"
 
-#: builtin/worktree.c:491
+#: builtin/worktree.c:492
 msgid "create or reset a branch"
 msgstr "créer ou réinitialiser une branche"
 
-#: builtin/worktree.c:493
+#: builtin/worktree.c:494
 msgid "populate the new working tree"
 msgstr "remplissage de la nouvelle copie de travail"
 
-#: builtin/worktree.c:494
+#: builtin/worktree.c:495
 msgid "keep the new working tree locked"
 msgstr "conserver le verrou sur le nouvel arbre de travail"
 
-#: builtin/worktree.c:497
+#: builtin/worktree.c:498
 msgid "set up tracking mode (see git-branch(1))"
 msgstr "régler le mode de suivi (voir git-branch(1))"
 
-#: builtin/worktree.c:500
+#: builtin/worktree.c:501
 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:508
+#: builtin/worktree.c:509
 msgid "-b, -B, and --detach are mutually exclusive"
 msgstr "-b, -B et --detach sont mutuellement exclusifs"
 
-#: builtin/worktree.c:569
+#: builtin/worktree.c:570
 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:669
+#: builtin/worktree.c:670
 msgid "reason for locking"
 msgstr "raison du verrouillage"
 
-#: builtin/worktree.c:681 builtin/worktree.c:714 builtin/worktree.c:772
-#: builtin/worktree.c:899
+#: builtin/worktree.c:682 builtin/worktree.c:715 builtin/worktree.c:789
+#: builtin/worktree.c:916
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "'%s' n'est pas une copie de travail"
 
-#: builtin/worktree.c:683 builtin/worktree.c:716
+#: builtin/worktree.c:684 builtin/worktree.c:717
 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:688
+#: builtin/worktree.c:689
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr "'%s' est déjà verrouillé, car '%s'"
 
-#: builtin/worktree.c:690
+#: builtin/worktree.c:691
 #, c-format
 msgid "'%s' is already locked"
 msgstr "'%s' est déjà verrouillé"
 
-#: builtin/worktree.c:718
+#: builtin/worktree.c:719
 #, c-format
 msgid "'%s' is not locked"
 msgstr "'%s' n'est pas verrouillé"
 
-#: builtin/worktree.c:743
+#: builtin/worktree.c:760
 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:751
+#: builtin/worktree.c:768
 msgid "force move even if worktree is dirty or locked"
 msgstr ""
 "forcer le déplacement même si l'arbre de travail est sale ou verrouillé"
 
-#: builtin/worktree.c:774 builtin/worktree.c:901
+#: builtin/worktree.c:791 builtin/worktree.c:918
 #, c-format
 msgid "'%s' is a main working tree"
 msgstr "'%s' est un arbre de travail principal"
 
-#: builtin/worktree.c:779
+#: builtin/worktree.c:796
 #, 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:785
+#: builtin/worktree.c:802
 #, c-format
 msgid "target '%s' already exists"
 msgstr "la cible '%s' existe déjà"
 
-#: builtin/worktree.c:793
+#: builtin/worktree.c:810
 #, c-format
 msgid ""
 "cannot move a locked working tree, lock reason: %s\n"
@@ -18630,7 +19636,7 @@ msgstr ""
 "verrouillage : %s\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:795
+#: builtin/worktree.c:812
 msgid ""
 "cannot move a locked working tree;\n"
 "use 'move -f -f' to override or unlock first"
@@ -18638,37 +19644,37 @@ msgstr ""
 "impossible de déplacer un arbre de travail verrouillé;\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:798
+#: builtin/worktree.c:815
 #, 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:803
+#: builtin/worktree.c:820
 #, c-format
 msgid "failed to move '%s' to '%s'"
 msgstr "échec au déplacement de '%s' vers '%s'"
 
-#: builtin/worktree.c:851
+#: builtin/worktree.c:868
 #, c-format
 msgid "failed to run 'git status' on '%s'"
 msgstr "échec du lancement de 'git status' sur '%s'"
 
-#: builtin/worktree.c:855
+#: builtin/worktree.c:872
 #, c-format
 msgid "'%s' is dirty, use --force to delete it"
 msgstr "'%s' est sale, utilisez --force pour le supprimer"
 
-#: builtin/worktree.c:860
+#: builtin/worktree.c:877
 #, 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:883
+#: builtin/worktree.c:900
 msgid "force removal even if worktree is dirty or locked"
 msgstr ""
 "forcer la suppression même si l'arbre de travail est sale ou verrouillé"
 
-#: builtin/worktree.c:906
+#: builtin/worktree.c:923
 #, c-format
 msgid ""
 "cannot remove a locked working tree, lock reason: %s\n"
@@ -18678,7 +19684,7 @@ msgstr ""
 "verrouillage : %s\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:908
+#: builtin/worktree.c:925
 msgid ""
 "cannot remove a locked working tree;\n"
 "use 'remove -f -f' to override or unlock first"
@@ -18686,29 +19692,29 @@ msgstr ""
 "impossible de supprimer un arbre de travail verrouillé;\n"
 "utilisez 'move -f -f' pour outrepasser ou déverrouiller avant"
 
-#: builtin/worktree.c:911
+#: builtin/worktree.c:928
 #, 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
+#: builtin/write-tree.c:15
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
 msgstr "git write-tree [--missing-ok] [--prefix=<préfixe>/]"
 
-#: builtin/write-tree.c:27
+#: builtin/write-tree.c:28
 msgid "<prefix>/"
 msgstr "<préfixe>/"
 
-#: builtin/write-tree.c:28
+#: builtin/write-tree.c:29
 msgid "write tree object for a subdirectory <prefix>"
 msgstr "écrire l'objet arbre pour un sous-répertoire <préfixe>"
 
-#: builtin/write-tree.c:30
+#: builtin/write-tree.c:31
 msgid "only useful for debugging"
 msgstr "seulement utile pour le débogage"
 
-#: credential-cache--daemon.c:222
+#: credential-cache--daemon.c:223
 #, c-format
 msgid ""
 "The permissions on your socket directory are too loose; other\n"
@@ -18721,7 +19727,7 @@ msgstr ""
 "\n"
 "    chmod 0700 %s"
 
-#: credential-cache--daemon.c:271
+#: credential-cache--daemon.c:272
 msgid "print debugging messages to stderr"
 msgstr "afficher les messages de debug sur stderr"
 
@@ -18761,97 +19767,147 @@ 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."
 
-#: git.c:173
+#: git.c:174
 #, c-format
 msgid "no directory given for --git-dir\n"
 msgstr "aucun répertoire fourni pour --git-dir\n"
 
-#: git.c:187
+#: git.c:188
 #, c-format
 msgid "no namespace given for --namespace\n"
 msgstr "aucun espace de nom fournit pour --namespace\n"
 
-#: git.c:201
+#: git.c:202
 #, c-format
 msgid "no directory given for --work-tree\n"
 msgstr "aucun répertoire fourni pour --work-tree\n"
 
-#: git.c:215
+#: git.c:216
 #, c-format
 msgid "no prefix given for --super-prefix\n"
 msgstr "aucun préfixe fourni pour --super-prefix\n"
 
-#: git.c:237
+#: git.c:238
 #, c-format
 msgid "-c expects a configuration string\n"
 msgstr "-c requiert une chaîne de configuration\n"
 
-#: git.c:275
+#: git.c:276
 #, c-format
 msgid "no directory given for -C\n"
 msgstr "aucun répertoire fourni pour -C\n"
 
-#: git.c:300
+#: git.c:301
 #, c-format
 msgid "unknown option: %s\n"
 msgstr "option inconnue : %s\n"
 
-#: git.c:719
+#: git.c:342
+#, c-format
+msgid "while expanding alias '%s': '%s'"
+msgstr "lors de l'expansion de l'alias '%s' : '%s'"
+
+#: git.c:351
+#, c-format
+msgid ""
+"alias '%s' changes environment variables.\n"
+"You can use '!git' in the alias to do this"
+msgstr ""
+"l'alias '%s' modifie les variables d'environnement.\n"
+"Vous pouvez utiliser '!git' dans l'alias pour le faire"
+
+#: git.c:359
+#, c-format
+msgid "empty alias for %s"
+msgstr "alias vide pour %s"
+
+#: git.c:362
+#, c-format
+msgid "recursive alias: %s"
+msgstr "alias recursif : %s"
+
+#: git.c:437
+msgid "write failure on standard output"
+msgstr "échec d'écriture sur la sortie standard"
+
+#: git.c:439
+msgid "unknown write failure on standard output"
+msgstr "échec inconnu d'écriture sur la sortie standard"
+
+#: git.c:441
+msgid "close failed on standard output"
+msgstr "échec de fermeture de la sortie standard"
+
+#: git.c:720
 #, c-format
 msgid "alias loop detected: expansion of '%s' does not terminate:%s"
 msgstr "boucle d'alias détectée : l'expansion de '%s' ne finit jamais : %s"
 
-#: git.c:802
+#: git.c:770
+#, c-format
+msgid "cannot handle %s as a builtin"
+msgstr "impossible d'utiliser %s comme une fonction intégrée"
+
+#: git.c:783
+#, c-format
+msgid ""
+"usage: %s\n"
+"\n"
+msgstr ""
+"usage : %s\n"
+"\n"
+
+#: git.c:803
 #, 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:814
+#: git.c:815
 #, c-format
 msgid "failed to run command '%s': %s\n"
 msgstr "échec au lancement de la commande '%s' : %s\n"
 
-#: http.c:374
+#: http.c:378
 #, 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:395
+#: http.c:399
 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:404
+#: http.c:408
 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:837
+#: http.c:876
 msgid "CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0"
 msgstr "CURLSSLOPT_NO_REMOVE n'est pas supporté avec cuRL < 7.44.0"
 
-#: http.c:910
+#: http.c:949
 msgid "Protocol restrictions not supported with cURL < 7.19.4"
 msgstr "Les restrictions de protocole ne sont pas supportés avec cuRL < 7.19.4"
 
-#: http.c:1046
+#: http.c:1085
 #, c-format
 msgid "Unsupported SSL backend '%s'. Supported SSL backends:"
 msgstr "Dorsale SSL '%s' non supportée. Dorsales SSL supportées :"
 
-#: http.c:1053
+#: http.c:1092
 #, c-format
 msgid "Could not set SSL backend to '%s': cURL was built without SSL backends"
 msgstr ""
 "Impossible de régler la dorsale SSL à '%s' : cURL a été construit sans "
 "dorsale SSL"
 
-#: http.c:1057
+#: http.c:1096
 #, c-format
 msgid "Could not set SSL backend to '%s': already set"
 msgstr "Impossible de spécifier le dorsal SSL à '%s' : déjà spécifié"
 
-#: http.c:1921
+#: http.c:1959
 #, c-format
 msgid ""
 "unable to update url base from redirection:\n"
@@ -18862,19 +19918,11 @@ msgstr ""
 "      demandé : %s\n"
 "  redirection : %s"
 
-#: remote-curl.c:401
+#: remote-curl.c:455
 #, c-format
 msgid "redirecting to %s"
 msgstr "redirection vers %s"
 
-#: list-objects-filter-options.h:60
-msgid "args"
-msgstr "args"
-
-#: list-objects-filter-options.h:61
-msgid "object filtering"
-msgstr "filtrage d'objet"
-
 #: parse-options.h:154
 msgid "expiry-date"
 msgstr "date-d'expiration"
@@ -18883,15 +19931,15 @@ msgstr "date-d'expiration"
 msgid "no-op (backward compatibility)"
 msgstr "sans action (rétrocompatibilité)"
 
-#: parse-options.h:261
+#: parse-options.h:259
 msgid "be more verbose"
 msgstr "être plus verbeux"
 
-#: parse-options.h:263
+#: parse-options.h:261
 msgid "be more quiet"
 msgstr "être plus silencieux"
 
-#: parse-options.h:269
+#: parse-options.h:267
 msgid "use <n> digits to display SHA-1s"
 msgstr "utiliser <n> chiffres pour afficher les SHA-1s"
 
@@ -19557,6 +20605,14 @@ msgstr "Une introduction pratique à Git"
 msgid "An overview of recommended workflows with Git"
 msgstr "Un aperçu des flux de travail recommandés avec Git"
 
+#: list-objects-filter-options.h:63
+msgid "args"
+msgstr "args"
+
+#: list-objects-filter-options.h:64
+msgid "object filtering"
+msgstr "filtrage d'objet"
+
 #: rerere.h:44
 msgid "update the index with reused conflict resolution if possible"
 msgstr ""
@@ -19573,138 +20629,49 @@ msgstr "Vous devez démarrer avec \"git bisect start\""
 msgid "Do you want me to do it for you [Y/n]? "
 msgstr "Souhaitez-vous que je le fasse pour vous [Y/n] ? "
 
-#: git-bisect.sh:121
-#, sh-format
-msgid "unrecognised option: '$arg'"
-msgstr "option inconnue : '$arg'"
-
-#: git-bisect.sh:125
-#, sh-format
-msgid "'$arg' does not appear to be a valid revision"
-msgstr "'$arg' ne semble être une révision valide"
-
-#: git-bisect.sh:154
-msgid "Bad HEAD - I need a HEAD"
-msgstr "Mauvaise HEAD - j'ai besoin d'une HEAD"
-
-#: git-bisect.sh:167
-#, sh-format
-msgid ""
-"Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
-msgstr ""
-"L'extraction de '$start_head' a échoué. Essayez 'git bisect reset <branche-"
-"valide>'."
-
-#: git-bisect.sh:177
-msgid "won't bisect on cg-seek'ed tree"
-msgstr "refus de bissecter sur un arbre 'cg-seeked'"
-
-#: git-bisect.sh:181
-msgid "Bad HEAD - strange symbolic ref"
-msgstr "Mauvaise HEAD - référence symbolique douteuse"
-
-#: git-bisect.sh:233
-#, sh-format
-msgid "Bad bisect_write argument: $state"
-msgstr "Mauvais argument pour bisect_write : $state"
-
-#: git-bisect.sh:246
+#: git-bisect.sh:101
 #, sh-format
 msgid "Bad rev input: $arg"
 msgstr "Mauvaise révision en entrée : $arg"
 
-#: git-bisect.sh:265
+#: git-bisect.sh:121
 #, sh-format
 msgid "Bad rev input: $bisected_head"
 msgstr "Mauvaise révision en entrée : $bisected_head"
 
-#: git-bisect.sh:274
+#: git-bisect.sh:130
 #, sh-format
 msgid "Bad rev input: $rev"
 msgstr "Mauvaise révision en entrée : $rev"
 
-#: git-bisect.sh:283
+#: git-bisect.sh:139
 #, sh-format
 msgid "'git bisect $TERM_BAD' can take only one argument."
 msgstr "'git bisect $TERM_BAD' n'accepte qu'un seul argument."
 
-#: git-bisect.sh:306
-#, sh-format
-msgid "Warning: bisecting only with a $TERM_BAD commit."
-msgstr "Attention : bissection avec seulement une validation $TERM_BAD."
-
-#. TRANSLATORS: Make sure to include [Y] and [n] in your
-#. translation. The program will only accept English input
-#. at this point.
-#: git-bisect.sh:312
-msgid "Are you sure [Y/n]? "
-msgstr "Confirmez-vous [Y/n] ? "
-
-#: git-bisect.sh:324
-#, sh-format
-msgid ""
-"You need to give me at least one $bad_syn and one $good_syn revision.\n"
-"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
-msgstr ""
-"Vous devez me donner au moins une révision $bad_syn et une révision "
-"$good_syn.\n"
-"(Vous pouvez utiliser \"git bisect $bad_syn\" et \"git bisect $good_syn\" "
-"pour cela.)"
-
-#: git-bisect.sh:327
-#, sh-format
-msgid ""
-"You need to start by \"git bisect start\".\n"
-"You then need to give me at least one $good_syn and one $bad_syn revision.\n"
-"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
-msgstr ""
-"Vous devez démarrer avec \"git bisect start\".\n"
-"Puis vous devez me donner au moins une révision $good_syn et une révision "
-"$bad_syn.\n"
-"(Vous pouvez utiliser \"git bisect $bad_syn\" et \"git bisect $good_syn\" "
-"pour cela.)"
-
-#: git-bisect.sh:398 git-bisect.sh:512
-msgid "We are not bisecting."
-msgstr "Pas de bissection en cours."
-
-#: git-bisect.sh:405
-#, sh-format
-msgid "'$invalid' is not a valid commit"
-msgstr "'$invalid' n'est pas une validation valide"
-
-#: git-bisect.sh:414
-#, sh-format
-msgid ""
-"Could not check out original HEAD '$branch'.\n"
-"Try 'git bisect reset <commit>'."
-msgstr ""
-"Échec d'extraction de la HEAD d'origine '$branch'.\n"
-"Essayez 'git bisect reset <commit>'."
-
-#: git-bisect.sh:422
+#: git-bisect.sh:209
 msgid "No logfile given"
 msgstr "Pas de fichier de log donné"
 
-#: git-bisect.sh:423
+#: git-bisect.sh:210
 #, sh-format
 msgid "cannot read $file for replaying"
 msgstr "impossible de lire $file pour rejouer"
 
-#: git-bisect.sh:444
+#: git-bisect.sh:232
 msgid "?? what are you talking about?"
 msgstr "?? de quoi parlez-vous ?"
 
-#: git-bisect.sh:453
+#: git-bisect.sh:241
 msgid "bisect run failed: no command provided."
 msgstr "la bissection a échoué : aucune commande fournie."
 
-#: git-bisect.sh:458
+#: git-bisect.sh:246
 #, sh-format
 msgid "running $command"
 msgstr "lancement de $command"
 
-#: git-bisect.sh:465
+#: git-bisect.sh:253
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -19713,11 +20680,11 @@ msgstr ""
 "la bissection a échoué :\n"
 "le code retour $res de '$command' est < 0 ou >= 128"
 
-#: git-bisect.sh:491
+#: git-bisect.sh:279
 msgid "bisect run cannot continue any more"
 msgstr "la bissection ne peut plus continuer"
 
-#: git-bisect.sh:497
+#: git-bisect.sh:285
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -19726,30 +20693,13 @@ msgstr ""
 "la bissection a échoué :\n"
 "'bisect_state $state' a retourné le code erreur $res"
 
-#: git-bisect.sh:504
+#: git-bisect.sh:292
 msgid "bisect run success"
 msgstr "succès de la bissection"
 
-#: git-bisect.sh:533
-#, sh-format
-msgid "Invalid command: you're currently in a $TERM_BAD/$TERM_GOOD bisect."
-msgstr ""
-"Commande invalide : vous êtes actuellement dans une bissection $TERM_BAD/"
-"$TERM_GOOD."
-
-#: git-bisect.sh:567
-msgid "no terms defined"
-msgstr "aucun terme défini"
-
-#: git-bisect.sh:584
-#, sh-format
-msgid ""
-"invalid argument $arg for 'git bisect terms'.\n"
-"Supported options are: --term-good|--term-old and --term-bad|--term-new."
-msgstr ""
-"argument invalide $arg pour 'git bisect terms'.\n"
-"Les options supportées sont : --term-good|--term-old et --term-bad|--term-"
-"new."
+#: git-bisect.sh:300
+msgid "We are not bisecting."
+msgstr "Pas de bissection en cours."
 
 #: git-merge-octopus.sh:46
 msgid ""
@@ -19791,12 +20741,12 @@ 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-legacy-rebase.sh:434
+#: git-legacy-rebase.sh:445
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr "Impossible de revenir à $head_name"
 
-#: git-legacy-rebase.sh:460
+#: git-legacy-rebase.sh:471
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -19818,217 +20768,236 @@ msgstr ""
 "chose\n"
 "d'important ici."
 
-#: git-legacy-rebase.sh:525
-msgid "error: cannot combine '--signoff' with '--preserve-merges'"
-msgstr "erreur : '--signoff' et '--preserve-merges' sont incompatibles"
+#: git-legacy-rebase.sh:523
+msgid ""
+"fatal: cannot combine am options with either interactive or merge options"
+msgstr "fatal : impossible de combiner les options am avec les options interactive ou merge"
+
+#: git-legacy-rebase.sh:530
+msgid "fatal: cannot combine '--signoff' with '--preserve-merges'"
+msgstr "fatal : '--signoff' et '--preserve-merges' sont incompatibles"
+
+#: git-legacy-rebase.sh:541
+msgid "fatal: cannot combine '--preserve-merges' with '--rebase-merges'"
+msgstr ""
+"fatal : impossible de combiner '--preserve-merges' avec '--rebase-merges'"
 
-#: git-legacy-rebase.sh:570
+#: git-legacy-rebase.sh:550
+msgid "fatal: cannot combine '--rebase-merges' with '--strategy-option'"
+msgstr ""
+"fatal : impossible de combiner '--rebase-merges' avec '--strategy-option'"
+
+#: git-legacy-rebase.sh:552
+msgid "fatal: cannot combine '--rebase-merges' with '--strategy'"
+msgstr "fatal : impossible de combiner '--rebase-merges' avec '--strategy'"
+
+#: git-legacy-rebase.sh:578
 #, sh-format
 msgid "invalid upstream '$upstream_name'"
 msgstr "invalide '$upstream_name' en amont"
 
-#: git-legacy-rebase.sh:594
+#: git-legacy-rebase.sh:602
 #, 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-legacy-rebase.sh:597 git-legacy-rebase.sh:601
+#: git-legacy-rebase.sh:605 git-legacy-rebase.sh:609
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr "$onto_name : il n'y a pas de base de fusion"
 
-#: git-legacy-rebase.sh:606
+#: git-legacy-rebase.sh:614
 #, sh-format
 msgid "Does not point to a valid commit: $onto_name"
 msgstr "Ne pointe pas sur une validation valide : $onto_name"
 
-#: git-legacy-rebase.sh:632
+#: git-legacy-rebase.sh:640
 #, sh-format
 msgid "fatal: no such branch/commit '$branch_name'"
 msgstr "fatal : pas de branche ou commit '$branch_name'"
 
-#: git-legacy-rebase.sh:670
+#: git-legacy-rebase.sh:678
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr "Autoremisage créé : $stash_abbrev"
 
-#: git-legacy-rebase.sh:699
+#: git-legacy-rebase.sh:707
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr "La branche courante $branch_name est à jour."
 
-#: git-legacy-rebase.sh:709
+#: git-legacy-rebase.sh:717
 #, sh-format
 msgid "Current branch $branch_name is up to date, rebase forced."
 msgstr "La branche courante $branch_name est à jour, rebasage forcé."
 
-#: git-legacy-rebase.sh:723
+#: git-legacy-rebase.sh:731
 #, sh-format
 msgid "Changes to $onto:"
 msgstr "Changements sur $onto :"
 
-#: git-legacy-rebase.sh:725
+#: git-legacy-rebase.sh:733
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "Changements de $mb sur $onto :"
 
-#: git-legacy-rebase.sh:736
+#: git-legacy-rebase.sh:743
+#, sh-format
+msgid "Fast-forwarded $branch_name to $onto_name."
+msgstr "$branch_name mise à jour en avance rapide sur $onto_name."
+
+#: git-legacy-rebase.sh:757
 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-legacy-rebase.sh:746
-#, sh-format
-msgid "Fast-forwarded $branch_name to $onto_name."
-msgstr "$branch_name mise à jour en avance rapide sur $onto_name."
-
-#: git-stash.sh:61
+#: git-stash.sh:75
 msgid "git stash clear with parameters is unimplemented"
 msgstr "git stash clear avec des paramètres n'est pas implémenté"
 
-#: git-stash.sh:108
+#: git-stash.sh:125
 msgid "You do not have the initial commit yet"
 msgstr "Vous n'avez pas encore la validation initiale"
 
-#: git-stash.sh:123
+#: git-stash.sh:140
 msgid "Cannot save the current index state"
 msgstr "Impossible de sauver l'état courant de l'index"
 
-#: git-stash.sh:138
+#: git-stash.sh:155
 msgid "Cannot save the untracked files"
 msgstr "Impossible de sauver les fichiers non-suivis"
 
-#: git-stash.sh:158 git-stash.sh:171
+#: git-stash.sh:175 git-stash.sh:188
 msgid "Cannot save the current worktree state"
 msgstr "Impossible de sauver l'état courant de la copie de travail"
 
-#: git-stash.sh:175
+#: git-stash.sh:192
 msgid "No changes selected"
 msgstr "Aucun changement sélectionné"
 
-#: git-stash.sh:178
+#: git-stash.sh:195
 msgid "Cannot remove temporary index (can't happen)"
 msgstr "Impossible de supprimer l'index temporaire (ne peut pas se produire)"
 
-#: git-stash.sh:191
+#: git-stash.sh:208
 msgid "Cannot record working tree state"
 msgstr "Impossible d'enregistrer l'état de la copie de travail"
 
-#: git-stash.sh:229
+#: git-stash.sh:246
 #, sh-format
 msgid "Cannot update $ref_stash with $w_commit"
 msgstr "Impossible de mettre à jour $ref_stash avec $w_commit"
 
-#: git-stash.sh:281
+#: git-stash.sh:298
 #, sh-format
 msgid "error: unknown option for 'stash push': $option"
 msgstr "erreur : option inconnue pour 'stash push' : $option"
 
-#: git-stash.sh:295
+#: git-stash.sh:312
 msgid "Can't use --patch and --include-untracked or --all at the same time"
 msgstr ""
 "Impossible d'utiliser --patch et --include-untracked ou --all en même temps"
 
-#: git-stash.sh:303
+#: git-stash.sh:320
 msgid "No local changes to save"
 msgstr "Pas de modifications locales à sauver"
 
-#: git-stash.sh:308
+#: git-stash.sh:325
 msgid "Cannot initialize stash"
 msgstr "Impossible d'initialiser le remisage"
 
-#: git-stash.sh:312
+#: git-stash.sh:329
 msgid "Cannot save the current status"
 msgstr "Impossible de sauver l'état courant"
 
-#: git-stash.sh:313
+#: git-stash.sh:330
 #, sh-format
 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:342
+#: git-stash.sh:359
 msgid "Cannot remove worktree changes"
 msgstr "Impossible de supprimer les changements de la copie de travail"
 
-#: git-stash.sh:490
+#: git-stash.sh:507
 #, sh-format
 msgid "unknown option: $opt"
 msgstr "option inconnue : $opt"
 
-#: git-stash.sh:503
+#: git-stash.sh:520
 msgid "No stash entries found."
 msgstr "Aucune entrée de remisage trouvée."
 
-#: git-stash.sh:510
+#: git-stash.sh:527
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Trop de révisions spécifiées : $REV"
 
-#: git-stash.sh:525
+#: git-stash.sh:542
 #, sh-format
 msgid "$reference is not a valid reference"
 msgstr "$reference n'est pas une référence valide"
 
-#: git-stash.sh:553
+#: git-stash.sh:570
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr "'$args' n'est pas une validation de type remisage"
 
-#: git-stash.sh:564
+#: git-stash.sh:581
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr "'$args' n'est pas une référence de remisage"
 
-#: git-stash.sh:572
+#: git-stash.sh:589
 msgid "unable to refresh index"
 msgstr "impossible de rafraîchir l'index"
 
-#: git-stash.sh:576
+#: git-stash.sh:593
 msgid "Cannot apply a stash in the middle of a merge"
 msgstr "Impossible d'appliquer un remisage en cours de fusion"
 
-#: git-stash.sh:584
+#: git-stash.sh:601
 msgid "Conflicts in index. Try without --index."
 msgstr "Conflits dans l'index. Essayez sans --index."
 
-#: git-stash.sh:586
+#: git-stash.sh:603
 msgid "Could not save index tree"
 msgstr "Impossible de sauvegarder l'arbre d'index"
 
-#: git-stash.sh:595
+#: git-stash.sh:612
 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:620
+#: git-stash.sh:637
 msgid "Cannot unstage modified files"
 msgstr "Impossible de désindexer les fichiers modifiés"
 
-#: git-stash.sh:635
+#: git-stash.sh:652
 msgid "Index was not unstashed."
 msgstr "L'index n'a pas été sorti de remise."
 
-#: git-stash.sh:649
+#: git-stash.sh:666
 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:658
+#: git-stash.sh:675
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "${REV} supprimé ($s)"
 
-#: git-stash.sh:659
+#: git-stash.sh:676
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: Impossible de supprimer l'élément de stash"
 
-#: git-stash.sh:667
+#: git-stash.sh:684
 msgid "No branch name specified"
 msgstr "Aucune branche spécifiée"
 
-#: git-stash.sh:746
+#: git-stash.sh:763
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Pour les restaurer tapez \"git stash apply\")"
 
@@ -21286,7 +22255,7 @@ msgstr "Échec à l'ouverture de %s.final : %s"
 
 #: git-send-email.perl:790
 msgid "Summary email is empty, skipping it\n"
-msgstr "Le courriel de résumé etant vide, il a été ignoré\n"
+msgstr "Le courriel de résumé étant vide, il a été ignoré\n"
 
 #. TRANSLATORS: please keep [y/N] as is.
 #: git-send-email.perl:825
@@ -21398,7 +22367,7 @@ msgstr "Le serveur ne supporte pas STARTTLS ! %s"
 #: git-send-email.perl:1510 git-send-email.perl:1514
 #, perl-format
 msgid "STARTTLS failed! %s"
-msgstr "echec de STARTTLS ! %s"
+msgstr "échec de STARTTLS ! %s"
 
 #: git-send-email.perl:1523
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
@@ -21505,990 +22474,3 @@ msgstr "%s sauté avec un suffix de sauvegarde '%s'.\n"
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
 msgstr "Souhaitez-vous réellement envoyer %s ?[y|N] : "
-
-#~ msgid "could not parse '%s' (looking for '%s')"
-#~ msgstr "impossible d'analyser '%s' (à la recherche de '%s')"
-
-#~ msgid "bad quoting on %s value in '%s'"
-#~ msgstr "Mauvaise citation sur la valeur %s dans '%s'"
-
-#~ msgid "Could not unset core.worktree setting in submodule '%s'"
-#~ msgstr "Impossible de désactiver core.worktree dans le sous-module '%s'"
-
-#~ msgid "deprecated synonym for --create-reflog"
-#~ msgstr "synonyme déconseillé de --create-reflog"
-
-#~ msgid "Can't stat %s"
-#~ msgstr "impossible de faire un stat de %s"
-
-#~ msgid "abort rebase"
-#~ msgstr "abandonner le rebasage"
-
-#~ msgid "make rebase script"
-#~ msgstr "créer les script de rebasage"
-
-#~ msgid "No such remote: %s"
-#~ msgstr "Distante inconnue : %s"
-
-#~ msgid "cannot move a locked working tree"
-#~ msgstr "impossible de déplacer un arbre de travail verrouillé"
-
-#~ msgid "cannot remove a locked working tree"
-#~ msgstr "impossible de supprimer un arbre de travail verrouillé"
-
-#~ msgid "Applied autostash."
-#~ msgstr "Autoremisage appliqué."
-
-#~ msgid "Cannot store $stash_sha1"
-#~ msgstr "Impossible de stocker $stash_sha1"
-
-#~ msgid ""
-#~ "\n"
-#~ "\tHowever, if you remove everything, the rebase will be aborted.\n"
-#~ "\n"
-#~ "\t"
-#~ msgstr ""
-#~ "\n"
-#~ "Cependant, si vous effacez tout, le rebasage sera annulé.\n"
-#~ "\n"
-#~ "\t"
-
-#~ msgid "could not parse '%s' (looking for '%s'"
-#~ msgstr "impossible d'analyser '%s' (à la recherche de '%s')"
-
-#~ msgid "color both diff and diff-between-diffs"
-#~ msgstr "colorer à la fois les diffs et le diff-between-diffs"
-
-#~ msgid "push|fetch"
-#~ msgstr "push|fetch"
-
-#~ msgid "Dirty index: cannot merge (dirty: %s)"
-#~ msgstr "Index sale : fusion impossible (sales : %s)"
-
-#~ msgid "(+/-)x"
-#~ msgstr "(+/-)x"
-
-#~ msgid "<command>"
-#~ msgstr "<commande>"
-
-#~ msgid "w[,i1[,i2]]"
-#~ msgstr "w[,i1[,i2]]"
-
-#~ msgid "Entering '$displaypath'"
-#~ 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."
-
-#~ msgid "Everyday Git With 20 Commands Or So"
-#~ msgstr "Git de tous les jours avec à peu près 20 commandes"
-
-#~ msgid "Could not open '%s' for writing"
-#~ msgstr "Impossible d'ouvrir '%s' en écriture"
-
-#~ msgid ""
-#~ "unexpected 1st line of squash message:\n"
-#~ "\n"
-#~ "\t%.*s"
-#~ msgstr ""
-#~ "première ligne de message de compression inattendue :\n"
-#~ "\n"
-#~ "\t%.*s"
-
-#~ msgid ""
-#~ "invalid 1st line of squash message:\n"
-#~ "\n"
-#~ "\t%.*s"
-#~ msgstr ""
-#~ "première ligne de message de compression invalide :\n"
-#~ "\n"
-#~ "\t%.*s"
-
-#~ msgid "BUG: returned path string doesn't match cwd?"
-#~ msgstr "BUG : le chemin renvoyé ne correspond pas à cwd ?"
-
-#~ msgid "Error in object"
-#~ msgstr "Erreur dans l'objet"
-
-#~ msgid "git fetch-pack: expected ACK/NAK, got EOF"
-#~ msgstr "git fetch-pack : ACK/NACK attendu, EOF reçu"
-
-#~ msgid "invalid filter-spec expression '%s'"
-#~ msgstr "expression de filtre invalide : '%s'"
-
-#~ msgid "The copy of the patch that failed is found in: %s"
-#~ msgstr "La copie du patch qui a échoué se trouve dans : %s"
-
-#~ msgid "pathspec and --all are incompatible"
-#~ msgstr "un spécificateur de chemin et --all sont incompatibles"
-
-#~ msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
-#~ msgstr ""
-#~ "Le sous-module '$name' ($url) n'est pas enregistré pour le chemin "
-#~ "'$displaypath'"
-
-#~ msgid "To/Cc/Bcc fields are not interpreted yet, they have been ignored\n"
-#~ msgstr ""
-#~ "Les champs To/CC/Bcc ne sont pas encore interprétés, ils ont été ignorés\n"
-
-#~ msgid ""
-#~ "empty strings as pathspecs will be made invalid in upcoming releases. "
-#~ "please use . instead if you meant to match all paths"
-#~ msgstr ""
-#~ "les chaines de caractères vides comme spécificateurs de chemin seront "
-#~ "invalides dans les prochaines versions. Veuillez utiliser . à la place "
-#~ "pour correspondre à tous le chemins"
-
-#~ msgid "could not truncate '%s'"
-#~ msgstr "impossible de tronquer '%s'"
-
-#~ msgid "could not finish '%s'"
-#~ msgstr "impossible de finir '%s'"
-
-#~ msgid "could not close %s"
-#~ msgstr "impossible de fermer %s"
-
-#~ msgid "Copied a misnamed branch '%s' away"
-#~ msgstr "Copie d'une branche mal nommée '%s'"
-
-#~ msgid "it does not make sense to create 'HEAD' manually"
-#~ msgstr "créer manuellement 'HEAD' n'a pas de sens"
-
-#~ msgid "Don't know how to clone %s"
-#~ msgstr "Je ne sais pas cloner %s"
-
-#~ msgid "show ignored files"
-#~ msgstr "afficher les fichiers ignorés"
-
-#~ msgid "Don't know how to fetch from %s"
-#~ msgstr "Je ne sais pas récupérer depuis %s"
-
-#~ msgid "'$term' is not a valid term"
-#~ msgstr "'$term' n'est pas un terme valide"
-
-#~ msgid ""
-#~ "error: unknown option for 'stash save': $option\n"
-#~ "       To provide a message, use git stash save -- '$option'"
-#~ msgstr ""
-#~ "erreur: option inconnue pour 'stash save': $option\n"
-#~ "        Pour fournir un message, utilisez git stash save -- '$option'"
-
-#~ msgid "Failed to recurse into submodule path '$sm_path'"
-#~ msgstr "Échec de parcours dans le chemin du sous-module '$sm_path'"
-
-#~ msgid "%%(trailers) does not take arguments"
-#~ msgstr "%%(trailers) n'accepte pas d'argument"
-
-#~ msgid "submodule update strategy not supported for submodule '%s'"
-#~ msgstr ""
-#~ "stratégie de mise à jour de sous-module non supportée pour le sous-module "
-#~ "'%s'"
-
-#~ msgid "change upstream info"
-#~ msgstr "modifier l'information amont"
-
-#~ msgid ""
-#~ "\n"
-#~ "If you wanted to make '%s' track '%s', do this:\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Si vous vouliez que '%s' suive '%s', faites ceci :\n"
-#~ "\n"
-
-#~ msgid "basename"
-#~ msgstr "nom de base"
-
-#~ msgid "prepend parent project's basename to output"
-#~ msgstr "préfixer le nom de base du projet parent à la sortie"
-
-#~ msgid ""
-#~ "Warning: the SHA-1 is missing or isn't a commit in the following line:\n"
-#~ " - $line"
-#~ msgstr ""
-#~ "Attention : le SHA-1 manque ou n'est pas un commit dans la ligne "
-#~ "suivante :\n"
-#~ " - $line"
-
-#~ msgid ""
-#~ "Warning: the command isn't recognized in the following line:\n"
-#~ " - $line"
-#~ msgstr ""
-#~ "Attention : la commande n'est pas reconnue dans le ligne suivante :\n"
-#~ " - $line"
-
-#~ msgid "Or you can abort the rebase with 'git rebase --abort'."
-#~ msgstr ""
-#~ "Ou bien vous pouvez abandonner le rebasage avec 'git rebase --abort'."
-
-#~ msgid "Could not open file '%s'"
-#~ msgstr "impossible d'ouvrir le fichier '%s'"
-
-#~ msgid "in %0.1f seconds automatically..."
-#~ msgstr "dans %0.1f secondes automatiquement..."
-
-#~ msgid "dup2(%d,%d) failed"
-#~ msgstr "échec de dup2(%d,%d)"
-
-#~ msgid "Initial commit on "
-#~ msgstr "Validation initiale sur "
-
-#~ msgid "Patch is empty. Was it split wrong?"
-#~ msgstr "Le patch est vide. Le découpage était-il bon ?"
-
-#~ msgid ""
-#~ "You still have unmerged paths in your index.\n"
-#~ "Did you forget to use 'git add'?"
-#~ msgstr ""
-#~ "Vous avez toujours des chemins non fusionnés dans votre index\n"
-#~ "Auriez-vous oublié de faire 'git add' ?"
-
-#~ msgid ""
-#~ "Cannot update paths and switch to branch '%s' at the same time.\n"
-#~ "Did you intend to checkout '%s' which can not be resolved as commit?"
-#~ msgstr ""
-#~ "Impossible de mettre à jour les chemins et de basculer sur la branche "
-#~ "'%s' en même temps.\n"
-#~ "Souhaitiez-vous extraire '%s' qui ne peut être résolu comme commit ?"
-
-#~ msgid "Explicit paths specified without -i or -o; assuming --only paths..."
-#~ msgstr "Chemins explicites spécifiés sans -i ni -o ; --only supposé..."
-
-#~ msgid "default mode for recursion"
-#~ msgstr "mode par défaut pour la récursion"
-
-#~ msgid "submodule--helper subcommand must be called with a subcommand"
-#~ msgstr ""
-#~ "la sous-commande submodule--helper doit être appelée avec une sous-"
-#~ "commande"
-
-#~ msgid "could not stat '%s"
-#~ msgstr "stat impossible de '%s'"
-
-#~ msgid "tag: tagging "
-#~ msgstr "étiquette: étiquetage de "
-
-#~ msgid "commit object"
-#~ msgstr "objet commit"
-
-#~ msgid "tree object"
-#~ msgstr "objet arbre"
-
-#~ msgid "blob object"
-#~ msgstr "objet blob"
-
-#~ msgid ""
-#~ "There is nothing to exclude from by :(exclude) patterns.\n"
-#~ "Perhaps you forgot to add either ':/' or '.' ?"
-#~ msgstr ""
-#~ "Il n'y a rien dont il faut exclure par des motifs :(exclure).\n"
-#~ "Peut-être avez-vous oublié d'ajouter ':/' ou '.' ?"
-
-#~ msgid "unrecognized format: %%(%s)"
-#~ msgstr "format non reconnu %%(%s)"
-
-#~ msgid ":strip= requires a positive integer argument"
-#~ msgstr ":strip= requiert un argument entier positif"
-
-#~ msgid "ref '%s' does not have %ld components to :strip"
-#~ msgstr "la réf '%s' n'a pas %ld composants à :strip"
-
-#~ msgid "unknown %.*s format %s"
-#~ msgstr "format de %.*s inconnu %s"
-
-# féminin pour une branche
-#~ msgid "[%s: gone]"
-#~ msgstr "[%s: disparue]"
-
-#~ msgid "[%s]"
-#~ msgstr "[%s]"
-
-#~ msgid "[%s: behind %d]"
-#~ msgstr "[%s: en retard de %d]"
-
-#~ msgid "[%s: ahead %d]"
-#~ msgstr "[%s : en avance de %d]"
-
-#~ msgid "[%s: ahead %d, behind %d]"
-#~ msgstr "[%s : en avance de %d, en retard de %d]"
-
-#~ msgid " **** invalid ref ****"
-#~ msgstr " **** référence invalide ****"
-
-#~ msgid "insanely long object directory %.*s"
-#~ msgstr "objet répertoire démentiellement long %.*s"
-
-#~ msgid "git merge [<options>] <msg> HEAD <commit>"
-#~ msgstr "git merge [<options>] <message> HEAD <commit>"
-
-#~ msgid "tag name too long: %.*s..."
-#~ msgstr "nom d'étiquette trop long : %.*s..."
-
-#~ msgid "tag header too big."
-#~ msgstr "en-tête d'étiquette trop gros."
-
-#~ msgid ""
-#~ "If the patch applies cleanly, the edited hunk will immediately be\n"
-#~ "marked for discarding"
-#~ msgstr ""
-#~ "Si le patch s'applique proprement, la section éditée sera\n"
-#~ "immediatement marquée comme éliminée"
-
-#~ msgid "Use an experimental blank-line-based heuristic to improve diffs"
-#~ msgstr ""
-#~ "Utiliser une heuristique expérimentale reposant sur les lignes vides pour "
-#~ "améliorer le diffs"
-
-#~ msgid "Clever... amending the last one with dirty index."
-#~ msgstr "Malin... correction du dernier avec un index sale."
-
-#~ msgid ""
-#~ "the following submodule (or one of its nested submodules)\n"
-#~ "uses a .git directory:"
-#~ msgid_plural ""
-#~ "the following submodules (or one of their nested submodules)\n"
-#~ "use a .git directory:"
-#~ msgstr[0] ""
-#~ "le sous-module suivant (ou un de ses sous-modules imbriqués)\n"
-#~ "utilise un répertoire .git :"
-#~ msgstr[1] ""
-#~ "les sous-modules suivants (ou un de leurs sous-modules imbriqués)\n"
-#~ "utilisent un répertoire .git :"
-
-#~ msgid ""
-#~ "\n"
-#~ "(use 'rm -rf' if you really want to remove it including all of its "
-#~ "history)"
-#~ msgstr ""
-#~ "\n"
-#~ "(utilisez 'rm -rf' si vous voulez vraiment le supprimer en incluant tout "
-#~ "son historique)"
-
-#~ msgid "Error wrapping up %s."
-#~ msgstr "Erreur lors de l'emballage de %s."
-
-#~ msgid "Your local changes would be overwritten by cherry-pick."
-#~ msgstr "Vos modifications locales seraient écrasées par cherry-pick."
-
-#~ msgid "Cannot revert during another revert."
-#~ msgstr "Impossible d'annuler un commit pendant l'annulation d'un commit."
-
-#~ msgid "Cannot cherry-pick during another cherry-pick."
-#~ msgstr "Impossible de picorer pendant un autre picorage."
-
-#~ msgid "Could not parse line %d."
-#~ msgstr "Impossible d'analyser la ligne %d."
-
-#~ msgid "Could not open %s"
-#~ msgstr "Impossible d'ouvrir %s"
-
-#~ msgid "Could not format %s."
-#~ msgstr "Impossible de formater %s."
-
-#~ msgid "%s: %s"
-#~ msgstr "%s : %s"
-
-#~ msgid "cannot open %s: %s"
-#~ msgstr "impossible d'ouvrir %s : %s"
-
-#~ msgid "You need to set your committer info first"
-#~ msgstr "Vous devez d'abord définir vos informations de validateur"
-
-#~ msgid "This is the 2nd commit message:"
-#~ msgstr "Ceci est le deuxième message de validation :"
-
-#~ msgid "This is the 3rd commit message:"
-#~ msgstr "Ceci est le troisième message de validation :"
-
-#~ msgid "This is the 4th commit message:"
-#~ msgstr "Ceci est le quatrième message de validation :"
-
-#~ msgid "This is the 5th commit message:"
-#~ msgstr "Ceci est le cinquième message de validation :"
-
-#~ msgid "This is the 6th commit message:"
-#~ msgstr "Ceci est le sixième message de validation :"
-
-#~ msgid "This is the 7th commit message:"
-#~ msgstr "Ceci est le septième message de validation :"
-
-#~ msgid "This is the 8th commit message:"
-#~ msgstr "Ceci est le huitième message de validation :"
-
-#~ msgid "This is the 9th commit message:"
-#~ msgstr "Ceci est le neuvième message de validation :"
-
-#~ msgid "This is the 10th commit message:"
-#~ msgstr "Ceci est le dixième message de validation :"
-
-#~ msgid "This is the ${n}th commit message:"
-#~ msgstr "Ceci est le ${n}ième message de validation :"
-
-#~ msgid "This is the ${n}st commit message:"
-#~ msgstr "Ceci est le ${n}ième message de validation :"
-
-#~ msgid "This is the ${n}nd commit message:"
-#~ msgstr "Ceci est le ${n}ième message de validation :"
-
-#~ msgid "This is the ${n}rd commit message:"
-#~ msgstr "Ceci est le ${n}ième message de validation :"
-
-#~ msgid "The 1st commit message will be skipped:"
-#~ msgstr "Le premier message de validation sera ignoré :"
-
-#~ msgid "The 2nd commit message will be skipped:"
-#~ msgstr "Le deuxième message de validation sera ignoré :"
-
-#~ msgid "The 3rd commit message will be skipped:"
-#~ msgstr "Le troisième message de validation sera ignoré :"
-
-#~ msgid "The 4th commit message will be skipped:"
-#~ msgstr "Le quatrième message de validation sera ignoré :"
-
-#~ msgid "The 5th commit message will be skipped:"
-#~ msgstr "Le cinquième message de validation sera ignoré :"
-
-#~ msgid "The 6th commit message will be skipped:"
-#~ msgstr "Le sixième message de validation sera ignoré :"
-
-#~ msgid "The 7th commit message will be skipped:"
-#~ msgstr "Le septième message de validation sera ignoré :"
-
-#~ msgid "The 8th commit message will be skipped:"
-#~ msgstr "Le huitième message de validation sera ignoré :"
-
-#~ msgid "The 9th commit message will be skipped:"
-#~ msgstr "Le neuvième message de validation sera ignoré :"
-
-#~ msgid "The 10th commit message will be skipped:"
-#~ msgstr "Le dixième message de validation sera ignoré :"
-
-#~ msgid "The ${n}th commit message will be skipped:"
-#~ msgstr "le ${n}ième message de validation sera ignoré :"
-
-#~ msgid "The ${n}st commit message will be skipped:"
-#~ msgstr "Le message de validation ${n} sera ignoré :"
-
-#~ msgid "The ${n}nd commit message will be skipped:"
-#~ msgstr "Le message de validation ${n} sera ignoré :"
-
-#~ msgid "The ${n}rd commit message will be skipped:"
-#~ msgstr "Le message de validation ${n} sera ignoré :"
-
-#~ msgid "could not run gpg."
-#~ msgstr "impossible de lancer gpg."
-
-#~ msgid "gpg did not accept the data"
-#~ msgstr "gpg n'a pas accepté les données"
-
-#~ msgid "unsupported object type in the tree"
-#~ msgstr "type d'objet non supporté dans l'arbre"
-
-#~ msgid "Fatal merge failure, shouldn't happen."
-#~ msgstr "Échec fatal de fusion, qui ne devrait jamais arriver."
-
-#~ msgid "Unprocessed path??? %s"
-#~ msgstr "Chemin non traité ??? %s"
-
-#~ msgid "Cannot %s during a %s"
-#~ msgstr "Impossible de %s pendant un %s"
-
-#~ msgid "Can't cherry-pick into empty head"
-#~ msgstr "Impossible de picorer vers une HEAD vide"
-
-#~ msgid "could not open %s for writing"
-#~ msgstr "Impossible d'ouvrir '%s' en écriture"
-
-#~ msgid "bug: unhandled unmerged status %x"
-#~ msgstr "bogue : état de non-fusion non géré %x"
-
-#~ msgid "bug: unhandled diff status %c"
-#~ msgstr "bogue : état de diff non géré %c"
-
-#~ msgid "could not write branch description template"
-#~ msgstr "impossible d'écrire le modèle de description de branche"
-
-#~ msgid "corrupt index file"
-#~ msgstr "fichier d'index corrompu"
-
-#~ msgid "detach the HEAD at named commit"
-#~ msgstr "détacher la HEAD à la validation nommée"
-
-#~ msgid "Checking connectivity... "
-#~ msgstr "Vérification de la connectivité... "
-
-#~ msgid "  (unable to update local ref)"
-#~ msgstr "  (impossible de mettre à jour la référence locale)"
-
-#~ msgid "Reinitialized existing"
-#~ msgstr "existant réinitialisé"
-
-#~ msgid "Initialized empty"
-#~ msgstr "vide initialisé"
-
-#~ msgid " shared"
-#~ msgstr " partagé"
-
-#~ msgid "Verify that the named commit has a valid GPG signature"
-#~ msgstr "Vérifier que la validation a une signature GPG valide"
-
-#~ msgid "Writing SQUASH_MSG"
-#~ msgstr "Écriture de SQUASH_MSG"
-
-#~ msgid "Finishing SQUASH_MSG"
-#~ msgstr "Finition de SQUASH_MSG"
-
-#~ msgid "   and with remote"
-#~ msgstr "   et avec la distante"
-
-#~ msgid "removing '%s' failed"
-#~ msgstr "la suppression de '%s' a échoué"
-
-#~ msgid "Please call 'bisect_state' with at least one argument."
-#~ msgstr "Veuillez appeler 'bisect_state' avec au moins un argument."
-
-#~ msgid ""
-#~ "If you want to reuse this local git directory instead of cloning again "
-#~ "from"
-#~ msgstr ""
-#~ "Si vous voulez réutiliser ce répertoire git local au lieu de cloner à "
-#~ "nouveau depuis"
-
-#~ msgid ""
-#~ "use the '--force' option. If the local git directory is not the correct "
-#~ "repo"
-#~ msgstr ""
-#~ "utilisez l'option '--force'. Si le répertoire local git n'est pas le "
-#~ "dépôt correct"
-
-#~ msgid ""
-#~ "or you are unsure what this means choose another name with the '--name' "
-#~ "option."
-#~ msgstr ""
-#~ "ou si vous ne savez pas ce que cela signifie, choisissez un autre nom "
-#~ "avec l'option '--name'."
-
-#~ msgid "Submodule work tree '$displaypath' contains a .git directory"
-#~ msgstr ""
-#~ "La copie de travail du sous-module '$displaypath' contient un répertoire ."
-#~ "git"
-
-#~ msgid ""
-#~ "(use 'rm -rf' if you really want to remove it including all of its "
-#~ "history)"
-#~ msgstr ""
-#~ "(utilisez 'rm -rf' si vous voulez vraiment le supprimer en incluant tout "
-#~ "son historique)"
-
-#~ msgid "'%s': %s"
-#~ msgstr "'%s' : %s"
-
-#~ msgid "unable to access '%s': %s"
-#~ msgstr "impossible d'accéder à '%s' : %s"
-
-#~ msgid "    git branch -d %s\n"
-#~ msgstr "    git branch -d %s\n"
-
-#~ msgid "    git branch --set-upstream-to %s\n"
-#~ msgstr "    git branch --set-upstream-to %s\n"
-
-#~ msgid "cannot open %s: %s\n"
-#~ msgstr "impossible d'ouvrir %s : %s\n"
-
-#~ msgid "Please, stage your changes to .gitmodules or stash them to proceed"
-#~ msgstr ""
-#~ "Veuillez indexer vos modifications de .gitmodules ou remisez-les pour "
-#~ "continuer"
-
-#~ msgid "failed to remove: %s"
-#~ msgstr "échec de la suppression de %s"
-
-#~ msgid "The --exec option must be used with the --interactive option"
-#~ msgstr "L'option --exec doit être utilisée avec l'option --interactive"
-
-#~ msgid ""
-#~ "Submodule path '$displaypath' not initialized\n"
-#~ "Maybe you want to use 'update --init'?"
-#~ msgstr ""
-#~ "Chemin de sous-module '$displaypath' non initialisé\n"
-#~ "Peut-être souhaitez-vous utiliser 'update --init' ?"
-
-#~ msgid "Forward-port local commits to the updated upstream head"
-#~ msgstr ""
-#~ "Reporter les validations locales sur le sommet mis à jour d'une branche "
-#~ "amont"
-
-#~ msgid "improper format entered align:%s"
-#~ msgstr "format non convenable align:%s"
-
-#~ msgid ""
-#~ "push.default is unset; its implicit value has changed in\n"
-#~ "Git 2.0 from 'matching' to 'simple'. To squelch this message\n"
-#~ "and maintain the traditional behavior, use:\n"
-#~ "\n"
-#~ "  git config --global push.default matching\n"
-#~ "\n"
-#~ "To squelch this message and adopt the new behavior now, use:\n"
-#~ "\n"
-#~ "  git config --global push.default simple\n"
-#~ "\n"
-#~ "When push.default is set to 'matching', git will push local branches\n"
-#~ "to the remote branches that already exist with the same name.\n"
-#~ "\n"
-#~ "Since Git 2.0, Git defaults to the more conservative 'simple'\n"
-#~ "behavior, which only pushes the current branch to the corresponding\n"
-#~ "remote branch that 'git pull' uses to update the current branch.\n"
-#~ "\n"
-#~ "See 'git help config' and search for 'push.default' for further "
-#~ "information.\n"
-#~ "(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode\n"
-#~ "'current' instead of 'simple' if you sometimes use older versions of Git)"
-#~ msgstr ""
-#~ "push.default n'est pas défini ; sa valeur implicite a changé dans Git "
-#~ "2.0\n"
-#~ "de 'matching' vers 'simple'. Pour supprimer ce message et maintenir\n"
-#~ "le comportement actuel après la modification de la valeur de défaut, "
-#~ "utilisez :\n"
-#~ "\n"
-#~ "  git config --global push.default matching\n"
-#~ "\n"
-#~ "Pour supprimer ce message et adopter le nouveau comportement maintenant, "
-#~ "utilisez :\n"
-#~ "\n"
-#~ "  git config --global push.default simple\n"
-#~ "\n"
-#~ "Quand push.default vaudra 'matching', git poussera les branches locales\n"
-#~ "sur les branches distantes qui existent déjà avec le même nom.\n"
-#~ "\n"
-#~ "Depuis Git 2.0, Git utilise par défaut le comportement plus conservatif "
-#~ "'simple'\n"
-#~ "qui ne pousse la branche courante que vers la branche distante "
-#~ "correspondante\n"
-#~ "que 'git pull' utilise pour mettre à jour la branche courante.\n"
-#~ " \n"
-#~ "Voir 'git help config' et chercher 'push.default' pour plus "
-#~ "d'information.\n"
-#~ "(le mode 'simple' a été introduit dans Git 1.7.11. Utilisez le mode "
-#~ "similaire\n"
-#~ "'current' au lieu de 'simple' si vous utilisez de temps en temps "
-#~ "d'anciennes versions de Git)"
-
-#~ msgid "check|on-demand|no"
-#~ msgstr "check|on-demand|no"
-
-#~ msgid "Could not append '%s'"
-#~ msgstr "Impossible d'ajouter '%s'"
-
-#~ msgid "Missing author: %s"
-#~ msgstr "Auteur manquant : %s"
-
-#~ msgid "Testing "
-#~ msgstr "Test en cours "
-
-#~ msgid "unable to look up current user in the passwd file: %s"
-#~ msgstr ""
-#~ "impossible de rechercher l'utilisateur actuel dans le fichier de mots de "
-#~ "passe : %s"
-
-#~ msgid "no such user"
-#~ msgstr "utilisateur inconnu"
-
-#~ msgid "branch '%s' does not point at a commit"
-#~ msgstr "la branche '%s' ne pointe pas sur un commit"
-
-#~ msgid "print only merged branches"
-#~ msgstr "afficher seulement les branches fusionnées"
-
-#~ msgid "--dissociate given, but there is no --reference"
-#~ msgstr "--dissociate est spécifié, mais --reference est absent"
-
-#~ msgid "show usage"
-#~ msgstr "afficher l'usage"
-
-#~ msgid "insanely long template name %s"
-#~ msgstr "nom de modèle démentiellement long %s"
-
-#~ msgid "insanely long symlink %s"
-#~ msgstr "lien symbolique démentiellement long %s"
-
-#~ msgid "insanely long template path %s"
-#~ msgstr "chemin de modèle %s démentiellement long"
-
-#~ msgid "unsupported sort specification '%s'"
-#~ msgstr "spécification de tri non supportée '%s'"
-
-#~ msgid "unsupported sort specification '%s' in variable '%s'"
-#~ msgstr "spécification de tri non supportée '%s' dans le variable '%s'"
-
-#~ msgid "switch 'points-at' requires an object"
-#~ msgstr "le commutateur 'points-at' a besoin d'un objet"
-
-#~ msgid "--sort and -n are incompatible"
-#~ msgstr "--sort et -n sont incompatibles"
-
-#~ msgid "Gitdir '$a' is part of the submodule path '$b' or vice versa"
-#~ msgstr ""
-#~ "Le répertoire Git '$a' fait partie du chemin de sous-module '$b' ou vice-"
-#~ "versa"
-
-#~ msgid "false|true|preserve"
-#~ msgstr "false|true|preserve"
-
-#~ msgid "BUG: reopen a lockfile that is still open"
-#~ msgstr "BUG: réouverture d'un fichier verrou déjà ouvert"
-
-#~ msgid "BUG: reopen a lockfile that has been committed"
-#~ msgstr "BUG: réouverture d'un fichier verrou validé"
-
-#~ msgid "option %s does not accept negative form"
-#~ msgstr "l'option %s n'accepte pas de valeur négative"
-
-#~ msgid "unable to parse value '%s' for option %s"
-#~ msgstr "impossible d'analyser la valeur '%s' pour l'option %s"
-
-#~ msgid "-b and -B are mutually exclusive"
-#~ msgstr "-b et -B sont mutuellement exclusifs"
-
-#~ msgid ""
-#~ "When you have resolved this problem, run \"$cmdline --continue\".\n"
-#~ "If you prefer to skip this patch, run \"$cmdline --skip\" instead.\n"
-#~ "To restore the original branch and stop patching, run \"$cmdline --abort"
-#~ "\"."
-#~ msgstr ""
-#~ "Lorsque vous aurez résolu ce problème, lancez \"$cmdline --continue\".\n"
-#~ "Si vous préférez sauter ce patch, lancez \"$cmdline --skip\" à la place.\n"
-#~ "Pour restaurer la branche d'origine et stopper le patchage, lancez "
-#~ "\"$cmdline --abort\"."
-
-#~ msgid "Patch format $patch_format is not supported."
-#~ msgstr "Le format de patch $patch_format n'est pas supporté."
-
-#~ msgid "Please make up your mind. --skip or --abort?"
-#~ msgstr "Décidez-vous. --skip ou --abort ?"
-
-#~ msgid ""
-#~ "Patch is empty.  Was it split wrong?\n"
-#~ "If you would prefer to skip this patch, instead run \"$cmdline --skip\".\n"
-#~ "To restore the original branch and stop patching run \"$cmdline --abort\"."
-#~ msgstr ""
-#~ "Le patch est vide.  Était-il mal découpé ?\n"
-#~ "Si vous préférez sauter ce patch, lancez plutôt \"$cmdline --skip\".\n"
-#~ "Pour restaurer la branche d'origine et stopper le patchage, lancez "
-#~ "\"$cmdline --abort\"."
-
-#~ msgid "Patch does not have a valid courriel address."
-#~ msgstr "Le patch n'a pas d'adresse courriel valide."
-
-#~ msgid "Applying: $FIRSTLINE"
-#~ msgstr "Application : $FIRSTLINE"
-
-#~ msgid "Patch failed at $msgnum $FIRSTLINE"
-#~ msgstr "Le patch a échoué à $msgnum $FIRSTLINE"
-
-#~ msgid ""
-#~ "Pull is not possible because you have unmerged files.\n"
-#~ "Please, fix them up in the work tree, and then use 'git add/rm <file>'\n"
-#~ "as appropriate to mark resolution and make a commit."
-#~ msgstr ""
-#~ "Le tirage n'est pas possible car vous avez des fichiers non fusionnés.\n"
-#~ "Veuillez les corriger dans votre copie de travail, utiliser alors 'git "
-#~ "add/rm <fichier>'\n"
-#~ "si nécessaire pour marquer comme résolu et valider."
-
-#~ msgid "no branch specified"
-#~ msgstr "aucune branche spécifiée"
-
-#~ msgid "prune .git/worktrees"
-#~ msgstr "éliminer .git/worktrees"
-
-#~ msgid "The most commonly used git commands are:"
-#~ msgstr "Les commandes git les plus utilisées sont :"
-
-#~ msgid "No such branch: '%s'"
-#~ msgstr "Branche inconnue : '%s'"
-
-#~ msgid "Could not create git link %s"
-#~ msgstr "Impossible de créer le lien git %s"
-
-#~ msgid "Invalid gc.pruneexpire: '%s'"
-#~ msgstr "gc.pruneexpire invalide : '%s'"
-
-#~ msgid "(detached from %s)"
-#~ msgstr "(détaché de %s)"
-
-#~ msgid "No existing author found with '%s'"
-#~ msgstr "Aucun auteur existant trouvé avec '%s'"
-
-#~ msgid "search also in ignored files"
-#~ msgstr "rechercher aussi dans les fichiers ignorés"
-
-#~ msgid "git remote set-head <name> (-a | --auto | -d | --delete |<branch>)"
-#~ msgstr "git remote set-head <nom> (-a | --auto | -d | --delete |<branche>)"
-
-#~ msgid "no files added"
-#~ msgstr "aucun fichier ajouté"
-
-#~ msgid "slot"
-#~ msgstr "emplacement"
-
-#~ msgid "Failed to lock ref for update"
-#~ msgstr "Échec du verrouillage de la référence pour mise à jour"
-
-#~ msgid "Failed to write ref"
-#~ msgstr "Échec de l'écriture de la référence"
-
-#~ msgid "Failed to lock HEAD during fast_forward_to"
-#~ msgstr "Échec du verrouillage de HEAD pendant l'avance rapide"
-
-#~ msgid "cannot lock HEAD ref"
-#~ msgstr "impossible de verrouiller la référence HEAD"
-
-#~ msgid "cannot update HEAD ref"
-#~ msgstr "impossible de mettre à jour la référence HEAD"
-
-#~ msgid "%s: cannot lock the ref"
-#~ msgstr "%s : impossible de verrouiller la référence"
-
-#~ msgid "%s: cannot update the ref"
-#~ msgstr "%s : impossible de mettre à jour la référence"
-
-#~ msgid "commit has empty message"
-#~ msgstr "le commit a un message vide"
-
-#~ msgid "Failed to chdir: %s"
-#~ msgstr "Échec de chdir: %s"
-
-#~ msgid "Tracking not set up: name too long: %s"
-#~ msgstr "Suivi de branche non paramétré : le nom est trop long : %s"
-
-#~ msgid "could not find .gitmodules in index"
-#~ msgstr "impossible de trouver .gitmodules dans l'index"
-
-#~ msgid "reading updated .gitmodules failed"
-#~ msgstr "échec de la lecture du .gitmodules mis à jour"
-
-#~ msgid "unable to stat updated .gitmodules"
-#~ msgstr "échec de stat du .gitmodules mis à jour"
-
-#~ msgid "unable to remove .gitmodules from index"
-#~ msgstr "suppression du .gitmodules dans l'index impossible"
-
-#~ msgid "adding updated .gitmodules failed"
-#~ msgstr "échec de l'ajout du .gitmodules mis à jour"
-
-#~ msgid "bug"
-#~ msgstr "bogue"
-
-#~ msgid ", behind "
-#~ msgstr ", derrière "
-
-#~ msgid ""
-#~ "The behavior of 'git add %s (or %s)' with no path argument from a\n"
-#~ "subdirectory of the tree will change in Git 2.0 and should not be used "
-#~ "anymore.\n"
-#~ "To add content for the whole tree, run:\n"
-#~ "\n"
-#~ "  git add %s :/\n"
-#~ "  (or git add %s :/)\n"
-#~ "\n"
-#~ "To restrict the command to the current directory, run:\n"
-#~ "\n"
-#~ "  git add %s .\n"
-#~ "  (or git add %s .)\n"
-#~ "\n"
-#~ "With the current Git version, the command is restricted to the current "
-#~ "directory.\n"
-#~ msgstr ""
-#~ "Le comportement de 'git add %s (ou %s)' sans argument de chemin depuis "
-#~ "un\n"
-#~ "sous-répertoire du projet va changer dans Git 2.0 et ne doit plus être "
-#~ "utilisé.\n"
-#~ "Pour ajouter le contenu de toute l'arborescence, lancez :\n"
-#~ "\n"
-#~ "  git add %s :/\n"
-#~ "  (ou git add %s :/)\n"
-#~ "\n"
-#~ "Pour restreindre la commande au répertoire courant, lancez :\n"
-#~ "\n"
-#~ "  git add %s .\n"
-#~ "  (ou git add %s .)\n"
-#~ "\n"
-#~ "Avec la version actuelle de Git, la commande est restreinte au répertoire "
-#~ "courant.\n"
-
-#~ msgid ""
-#~ "You ran 'git add' with neither '-A (--all)' or '--ignore-removal',\n"
-#~ "whose behaviour will change in Git 2.0 with respect to paths you "
-#~ "removed.\n"
-#~ "Paths like '%s' that are\n"
-#~ "removed from your working tree are ignored with this version of Git.\n"
-#~ "\n"
-#~ "* 'git add --ignore-removal <pathspec>', which is the current default,\n"
-#~ "  ignores paths you removed from your working tree.\n"
-#~ "\n"
-#~ "* 'git add --all <pathspec>' will let you also record the removals.\n"
-#~ "\n"
-#~ "Run 'git status' to check the paths you removed from your working tree.\n"
-#~ msgstr ""
-#~ "Vous avez lancé 'git add' sans '-A (--all)' ni '--ignore-removal',\n"
-#~ "dont le comportement va changer dans Git 2.0 avec le respect des chemins "
-#~ "que vous supprimez.\n"
-#~ "Les chemins tels que '%s' qui ont été\n"
-#~ "retirés de votre copie de travail sont ignorés avec cette version de "
-#~ "Git.\n"
-#~ "\n"
-#~ "* 'git add --ignore-removal <chemin>', qui est l'option par défaut "
-#~ "actuelle,\n"
-#~ "  ignore les chemins que vous avez supprimés de votre copie de travail.\n"
-#~ "\n"
-#~ "* 'git add --all <chemin>' permet d'enregistrer aussi les suppressions.\n"
-#~ "\n"
-#~ "Lancez 'git status' pour vérifier les chemins que vous avez supprimés de "
-#~ "votre copie de travail.\n"
-
-#~ msgid "key id"
-#~ msgstr "identifiant de clé"
-
-#~ msgid ""
-#~ "Auto packing the repository for optimum performance. You may also\n"
-#~ "run \"git gc\" manually. See \"git help gc\" for more information.\n"
-#~ msgstr ""
-#~ "Compression automatique du dépôt pour une performance optimum. Vous "
-#~ "pouvez aussi\n"
-#~ "lancer \"git gc\" manuellement. Voir \"git help gc\" pour plus "
-#~ "d'information.\n"
-
-#~ msgid ""
-#~ "Updates were rejected because a pushed branch tip is behind its remote\n"
-#~ "counterpart. If you did not intend to push that branch, you may want to\n"
-#~ "specify branches to push or set the 'push.default' configuration "
-#~ "variable\n"
-#~ "to 'simple', 'current' or 'upstream' to push only the current branch."
-#~ msgstr ""
-#~ "Les mises à jour ont été rejetées car la pointe de la branche poussée est "
-#~ "derrière\n"
-#~ "son homologue distant. Si vous ne vouliez pas pousser cette branche, vous "
-#~ "pourriez\n"
-#~ "vouloir spécifier les branches à pousser ou définir la variable de "
-#~ "configuration\n"
-#~ "'push.default' à 'simple', 'current' ou 'upstream' pour pousser seulement "
-#~ "la branche courante."
-
-#~ msgid "deleted:    %s"
-#~ msgstr "supprimé :  %s"
-
-#~ msgid "modified:   %s"
-#~ msgstr "modifié :   %s"
-
-#~ msgid "renamed:    %s -> %s"
-#~ msgstr "renommé :   %s -> %s"
-
-#~ msgid "unmerged:   %s"
-#~ msgstr "non fus. :  %s"
-
-#~ msgid "input paths are terminated by a null character"
-#~ msgstr "les chemins en entrée sont terminés par le caractère nul"
-
-#~ msgid ""
-#~ "Aborting. Consider using either the --force or --include-untracked option."
-#~ msgstr "Abandon. Utilisez l'option --force ou --include-untracked."