l10n: fr.po (2257t) update for version 2.1.0
[gitweb.git] / po / fr.po
index 0b9d59e8fa43dca6b580d9436712a7d09f27472b..aac39d0f056cbbc1bc3a966c29e820e885d86276 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -73,8 +73,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2014-02-01 08:06+0800\n"
-"PO-Revision-Date: 2014-02-02 14:35+0100\n"
+"POT-Creation-Date: 2014-08-04 14:48+0800\n"
+"PO-Revision-Date: 2014-08-05 19:23+0200\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"
@@ -83,24 +83,19 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n<=1 ?0 : 1;\n"
 
-#: advice.c:57
+#: advice.c:55
 #, c-format
 msgid "hint: %.*s\n"
 msgstr "astuce: %.*s\n"
 
-#.
-#. * Message used both when 'git commit' fails and when
-#. * other commands doing a merge do.
-#.
-#: advice.c:87
+#: advice.c:88
 msgid ""
-"Fix them up in the work tree,\n"
-"and then use 'git add/rm <file>' as\n"
-"appropriate to mark resolution and make a commit,\n"
-"or use 'git commit -a'."
+"Fix them up in the work tree, and then use 'git add/rm <file>'\n"
+"as appropriate to mark resolution and make a commit, or use\n"
+"'git commit -a'."
 msgstr ""
 "Corrigez-les dans la copie de travail,\n"
-"et utilisez 'git add/rm <fichier>' si\n"
+"puis utilisez 'git add/rm <fichier>' si\n"
 "nécessaire pour marquer la résolution et valider,\n"
 "ou utilisez 'git commit -a'."
 
@@ -123,76 +118,76 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <dépôt> [--exec <commande>] --list"
 
-#: archive.c:242 builtin/add.c:240 builtin/add.c:559 builtin/rm.c:328
+#: archive.c:243 builtin/add.c:136 builtin/add.c:427 builtin/rm.c:328
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "le chemin '%s' ne correspond à aucun fichier"
 
-#: archive.c:327
+#: archive.c:328
 msgid "fmt"
 msgstr "fmt"
 
-#: archive.c:327
+#: archive.c:328
 msgid "archive format"
 msgstr "format d'archive"
 
-#: archive.c:328 builtin/log.c:1193
+#: archive.c:329 builtin/log.c:1201
 msgid "prefix"
 msgstr "préfixe"
 
-#: archive.c:329
+#: archive.c:330
 msgid "prepend prefix to each pathname in the archive"
 msgstr "préfixer chaque chemin de fichier dans l'archive"
 
-#: archive.c:330 builtin/archive.c:88 builtin/blame.c:2265
-#: builtin/blame.c:2266 builtin/config.c:58 builtin/fast-export.c:680
-#: builtin/fast-export.c:682 builtin/grep.c:716 builtin/hash-object.c:77
-#: builtin/ls-files.c:486 builtin/ls-files.c:489 builtin/notes.c:408
-#: builtin/notes.c:565 builtin/read-tree.c:108 parse-options.h:154
+#: archive.c:331 builtin/archive.c:88 builtin/blame.c:2517
+#: builtin/blame.c:2518 builtin/config.c:57 builtin/fast-export.c:709
+#: builtin/fast-export.c:711 builtin/grep.c:712 builtin/hash-object.c:77
+#: builtin/ls-files.c:489 builtin/ls-files.c:492 builtin/notes.c:412
+#: builtin/notes.c:569 builtin/read-tree.c:108 parse-options.h:151
 msgid "file"
 msgstr "fichier"
 
-#: archive.c:331 builtin/archive.c:89
+#: archive.c:332 builtin/archive.c:89
 msgid "write the archive to this file"
 msgstr "écrire l'archive dans ce fichier"
 
-#: archive.c:333
+#: archive.c:334
 msgid "read .gitattributes in working directory"
 msgstr "lire .gitattributes dans le répertoire de travail"
 
-#: archive.c:334
+#: archive.c:335
 msgid "report archived files on stderr"
 msgstr "afficher les fichiers archivés sur stderr"
 
-#: archive.c:335
+#: archive.c:336
 msgid "store only"
 msgstr "stockage seulement"
 
-#: archive.c:336
+#: archive.c:337
 msgid "compress faster"
 msgstr "compression rapide"
 
-#: archive.c:344
+#: archive.c:345
 msgid "compress better"
 msgstr "compression efficace"
 
-#: archive.c:347
+#: archive.c:348
 msgid "list supported archive formats"
 msgstr "afficher les formats d'archive supportés"
 
-#: archive.c:349 builtin/archive.c:90 builtin/clone.c:84
+#: archive.c:350 builtin/archive.c:90 builtin/clone.c:84
 msgid "repo"
 msgstr "dépôt"
 
-#: archive.c:350 builtin/archive.c:91
+#: archive.c:351 builtin/archive.c:91
 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:351 builtin/archive.c:92 builtin/notes.c:487
+#: archive.c:352 builtin/archive.c:92 builtin/notes.c:491
 msgid "command"
 msgstr "commande"
 
-#: archive.c:352 builtin/archive.c:93
+#: archive.c:353 builtin/archive.c:93
 msgid "path to the remote git-upload-archive command"
 msgstr "chemin vers la commande distante git-upload-archive"
 
@@ -209,90 +204,85 @@ msgstr ""
 msgid "Not setting branch %s as its own upstream."
 msgstr "La branche %s ne peut pas être sa propre branche amont."
 
-#: branch.c:82
+#: branch.c:83
 #, c-format
 msgid "Branch %s set up to track remote branch %s from %s by rebasing."
 msgstr ""
 "La branche %s est paramétrée pour suivre la branche distante %s de %s en "
 "rebasant."
 
-#: branch.c:83
+#: branch.c:84
 #, c-format
 msgid "Branch %s set up to track remote branch %s from %s."
 msgstr ""
 "La branche %s est paramétrée pour suivre la branche distante %s depuis %s."
 
-#: branch.c:87
+#: branch.c:88
 #, c-format
 msgid "Branch %s set up to track local branch %s by rebasing."
 msgstr ""
 "La branche %s est paramétrée pour suivre la branche locale %s en rebasant."
 
-#: branch.c:88
+#: branch.c:89
 #, c-format
 msgid "Branch %s set up to track local branch %s."
 msgstr "La branche %s est paramétrée pour suivre la branche locale %s."
 
-#: branch.c:92
+#: branch.c:94
 #, c-format
 msgid "Branch %s set up to track remote ref %s by rebasing."
 msgstr ""
 "La branche %s est paramétrée pour suivre la référence distante %s en "
 "rebasant."
 
-#: branch.c:93
+#: branch.c:95
 #, c-format
 msgid "Branch %s set up to track remote ref %s."
 msgstr "La branche %s est paramétrée pour suivre la référence distante %s."
 
-#: branch.c:97
+#: branch.c:99
 #, c-format
 msgid "Branch %s set up to track local ref %s by rebasing."
 msgstr ""
 "La branche %s est paramétrée pour suivre la référence locale %s en rebasant."
 
-#: branch.c:98
+#: branch.c:100
 #, c-format
 msgid "Branch %s set up to track local ref %s."
 msgstr "La branche %s est paramétrée pour suivre la référence locale %s."
 
-#: branch.c:118
-#, c-format
-msgid "Tracking not set up: name too long: %s"
-msgstr "Suivi de branche non paramétré : le nom est trop long : %s"
-
-#: branch.c:137
+#: branch.c:133
 #, c-format
 msgid "Not tracking: ambiguous information for ref %s"
 msgstr "Pas de suivi : information ambiguë pour la référence %s"
 
-#: branch.c:182
+#: branch.c:178
 #, c-format
 msgid "'%s' is not a valid branch name."
 msgstr "'%s' n'est pas un nom de branche valide."
 
-#: branch.c:187
+#: branch.c:183
 #, c-format
 msgid "A branch named '%s' already exists."
 msgstr "Une branche nommée '%s' existe déjà."
 
-#: branch.c:195
+#: branch.c:191
 msgid "Cannot force update the current branch."
 msgstr "Impossible de forcer la mise à jour de la branche courante."
 
-#: branch.c:215
+#: branch.c:211
 #, c-format
 msgid "Cannot setup tracking information; starting point '%s' is not a branch."
 msgstr ""
 "Impossible de paramétrer le suivi de branche ; le point de départ '%s' n'est "
 "pas une branche."
 
-#: branch.c:217
+#: branch.c:213
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr "la branche amont demandée '%s' n'existe pas"
 
-#: branch.c:219
+#: branch.c:215
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -305,120 +295,120 @@ msgid ""
 msgstr ""
 "\n"
 "Si vous comptez baser votre travail sur une branche\n"
-"amont qui existe déjà sur le serveur distant, vous pourriez\n"
-"devoir lancer \"git fetch\" pour la récupérer.\n"
+"amont qui existe déjà sur le serveur distant, vous pouvez\n"
+"lancer \"git fetch\" pour la récupérer.\n"
 "\n"
 "Si vous comptez pousser une nouvelle branche locale qui suivra\n"
-"sa jumelle distante, vous souhaiterez utiliser \"git push -u\"\n"
+"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:264
+#: branch.c:260
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr "Nom d'objet invalide : '%s'."
 
-#: branch.c:284
+#: branch.c:280
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr "Nom d'objet ambigu : '%s'."
 
-#: branch.c:289
+#: branch.c:285
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr "Point d'embranchement invalide : '%s'."
 
-#: branch.c:295
+#: branch.c:291
 msgid "Failed to lock ref for update"
 msgstr "Échec du verrouillage de la référence pour mise à jour"
 
-#: branch.c:313
+#: branch.c:309
 msgid "Failed to write ref"
 msgstr "Échec de l'écriture de la référence"
 
-#: bundle.c:37
+#: bundle.c:33
 #, c-format
 msgid "'%s' does not look like a v2 bundle file"
 msgstr "'%s' ne semble pas être un fichier bundle v2"
 
-#: bundle.c:64
+#: bundle.c:60
 #, c-format
 msgid "unrecognized header: %s%s (%d)"
 msgstr "en-tête non reconnu : %s%s (%d)"
 
-#: bundle.c:90 builtin/commit.c:706
+#: bundle.c:86 builtin/commit.c:755
 #, c-format
 msgid "could not open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: bundle.c:141
+#: bundle.c:138
 msgid "Repository lacks these prerequisite commits:"
-msgstr "Le dépôt ne dispose pas des commits prérequis :"
+msgstr "Le dépôt ne dispose pas des commits prérequis suivants :"
 
-#: bundle.c:165 sequencer.c:662 sequencer.c:1112 builtin/log.c:332
-#: builtin/log.c:821 builtin/log.c:1418 builtin/log.c:1644 builtin/merge.c:357
+#: bundle.c:162 sequencer.c:630 sequencer.c:1085 builtin/log.c:330
+#: builtin/log.c:821 builtin/log.c:1428 builtin/log.c:1665 builtin/merge.c:357
 #: builtin/shortlog.c:158
 msgid "revision walk setup failed"
 msgstr "échec de la préparation du parcours des révisions"
 
-#: bundle.c:187
+#: bundle.c:184
 #, 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:194
+#: bundle.c:191
 msgid "The bundle records a complete history."
 msgstr "Le colis enregistre l'historique complet."
 
-#: bundle.c:196
+#: bundle.c:193
 #, 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:296
+#: bundle.c:289
 msgid "rev-list died"
 msgstr "rev-list a disparu"
 
-#: bundle.c:302 builtin/log.c:1329 builtin/shortlog.c:261
+#: bundle.c:295 builtin/log.c:1339 builtin/shortlog.c:261
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "argument non reconnu : %s"
 
-#: bundle.c:337
+#: bundle.c:330
 #, 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:382
+#: bundle.c:375
 msgid "Refusing to create empty bundle."
 msgstr "Refus de créer un colis vide."
 
-#: bundle.c:398
+#: bundle.c:390
 msgid "Could not spawn pack-objects"
 msgstr "Impossible de créer des objets groupés"
 
-#: bundle.c:416
+#: bundle.c:408
 msgid "pack-objects died"
 msgstr "les objets groupés ont disparu"
 
-#: bundle.c:419
+#: bundle.c:411
 #, c-format
 msgid "cannot create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: bundle.c:441
+#: bundle.c:433
 msgid "index-pack died"
 msgstr "l'index de groupe a disparu"
 
-#: commit.c:53
+#: commit.c:40
 #, c-format
 msgid "could not parse %s"
 msgstr "impossible d'analyser %s"
 
-#: commit.c:55
+#: commit.c:42
 #, c-format
 msgid "%s %s is not a commit!"
 msgstr "%s %s n'est pas un commit !"
@@ -494,6 +484,7 @@ msgid_plural "%lu years"
 msgstr[0] "%lu an"
 msgstr[1] "%lu ans"
 
+#. TRANSLATORS: "%s" is "<n> years"
 #: date.c:149
 #, c-format
 msgid "%s, %lu month ago"
@@ -513,24 +504,28 @@ msgstr[1] "il y a %lu ans"
 msgid "failed to read orderfile '%s'"
 msgstr "impossible de lire le fichier de commande '%s'"
 
-#: diff.c:113
+#: diffcore-rename.c:514
+msgid "Performing inexact rename detection"
+msgstr "Détection de renommage inexact en cours"
+
+#: diff.c:114
 #, c-format
 msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
 msgstr ""
 "  Impossible d'analyser le pourcentage de modification de dirstat '%s'\n"
 
-#: diff.c:118
+#: diff.c:119
 #, c-format
 msgid "  Unknown dirstat parameter '%s'\n"
 msgstr "  Paramètre dirstat inconnu '%s'\n"
 
-#: diff.c:213
+#: diff.c:214
 #, c-format
 msgid "Unknown value for 'diff.submodule' config variable: '%s'"
 msgstr ""
 "Valeur inconnue pour la variable de configuration 'diff.submodule' : '%s'"
 
-#: diff.c:263
+#: diff.c:267
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
@@ -539,7 +534,16 @@ msgstr ""
 "Erreurs dans la variable de configuration 'diff.dirstat' :\n"
 "%s"
 
-#: diff.c:3509
+#: diff.c:2934
+#, c-format
+msgid "external diff died, stopping at %s"
+msgstr "l'application de diff externe a disparu, arrêt à %s"
+
+#: diff.c:3329
+msgid "--follow requires exactly one pathspec"
+msgstr "--follow a besoin d'une spécification de chemin unique"
+
+#: diff.c:3492
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -548,62 +552,62 @@ msgstr ""
 "Impossible d'analyser le paramètre de l'option --dirstat/-X :\n"
 "%s"
 
-#: diff.c:3523
+#: diff.c:3506
 #, c-format
 msgid "Failed to parse --submodule option parameter: '%s'"
 msgstr "Impossible d'analyser le paramètre de l'option --submodule : '%s'"
 
-#: gpg-interface.c:59 gpg-interface.c:131
+#: gpg-interface.c:73 gpg-interface.c:145
 msgid "could not run gpg."
 msgstr "impossible de lancer gpg."
 
-#: gpg-interface.c:71
+#: gpg-interface.c:85
 msgid "gpg did not accept the data"
 msgstr "gpg n'a pas accepté les données"
 
-#: gpg-interface.c:82
+#: gpg-interface.c:96
 msgid "gpg failed to sign the data"
 msgstr "gpg n'a pas pu signer les données"
 
-#: gpg-interface.c:115
+#: gpg-interface.c:129
 #, c-format
 msgid "could not create temporary file '%s': %s"
 msgstr "impossible de créer un fichier temporaire '%s' : %s"
 
-#: gpg-interface.c:118
+#: gpg-interface.c:132
 #, c-format
 msgid "failed writing detached signature to '%s': %s"
 msgstr "impossible d'écrire la signature détachée dans '%s' : %s"
 
-#: grep.c:1695
+#: grep.c:1703
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "'%s' : lecture de %s impossible"
 
-#: grep.c:1712
+#: grep.c:1720
 #, c-format
 msgid "'%s': %s"
 msgstr "'%s' : %s"
 
-#: grep.c:1723
+#: grep.c:1731
 #, c-format
 msgid "'%s': short read %s"
 msgstr "'%s' : lecture tronquée %s"
 
-#: help.c:210
+#: help.c:207
 #, c-format
 msgid "available git commands in '%s'"
 msgstr "commandes git disponibles dans '%s'"
 
-#: help.c:217
+#: help.c:214
 msgid "git commands available from elsewhere on your $PATH"
 msgstr "commandes git disponibles depuis un autre endroit de votre $PATH"
 
-#: help.c:233
+#: help.c:230
 msgid "The most commonly used git commands are:"
 msgstr "Les commandes git les plus utilisées sont :"
 
-#: help.c:290
+#: help.c:289
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -612,11 +616,11 @@ 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:347
+#: help.c:346
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "Ahem. Votre système n'indique aucune commande Git."
 
-#: help.c:369
+#: help.c:368
 #, c-format
 msgid ""
 "WARNING: You called a Git command named '%s', which does not exist.\n"
@@ -624,19 +628,19 @@ msgid ""
 msgstr ""
 "ATTENTION : vous avez invoqué une commande Git nommée '%s' qui n'existe "
 "pas.\n"
-"Poursuite en supposant que vous avez voulu dire '%s'"
+"Continuons en supposant que vous avez voulu dire '%s'"
 
-#: help.c:374
+#: help.c:373
 #, c-format
 msgid "in %0.1f seconds automatically..."
 msgstr "dans %0.1f secondes automatiquement..."
 
-#: help.c:381
+#: help.c:380
 #, 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:385 help.c:444
+#: help.c:384 help.c:444
 msgid ""
 "\n"
 "Did you mean this?"
@@ -655,11 +659,11 @@ msgstr[1] ""
 msgid "%s: %s - %s"
 msgstr "%s: %s - %s"
 
-#: merge.c:56
+#: merge.c:40
 msgid "failed to read the cache"
 msgstr "impossible de lire le cache"
 
-#: merge.c:110 builtin/checkout.c:358 builtin/checkout.c:559
+#: merge.c:93 builtin/checkout.c:356 builtin/checkout.c:556
 #: builtin/clone.c:661
 msgid "unable to write new index file"
 msgstr "impossible d'écrire le nouveau fichier d'index"
@@ -669,75 +673,73 @@ msgstr "impossible d'écrire le nouveau fichier d'index"
 msgid "(bad commit)\n"
 msgstr "(mauvais commit)\n"
 
-#: merge-recursive.c:206
+#: merge-recursive.c:210
 #, c-format
 msgid "addinfo_cache failed for path '%s'"
 msgstr "échec de addinfo_cache pour le chemin '%s'"
 
-#: merge-recursive.c:269
+#: merge-recursive.c:271
 msgid "error building trees"
 msgstr "erreur de construction des arbres"
 
-#: merge-recursive.c:673
+#: merge-recursive.c:692
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "impossible de créer le chemin '%s' %s"
 
-#: merge-recursive.c:684
+#: merge-recursive.c:703
 #, 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"
 
-#. something else exists
-#. .. but not some other error (who really cares what?)
-#: merge-recursive.c:698 merge-recursive.c:719
+#: merge-recursive.c:717 merge-recursive.c:738
 msgid ": perhaps a D/F conflict?"
 msgstr ": peut-être un conflit D/F ?"
 
-#: merge-recursive.c:709
+#: merge-recursive.c:728
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "refus de perdre le fichier non suivi '%s'"
 
-#: merge-recursive.c:749
+#: merge-recursive.c:768
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "impossible de lire l'objet %s '%s'"
 
-#: merge-recursive.c:751
+#: merge-recursive.c:770
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "blob attendu pour %s '%s'"
 
-#: merge-recursive.c:774 builtin/clone.c:317
+#: merge-recursive.c:793 builtin/clone.c:317
 #, c-format
 msgid "failed to open '%s'"
 msgstr "échec à l'ouverture de '%s'"
 
-#: merge-recursive.c:782
+#: merge-recursive.c:801
 #, c-format
 msgid "failed to symlink '%s'"
 msgstr "échec à la création du lien symbolique '%s'"
 
-#: merge-recursive.c:785
+#: merge-recursive.c:804
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "ne sait pas traiter %06o %s '%s'"
 
-#: merge-recursive.c:923
+#: merge-recursive.c:942
 msgid "Failed to execute internal merge"
 msgstr "Échec à l'exécution de la fusion interne"
 
-#: merge-recursive.c:927
+#: merge-recursive.c:946
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Impossible d'ajouter %s à la base de données"
 
-#: merge-recursive.c:943
+#: merge-recursive.c:962
 msgid "unsupported object type in the tree"
 msgstr "type d'objet non supporté dans l'arbre"
 
-#: merge-recursive.c:1022 merge-recursive.c:1036
+#: merge-recursive.c:1037 merge-recursive.c:1051
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -746,7 +748,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:1028 merge-recursive.c:1041
+#: merge-recursive.c:1043 merge-recursive.c:1056
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -755,20 +757,20 @@ 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:1082
+#: merge-recursive.c:1097
 msgid "rename"
 msgstr "renommage"
 
-#: merge-recursive.c:1082 wt-status.c:283
+#: merge-recursive.c:1097
 msgid "renamed"
 msgstr "renommé"
 
-#: merge-recursive.c:1138
+#: merge-recursive.c:1153
 #, 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:1160
+#: merge-recursive.c:1175
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -777,197 +779,197 @@ msgstr ""
 "CONFLIT (renommage/renommage) : Renommage de \"%s\"->\"%s\" dans la branche "
 "\"%s\" et renommage \"%s\"->\"%s\" dans \"%s\"%s"
 
-#: merge-recursive.c:1165
+#: merge-recursive.c:1180
 msgid " (left unresolved)"
 msgstr " (laissé non résolu)"
 
-#: merge-recursive.c:1219
+#: merge-recursive.c:1234
 #, 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:1249
+#: merge-recursive.c:1264
 #, 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:1448
+#: merge-recursive.c:1463
 #, 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:1458
+#: merge-recursive.c:1473
 #, c-format
 msgid "Adding merged %s"
 msgstr "Ajout de %s fusionné"
 
-#: merge-recursive.c:1463 merge-recursive.c:1661
+#: merge-recursive.c:1478 merge-recursive.c:1676
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Ajout plutôt comme %s"
 
-#: merge-recursive.c:1514
+#: merge-recursive.c:1529
 #, c-format
 msgid "cannot read object %s"
 msgstr "impossible de lire l'objet %s"
 
-#: merge-recursive.c:1517
+#: merge-recursive.c:1532
 #, c-format
 msgid "object %s is not a blob"
 msgstr "l'objet %s n'est pas un blob"
 
-#: merge-recursive.c:1565
+#: merge-recursive.c:1580
 msgid "modify"
 msgstr "modification"
 
-#: merge-recursive.c:1565 wt-status.c:281
+#: merge-recursive.c:1580
 msgid "modified"
 msgstr "modifié"
 
-#: merge-recursive.c:1575
+#: merge-recursive.c:1590
 msgid "content"
 msgstr "contenu"
 
-#: merge-recursive.c:1582
+#: merge-recursive.c:1597
 msgid "add/add"
 msgstr "ajout/ajout"
 
-#: merge-recursive.c:1616
+#: merge-recursive.c:1631
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "%s sauté (fusion identique à l'existant)"
 
-#: merge-recursive.c:1630
+#: merge-recursive.c:1645
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Fusion automatique de %s"
 
-#: merge-recursive.c:1634 git-submodule.sh:1148
+#: merge-recursive.c:1649 git-submodule.sh:1150
 msgid "submodule"
 msgstr "sous-module"
 
-#: merge-recursive.c:1635
+#: merge-recursive.c:1650
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLIT (%s) : Conflit de fusion dans %s"
 
-#: merge-recursive.c:1725
+#: merge-recursive.c:1740
 #, c-format
 msgid "Removing %s"
 msgstr "Suppression de %s"
 
-#: merge-recursive.c:1750
+#: merge-recursive.c:1765
 msgid "file/directory"
 msgstr "fichier/répertoire"
 
-#: merge-recursive.c:1756
+#: merge-recursive.c:1771
 msgid "directory/file"
 msgstr "répertoire/fichier"
 
-#: merge-recursive.c:1761
+#: merge-recursive.c:1776
 #, 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:1771
+#: merge-recursive.c:1786
 #, c-format
 msgid "Adding %s"
 msgstr "Ajout de %s"
 
-#: merge-recursive.c:1788
+#: merge-recursive.c:1803
 msgid "Fatal merge failure, shouldn't happen."
 msgstr "Échec fatal de fusion, qui ne devrait jamais arriver."
 
-#: merge-recursive.c:1807
+#: merge-recursive.c:1822
 msgid "Already up-to-date!"
 msgstr "Déjà à jour !"
 
-#: merge-recursive.c:1816
+#: merge-recursive.c:1831
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "échec de fusion des arbres %s et %s"
 
-#: merge-recursive.c:1846
+#: merge-recursive.c:1861
 #, c-format
 msgid "Unprocessed path??? %s"
 msgstr "Chemin non traité ??? %s"
 
-#: merge-recursive.c:1891
+#: merge-recursive.c:1906
 msgid "Merging:"
 msgstr "Fusion :"
 
-#: merge-recursive.c:1904
+#: merge-recursive.c:1919
 #, 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:1941
+#: merge-recursive.c:1956
 msgid "merge returned no commit"
 msgstr "la fusion n'a pas retourné de commit"
 
-#: merge-recursive.c:1998
+#: merge-recursive.c:2013
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Impossible d'analyser l'objet '%s'"
 
-#: merge-recursive.c:2010 builtin/merge.c:665
+#: merge-recursive.c:2024 builtin/merge.c:666
 msgid "Unable to write index."
 msgstr "Impossible d'écrire l'index."
 
-#: notes-utils.c:40
+#: notes-utils.c:41
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr "Impossible de valider un arbre de notes non initialisé/référencé"
 
-#: notes-utils.c:81
+#: notes-utils.c:83
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr "Mauvaise valeur de notes.rewriteMode : '%s'"
 
-#: notes-utils.c:91
+#: notes-utils.c:93
 #, 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/)"
 
 #. TRANSLATORS: The first %s is the name of the
 #. environment variable, the second %s is its value
-#: notes-utils.c:118
+#: notes-utils.c:120
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr "Mauvaise valeur de %s : '%s'"
 
-#: object.c:202
+#: object.c:234
 #, c-format
 msgid "unable to parse object: %s"
 msgstr "impossible d'analyser l'objet : %s"
 
-#: parse-options.c:537
+#: parse-options.c:534
 msgid "..."
 msgstr "..."
 
-#: parse-options.c:555
+#: parse-options.c:552
 #, c-format
 msgid "usage: %s"
 msgstr "usage : %s"
 
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation
-#: parse-options.c:559
+#: parse-options.c:556
 #, c-format
 msgid "   or: %s"
 msgstr "   ou : %s"
 
-#: parse-options.c:562
+#: parse-options.c:559
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: parse-options.c:596
+#: parse-options.c:593
 msgid "-NUM"
 msgstr "-NUM"
 
@@ -1019,11 +1021,6 @@ msgstr "%s : '%s' est hors du dépôt"
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr "Le chemin '%s' est dans le sous-module '%.*s'"
 
-#.
-#. * We may want to substitute "this command" with a command
-#. * name. E.g. when add--interactive dies when running
-#. * "checkout -p"
-#.
 #: pathspec.c:353
 #, c-format
 msgid "%s: pathspec magic not supported by this command: %s"
@@ -1031,12 +1028,12 @@ msgstr ""
 "%s : le spécificateur magique de chemin n'est pas supporté par cette "
 "commande : %s"
 
-#: pathspec.c:433
+#: pathspec.c:432
 #, c-format
 msgid "pathspec '%s' is beyond a symbolic link"
 msgstr "le chemin '%s' est au-delà d'un lien symbolique"
 
-#: pathspec.c:442
+#: pathspec.c:441
 msgid ""
 "There is nothing to exclude from by :(exclude) patterns.\n"
 "Perhaps you forgot to add either ':/' or '.' ?"
@@ -1044,6 +1041,28 @@ msgstr ""
 "Il n'y a rien dont il faut exclure par des motifs :(exclure).\n"
 "Peut-être avez-vous oublié d'ajouter ':/' ou '.' ?"
 
+#: progress.c:225
+msgid "done"
+msgstr "fait"
+
+#: read-cache.c:1260
+#, c-format
+msgid ""
+"index.version set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+"version d'index renseignée, mais la valeur est invalide.\n"
+"Utilisation de la version %i"
+
+#: read-cache.c:1270
+#, c-format
+msgid ""
+"GIT_INDEX_VERSION set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+"GIT_INDEX_VERSION est renseigné, mais la valeur est invalide.\n"
+"Utilisation de la version %i"
+
 #: remote.c:753
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
@@ -1059,41 +1078,36 @@ msgstr "%s suit habituellement %s, pas %s"
 msgid "%s tracks both %s and %s"
 msgstr "%s suit à la fois %s et %s"
 
-#.
-#. * This last possibility doesn't occur because
-#. * FETCH_HEAD_IGNORE entries always appear at
-#. * the end of the list.
-#.
 #: remote.c:769
 msgid "Internal error"
 msgstr "Erreur interne"
 
-#: remote.c:1871
+#: remote.c:1943
 #, 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:1875
+#: remote.c:1947
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (utilisez \"git branch --unset-upstream\" pour corriger)\n"
 
-#: remote.c:1878
+#: remote.c:1950
 #, c-format
 msgid "Your branch is up-to-date with '%s'.\n"
 msgstr "Votre branche est à jour avec '%s'.\n"
 
-#: remote.c:1882
+#: remote.c:1954
 #, 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:1888
+#: remote.c:1960
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (utilisez \"git push\" pour publier vos commits locaux)\n"
 
-#: remote.c:1891
+#: remote.c:1963
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -1105,11 +1119,11 @@ msgstr[1] ""
 "Votre branche est en retard sur '%s' de %d commits, et peut être mise à jour "
 "en avance rapide.\n"
 
-#: remote.c:1899
+#: remote.c:1971
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (utilisez \"git pull\" pour mettre à jour votre branche locale)\n"
 
-#: remote.c:1902
+#: remote.c:1974
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -1124,7 +1138,7 @@ msgstr[1] ""
 "Votre branche et '%s' ont divergé,\n"
 "et ont %d et %d commits différents chacune respectivement.\n"
 
-#: remote.c:1912
+#: remote.c:1984
 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"
@@ -1138,19 +1152,19 @@ msgstr "échec de l'ouverture de /dev/null"
 msgid "dup2(%d,%d) failed"
 msgstr "échec de dup2(%d,%d)"
 
-#: sequencer.c:206 builtin/merge.c:783 builtin/merge.c:896
-#: builtin/merge.c:1006 builtin/merge.c:1016
+#: sequencer.c:171 builtin/merge.c:782 builtin/merge.c:893
+#: builtin/merge.c:1003 builtin/merge.c:1013
 #, c-format
 msgid "Could not open '%s' for writing"
 msgstr "Impossible d'ouvrir '%s' en écriture"
 
-#: sequencer.c:208 builtin/merge.c:343 builtin/merge.c:786
-#: builtin/merge.c:1008 builtin/merge.c:1021
+#: sequencer.c:173 builtin/merge.c:343 builtin/merge.c:785
+#: builtin/merge.c:1005 builtin/merge.c:1018
 #, c-format
 msgid "Could not write to '%s'"
 msgstr "Impossible d'écrire dans '%s'"
 
-#: sequencer.c:229
+#: sequencer.c:194
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -1158,7 +1172,7 @@ msgstr ""
 "après résolution des conflits, marquez les chemins corrigés\n"
 "avec 'git add <chemins>' ou 'git rm <chemins>'"
 
-#: sequencer.c:232
+#: sequencer.c:197
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -1168,67 +1182,71 @@ msgstr ""
 "avec 'git add <chemins>' ou 'git rm <chemins>'\n"
 "puis validez le résultat avec 'git commit'"
 
-#: sequencer.c:245 sequencer.c:870 sequencer.c:953
+#: sequencer.c:210 sequencer.c:841 sequencer.c:924
 #, c-format
 msgid "Could not write to %s"
 msgstr "Impossible d'écrire dans %s"
 
-#: sequencer.c:248
+#: sequencer.c:213
 #, c-format
 msgid "Error wrapping up %s"
 msgstr "Erreur à l'emballage de %s"
 
-#: sequencer.c:263
+#: sequencer.c:228
 msgid "Your local changes would be overwritten by cherry-pick."
 msgstr "Vos modifications locales seraient écrasées par cherry-pick."
 
-#: sequencer.c:265
+#: sequencer.c:230
 msgid "Your local changes would be overwritten by revert."
 msgstr "Vos modifications locales seraient écrasées par revert."
 
-#: sequencer.c:268
+#: sequencer.c:233
 msgid "Commit your changes or stash them to proceed."
 msgstr "Validez vos modifications ou les remiser pour continuer."
 
+#: sequencer.c:250
+msgid "Failed to lock HEAD during fast_forward_to"
+msgstr "Échec du verrouillage de HEAD pendant l'avance rapide"
+
 #. TRANSLATORS: %s will be "revert" or "cherry-pick"
-#: sequencer.c:325
+#: sequencer.c:293
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: Impossible d'écrire le nouveau fichier index"
 
-#: sequencer.c:356
+#: sequencer.c:324
 msgid "Could not resolve HEAD commit\n"
 msgstr "Impossible de résoudre le commit HEAD\n"
 
-#: sequencer.c:378
+#: sequencer.c:344
 msgid "Unable to update cache tree\n"
 msgstr "Impossible de mettre à jour l'arbre de cache\n"
 
-#: sequencer.c:423
+#: sequencer.c:391
 #, c-format
 msgid "Could not parse commit %s\n"
 msgstr "Impossible d'analyser le commit %s\n"
 
-#: sequencer.c:428
+#: sequencer.c:396
 #, c-format
 msgid "Could not parse parent commit %s\n"
 msgstr "Impossible d'analyser le commit parent %s\n"
 
-#: sequencer.c:494
+#: sequencer.c:462
 msgid "Your index file is unmerged."
 msgstr "Votre fichier d'index n'est pas fusionné."
 
-#: sequencer.c:513
+#: sequencer.c:481
 #, 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:521
+#: sequencer.c:489
 #, c-format
 msgid "Commit %s does not have parent %d"
 msgstr "Le commit %s n'a pas le parent %d"
 
-#: sequencer.c:525
+#: sequencer.c:493
 #, c-format
 msgid "Mainline was specified but commit %s is not a merge."
 msgstr ""
@@ -1237,153 +1255,153 @@ msgstr ""
 
 #. TRANSLATORS: The first %s will be "revert" or
 #. "cherry-pick", the second %s a SHA1
-#: sequencer.c:538
+#: sequencer.c:506
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s : impossible d'analyser le commit parent %s"
 
-#: sequencer.c:542
+#: sequencer.c:510
 #, c-format
 msgid "Cannot get commit message for %s"
 msgstr "Impossible d'obtenir un message de validation pour %s"
 
-#: sequencer.c:628
+#: sequencer.c:596
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "impossible d'annuler %s... %s"
 
-#: sequencer.c:629
+#: sequencer.c:597
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "impossible d'appliquer %s... %s"
 
-#: sequencer.c:665
+#: sequencer.c:633
 msgid "empty commit set passed"
 msgstr "l'ensemble de commits spécifié est vide"
 
-#: sequencer.c:673
+#: sequencer.c:641
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s : échec à la lecture de l'index"
 
-#: sequencer.c:678
+#: sequencer.c:645
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s : échec du rafraîchissement de l'index"
 
-#: sequencer.c:736
+#: sequencer.c:705
 #, c-format
 msgid "Cannot %s during a %s"
 msgstr "Impossible de %s pendant un %s"
 
-#: sequencer.c:758
+#: sequencer.c:727
 #, c-format
 msgid "Could not parse line %d."
 msgstr "Impossible d'analyser la ligne %d."
 
-#: sequencer.c:763
+#: sequencer.c:732
 msgid "No commits parsed."
 msgstr "Aucun commit analysé."
 
-#: sequencer.c:776
+#: sequencer.c:745
 #, c-format
 msgid "Could not open %s"
 msgstr "Impossible d'ouvrir %s"
 
-#: sequencer.c:780
+#: sequencer.c:749
 #, c-format
 msgid "Could not read %s."
 msgstr "Impossible de lire %s."
 
-#: sequencer.c:787
+#: sequencer.c:756
 #, c-format
 msgid "Unusable instruction sheet: %s"
 msgstr "Feuille d'instruction inutilisable : %s"
 
-#: sequencer.c:815
+#: sequencer.c:786
 #, c-format
 msgid "Invalid key: %s"
 msgstr "Clé invalide: %s"
 
-#: sequencer.c:818
+#: sequencer.c:789
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr "Valeur invalide pour %s : %s"
 
-#: sequencer.c:830
+#: sequencer.c:801
 #, c-format
 msgid "Malformed options sheet: %s"
 msgstr "Feuille d'options malformée : %s"
 
-#: sequencer.c:851
+#: sequencer.c:822
 msgid "a cherry-pick or revert is already in progress"
 msgstr "un picorage ou un retour est déjà en cours"
 
-#: sequencer.c:852
+#: sequencer.c:823
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr "essayez \"git cherry-pick (--continue|--quit|-- abort)\""
 
-#: sequencer.c:856
+#: sequencer.c:827
 #, c-format
 msgid "Could not create sequencer directory %s"
 msgstr "Impossible de créer le répertoire de séquenceur %s"
 
-#: sequencer.c:872 sequencer.c:957
+#: sequencer.c:843 sequencer.c:928
 #, c-format
 msgid "Error wrapping up %s."
 msgstr "Erreur lors de l'emballage de %s."
 
-#: sequencer.c:891 sequencer.c:1025
+#: sequencer.c:862 sequencer.c:998
 msgid "no cherry-pick or revert in progress"
 msgstr "aucun picorage ou retour en cours"
 
-#: sequencer.c:893
+#: sequencer.c:864
 msgid "cannot resolve HEAD"
 msgstr "impossible de résoudre HEAD"
 
-#: sequencer.c:895
+#: sequencer.c:866
 msgid "cannot abort from a branch yet to be born"
 msgstr "impossible d'abandonner depuis une branche non encore créée"
 
-#: sequencer.c:917 builtin/apply.c:4061
+#: sequencer.c:888 builtin/apply.c:4062
 #, c-format
 msgid "cannot open %s: %s"
 msgstr "impossible d'ouvrir %s : %s"
 
-#: sequencer.c:920
+#: sequencer.c:891
 #, c-format
 msgid "cannot read %s: %s"
 msgstr "impossible de lire %s : %s"
 
-#: sequencer.c:921
+#: sequencer.c:892
 msgid "unexpected end of file"
 msgstr "fin de fichier inattendue"
 
-#: sequencer.c:927
+#: sequencer.c:898
 #, 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:950
+#: sequencer.c:921
 #, c-format
 msgid "Could not format %s."
 msgstr "Impossible de formater %s."
 
-#: sequencer.c:1093
+#: sequencer.c:1066
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s : impossible de picorer un %s"
 
-#: sequencer.c:1096
+#: sequencer.c:1069
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s : mauvaise révision"
 
-#: sequencer.c:1130
+#: sequencer.c:1103
 msgid "Can't revert as initial commit"
 msgstr "Impossible d'annuler en tant que commit initial"
 
-#: sequencer.c:1131
+#: sequencer.c:1104
 msgid "Can't cherry-pick into empty head"
 msgstr "Impossible de picorer vers une HEAD vide"
 
@@ -1412,21 +1430,21 @@ msgstr ""
 "message\n"
 "en lançant \"git config advice.objectNameWarning false\""
 
-#: sha1_name.c:1070
+#: sha1_name.c:1060
 msgid "HEAD does not point to a branch"
 msgstr "HEAD ne pointe pas sur une branche"
 
-#: sha1_name.c:1073
+#: sha1_name.c:1063
 #, c-format
 msgid "No such branch: '%s'"
 msgstr "Branche inconnue : '%s'"
 
-#: sha1_name.c:1075
+#: sha1_name.c:1065
 #, c-format
 msgid "No upstream configured for branch '%s'"
 msgstr "Aucune branche amont configurée pour la branche '%s'"
 
-#: sha1_name.c:1079
+#: sha1_name.c:1069
 #, 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"
@@ -1442,53 +1460,35 @@ msgstr ""
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr "Impossible de trouver une section où path=%s dans .gitmodules"
 
-#. Maybe the user already did that, don't error out here
 #: submodule.c:76
 #, c-format
 msgid "Could not update .gitmodules entry %s"
 msgstr "Impossible de mettre à jour l'élément %s de .gitmodules"
 
 # ici %s est un chemin
-#. Maybe the user already did that, don't error out here
 #: submodule.c:109
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr "Impossible de supprimer l'élément de .gitmodules pour %s"
 
-#: submodule.c:127
-msgid "could not find .gitmodules in index"
-msgstr "impossible de trouver .gitmodules dans l'index"
-
-#: submodule.c:133
-msgid "reading updated .gitmodules failed"
-msgstr "échec de la lecture du .gitmodules mis à jour"
-
-#: submodule.c:135
-msgid "unable to stat updated .gitmodules"
-msgstr "échec de stat du .gitmodules mis à jour"
-
-#: submodule.c:139
-msgid "unable to remove .gitmodules from index"
-msgstr "suppression du .gitmodules dans l'index impossible"
-
-#: submodule.c:141
-msgid "adding updated .gitmodules failed"
-msgstr "échec de l'ajout du .gitmodules mis à jour"
-
-#: submodule.c:143
+#: submodule.c:120
 msgid "staging updated .gitmodules failed"
 msgstr "échec de la mise en index du .gitmodules mis à jour"
 
-#: submodule.c:1144 builtin/init-db.c:363
+#: submodule.c:1118 builtin/init-db.c:363
 #, c-format
 msgid "Could not create git link %s"
 msgstr "Impossible de créer le lien git %s"
 
-#: submodule.c:1155
+#: submodule.c:1129
 #, c-format
 msgid "Could not set core.worktree in %s"
 msgstr "Impossible de paramétrer core.worktree dans %s"
 
+#: unpack-trees.c:202
+msgid "Checking out files"
+msgstr "Extraction des fichiers"
+
 #: urlmatch.c:120
 msgid "invalid URL scheme name or missing '://' suffix"
 msgstr "nom de schéma d'URL invalide ou suffixe '://' manquant"
@@ -1518,24 +1518,24 @@ msgstr "numéro de port invalide"
 msgid "invalid '..' path segment"
 msgstr "segment de chemin '..' invalide"
 
-#: wrapper.c:422
+#: wrapper.c:460
 #, c-format
 msgid "unable to access '%s': %s"
 msgstr "impossible d'accéder à '%s' : %s"
 
-#: wrapper.c:443
+#: wrapper.c:481
 #, c-format
 msgid "unable to access '%s'"
 msgstr "impossible d'accéder à '%s'"
 
-#: wrapper.c:454
+#: wrapper.c:492
 #, c-format
 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"
 
-#: wrapper.c:455
+#: wrapper.c:493
 msgid "no such user"
 msgstr "utilisateur inconnu"
 
@@ -1603,88 +1603,97 @@ 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:254
-msgid "bug"
-msgstr "bogue"
-
-#: wt-status.c:259
+#: wt-status.c:252
 msgid "both deleted:"
 msgstr "supprimé des deux côtés :"
 
-#: wt-status.c:260
+#: wt-status.c:254
 msgid "added by us:"
 msgstr "ajouté par nous :"
 
-#: wt-status.c:261
+#: wt-status.c:256
 msgid "deleted by them:"
 msgstr "supprimé par eux :"
 
-#: wt-status.c:262
+#: wt-status.c:258
 msgid "added by them:"
 msgstr "ajouté par eux :"
 
-#: wt-status.c:263
+#: wt-status.c:260
 msgid "deleted by us:"
 msgstr "supprimé par nous :"
 
-#: wt-status.c:264
+#: wt-status.c:262
 msgid "both added:"
 msgstr "ajouté de deux côtés :"
 
-#: wt-status.c:265
+#: wt-status.c:264
 msgid "both modified:"
 msgstr "modifié des deux côtés :"
 
-#: wt-status.c:275
-msgid "new file"
-msgstr "nouveau fichier"
+#: wt-status.c:266
+#, c-format
+msgid "bug: unhandled unmerged status %x"
+msgstr "bogue : état de non-fusion non géré %x"
+
+#: wt-status.c:274
+msgid "new file:"
+msgstr "nouveau fichier :"
+
+#: wt-status.c:276
+msgid "copied:"
+msgstr "copié :"
 
-#: wt-status.c:277
-msgid "copied"
-msgstr "copié"
+#: wt-status.c:278
+msgid "deleted:"
+msgstr "supprimé :"
 
-#: wt-status.c:279
-msgid "deleted"
-msgstr "supprimé"
+#: wt-status.c:280
+msgid "modified:"
+msgstr "modifié :"
 
-#: wt-status.c:285
-msgid "typechange"
-msgstr "modif. type"
+#: wt-status.c:282
+msgid "renamed:"
+msgstr "renommé :"
 
-#: wt-status.c:287
-msgid "unknown"
-msgstr "inconnu"
+#: wt-status.c:284
+msgid "typechange:"
+msgstr "modif. type :"
 
-#: wt-status.c:289
-msgid "unmerged"
-msgstr "non fusionné"
+#: wt-status.c:286
+msgid "unknown:"
+msgstr "inconnu :"
 
-#: wt-status.c:336
+#: wt-status.c:288
+msgid "unmerged:"
+msgstr "non fusionné :"
+
+#: wt-status.c:370
 msgid "new commits, "
 msgstr "nouveaux commits, "
 
-#: wt-status.c:338
+#: wt-status.c:372
 msgid "modified content, "
 msgstr "contenu modifié, "
 
-#: wt-status.c:340
+#: wt-status.c:374
 msgid "untracked content, "
 msgstr "contenu non suivi, "
 
-#: wt-status.c:357
+#: wt-status.c:391
 #, c-format
 msgid "bug: unhandled diff status %c"
 msgstr "bogue : état de diff non géré %c"
 
-#: wt-status.c:732
+#: wt-status.c:764
 msgid "Submodules changed but not updated:"
 msgstr "Sous-modules modifiés mais non mis à jour :"
 
-#: wt-status.c:734
+#: wt-status.c:766
 msgid "Submodule changes to be committed:"
 msgstr "Changements du sous-module à valider :"
 
-#: wt-status.c:836
+#: wt-status.c:845
 msgid ""
 "Do not touch the line above.\n"
 "Everything below will be removed."
@@ -1692,68 +1701,68 @@ msgstr ""
 "Ne touchez pas à la ligne ci-dessus\n"
 "Tout se qui suit sera éliminé."
 
-#: wt-status.c:899
+#: wt-status.c:936
 msgid "You have unmerged paths."
 msgstr "Vous avez des chemins non fusionnés."
 
-#: wt-status.c:902
+#: wt-status.c:939
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (réglez les conflits puis lancez \"git commit\")"
 
-#: wt-status.c:905
+#: wt-status.c:942
 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:908
+#: wt-status.c:945
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (utilisez \"git commit\" pour terminer la fusion)"
 
-#: wt-status.c:918
+#: wt-status.c:955
 msgid "You are in the middle of an am session."
 msgstr "Vous êtes au milieu d'une session am."
 
-#: wt-status.c:921
+#: wt-status.c:958
 msgid "The current patch is empty."
 msgstr "Le patch actuel est vide."
 
-#: wt-status.c:925
+#: wt-status.c:962
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git am --continue\")"
 
-#: wt-status.c:927
+#: wt-status.c:964
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (utilisez \"git am --skip\" pour sauter ce patch)"
 
-#: wt-status.c:929
+#: wt-status.c:966
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (utilisez \"git am --abort\" pour restaurer la branche d'origine)"
 
-#: wt-status.c:989 wt-status.c:1006
+#: wt-status.c:1026 wt-status.c:1043
 #, 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:994 wt-status.c:1011
+#: wt-status.c:1031 wt-status.c:1048
 msgid "You are currently rebasing."
 msgstr "Vous êtes en train de rebaser."
 
-#: wt-status.c:997
+#: wt-status.c:1034
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git rebase --continue\")"
 
-#: wt-status.c:999
+#: wt-status.c:1036
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (utilisez \"git rebase --skip\" pour sauter ce patch)"
 
-#: wt-status.c:1001
+#: wt-status.c:1038
 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:1014
+#: wt-status.c:1051
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git rebase --continue\")"
 
-#: wt-status.c:1018
+#: wt-status.c:1055
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -1761,120 +1770,120 @@ msgstr ""
 "Vous êtes actuellement en train de fractionner un commit pendant un rebasage "
 "de la branche '%s' sur '%s'."
 
-#: wt-status.c:1023
+#: wt-status.c:1060
 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:1026
+#: wt-status.c:1063
 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:1030
+#: wt-status.c:1067
 #, 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:1035
+#: wt-status.c:1072
 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:1038
+#: wt-status.c:1075
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (utilisez \"git commit --amend\" pour corriger le commit actuel)"
 
-#: wt-status.c:1040
+#: wt-status.c:1077
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
 "  (utilisez \"git rebase --continue\" quand vous êtes satisfait de vos "
 "modifications)"
 
-#: wt-status.c:1050
+#: wt-status.c:1087
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "Vous êtes actuellement en train de picorer le commit %s."
 
-#: wt-status.c:1055
+#: wt-status.c:1092
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git cherry-pick --continue\")"
 
-#: wt-status.c:1058
+#: wt-status.c:1095
 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:1060
+#: wt-status.c:1097
 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:1069
+#: wt-status.c:1106
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Vous êtes actuellement en train de rétablir le commit %s."
 
-#: wt-status.c:1074
+#: wt-status.c:1111
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (réglez les conflits puis lancez \"git revert --continue\")"
 
-#: wt-status.c:1077
+#: wt-status.c:1114
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr "  (tous les conflits sont réglés : lancez \"git revert --continue\")"
 
-#: wt-status.c:1079
+#: wt-status.c:1116
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (utilisez \"git revert --abort\" pour annuler le rétablissement)"
 
-#: wt-status.c:1090
+#: wt-status.c:1127
 #, 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:1094
+#: wt-status.c:1131
 msgid "You are currently bisecting."
 msgstr "Vous êtes en cours de bissection."
 
-#: wt-status.c:1097
+#: wt-status.c:1134
 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:1272
+#: wt-status.c:1309
 msgid "On branch "
 msgstr "Sur la branche "
 
-#: wt-status.c:1279
+#: wt-status.c:1316
 msgid "rebase in progress; onto "
 msgstr "rebasage en cours ; sur "
 
-#: wt-status.c:1286
+#: wt-status.c:1323
 msgid "HEAD detached at "
 msgstr "HEAD détachée sur "
 
-#: wt-status.c:1288
+#: wt-status.c:1325
 msgid "HEAD detached from "
 msgstr "HEAD détachée depuis "
 
-#: wt-status.c:1291
+#: wt-status.c:1328
 msgid "Not currently on any branch."
 msgstr "Actuellement sur aucun branche."
 
-#: wt-status.c:1308
+#: wt-status.c:1345
 msgid "Initial commit"
 msgstr "Validation initiale"
 
-#: wt-status.c:1322
+#: wt-status.c:1359
 msgid "Untracked files"
 msgstr "Fichiers non suivis"
 
-#: wt-status.c:1324
+#: wt-status.c:1361
 msgid "Ignored files"
 msgstr "Fichiers ignorés"
 
-#: wt-status.c:1328
+#: wt-status.c:1365
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -1886,32 +1895,32 @@ msgstr ""
 "oublier d'ajouter les nouveaux fichiers par vous-même (voir 'git help "
 "status')."
 
-#: wt-status.c:1334
+#: wt-status.c:1371
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "Fichiers non suivis non affichés%s"
 
-#: wt-status.c:1336
+#: wt-status.c:1373
 msgid " (use -u option to show untracked files)"
 msgstr " (utilisez -u pour afficher les fichiers non suivis)"
 
-#: wt-status.c:1342
+#: wt-status.c:1379
 msgid "No changes"
 msgstr "Aucune modification"
 
-#: wt-status.c:1347
+#: wt-status.c:1384
 #, 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:1350
+#: wt-status.c:1387
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "aucune modification ajoutée à la validation\n"
 
-#: wt-status.c:1353
+#: wt-status.c:1390
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -1920,292 +1929,208 @@ 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:1356
+#: wt-status.c:1393
 #, 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:1359
+#: wt-status.c:1396
 #, 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:1362 wt-status.c:1367
+#: wt-status.c:1399 wt-status.c:1404
 #, c-format
 msgid "nothing to commit\n"
 msgstr "rien à valider\n"
 
-#: wt-status.c:1365
+#: wt-status.c:1402
 #, 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:1369
+#: wt-status.c:1406
 #, c-format
 msgid "nothing to commit, working directory clean\n"
 msgstr "rien à valider, la copie de travail est propre\n"
 
-#: wt-status.c:1478
+#: wt-status.c:1515
 msgid "HEAD (no branch)"
 msgstr "HEAD (aucune branche)"
 
-#: wt-status.c:1484
+#: wt-status.c:1521
 msgid "Initial commit on "
 msgstr "Validation initiale sur "
 
 # à priori on parle d'une branche ici
-#: wt-status.c:1514
+#: wt-status.c:1553
 msgid "gone"
 msgstr "disparue"
 
-#: wt-status.c:1516
+#: wt-status.c:1555 wt-status.c:1563
 msgid "behind "
 msgstr "derrière "
 
-#: wt-status.c:1519 wt-status.c:1522
-msgid "ahead "
-msgstr "devant "
-
-#: wt-status.c:1524
-msgid ", behind "
-msgstr ", derrière "
-
 #: compat/precompose_utf8.c:55 builtin/clone.c:356
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "échec lors de l'unlink de '%s'"
 
-#: builtin/add.c:20
+#: builtin/add.c:21
 msgid "git add [options] [--] <pathspec>..."
 msgstr "git add [options] [--] <chemin>..."
 
-#.
-#. * To be consistent with "git add -p" and most Git
-#. * commands, we should default to being tree-wide, but
-#. * this is not the original behavior and can't be
-#. * changed until users trained themselves not to type
-#. * "git add -u" or "git add -A". For now, we warn and
-#. * keep the old behavior. Later, the behavior can be changed
-#. * to tree-wide, keeping the warning for a while, and
-#. * eventually we can drop the warning.
-#.
-#: builtin/add.c:58
-#, c-format
-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"
-
-#: builtin/add.c:100
-#, c-format
-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"
-
-#: builtin/add.c:144
+#: builtin/add.c:64
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "status de diff inattendu %c"
 
-#: builtin/add.c:149 builtin/commit.c:260
+#: builtin/add.c:69 builtin/commit.c:261
 msgid "updating files failed"
 msgstr "échec de la mise à jour des fichiers"
 
-#: builtin/add.c:163
+#: builtin/add.c:79
 #, c-format
 msgid "remove '%s'\n"
 msgstr "suppression de '%s'\n"
 
-#: builtin/add.c:237
+#: builtin/add.c:133
 msgid "Unstaged changes after refreshing the index:"
 msgstr "Modifications non indexées après rafraîchissement de l'index :"
 
-#: builtin/add.c:299
+#: builtin/add.c:193 builtin/rev-parse.c:781
 msgid "Could not read the index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/add.c:310
+#: builtin/add.c:204
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Impossible d'ouvrir '%s' en écriture."
 
-#: builtin/add.c:314
+#: builtin/add.c:208
 msgid "Could not write patch"
 msgstr "Impossible d'écrire le patch"
 
-#: builtin/add.c:319
+#: builtin/add.c:213
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "Stat de '%s' impossible"
 
-#: builtin/add.c:321
+#: builtin/add.c:215
 msgid "Empty patch. Aborted."
 msgstr "Patch vide. Abandon."
 
-#: builtin/add.c:327
+#: builtin/add.c:221
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "Impossible d'appliquer '%s'"
 
-#: builtin/add.c:337
+#: builtin/add.c:231
 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:354 builtin/clean.c:875 builtin/fetch.c:93 builtin/mv.c:70
-#: builtin/prune-packed.c:77 builtin/push.c:506 builtin/remote.c:1344
+#: builtin/add.c:248 builtin/clean.c:875 builtin/fetch.c:108 builtin/mv.c:70
+#: builtin/prune-packed.c:77 builtin/push.c:488 builtin/remote.c:1367
 #: builtin/rm.c:269
 msgid "dry run"
 msgstr "simuler l'action"
 
-#: builtin/add.c:355 builtin/apply.c:4410 builtin/check-ignore.c:19
-#: builtin/commit.c:1249 builtin/count-objects.c:95 builtin/fsck.c:612
-#: builtin/log.c:1592 builtin/mv.c:69 builtin/read-tree.c:113
+#: builtin/add.c:249 builtin/apply.c:4411 builtin/check-ignore.c:19
+#: builtin/commit.c:1328 builtin/count-objects.c:95 builtin/fsck.c:606
+#: builtin/log.c:1613 builtin/mv.c:69 builtin/read-tree.c:113
 msgid "be verbose"
 msgstr "mode verbeux"
 
-#: builtin/add.c:357
+#: builtin/add.c:251
 msgid "interactive picking"
 msgstr "sélection interactive"
 
-#: builtin/add.c:358 builtin/checkout.c:1109 builtin/reset.c:272
+#: builtin/add.c:252 builtin/checkout.c:1102 builtin/reset.c:285
 msgid "select hunks interactively"
 msgstr "sélection interactive des sections"
 
-#: builtin/add.c:359
+#: builtin/add.c:253
 msgid "edit current diff and apply"
 msgstr "édition du diff actuel et application"
 
-#: builtin/add.c:360
+#: builtin/add.c:254
 msgid "allow adding otherwise ignored files"
 msgstr "permettre l'ajout de fichiers ignorés"
 
-#: builtin/add.c:361
+#: builtin/add.c:255
 msgid "update tracked files"
 msgstr "mettre à jour les fichiers suivis"
 
-#: builtin/add.c:362
+#: builtin/add.c:256
 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:363
+#: builtin/add.c:257
 msgid "add changes from all tracked and untracked files"
 msgstr "ajouter les modifications de tous les fichiers suivis et non suivis"
 
-#. takes no arguments
-#: builtin/add.c:366
+#: builtin/add.c:260
 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:368
+#: builtin/add.c:262
 msgid "don't add, only refresh the index"
 msgstr "ne pas ajouter, juste rafraîchir l'index"
 
-#: builtin/add.c:369
+#: builtin/add.c:263
 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:370
+#: builtin/add.c:264
 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:392
+#: builtin/add.c:286
 #, 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:393
+#: builtin/add.c:287
 msgid "no files added"
 msgstr "aucun fichier ajouté"
 
-#: builtin/add.c:399
+#: builtin/add.c:293
 msgid "adding files failed"
 msgstr "échec de l'ajout de fichiers"
 
-#: builtin/add.c:438
+#: builtin/add.c:329
 msgid "-A and -u are mutually incompatible"
 msgstr "-A et -u sont mutuellement incompatibles"
 
-#: builtin/add.c:456
+#: builtin/add.c:336
 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:486
+#: builtin/add.c:357
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr "Rien de spécifié, rien n'a été ajouté.\n"
 
-#: builtin/add.c:487
+#: builtin/add.c:358
 #, c-format
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr "Vous vouliez sûrement dire 'git add .' ?\n"
 
-#: builtin/add.c:492 builtin/check-ignore.c:172 builtin/clean.c:919
-#: builtin/commit.c:320 builtin/mv.c:90 builtin/reset.c:224 builtin/rm.c:299
+#: builtin/add.c:363 builtin/check-ignore.c:172 builtin/clean.c:919
+#: builtin/commit.c:319 builtin/mv.c:90 builtin/reset.c:234 builtin/rm.c:299
 msgid "index file corrupt"
 msgstr "fichier d'index corrompu"
 
-#: builtin/add.c:592 builtin/apply.c:4506 builtin/mv.c:270 builtin/rm.c:432
+#: builtin/add.c:446 builtin/apply.c:4506 builtin/mv.c:280 builtin/rm.c:431
 msgid "Unable to write new index file"
 msgstr "Impossible d'écrire le nouveau fichier d'index"
 
@@ -2223,43 +2148,43 @@ msgstr "option d'espace non reconnue '%s'"
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "option d'ignorance d'espace non reconnue '%s'"
 
-#: builtin/apply.c:823
+#: builtin/apply.c:825
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "Impossible de préparer la regexp d'horodatage %s"
 
-#: builtin/apply.c:832
+#: builtin/apply.c:834
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec a retourné %d pour l'entrée : %s"
 
-#: builtin/apply.c:913
+#: builtin/apply.c:915
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "nom de fichier du patch introuvable à la ligne %d"
 
-#: builtin/apply.c:945
+#: builtin/apply.c:947
 #, 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"
 
-#: builtin/apply.c:949
+#: builtin/apply.c:951
 #, 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"
 
-#: builtin/apply.c:950
+#: builtin/apply.c:952
 #, 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"
 
-#: builtin/apply.c:957
+#: builtin/apply.c:959
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr ""
@@ -2323,7 +2248,6 @@ msgstr "** attention : le fichier %s devient vide mais n'est pas supprimé"
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "patch binaire corrompu à la ligne %d : %.*s"
 
-#. there has to be one hunk (forward hunk)
 #: builtin/apply.c:1900
 #, c-format
 msgid "unrecognized binary patch at line %d"
@@ -2375,19 +2299,19 @@ msgstr ""
 msgid "missing binary patch data for '%s'"
 msgstr "données de patch binaire manquantes pour '%s'"
 
-#: builtin/apply.c:2946
+#: builtin/apply.c:2944
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "le patch binaire ne s'applique par correctement à '%s'"
 
-#: builtin/apply.c:2952
+#: builtin/apply.c:2950
 #, 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é)"
 
-#: builtin/apply.c:2973
+#: builtin/apply.c:2971
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "le patch a échoué : %s:%ld"
@@ -2467,7 +2391,7 @@ msgstr "%s : le patch ne s'applique pas"
 msgid "Checking patch %s..."
 msgstr "Vérification du patch %s..."
 
-#: builtin/apply.c:3680 builtin/checkout.c:213 builtin/reset.c:127
+#: builtin/apply.c:3680 builtin/checkout.c:213 builtin/reset.c:134
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "échec de make_cache_entry pour le chemin '%s'"
@@ -2477,222 +2401,221 @@ msgstr "échec de make_cache_entry pour le chemin '%s'"
 msgid "unable to remove %s from index"
 msgstr "suppression de %s dans l'index impossible"
 
-#: builtin/apply.c:3851
+#: builtin/apply.c:3852
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "patch corrompu pour le sous-module %s"
 
-#: builtin/apply.c:3855
+#: builtin/apply.c:3856
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "stat du fichier nouvellement créé '%s' impossible"
 
-#: builtin/apply.c:3860
+#: builtin/apply.c:3861
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr ""
 "création du magasin de stockage pour le fichier nouvellement créé %s "
 "impossible"
 
-#: builtin/apply.c:3863 builtin/apply.c:3971
+#: builtin/apply.c:3864 builtin/apply.c:3972
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "ajout de l'élément de cache %s impossible"
 
-#: builtin/apply.c:3896
+#: builtin/apply.c:3897
 #, c-format
 msgid "closing file '%s'"
 msgstr "fermeture du fichier '%s'"
 
-#: builtin/apply.c:3945
+#: builtin/apply.c:3946
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "écriture du fichier '%s' mode %o impossible"
 
-#: builtin/apply.c:4032
+#: builtin/apply.c:4033
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Patch %s appliqué proprement."
 
-#: builtin/apply.c:4040
+#: builtin/apply.c:4041
 msgid "internal error"
 msgstr "erreur interne"
 
-#. Say this even without --verbose
-#: builtin/apply.c:4043
+#: builtin/apply.c:4044
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "Application du patch %%s avec %d rejet..."
 msgstr[1] "Application du patch %%s avec %d rejets..."
 
-#: builtin/apply.c:4053
+#: builtin/apply.c:4054
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "troncature du nom de fichier .rej en %.*s.rej"
 
-#: builtin/apply.c:4074
+#: builtin/apply.c:4075
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Section n°%d appliquée proprement."
 
-#: builtin/apply.c:4077
+#: builtin/apply.c:4078
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Section n°%d rejetée."
 
-#: builtin/apply.c:4227
+#: builtin/apply.c:4228
 msgid "unrecognized input"
 msgstr "entrée non reconnue"
 
-#: builtin/apply.c:4238
+#: builtin/apply.c:4239
 msgid "unable to read index file"
 msgstr "lecture du fichier d'index impossible"
 
-#: builtin/apply.c:4357 builtin/apply.c:4360 builtin/clone.c:90
-#: builtin/fetch.c:78
+#: builtin/apply.c:4358 builtin/apply.c:4361 builtin/clone.c:90
+#: builtin/fetch.c:93
 msgid "path"
 msgstr "chemin"
 
-#: builtin/apply.c:4358
+#: builtin/apply.c:4359
 msgid "don't apply changes matching the given path"
 msgstr "ne pas appliquer les modifications qui correspondent au chemin donné"
 
-#: builtin/apply.c:4361
+#: builtin/apply.c:4362
 msgid "apply changes matching the given path"
 msgstr "appliquer les modifications qui correspondent au chemin donné"
 
-#: builtin/apply.c:4363
+#: builtin/apply.c:4364
 msgid "num"
 msgstr "num"
 
-#: builtin/apply.c:4364
+#: builtin/apply.c:4365
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "supprimer <num> barres obliques des chemins traditionnels de diff"
 
-#: builtin/apply.c:4367
+#: builtin/apply.c:4368
 msgid "ignore additions made by the patch"
 msgstr "ignorer les additions réalisées par le patch"
 
-#: builtin/apply.c:4369
+#: builtin/apply.c:4370
 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"
 
-#: builtin/apply.c:4373
+#: builtin/apply.c:4374
 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"
 
-#: builtin/apply.c:4375
+#: builtin/apply.c:4376
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "au lieu d'appliquer le patch, afficher un résumer de l'entrée"
 
-#: builtin/apply.c:4377
+#: builtin/apply.c:4378
 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"
 
-#: builtin/apply.c:4379
+#: builtin/apply.c:4380
 msgid "make sure the patch is applicable to the current index"
 msgstr "s'assurer que le patch est applicable sur l'index actuel"
 
-#: builtin/apply.c:4381
+#: builtin/apply.c:4382
 msgid "apply a patch without touching the working tree"
 msgstr "appliquer les patch sans toucher à la copie de travail"
 
-#: builtin/apply.c:4383
+#: builtin/apply.c:4384
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "appliquer aussi le patch (à utiliser avec ---stat/--summary/--check)"
 
-#: builtin/apply.c:4385
+#: builtin/apply.c:4386
 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"
 
-#: builtin/apply.c:4387
+#: builtin/apply.c:4388
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 "construire un index temporaire fondé sur l'information de l'index embarqué"
 
-#: builtin/apply.c:4389 builtin/checkout-index.c:197 builtin/ls-files.c:452
+#: builtin/apply.c:4390 builtin/checkout-index.c:198 builtin/ls-files.c:455
 msgid "paths are separated with NUL character"
 msgstr "les chemins sont séparés par un caractère NUL"
 
-#: builtin/apply.c:4392
+#: builtin/apply.c:4393
 msgid "ensure at least <n> lines of context match"
 msgstr "s'assurer d'au moins <n> lignes de correspondance de contexte"
 
-#: builtin/apply.c:4393
+#: builtin/apply.c:4394
 msgid "action"
 msgstr "action"
 
-#: builtin/apply.c:4394
+#: builtin/apply.c:4395
 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"
 
-#: builtin/apply.c:4397 builtin/apply.c:4400
+#: builtin/apply.c:4398 builtin/apply.c:4401
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignorer des modifications d'espace lors de la recherche de contexte"
 
-#: builtin/apply.c:4403
+#: builtin/apply.c:4404
 msgid "apply the patch in reverse"
 msgstr "appliquer le patch en sens inverse"
 
-#: builtin/apply.c:4405
+#: builtin/apply.c:4406
 msgid "don't expect at least one line of context"
 msgstr "ne pas s'attendre à au moins une ligne de contexte"
 
-#: builtin/apply.c:4407
+#: builtin/apply.c:4408
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "laisser les sections rejetées dans les fichiers *.rej correspondants"
 
-#: builtin/apply.c:4409
+#: builtin/apply.c:4410
 msgid "allow overlapping hunks"
 msgstr "accepter les recouvrements de sections"
 
-#: builtin/apply.c:4412
+#: builtin/apply.c:4413
 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"
 
-#: builtin/apply.c:4415
+#: builtin/apply.c:4416
 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"
 
-#: builtin/apply.c:4417
+#: builtin/apply.c:4418
 msgid "root"
 msgstr "racine"
 
-#: builtin/apply.c:4418
+#: builtin/apply.c:4419
 msgid "prepend <root> to all filenames"
 msgstr "préfixer tous les noms de fichier avec <root>"
 
-#: builtin/apply.c:4440
+#: builtin/apply.c:4441
 msgid "--3way outside a repository"
 msgstr "--3way hors d'un dépôt"
 
-#: builtin/apply.c:4448
+#: builtin/apply.c:4449
 msgid "--index outside a repository"
 msgstr "--index hors d'un dépôt"
 
-#: builtin/apply.c:4451
+#: builtin/apply.c:4452
 msgid "--cached outside a repository"
 msgstr "--cached hors d'un dépôt"
 
-#: builtin/apply.c:4467
+#: builtin/apply.c:4468
 #, c-format
 msgid "can't open patch '%s'"
 msgstr "ouverture impossible du patch '%s'"
 
-#: builtin/apply.c:4481
+#: builtin/apply.c:4482
 #, 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"
 
-#: builtin/apply.c:4487 builtin/apply.c:4497
+#: builtin/apply.c:4488 builtin/apply.c:4498
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
@@ -2746,112 +2669,122 @@ msgstr "effectuer 'git bisect next'"
 msgid "update BISECT_HEAD instead of checking out the current commit"
 msgstr "mettre à jour BISECT_HEAD au lieu d'extraire le commit actuel"
 
-#: builtin/blame.c:27
+#: builtin/blame.c:30
 msgid "git blame [options] [rev-opts] [rev] [--] file"
 msgstr "git blame [options] [options-de-révision] [rev] [--] fichier"
 
-#: builtin/blame.c:32
+#: builtin/blame.c:35
 msgid "[rev-opts] are documented in git-rev-list(1)"
 msgstr "[options-de-révision] sont documentés dans git-rev-list(1)"
 
-#: builtin/blame.c:2249
+#: builtin/blame.c:2501
 msgid "Show blame entries as we find them, incrementally"
 msgstr ""
 "Montrer les éléments de blâme au fur et à mesure de leur découverte, de "
 "manière incrémentale"
 
-#: builtin/blame.c:2250
+#: builtin/blame.c:2502
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr "Montrer un SHA-1 blanc pour les commits de limite (Défaut : désactivé)"
 
-#: builtin/blame.c:2251
+#: builtin/blame.c:2503
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr ""
 "Ne pas traiter les commits racine comme des limites (Défaut : désactivé)"
 
-#: builtin/blame.c:2252
+#: builtin/blame.c:2504
 msgid "Show work cost statistics"
 msgstr "Montrer les statistiques de coût d'activité"
 
-#: builtin/blame.c:2253
+#: builtin/blame.c:2505
 msgid "Show output score for blame entries"
 msgstr "Montrer le score de sortie pour les éléments de blâme"
 
-#: builtin/blame.c:2254
+#: builtin/blame.c:2506
 msgid "Show original filename (Default: auto)"
 msgstr "Montrer les noms de fichier originaux (Défaut : auto)"
 
-#: builtin/blame.c:2255
+#: builtin/blame.c:2507
 msgid "Show original linenumber (Default: off)"
 msgstr "Montrer les numéros de lignes originaux (Défaut : désactivé)"
 
-#: builtin/blame.c:2256
+#: builtin/blame.c:2508
 msgid "Show in a format designed for machine consumption"
 msgstr "Afficher dans un format propice à la consommation par machine"
 
-#: builtin/blame.c:2257
+#: builtin/blame.c:2509
 msgid "Show porcelain format with per-line commit information"
 msgstr "Afficher en format porcelaine avec l'information de commit par ligne"
 
-#: builtin/blame.c:2258
+#: builtin/blame.c:2510
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr "Utiliser le même mode de sortie que git-annotate (Défaut : désactivé)"
 
-#: builtin/blame.c:2259
+#: builtin/blame.c:2511
 msgid "Show raw timestamp (Default: off)"
 msgstr "Afficher les horodatages bruts (Défaut : désactivé)"
 
-#: builtin/blame.c:2260
+#: builtin/blame.c:2512
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "Afficher les longs SHA1 de commits (Défaut : désactivé)"
 
-#: builtin/blame.c:2261
+#: builtin/blame.c:2513
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr "Supprimer le nom de l'auteur et l'horodatage (Défaut : désactivé)"
 
-#: builtin/blame.c:2262
+#: builtin/blame.c:2514
 msgid "Show author email instead of name (Default: off)"
 msgstr "Afficher l'e-mail de l'auteur au lieu du nom (Défaut : désactivé)"
 
-#: builtin/blame.c:2263
+#: builtin/blame.c:2515
 msgid "Ignore whitespace differences"
 msgstr "Ignorer les différences d'espace"
 
-#: builtin/blame.c:2264
+#: builtin/blame.c:2516
 msgid "Spend extra cycles to find better match"
 msgstr ""
 "Dépenser des cycles supplémentaires pour trouver une meilleure correspondance"
 
-#: builtin/blame.c:2265
+#: builtin/blame.c:2517
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr ""
 "Utiliser les révisions du fichier <fichier> au lieu d'appeler git-rev-list"
 
-#: builtin/blame.c:2266
+#: builtin/blame.c:2518
 msgid "Use <file>'s contents as the final image"
 msgstr "Utiliser le contenu de <fichier> comme image finale"
 
-#: builtin/blame.c:2267 builtin/blame.c:2268
+#: builtin/blame.c:2519 builtin/blame.c:2520
 msgid "score"
 msgstr "score"
 
-#: builtin/blame.c:2267
+#: builtin/blame.c:2519
 msgid "Find line copies within and across files"
 msgstr "Trouver les copies de ligne dans et entre les fichiers"
 
-#: builtin/blame.c:2268
+#: builtin/blame.c:2520
 msgid "Find line movements within and across files"
 msgstr "Trouver les mouvements de ligne dans et entre les fichiers"
 
-#: builtin/blame.c:2269
+#: builtin/blame.c:2521
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:2269
+#: builtin/blame.c:2521
 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"
 
+#. TRANSLATORS: This string is used to tell us the maximum
+#. display width for a relative timestamp in "git blame"
+#. output.  For C locale, "4 years, 11 months ago", which
+#. takes 22 places, is the longest among various forms of
+#. relative timestamps, but your language may need more or
+#. fewer display columns.
+#: builtin/blame.c:2599
+msgid "4 years, 11 months ago"
+msgstr "il y a 10 ans et 11 mois"
+
 #: builtin/branch.c:24
 msgid "git branch [options] [-r | -a] [--merged | --no-merged]"
 msgstr "git branch [options] [-r | -a] [--merged | --no-merged]"
@@ -3093,8 +3026,9 @@ msgid "act on remote-tracking branches"
 msgstr "agir sur les branches de suivi distantes"
 
 #: builtin/branch.c:817 builtin/branch.c:823 builtin/branch.c:844
-#: builtin/branch.c:850 builtin/commit.c:1460 builtin/commit.c:1461
-#: builtin/commit.c:1462 builtin/commit.c:1463 builtin/tag.c:468
+#: builtin/branch.c:850 builtin/commit.c:1573 builtin/commit.c:1574
+#: builtin/commit.c:1575 builtin/commit.c:1576 builtin/tag.c:615
+#: builtin/tag.c:621
 msgid "commit"
 msgstr "commit"
 
@@ -3158,7 +3092,7 @@ msgstr "afficher les branches en colonnes"
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Échec de résolution de HEAD comme référence valide."
 
-#: builtin/branch.c:872 builtin/clone.c:635
+#: builtin/branch.c:872 builtin/clone.c:636
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD non trouvée sous refs/heads !"
 
@@ -3281,44 +3215,44 @@ 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:328
+#: builtin/cat-file.c:331
 msgid "git cat-file (-t|-s|-e|-p|<type>|--textconv) <object>"
 msgstr "git cat-file (-t|-s|-e|-p|<type>|--textconv) <objet>"
 
-#: builtin/cat-file.c:329
+#: builtin/cat-file.c:332
 msgid "git cat-file (--batch|--batch-check) < <list_of_objects>"
 msgstr "git cat-file (--batch|--batch-check) < <liste_d_objets>"
 
-#: builtin/cat-file.c:366
+#: builtin/cat-file.c:369
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<type> peut être : blob, tree, commit ou tag"
 
-#: builtin/cat-file.c:367
+#: builtin/cat-file.c:370
 msgid "show object type"
 msgstr "afficher le type de l'objet"
 
-#: builtin/cat-file.c:368
+#: builtin/cat-file.c:371
 msgid "show object size"
 msgstr "afficher la taille de l'objet"
 
-#: builtin/cat-file.c:370
+#: builtin/cat-file.c:373
 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:371
+#: builtin/cat-file.c:374
 msgid "pretty-print object's content"
 msgstr "afficher avec mise en forme le contenu de l'objet"
 
-#: builtin/cat-file.c:373
+#: builtin/cat-file.c:376
 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:375
+#: builtin/cat-file.c:378
 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:378
+#: builtin/cat-file.c:381
 msgid "show info about objects fed from the standard input"
 msgstr "afficher l'information des objets passés en entrée standard"
 
@@ -3348,7 +3282,7 @@ msgid "terminate input and output records by a NUL character"
 msgstr ""
 "terminer les enregistrements en entrée et en sortie par un caractère NUL"
 
-#: builtin/check-ignore.c:18 builtin/checkout.c:1090 builtin/gc.c:260
+#: builtin/check-ignore.c:18 builtin/checkout.c:1083 builtin/gc.c:285
 msgid "suppress progress reporting"
 msgstr "supprimer l'état d'avancement"
 
@@ -3405,45 +3339,45 @@ msgstr "aucun contact spécifié"
 msgid "git checkout-index [options] [--] [<file>...]"
 msgstr "git checkout-index [options] [--] [<fichier>...]"
 
-#: builtin/checkout-index.c:187
+#: builtin/checkout-index.c:188
 msgid "check out all files in the index"
 msgstr "extraire tous les fichiers présents dans l'index"
 
-#: builtin/checkout-index.c:188
+#: builtin/checkout-index.c:189
 msgid "force overwrite of existing files"
 msgstr "forcer l'écrasement des fichiers existants"
 
-#: builtin/checkout-index.c:190
+#: builtin/checkout-index.c:191
 msgid "no warning for existing files and files not in index"
 msgstr ""
 "pas d'avertissement pour les fichiers existants et les fichiers absents de "
 "l'index"
 
-#: builtin/checkout-index.c:192
+#: builtin/checkout-index.c:193
 msgid "don't checkout new files"
 msgstr "ne pas extraire les nouveaux fichiers"
 
-#: builtin/checkout-index.c:194
+#: builtin/checkout-index.c:195
 msgid "update stat information in the index file"
 msgstr "mettre à jour l'information de stat dans le fichier d'index"
 
-#: builtin/checkout-index.c:200
+#: builtin/checkout-index.c:201
 msgid "read list of paths from the standard input"
 msgstr "lire la liste des chemins depuis l'entrée standard"
 
-#: builtin/checkout-index.c:202
+#: builtin/checkout-index.c:203
 msgid "write the content to temporary files"
 msgstr "écrire le contenu dans des fichiers temporaires"
 
-#: builtin/checkout-index.c:203 builtin/column.c:30
+#: builtin/checkout-index.c:204 builtin/column.c:30
 msgid "string"
 msgstr "chaîne"
 
-#: builtin/checkout-index.c:204
+#: builtin/checkout-index.c:205
 msgid "when creating files, prepend <string>"
 msgstr "lors de la création de fichiers, préfixer par <chaîne>"
 
-#: builtin/checkout-index.c:207
+#: builtin/checkout-index.c:208
 msgid "copy out the files from named stage"
 msgstr "copier les fichiers depuis l'index nommé"
 
@@ -3485,78 +3419,77 @@ msgstr "chemin '%s' : impossible de fusionner"
 msgid "Unable to add merge result for '%s'"
 msgstr "Impossible d'ajouter le résultat de fusion pour '%s'"
 
-#: builtin/checkout.c:232 builtin/checkout.c:235 builtin/checkout.c:238
-#: builtin/checkout.c:241
+#: builtin/checkout.c:231 builtin/checkout.c:234 builtin/checkout.c:237
+#: builtin/checkout.c:240
 #, 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:244 builtin/checkout.c:247
+#: builtin/checkout.c:243 builtin/checkout.c:246
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' ne peut pas être utilisé avec %s"
 
-#: builtin/checkout.c:250
+#: builtin/checkout.c:249
 #, 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:261 builtin/checkout.c:451
+#: builtin/checkout.c:260 builtin/checkout.c:449
 msgid "corrupt index file"
 msgstr "fichier d'index corrompu"
 
-#: builtin/checkout.c:322 builtin/checkout.c:329
+#: builtin/checkout.c:320 builtin/checkout.c:327
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "le chemin '%s' n'est pas fusionné"
 
-#: builtin/checkout.c:473
+#: builtin/checkout.c:471
 msgid "you need to resolve your current index first"
 msgstr "vous devez d'abord résoudre votre index courant"
 
-#: builtin/checkout.c:594
+#: builtin/checkout.c:591
 #, c-format
 msgid "Can not do reflog for '%s'\n"
 msgstr "Impossible de faire un reflog pour '%s'\n"
 
-#: builtin/checkout.c:632
+#: builtin/checkout.c:629
 msgid "HEAD is now at"
 msgstr "HEAD est maintenant sur"
 
-#: builtin/checkout.c:639
+#: builtin/checkout.c:636
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:642
+#: builtin/checkout.c:639
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Déjà sur '%s'\n"
 
-#: builtin/checkout.c:646
+#: builtin/checkout.c:643
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Basculement et remise à zéro de la branche '%s'\n"
 
-#: builtin/checkout.c:648 builtin/checkout.c:1033
+#: builtin/checkout.c:645 builtin/checkout.c:1026
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Basculement sur la nouvelle branche '%s'\n"
 
-#: builtin/checkout.c:650
+#: builtin/checkout.c:647
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Basculement sur la branche '%s'\n"
 
-#: builtin/checkout.c:706
+#: builtin/checkout.c:699
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... et %d en plus.\n"
 
-#. The singular version
-#: builtin/checkout.c:712
+#: builtin/checkout.c:705
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -3569,17 +3502,17 @@ msgid_plural ""
 "\n"
 "%s\n"
 msgstr[0] ""
-"Attention : vous laissez %d commit en retard, non connectés à\n"
+"Attention : vous abandonnez %d commit, non connecté à\n"
 "une branche :\n"
 "\n"
 "%s\n"
 msgstr[1] ""
-"Attention : vous laissez %d commits en retard, non connectés à\n"
+"Attention : vous abandonnez %d commits, non connectés à\n"
 "une branche :\n"
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:730
+#: builtin/checkout.c:723
 #, c-format
 msgid ""
 "If you want to keep them by creating a new branch, this may be a good time\n"
@@ -3590,145 +3523,144 @@ msgid ""
 msgstr ""
 "Si vous souhaitez les garder en créant une nouvelle branche, c'est le bon "
 "moment\n"
-"de le faire avec :\n"
+"pour le faire avec :\n"
 "\n"
-"git branche nouvelle_branche %s\n"
+"git branch nouvelle_branche %s\n"
 "\n"
 
-#: builtin/checkout.c:760
+#: builtin/checkout.c:753
 msgid "internal error in revision walk"
 msgstr "erreur interne lors du parcours des révisions"
 
-#: builtin/checkout.c:764
+#: builtin/checkout.c:757
 msgid "Previous HEAD position was"
 msgstr "La position précédente de HEAD était"
 
-#: builtin/checkout.c:791 builtin/checkout.c:1028
+#: builtin/checkout.c:784 builtin/checkout.c:1021
 msgid "You are on a branch yet to be born"
 msgstr "Vous êtes sur une branche qui doit encore naître"
 
-#: builtin/checkout.c:935
+#: builtin/checkout.c:928
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "une seule référence attendue, %d fournies."
 
-#: builtin/checkout.c:974
+#: builtin/checkout.c:967
 #, c-format
 msgid "invalid reference: %s"
 msgstr "référence invalide : %s"
 
-#. case (1): want a tree
-#: builtin/checkout.c:1003
+#: builtin/checkout.c:996
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "la référence n'est pas un arbre : %s"
 
-#: builtin/checkout.c:1042
+#: builtin/checkout.c:1035
 msgid "paths cannot be used with switching branches"
 msgstr "impossible d'utiliser des chemins avec un basculement de branches"
 
-#: builtin/checkout.c:1045 builtin/checkout.c:1049
+#: builtin/checkout.c:1038 builtin/checkout.c:1042
 #, 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:1053 builtin/checkout.c:1056 builtin/checkout.c:1061
-#: builtin/checkout.c:1064
+#: builtin/checkout.c:1046 builtin/checkout.c:1049 builtin/checkout.c:1054
+#: builtin/checkout.c:1057
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' ne peut pas être utilisé avec '%s'"
 
-#: builtin/checkout.c:1069
+#: builtin/checkout.c:1062
 #, 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:1091 builtin/checkout.c:1093 builtin/clone.c:88
+#: builtin/checkout.c:1084 builtin/checkout.c:1086 builtin/clone.c:88
 #: builtin/remote.c:159 builtin/remote.c:161
 msgid "branch"
 msgstr "branche"
 
-#: builtin/checkout.c:1092
+#: builtin/checkout.c:1085
 msgid "create and checkout a new branch"
 msgstr "créer et extraire une nouvelle branche"
 
-#: builtin/checkout.c:1094
+#: builtin/checkout.c:1087
 msgid "create/reset and checkout a branch"
 msgstr "créer/réinitialiser et extraire une branche"
 
-#: builtin/checkout.c:1095
+#: builtin/checkout.c:1088
 msgid "create reflog for new branch"
 msgstr "créer un reflog pour une nouvelle branche"
 
-#: builtin/checkout.c:1096
+#: builtin/checkout.c:1089
 msgid "detach the HEAD at named commit"
 msgstr "détacher la HEAD à la validation nommée"
 
-#: builtin/checkout.c:1097
+#: builtin/checkout.c:1090
 msgid "set upstream info for new branch"
-msgstr "paramétrer l'information de branche amont pour une nouvelle branche"
+msgstr "paramétrer les coordonnées de branche amont pour une nouvelle branche"
 
-#: builtin/checkout.c:1099
-msgid "new branch"
+#: builtin/checkout.c:1092
+msgid "new-branch"
 msgstr "nouvelle branche"
 
-#: builtin/checkout.c:1099
+#: builtin/checkout.c:1092
 msgid "new unparented branch"
 msgstr "nouvelle branche sans parent"
 
-#: builtin/checkout.c:1100
+#: builtin/checkout.c:1093
 msgid "checkout our version for unmerged files"
 msgstr "extraire notre version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1102
+#: builtin/checkout.c:1095
 msgid "checkout their version for unmerged files"
 msgstr "extraire leur version pour les fichiers non fusionnés"
 
-#: builtin/checkout.c:1104
+#: builtin/checkout.c:1097
 msgid "force checkout (throw away local modifications)"
 msgstr "forcer l'extraction (laisser tomber les modifications locales)"
 
-#: builtin/checkout.c:1105
+#: builtin/checkout.c:1098
 msgid "perform a 3-way merge with the new branch"
 msgstr "effectuer une fusion à 3 points avec la nouvelle branche"
 
-#: builtin/checkout.c:1106 builtin/merge.c:225
+#: builtin/checkout.c:1099 builtin/merge.c:225
 msgid "update ignored files (default)"
 msgstr "mettre à jour les fichiers ignorés (par défaut)"
 
-#: builtin/checkout.c:1107 builtin/log.c:1228 parse-options.h:248
+#: builtin/checkout.c:1100 builtin/log.c:1236 parse-options.h:245
 msgid "style"
 msgstr "style"
 
-#: builtin/checkout.c:1108
+#: builtin/checkout.c:1101
 msgid "conflict style (merge or diff3)"
 msgstr "style de conflit (fusion ou diff3)"
 
-#: builtin/checkout.c:1111
+#: builtin/checkout.c:1104
 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:1113
+#: builtin/checkout.c:1106
 msgid "second guess 'git checkout no-such-branch'"
 msgstr "deuxième chance 'git checkout branche-inexistante'"
 
-#: builtin/checkout.c:1136
+#: builtin/checkout.c:1129
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "-b, -B et --orphan sont mutuellement exclusifs"
 
-#: builtin/checkout.c:1153
+#: builtin/checkout.c:1146
 msgid "--track needs a branch name"
 msgstr "--track requiert un nom de branche"
 
-#: builtin/checkout.c:1160
+#: builtin/checkout.c:1153
 msgid "Missing branch name; try -b"
 msgstr "Nom de branche manquant ; essayez -b"
 
-#: builtin/checkout.c:1197
+#: builtin/checkout.c:1190
 msgid "invalid path specification"
 msgstr "spécification de chemin invalide"
 
-#: builtin/checkout.c:1204
+#: builtin/checkout.c:1197
 #, c-format
 msgid ""
 "Cannot update paths and switch to branch '%s' at the same time.\n"
@@ -3738,12 +3670,12 @@ msgstr ""
 "en même temps.\n"
 "Souhaitiez-vous extraire '%s' qui ne peut être résolu comme commit ?"
 
-#: builtin/checkout.c:1209
+#: builtin/checkout.c:1202
 #, 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:1213
+#: builtin/checkout.c:1206
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -3782,7 +3714,7 @@ msgstr "Ignorerait le dépôt %s\n"
 msgid "failed to remove %s"
 msgstr "échec de la suppression de %s"
 
-#: builtin/clean.c:294
+#: builtin/clean.c:295
 msgid ""
 "Prompt help:\n"
 "1          - select a numbered item\n"
@@ -3794,7 +3726,7 @@ msgstr ""
 "foo         - sélectionner un élément par un préfixe unique\n"
 "            - (vide) ne rien sélectionner"
 
-#: builtin/clean.c:298
+#: builtin/clean.c:299
 msgid ""
 "Prompt help:\n"
 "1          - select a single item\n"
@@ -3814,7 +3746,7 @@ msgstr ""
 "*          - choisir tous les éléments\n"
 "           - (vide) terminer la sélection"
 
-#: builtin/clean.c:516
+#: builtin/clean.c:517
 #, c-format
 msgid "Huh (%s)?"
 msgstr "Hein (%s) ?"
@@ -3894,8 +3826,8 @@ msgstr "nettoyage interactif"
 msgid "remove whole directories"
 msgstr "supprimer les répertoires entiers"
 
-#: builtin/clean.c:880 builtin/describe.c:420 builtin/grep.c:718
-#: builtin/ls-files.c:483 builtin/name-rev.c:314 builtin/show-ref.c:185
+#: builtin/clean.c:880 builtin/describe.c:406 builtin/grep.c:714
+#: builtin/ls-files.c:486 builtin/name-rev.c:311 builtin/show-ref.c:185
 msgid "pattern"
 msgstr "motif"
 
@@ -3917,7 +3849,7 @@ msgstr "-x et -X ne peuvent pas être utilisés ensemble"
 
 #: builtin/clean.c:906
 msgid ""
-"clean.requireForce set to true and neither -i, -n nor -f given; refusing to "
+"clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
 msgstr ""
 "clean.requireForce positionné à true et ni -i, -n ou -f fourni ; refus de "
@@ -3925,7 +3857,7 @@ msgstr ""
 
 #: builtin/clean.c:909
 msgid ""
-"clean.requireForce defaults to true and neither -i, -n nor -f given; "
+"clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
 msgstr ""
 "clean.requireForce à true par défaut et ni -i, -n ou -f fourni ; refus de "
@@ -3935,16 +3867,16 @@ msgstr ""
 msgid "git clone [options] [--] <repo> [<dir>]"
 msgstr "git clone [options] [--] <dépôt> [<répertoire>]"
 
-#: builtin/clone.c:64 builtin/fetch.c:97 builtin/merge.c:222
-#: builtin/push.c:521
+#: builtin/clone.c:64 builtin/fetch.c:112 builtin/merge.c:222
+#: builtin/push.c:503
 msgid "force progress reporting"
-msgstr "forcer l'état d'avancement"
+msgstr "forcer l'affichage de l'état d'avancement"
 
 #: builtin/clone.c:66
 msgid "don't create a checkout"
 msgstr "ne pas créer d'extraction"
 
-#: builtin/clone.c:67 builtin/clone.c:69 builtin/init-db.c:488
+#: builtin/clone.c:67 builtin/clone.c:69 builtin/init-db.c:486
 msgid "create a bare repository"
 msgstr "créer un dépôt nu"
 
@@ -3968,11 +3900,11 @@ msgstr "régler comme dépôt partagé"
 msgid "initialize submodules in the clone"
 msgstr "initialiser les sous-modules dans le clone"
 
-#: builtin/clone.c:82 builtin/init-db.c:485
+#: builtin/clone.c:82 builtin/init-db.c:483
 msgid "template-directory"
 msgstr "répertoire-modèle"
 
-#: builtin/clone.c:83 builtin/init-db.c:486
+#: builtin/clone.c:83 builtin/init-db.c:484
 msgid "directory from which templates will be used"
 msgstr "répertoire depuis lequel les modèles vont être utilisés"
 
@@ -3996,7 +3928,7 @@ msgstr "extraire <branche> au lieu de la HEAD du répertoire distant"
 msgid "path to git-upload-pack on the remote"
 msgstr "chemin vers git-upload-pack sur le serveur distant"
 
-#: builtin/clone.c:92 builtin/fetch.c:98 builtin/grep.c:663
+#: builtin/clone.c:92 builtin/fetch.c:113 builtin/grep.c:659
 msgid "depth"
 msgstr "profondeur"
 
@@ -4008,11 +3940,11 @@ msgstr "créer un clone superficiel de cette profondeur"
 msgid "clone only one branch, HEAD or --branch"
 msgstr "cloner seulement une branche, HEAD ou --branch"
 
-#: builtin/clone.c:96 builtin/init-db.c:494
+#: builtin/clone.c:96 builtin/init-db.c:492
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:97 builtin/init-db.c:495
+#: builtin/clone.c:97 builtin/init-db.c:493
 msgid "separate git dir from working tree"
 msgstr "séparer le répertoire git de la copie de travail"
 
@@ -4098,98 +4030,98 @@ msgstr "Vérification de la connectivité... "
 msgid "remote did not send all necessary objects"
 msgstr "le serveur distant n'a pas envoyé tous les objets nécessaires"
 
-#: builtin/clone.c:626
+#: builtin/clone.c:627
 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:657
+#: builtin/clone.c:658
 msgid "unable to checkout working tree"
 msgstr "impossible d'extraire la copie de travail"
 
-#: builtin/clone.c:765
+#: builtin/clone.c:768
 msgid "Too many arguments."
 msgstr "Trop d'arguments."
 
-#: builtin/clone.c:769
+#: builtin/clone.c:772
 msgid "You must specify a repository to clone."
 msgstr "Vous devez spécifier un dépôt à cloner."
 
-#: builtin/clone.c:780
+#: builtin/clone.c:783
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "les options --bare et --origin %s sont incompatibles."
 
-#: builtin/clone.c:783
+#: builtin/clone.c:786
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "--bare et --separate-git-dir sont incompatibles."
 
-#: builtin/clone.c:796
+#: builtin/clone.c:799
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "le dépôt '%s' n'existe pas"
 
-#: builtin/clone.c:802
-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:805
-msgid "source repository is shallow, ignoring --local"
-msgstr "le dépôt source est superficiel, option --local ignorée"
-
-#: builtin/clone.c:810
-msgid "--local is ignored"
-msgstr "--local est ignoré"
-
-#: builtin/clone.c:814 builtin/fetch.c:1119
+#: builtin/clone.c:805 builtin/fetch.c:1143
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "la profondeur %s n'est pas un entier positif"
 
-#: builtin/clone.c:824
+#: builtin/clone.c:815
 #, 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:834
+#: builtin/clone.c:825
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "la copie de travail '%s' existe déjà."
 
-#: builtin/clone.c:847 builtin/clone.c:859
+#: builtin/clone.c:838 builtin/clone.c:850
 #, 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:850
+#: builtin/clone.c:841
 #, 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:869
+#: builtin/clone.c:860
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Clonage dans le dépôt nu '%s'\n"
 
-#: builtin/clone.c:871
+#: builtin/clone.c:862
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Clonage dans '%s'...\n"
 
+#: builtin/clone.c:898
+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:901
+msgid "source repository is shallow, ignoring --local"
+msgstr "le dépôt source est superficiel, option --local ignorée"
+
 #: builtin/clone.c:906
+msgid "--local is ignored"
+msgstr "--local est ignoré"
+
+#: builtin/clone.c:910
 #, c-format
 msgid "Don't know how to clone %s"
 msgstr "Je ne sais pas cloner %s"
 
-#: builtin/clone.c:957 builtin/clone.c:965
+#: builtin/clone.c:961 builtin/clone.c:969
 #, 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:968
+#: builtin/clone.c:972
 msgid "You appear to have cloned an empty repository."
 msgstr "Vous semblez avoir cloné un dépôt vide."
 
@@ -4248,7 +4180,7 @@ msgid ""
 msgstr ""
 "Votre nom et votre adresse e-mail ont été configurés automatiquement en se "
 "fondant\n"
-"sur votre nom d'utilisateur et votre nom d'ordinateur. Veuillez vérifier "
+"sur votre nom d'utilisateur et le nom de votre machine. Veuillez vérifier "
 "qu'ils sont corrects.\n"
 "Vous pouvez supprimer ce message en les paramétrant explicitement :\n"
 "\n"
@@ -4305,93 +4237,102 @@ msgstr ""
 "Puis \"git cherry-pick --continue\" continuera le picorage \n"
 "des commits restants.\n"
 
-#: builtin/commit.c:287
+#: builtin/commit.c:288
 msgid "failed to unpack HEAD tree object"
 msgstr "échec du dépaquetage de l'objet arbre HEAD"
 
-#: builtin/commit.c:329
+#: builtin/commit.c:328
 msgid "unable to create temporary index"
 msgstr "impossible de créer l'index temporaire"
 
-#: builtin/commit.c:335
+#: builtin/commit.c:334
 msgid "interactive add failed"
 msgstr "échec de l'ajout interactif"
 
-#: builtin/commit.c:368 builtin/commit.c:389 builtin/commit.c:439
+#: builtin/commit.c:366 builtin/commit.c:387 builtin/commit.c:435
 msgid "unable to write new_index file"
 msgstr "impossible d'écrire le fichier new_index"
 
-#: builtin/commit.c:420
+#: builtin/commit.c:418
 msgid "cannot do a partial commit during a merge."
 msgstr "impossible de faire une validation partielle pendant une fusion."
 
-#: builtin/commit.c:422
+#: builtin/commit.c:420
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "impossible de faire une validation partielle pendant un picorage."
 
-#: builtin/commit.c:432
+#: builtin/commit.c:429
 msgid "cannot read the index"
 msgstr "impossible de lire l'index"
 
-#: builtin/commit.c:452
+#: builtin/commit.c:447
 msgid "unable to write temporary index file"
 msgstr "impossible d'écrire le fichier d'index temporaire"
 
-#: builtin/commit.c:543 builtin/commit.c:549
+#: builtin/commit.c:557 builtin/commit.c:563
 #, c-format
 msgid "invalid commit: %s"
 msgstr "commit invalide : %s"
 
-#: builtin/commit.c:571
+#: builtin/commit.c:585
 msgid "malformed --author parameter"
 msgstr "paramètre --author mal formé"
 
-#: builtin/commit.c:591
+#: builtin/commit.c:592
+#, c-format
+msgid "invalid date format: %s"
+msgstr "format de date invalide : %s"
+
+#: builtin/commit.c:609
 #, c-format
 msgid "Malformed ident string: '%s'"
 msgstr "Chaîne ident mal formée : '%s'"
 
-#: builtin/commit.c:630 builtin/commit.c:663 builtin/commit.c:1007
+#: builtin/commit.c:642
+msgid ""
+"unable to select a comment character that is not used\n"
+"in the current commit message"
+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:679 builtin/commit.c:712 builtin/commit.c:1086
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "impossible de rechercher le commit %s"
 
-#: builtin/commit.c:642 builtin/shortlog.c:273
+#: builtin/commit.c:691 builtin/shortlog.c:273
 #, 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:644
+#: builtin/commit.c:693
 msgid "could not read log from standard input"
 msgstr "impossible de lire le journal depuis l'entrée standard"
 
-#: builtin/commit.c:648
+#: builtin/commit.c:697
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "impossible de lire le fichier de journal '%s'"
 
-#: builtin/commit.c:654
-msgid "commit has empty message"
-msgstr "le commit a un message vide"
-
-#: builtin/commit.c:670
+#: builtin/commit.c:719
 msgid "could not read MERGE_MSG"
 msgstr "impossible de lire MERGE_MSG"
 
-#: builtin/commit.c:674
+#: builtin/commit.c:723
 msgid "could not read SQUASH_MSG"
 msgstr "impossible de lire SQUASH_MSG"
 
-#: builtin/commit.c:678
+#: builtin/commit.c:727
 #, c-format
 msgid "could not read '%s'"
 msgstr "impossible de lire '%s'"
 
-#: builtin/commit.c:749
+#: builtin/commit.c:798
 msgid "could not write commit template"
 msgstr "impossible d'écrire le modèle de commit"
 
-#: builtin/commit.c:760
+#: builtin/commit.c:816
 #, c-format
 msgid ""
 "\n"
@@ -4406,7 +4347,7 @@ msgstr ""
 "\t%s\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:765
+#: builtin/commit.c:821
 #, c-format
 msgid ""
 "\n"
@@ -4421,7 +4362,7 @@ msgstr ""
 "\t%s\n"
 "et essayez à nouveau.\n"
 
-#: builtin/commit.c:777
+#: builtin/commit.c:834
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -4431,7 +4372,7 @@ msgstr ""
 "commençant par '%c' seront ignorées, et un message vide abandonne la "
 "validation.\n"
 
-#: builtin/commit.c:782
+#: builtin/commit.c:841
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -4442,142 +4383,147 @@ 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:795
+#: builtin/commit.c:855
 #, c-format
-msgid "%sAuthor:    %s"
-msgstr "%sAuteur :     %s"
+msgid "%sAuthor:    %.*s <%.*s>"
+msgstr "%sAuteur :     %.*s <%.*s>"
 
-#: builtin/commit.c:802
+#: builtin/commit.c:863
 #, c-format
-msgid "%sCommitter: %s"
-msgstr "%sValidateur : %s"
+msgid "%sDate:      %s"
+msgstr "%sDate :       %s"
 
-#: builtin/commit.c:822
+#: builtin/commit.c:870
+#, c-format
+msgid "%sCommitter: %.*s <%.*s>"
+msgstr "%sValidateur : %.*s <%.*s>"
+
+#: builtin/commit.c:888
 msgid "Cannot read index"
 msgstr "Impossible de lire l'index"
 
-#: builtin/commit.c:865
+#: builtin/commit.c:945
 msgid "Error building trees"
 msgstr "Erreur lors de la construction des arbres"
 
-#: builtin/commit.c:880 builtin/tag.c:359
+#: builtin/commit.c:960 builtin/tag.c:495
 #, 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:982
+#: builtin/commit.c:1061
 #, c-format
 msgid "No existing author found with '%s'"
 msgstr "Aucun auteur existant trouvé avec '%s'"
 
-#: builtin/commit.c:997 builtin/commit.c:1237
+#: builtin/commit.c:1076 builtin/commit.c:1316
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Mode de fichier non suivi invalide '%s'"
 
-#: builtin/commit.c:1034
+#: builtin/commit.c:1113
 msgid "--long and -z are incompatible"
 msgstr "--long et -z sont incompatibles"
 
-#: builtin/commit.c:1064
+#: builtin/commit.c:1143
 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:1075
+#: builtin/commit.c:1152
 msgid "You have nothing to amend."
 msgstr "Il n'y a rien à corriger."
 
-#: builtin/commit.c:1078
+#: builtin/commit.c:1155
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Vous êtes en pleine fusion -- impossible de corriger (amend)."
 
-#: builtin/commit.c:1080
+#: builtin/commit.c:1157
 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:1083
+#: builtin/commit.c:1160
 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:1093
+#: builtin/commit.c:1170
 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:1095
+#: builtin/commit.c:1172
 msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
 msgstr "L'option -m ne peut pas être combinée avec -c/-C/-F/--fixup."
 
-#: builtin/commit.c:1103
+#: builtin/commit.c:1180
 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:1120
+#: builtin/commit.c:1197
 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:1122
+#: builtin/commit.c:1199
 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:1124
+#: builtin/commit.c:1201
 msgid "Clever... amending the last one with dirty index."
 msgstr "Malin... correction du dernier avec un index sale."
 
-#: builtin/commit.c:1126
-msgid "Explicit paths specified without -i nor -o; assuming --only paths..."
+#: builtin/commit.c:1203
+msgid "Explicit paths specified without -i or -o; assuming --only paths..."
 msgstr "Chemins explicites spécifiés sans -i ni -o ; --only supposé..."
 
-#: builtin/commit.c:1136 builtin/tag.c:572
+#: builtin/commit.c:1215 builtin/tag.c:727
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Mode de nettoyage invalide %s"
 
-#: builtin/commit.c:1141
+#: builtin/commit.c:1220
 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:1251 builtin/commit.c:1482
+#: builtin/commit.c:1330 builtin/commit.c:1595
 msgid "show status concisely"
 msgstr "afficher le statut avec concision"
 
-#: builtin/commit.c:1253 builtin/commit.c:1484
+#: builtin/commit.c:1332 builtin/commit.c:1597
 msgid "show branch information"
 msgstr "afficher l'information de branche"
 
-#: builtin/commit.c:1255 builtin/commit.c:1486 builtin/push.c:507
+#: builtin/commit.c:1334 builtin/commit.c:1599 builtin/push.c:489
 msgid "machine-readable output"
 msgstr "sortie pour traitement automatique"
 
-#: builtin/commit.c:1258 builtin/commit.c:1488
+#: builtin/commit.c:1337 builtin/commit.c:1601
 msgid "show status in long format (default)"
 msgstr "afficher le statut en format long (par défaut)"
 
-#: builtin/commit.c:1261 builtin/commit.c:1491
+#: builtin/commit.c:1340 builtin/commit.c:1604
 msgid "terminate entries with NUL"
 msgstr "terminer les éléments par NUL"
 
-#: builtin/commit.c:1263 builtin/commit.c:1494 builtin/fast-export.c:674
-#: builtin/fast-export.c:677 builtin/tag.c:459
+#: builtin/commit.c:1342 builtin/commit.c:1607 builtin/fast-export.c:703
+#: builtin/fast-export.c:706 builtin/tag.c:602
 msgid "mode"
 msgstr "mode"
 
-#: builtin/commit.c:1264 builtin/commit.c:1494
+#: builtin/commit.c:1343 builtin/commit.c:1607
 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:1267
+#: builtin/commit.c:1346
 msgid "show ignored files"
 msgstr "afficher les fichiers ignorés"
 
-#: builtin/commit.c:1268 parse-options.h:156
+#: builtin/commit.c:1347 parse-options.h:153
 msgid "when"
 msgstr "quand"
 
-#: builtin/commit.c:1269
+#: builtin/commit.c:1348
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -4585,217 +4531,217 @@ msgstr ""
 "ignorer les modifications dans les sous-modules, \"quand\" facultatif : all "
 "(tous), dirty (sale), untracked (non suivi). (Défaut : all)"
 
-#: builtin/commit.c:1271
+#: builtin/commit.c:1350
 msgid "list untracked files in columns"
 msgstr "afficher les fichiers non suivis en colonnes"
 
-#: builtin/commit.c:1340
+#: builtin/commit.c:1419
 msgid "couldn't look up newly created commit"
 msgstr "impossible de retrouver le commit nouvellement créé"
 
-#: builtin/commit.c:1342
+#: builtin/commit.c:1421
 msgid "could not parse newly created commit"
 msgstr "impossible d'analyser le commit nouvellement créé"
 
-#: builtin/commit.c:1383
+#: builtin/commit.c:1469
 msgid "detached HEAD"
 msgstr "HEAD détachée"
 
-#: builtin/commit.c:1385
+#: builtin/commit.c:1471
 msgid " (root-commit)"
 msgstr " (commit racine)"
 
-#: builtin/commit.c:1452
+#: builtin/commit.c:1565
 msgid "suppress summary after successful commit"
 msgstr "supprimer le résumé après une validation réussie"
 
-#: builtin/commit.c:1453
+#: builtin/commit.c:1566
 msgid "show diff in commit message template"
 msgstr "afficher les diff dans le modèle de message de validation"
 
-#: builtin/commit.c:1455
+#: builtin/commit.c:1568
 msgid "Commit message options"
 msgstr "Options du message de validation"
 
-#: builtin/commit.c:1456 builtin/tag.c:457
+#: builtin/commit.c:1569 builtin/tag.c:600
 msgid "read message from file"
 msgstr "lire le message depuis un fichier"
 
-#: builtin/commit.c:1457
+#: builtin/commit.c:1570
 msgid "author"
 msgstr "auteur"
 
-#: builtin/commit.c:1457
+#: builtin/commit.c:1570
 msgid "override author for commit"
 msgstr "remplacer l'auteur pour la validation"
 
-#: builtin/commit.c:1458 builtin/gc.c:261
+#: builtin/commit.c:1571 builtin/gc.c:286
 msgid "date"
 msgstr "date"
 
-#: builtin/commit.c:1458
+#: builtin/commit.c:1571
 msgid "override date for commit"
 msgstr "remplacer la date pour la validation"
 
-#: builtin/commit.c:1459 builtin/merge.c:216 builtin/notes.c:405
-#: builtin/notes.c:562 builtin/tag.c:455
+#: builtin/commit.c:1572 builtin/merge.c:216 builtin/notes.c:409
+#: builtin/notes.c:566 builtin/tag.c:598
 msgid "message"
 msgstr "message"
 
-#: builtin/commit.c:1459
+#: builtin/commit.c:1572
 msgid "commit message"
 msgstr "message de validation"
 
-#: builtin/commit.c:1460
+#: builtin/commit.c:1573
 msgid "reuse and edit message from specified commit"
 msgstr "réutiliser et éditer le message du commit spécifié"
 
-#: builtin/commit.c:1461
+#: builtin/commit.c:1574
 msgid "reuse message from specified commit"
 msgstr "réutiliser le message du commit spécifié"
 
-#: builtin/commit.c:1462
+#: builtin/commit.c:1575
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
-"utiliser un message formaté par autosquash pour corriger le commit spécifié"
+"utiliser un message au format autosquash pour corriger le commit spécifié"
 
-#: builtin/commit.c:1463
+#: builtin/commit.c:1576
 msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
-"utiliser un message formaté par autosquash pour compresser le commit spécifié"
+"utiliser un message au format autosquash pour compresser le commit spécifié"
 
-#: builtin/commit.c:1464
+#: builtin/commit.c:1577
 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:1465 builtin/log.c:1180 builtin/revert.c:86
+#: builtin/commit.c:1578 builtin/log.c:1188 builtin/revert.c:86
 msgid "add Signed-off-by:"
 msgstr "ajouter une entrée Signed-off-by :"
 
-#: builtin/commit.c:1466
+#: builtin/commit.c:1579
 msgid "use specified template file"
 msgstr "utiliser le fichier de modèle spécifié"
 
-#: builtin/commit.c:1467
+#: builtin/commit.c:1580
 msgid "force edit of commit"
 msgstr "forcer l'édition du commit"
 
-#: builtin/commit.c:1468
+#: builtin/commit.c:1581
 msgid "default"
 msgstr "défaut"
 
-#: builtin/commit.c:1468 builtin/tag.c:460
+#: builtin/commit.c:1581 builtin/tag.c:603
 msgid "how to strip spaces and #comments from message"
 msgstr "comment éliminer les espaces et les commentaires # du message"
 
-#: builtin/commit.c:1469
+#: builtin/commit.c:1582
 msgid "include status in commit message template"
 msgstr "inclure le statut dans le modèle de message de validation"
 
-#: builtin/commit.c:1470 builtin/merge.c:223 builtin/tag.c:461
-msgid "key id"
-msgstr "identifiant de clé"
+#: builtin/commit.c:1583 builtin/merge.c:223 builtin/revert.c:92
+#: builtin/tag.c:604
+msgid "key-id"
+msgstr "id de clé"
 
-#: builtin/commit.c:1471 builtin/merge.c:224
+#: builtin/commit.c:1584 builtin/merge.c:224 builtin/revert.c:93
 msgid "GPG sign commit"
 msgstr "signer la validation avec GPG"
 
-#. end commit message options
-#: builtin/commit.c:1474
+#: builtin/commit.c:1587
 msgid "Commit contents options"
 msgstr "Valider les options des contenus"
 
-#: builtin/commit.c:1475
+#: builtin/commit.c:1588
 msgid "commit all changed files"
 msgstr "valider tous les fichiers modifiés"
 
-#: builtin/commit.c:1476
+#: builtin/commit.c:1589
 msgid "add specified files to index for commit"
 msgstr "ajouter les fichiers spécifiés à l'index pour la validation"
 
-#: builtin/commit.c:1477
+#: builtin/commit.c:1590
 msgid "interactively add files"
 msgstr "ajouter des fichiers en mode interactif"
 
-#: builtin/commit.c:1478
+#: builtin/commit.c:1591
 msgid "interactively add changes"
 msgstr "ajouter les modifications en mode interactif"
 
-#: builtin/commit.c:1479
+#: builtin/commit.c:1592
 msgid "commit only specified files"
 msgstr "valider seulement les fichiers spécifiés"
 
-#: builtin/commit.c:1480
+#: builtin/commit.c:1593
 msgid "bypass pre-commit hook"
 msgstr "éviter d'utiliser le crochet pre-commit"
 
-#: builtin/commit.c:1481
+#: builtin/commit.c:1594
 msgid "show what would be committed"
 msgstr "afficher ce qui serait validé"
 
-#: builtin/commit.c:1492
+#: builtin/commit.c:1605
 msgid "amend previous commit"
 msgstr "corriger la validation précédente"
 
-#: builtin/commit.c:1493
+#: builtin/commit.c:1606
 msgid "bypass post-rewrite hook"
 msgstr "éviter d'utiliser le crochet post-rewrite"
 
-#: builtin/commit.c:1498
+#: builtin/commit.c:1611
 msgid "ok to record an empty change"
 msgstr "accepter d'enregistrer une modification vide"
 
-#: builtin/commit.c:1500
+#: builtin/commit.c:1613
 msgid "ok to record a change with an empty message"
 msgstr "accepter d'enregistrer une modification avec un message vide"
 
-#: builtin/commit.c:1529
+#: builtin/commit.c:1641
 msgid "could not parse HEAD commit"
 msgstr "impossible d'analyser le commit HEAD"
 
-#: builtin/commit.c:1567 builtin/merge.c:518
+#: builtin/commit.c:1680 builtin/merge.c:518
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "impossible d'ouvrir '%s' en lecture"
 
-#: builtin/commit.c:1574
+#: builtin/commit.c:1687
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Fichier MERGE_HEAD corrompu (%s)"
 
-#: builtin/commit.c:1581
+#: builtin/commit.c:1694
 msgid "could not read MERGE_MODE"
 msgstr "impossible de lire MERGE_MODE"
 
-#: builtin/commit.c:1600
+#: builtin/commit.c:1713
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "impossible de lire le message de validation : %s"
 
-#: builtin/commit.c:1611
+#: builtin/commit.c:1724
 #, 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:1616
+#: builtin/commit.c:1729
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "Abandon de la validation du à un message de validation vide\n"
 
-#: builtin/commit.c:1631 builtin/merge.c:854 builtin/merge.c:879
+#: builtin/commit.c:1744 builtin/merge.c:851 builtin/merge.c:876
 msgid "failed to write commit object"
 msgstr "échec de l'écriture de l'objet commit"
 
-#: builtin/commit.c:1652
+#: builtin/commit.c:1756
 msgid "cannot lock HEAD ref"
 msgstr "impossible de verrouiller la référence HEAD"
 
-#: builtin/commit.c:1656
+#: builtin/commit.c:1769
 msgid "cannot update HEAD ref"
 msgstr "impossible de mettre à jour la référence HEAD"
 
-#: builtin/commit.c:1667
+#: builtin/commit.c:1780
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full or quota is\n"
@@ -4809,128 +4755,128 @@ msgstr ""
 msgid "git config [options]"
 msgstr "git config [options]"
 
-#: builtin/config.c:54
+#: builtin/config.c:53
 msgid "Config file location"
 msgstr "Emplacement du fichier de configuration"
 
-#: builtin/config.c:55
+#: builtin/config.c:54
 msgid "use global config file"
 msgstr "utiliser les fichier de configuration global"
 
-#: builtin/config.c:56
+#: builtin/config.c:55
 msgid "use system config file"
 msgstr "utiliser le fichier de configuration du système"
 
-#: builtin/config.c:57
+#: builtin/config.c:56
 msgid "use repository config file"
 msgstr "utiliser le fichier de configuration du dépôt"
 
-#: builtin/config.c:58
+#: builtin/config.c:57
 msgid "use given config file"
 msgstr "utiliser le fichier de configuration spécifié"
 
-#: builtin/config.c:59
+#: builtin/config.c:58
 msgid "blob-id"
 msgstr "blob-id"
 
-#: builtin/config.c:59
+#: builtin/config.c:58
 msgid "read config from given blob object"
 msgstr "lire la configuration depuis l'objet blob fourni"
 
-#: builtin/config.c:60
+#: builtin/config.c:59
 msgid "Action"
 msgstr "Action"
 
-#: builtin/config.c:61
+#: builtin/config.c:60
 msgid "get value: name [value-regex]"
 msgstr "obtenir la valeur : nom [regex-de-valeur]"
 
-#: builtin/config.c:62
+#: builtin/config.c:61
 msgid "get all values: key [value-regex]"
 msgstr "obtenir toutes le valeurs : clé [regex-de-valeur]"
 
-#: builtin/config.c:63
+#: builtin/config.c:62
 msgid "get values for regexp: name-regex [value-regex]"
 msgstr "obtenir les valeur pour la regexp : regex-de-nom [regex-de-valeur]"
 
-#: builtin/config.c:64
+#: builtin/config.c:63
 msgid "get value specific for the URL: section[.var] URL"
 msgstr "obtenir la valeur spécifique pour l'URL : section[.var] URL"
 
-#: builtin/config.c:65
+#: builtin/config.c:64
 msgid "replace all matching variables: name value [value_regex]"
 msgstr ""
 "remplacer toutes les variables correspondant : nom valeur [regex-de-valeur]"
 
-#: builtin/config.c:66
+#: builtin/config.c:65
 msgid "add a new variable: name value"
 msgstr "ajouter une nouvelle variable : nom valeur"
 
-#: builtin/config.c:67
+#: builtin/config.c:66
 msgid "remove a variable: name [value-regex]"
 msgstr "supprimer une variable : nom [regex-de-valeur]"
 
-#: builtin/config.c:68
+#: builtin/config.c:67
 msgid "remove all matches: name [value-regex]"
 msgstr "supprimer toutes les correspondances nom [regex-de-valeur]"
 
-#: builtin/config.c:69
+#: builtin/config.c:68
 msgid "rename section: old-name new-name"
 msgstr "renommer une section : ancien-nom nouveau-nom"
 
-#: builtin/config.c:70
+#: builtin/config.c:69
 msgid "remove a section: name"
 msgstr "supprimer une section : nom"
 
-#: builtin/config.c:71
+#: builtin/config.c:70
 msgid "list all"
 msgstr "afficher tout"
 
-#: builtin/config.c:72
+#: builtin/config.c:71
 msgid "open an editor"
 msgstr "ouvrir un éditeur"
 
-#: builtin/config.c:73 builtin/config.c:74
+#: builtin/config.c:72 builtin/config.c:73
 msgid "slot"
 msgstr "emplacement"
 
-#: builtin/config.c:73
+#: builtin/config.c:72
 msgid "find the color configured: [default]"
 msgstr "trouver la couleur configurée : [par défaut]"
 
-#: builtin/config.c:74
+#: builtin/config.c:73
 msgid "find the color setting: [stdout-is-tty]"
 msgstr "trouver le réglage de la couleur : [stdout-est-tty]"
 
-#: builtin/config.c:75
+#: builtin/config.c:74
 msgid "Type"
 msgstr "Type"
 
-#: builtin/config.c:76
+#: builtin/config.c:75
 msgid "value is \"true\" or \"false\""
-msgstr "la valeur est \"true\" (vrai) our \"false\" (faux)"
+msgstr "la valeur est \"true\" (vrai) ou \"false\" (faux)"
 
-#: builtin/config.c:77
+#: builtin/config.c:76
 msgid "value is decimal number"
 msgstr "la valeur est un nombre décimal"
 
-#: builtin/config.c:78
+#: builtin/config.c:77
 msgid "value is --bool or --int"
 msgstr "la valeur est --bool ou --int"
 
-#: builtin/config.c:79
+#: builtin/config.c:78
 msgid "value is a path (file or directory name)"
 msgstr "la valeur est un chemin (vers un fichier ou un répertoire)"
 
-#: builtin/config.c:80
+#: builtin/config.c:79
 msgid "Other"
 msgstr "Autre"
 
-#: builtin/config.c:81
+#: builtin/config.c:80
 msgid "terminate values with NUL byte"
 msgstr "terminer les valeurs avec un caractère NUL"
 
-#: builtin/config.c:82
+#: builtin/config.c:81
 msgid "respect include directives on lookup"
 msgstr "respecter les directives d'inclusion lors de la recherche"
 
@@ -4950,47 +4896,47 @@ msgstr "git describe [options] <commit ou apparenté>*"
 msgid "git describe [options] --dirty"
 msgstr "git describe [options] --dirty"
 
-#: builtin/describe.c:237
+#: builtin/describe.c:216
 #, c-format
 msgid "annotated tag %s not available"
 msgstr "l'étiquette annotée %s n'est pas disponible"
 
-#: builtin/describe.c:241
+#: builtin/describe.c:220
 #, 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:243
+#: builtin/describe.c:222
 #, c-format
 msgid "tag '%s' is really '%s' here"
 msgstr "l'étiquette '%s' est en fait '%s'"
 
-#: builtin/describe.c:270
+#: builtin/describe.c:249
 #, c-format
 msgid "Not a valid object name %s"
 msgstr "%s n'est pas un nom d'objet valide"
 
-#: builtin/describe.c:273
+#: builtin/describe.c:252
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s n'est pas un objet '%s' valide"
 
-#: builtin/describe.c:290
+#: builtin/describe.c:269
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr "aucune étiquette ne correspond parfaitement à '%s'"
 
-#: builtin/describe.c:292
+#: builtin/describe.c:271
 #, c-format
 msgid "searching to describe %s\n"
 msgstr "recherche de la description de %s\n"
 
-#: builtin/describe.c:332
+#: builtin/describe.c:318
 #, c-format
 msgid "finished search at %s\n"
 msgstr "recherche terminée à %s\n"
 
-#: builtin/describe.c:359
+#: builtin/describe.c:345
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
@@ -4999,7 +4945,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:363
+#: builtin/describe.c:349
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
@@ -5008,12 +4954,12 @@ msgstr ""
 "Aucune étiquette ne peut décrire '%s'.\n"
 "Essayez --always, ou créez des étiquettes."
 
-#: builtin/describe.c:384
+#: builtin/describe.c:370
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr "%lu commits parcourus\n"
 
-#: builtin/describe.c:387
+#: builtin/describe.c:373
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
@@ -5023,64 +4969,64 @@ msgstr ""
 "affichées\n"
 "abandon de la recherche à %s\n"
 
-#: builtin/describe.c:409
+#: builtin/describe.c:395
 msgid "find the tag that comes after the commit"
 msgstr "rechercher l'étiquette qui suit le commit"
 
-#: builtin/describe.c:410
+#: builtin/describe.c:396
 msgid "debug search strategy on stderr"
 msgstr "déboguer la stratégie de recherche sur stderr"
 
-#: builtin/describe.c:411
+#: builtin/describe.c:397
 msgid "use any ref"
 msgstr "utiliser n'importe quelle référence"
 
-#: builtin/describe.c:412
+#: builtin/describe.c:398
 msgid "use any tag, even unannotated"
 msgstr "utiliser n'importe quelle étiquette, même non-annotée"
 
-#: builtin/describe.c:413
+#: builtin/describe.c:399
 msgid "always use long format"
 msgstr "toujours utiliser le format long"
 
-#: builtin/describe.c:414
+#: builtin/describe.c:400
 msgid "only follow first parent"
 msgstr "ne suivre que le premier parent"
 
-#: builtin/describe.c:417
+#: builtin/describe.c:403
 msgid "only output exact matches"
 msgstr "n'afficher que les correspondances exactes"
 
-#: builtin/describe.c:419
+#: builtin/describe.c:405
 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:421
+#: builtin/describe.c:407
 msgid "only consider tags matching <pattern>"
 msgstr "ne considérer que les étiquettes correspondant à <motif>"
 
-#: builtin/describe.c:423 builtin/name-rev.c:321
+#: builtin/describe.c:409 builtin/name-rev.c:318
 msgid "show abbreviated commit object as fallback"
 msgstr "afficher les objets commits abrégés en dernier recours"
 
-#: builtin/describe.c:424
+#: builtin/describe.c:410
 msgid "mark"
 msgstr "marque"
 
-#: builtin/describe.c:425
+#: builtin/describe.c:411
 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:443
+#: builtin/describe.c:429
 msgid "--long is incompatible with --abbrev=0"
 msgstr "--long et --abbrev=0 sont incompatibles"
 
-#: builtin/describe.c:469
+#: builtin/describe.c:455
 msgid "No names found, cannot describe anything."
 msgstr "aucun nom trouvé, impossible de décrire quoi que ce soit."
 
-#: builtin/describe.c:489
+#: builtin/describe.c:475
 msgid "--dirty is incompatible with commit-ishes"
 msgstr "--dirty est incompatible avec la spécification de commits ou assimilés"
 
@@ -5113,47 +5059,55 @@ msgstr "plus de deux blobs spécifiés : '%s'"
 msgid "unhandled object '%s' given."
 msgstr "objet non géré '%s' spécifié."
 
-#: builtin/fast-export.c:22
+#: builtin/fast-export.c:23
 msgid "git fast-export [rev-list-opts]"
 msgstr "git fast-export [options-de-liste-de-révisions]"
 
-#: builtin/fast-export.c:673
+#: builtin/fast-export.c:702
 msgid "show progress after <n> objects"
 msgstr "afficher la progression après <n> objets"
 
-#: builtin/fast-export.c:675
+#: builtin/fast-export.c:704
 msgid "select handling of signed tags"
 msgstr "sélectionner la gestion des étiquettes signées"
 
-#: builtin/fast-export.c:678
+#: builtin/fast-export.c:707
 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:681
+#: builtin/fast-export.c:710
 msgid "Dump marks to this file"
 msgstr "Enregistrer les marques dans ce fichier"
 
-#: builtin/fast-export.c:683
+#: builtin/fast-export.c:712
 msgid "Import marks from this file"
 msgstr "importer les marques depuis ce fichier"
 
-#: builtin/fast-export.c:685
+#: builtin/fast-export.c:714
 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:687
+#: builtin/fast-export.c:716
 msgid "Output full tree for each commit"
 msgstr "Afficher l'arbre complet pour chaque commit"
 
-#: builtin/fast-export.c:689
+#: builtin/fast-export.c:718
 msgid "Use the done feature to terminate the stream"
 msgstr "Utiliser la fonction \"done\" pour terminer le flux"
 
-#: builtin/fast-export.c:690
+#: builtin/fast-export.c:719
 msgid "Skip output of blob data"
 msgstr "Sauter l'affichage de données de blob"
 
+#: builtin/fast-export.c:720
+msgid "refspec"
+msgstr "spécificateur de référence"
+
+#: builtin/fast-export.c:721
+msgid "Apply refspec to exported refs"
+msgstr "Appliquer le spécificateur de référence aux références exportées"
+
 #: builtin/fetch.c:20
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr "git fetch [<options>] [<dépôt> [<spécification-de-référence>...]]"
@@ -5170,156 +5124,164 @@ msgstr "git fetch --multiple [<options>] [(<dépôt> | <groupe>)...]"
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<options>]"
 
-#: builtin/fetch.c:75
+#: builtin/fetch.c:90
 msgid "fetch from all remotes"
 msgstr "récupérer depuis tous le dépôts distants"
 
-#: builtin/fetch.c:77
+#: builtin/fetch.c:92
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "ajouter à .git/FETCH_HEAD au lieu de l'écraser"
 
-#: builtin/fetch.c:79
+#: builtin/fetch.c:94
 msgid "path to upload pack on remote end"
 msgstr "chemin vers lequel télécharger le paquet sur le poste distant"
 
-#: builtin/fetch.c:80
+#: builtin/fetch.c:95
 msgid "force overwrite of local branch"
 msgstr "forcer l'écrasement de la branche locale"
 
-#: builtin/fetch.c:82
+#: builtin/fetch.c:97
 msgid "fetch from multiple remotes"
 msgstr "récupérer depuis plusieurs dépôts distants"
 
-#: builtin/fetch.c:84
+#: builtin/fetch.c:99
 msgid "fetch all tags and associated objects"
 msgstr "récupérer toutes les étiquettes et leurs objets associés"
 
-#: builtin/fetch.c:86
+#: builtin/fetch.c:101
 msgid "do not fetch all tags (--no-tags)"
 msgstr "ne pas récupérer toutes les étiquettes (--no-tags)"
 
-#: builtin/fetch.c:88
+#: builtin/fetch.c:103
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 "éliminer les branches de suivi distant si la branche n'existe plus dans le "
 "dépôt distant"
 
-#: builtin/fetch.c:89
+#: builtin/fetch.c:104
 msgid "on-demand"
 msgstr "à la demande"
 
-#: builtin/fetch.c:90
+#: builtin/fetch.c:105
 msgid "control recursive fetching of submodules"
 msgstr "contrôler la récupération récursive dans les sous-modules"
 
-#: builtin/fetch.c:94
+#: builtin/fetch.c:109
 msgid "keep downloaded pack"
 msgstr "conserver le paquet téléchargé"
 
-#: builtin/fetch.c:96
+#: builtin/fetch.c:111
 msgid "allow updating of HEAD ref"
 msgstr "permettre la mise à jour de la référence HEAD"
 
-#: builtin/fetch.c:99
+#: builtin/fetch.c:114
 msgid "deepen history of shallow clone"
 msgstr "approfondir l'historique d'un clone superficiel"
 
-#: builtin/fetch.c:101
+#: builtin/fetch.c:116
 msgid "convert to a complete repository"
 msgstr "convertir en un dépôt complet"
 
-#: builtin/fetch.c:103 builtin/log.c:1197
+#: builtin/fetch.c:118 builtin/log.c:1205
 msgid "dir"
 msgstr "dir"
 
-#: builtin/fetch.c:104
+#: builtin/fetch.c:119
 msgid "prepend this to submodule path output"
 msgstr "préfixer ceci à la sortie du chemin du sous-module"
 
-#: builtin/fetch.c:107
+#: builtin/fetch.c:122
 msgid "default mode for recursion"
 msgstr "mode par défaut pour la récursion"
 
-#: builtin/fetch.c:109
+#: builtin/fetch.c:124
 msgid "accept refs that update .git/shallow"
 msgstr "accepter les références qui mettent à jour .git/shallow"
 
-#: builtin/fetch.c:347
+#: builtin/fetch.c:125
+msgid "refmap"
+msgstr "correspondance de référence"
+
+#: builtin/fetch.c:126
+msgid "specify fetch refmap"
+msgstr "spécifier une correspondance de référence pour la récupération"
+
+#: builtin/fetch.c:376
 msgid "Couldn't find remote ref HEAD"
 msgstr "impossible de trouver la référence HEAD distante"
 
-#: builtin/fetch.c:411
+#: builtin/fetch.c:440
 #, c-format
 msgid "object %s not found"
 msgstr "objet %s non trouvé"
 
-#: builtin/fetch.c:416
+#: builtin/fetch.c:445
 msgid "[up to date]"
 msgstr "[à jour]"
 
-#: builtin/fetch.c:430
+#: builtin/fetch.c:459
 #, c-format
 msgid "! %-*s %-*s -> %s  (can't fetch in current branch)"
 msgstr "! %-*s %-*s -> %s  (impossible de récupérer la branche actuelle)"
 
-#: builtin/fetch.c:431 builtin/fetch.c:517
+#: builtin/fetch.c:460 builtin/fetch.c:546
 msgid "[rejected]"
 msgstr "[rejeté]"
 
-#: builtin/fetch.c:442
+#: builtin/fetch.c:471
 msgid "[tag update]"
 msgstr "[mise à jour de l'étiquette]"
 
-#: builtin/fetch.c:444 builtin/fetch.c:479 builtin/fetch.c:497
+#: builtin/fetch.c:473 builtin/fetch.c:508 builtin/fetch.c:526
 msgid "  (unable to update local ref)"
 msgstr "  (impossible de mettre à jour la référence locale)"
 
-#: builtin/fetch.c:462
+#: builtin/fetch.c:491
 msgid "[new tag]"
 msgstr "[nouvelle étiquette]"
 
-#: builtin/fetch.c:465
+#: builtin/fetch.c:494
 msgid "[new branch]"
 msgstr "[nouvelle branche]"
 
-#: builtin/fetch.c:468
+#: builtin/fetch.c:497
 msgid "[new ref]"
 msgstr "[nouvelle référence]"
 
-#: builtin/fetch.c:513
+#: builtin/fetch.c:542
 msgid "unable to update local ref"
 msgstr "impossible de mettre à jour la référence locale"
 
-#: builtin/fetch.c:513
+#: builtin/fetch.c:542
 msgid "forced update"
 msgstr "mise à jour forcée"
 
-#: builtin/fetch.c:519
+#: builtin/fetch.c:548
 msgid "(non-fast-forward)"
 msgstr "(pas d'avance rapide)"
 
-#: builtin/fetch.c:552 builtin/fetch.c:785
+#: builtin/fetch.c:581 builtin/fetch.c:814
 #, c-format
 msgid "cannot open %s: %s\n"
 msgstr "impossible d'ouvrir %s : %s\n"
 
-#: builtin/fetch.c:561
+#: builtin/fetch.c:590
 #, 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:579
+#: builtin/fetch.c:608
 #, 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:667 builtin/fetch.c:750
+#: builtin/fetch.c:696 builtin/fetch.c:779
 #, c-format
 msgid "From %.*s\n"
 msgstr "Depuis %.*s\n"
 
-#: builtin/fetch.c:678
+#: builtin/fetch.c:707
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -5328,55 +5290,55 @@ msgstr ""
 "des références locales n'ont pas pu être mises à jour ; essayez de lancer\n"
 " 'git remote prune %s' pour supprimer des branches anciennes en conflit"
 
-#: builtin/fetch.c:730
+#: builtin/fetch.c:759
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s sera en suspens)"
 
-#: builtin/fetch.c:731
+#: builtin/fetch.c:760
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s est devenu en suspens)"
 
-#: builtin/fetch.c:755
+#: builtin/fetch.c:784
 msgid "[deleted]"
 msgstr "[supprimé]"
 
-#: builtin/fetch.c:756 builtin/remote.c:1050
+#: builtin/fetch.c:785 builtin/remote.c:1059
 msgid "(none)"
 msgstr "(aucun(e))"
 
-#: builtin/fetch.c:775
+#: builtin/fetch.c:804
 #, 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:794
+#: builtin/fetch.c:823
 #, 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:797
+#: builtin/fetch.c:826
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "L'option \"%s\" est ignorée pour %s\n"
 
-#: builtin/fetch.c:853
+#: builtin/fetch.c:882
 #, c-format
 msgid "Don't know how to fetch from %s"
 msgstr "Je ne sais pas récupérer depuis %s"
 
-#: builtin/fetch.c:1015
+#: builtin/fetch.c:1044
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Récupération de %s\n"
 
-#: builtin/fetch.c:1017 builtin/remote.c:90
+#: builtin/fetch.c:1046 builtin/remote.c:90
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Impossible de récupérer %s"
 
-#: builtin/fetch.c:1036
+#: builtin/fetch.c:1064
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -5384,32 +5346,32 @@ 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:1059
+#: builtin/fetch.c:1087
 msgid "You need to specify a tag name."
 msgstr "Vous devez spécifier un nom d'étiquette."
 
-#: builtin/fetch.c:1107
+#: builtin/fetch.c:1131
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth et --unshallow ne peuvent pas être utilisés ensemble"
 
-#: builtin/fetch.c:1109
+#: builtin/fetch.c:1133
 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:1132
+#: builtin/fetch.c:1156
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all n'accepte pas d'argument de dépôt"
 
-#: builtin/fetch.c:1134
+#: builtin/fetch.c:1158
 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:1145
+#: builtin/fetch.c:1169
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "distant ou groupe distant inexistant : %s"
 
-#: builtin/fetch.c:1153
+#: builtin/fetch.c:1177
 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 "
@@ -5420,10 +5382,10 @@ msgid "git fmt-merge-msg [-m <message>] [--log[=<n>]|--no-log] [--file <file>]"
 msgstr ""
 "git fmt-merge-msg [-m <message>] [--log[=<n>]|--no-log] [--file <fichier>]"
 
-#: builtin/fmt-merge-msg.c:663 builtin/fmt-merge-msg.c:666 builtin/grep.c:702
-#: builtin/merge.c:196 builtin/repack.c:160 builtin/repack.c:164
-#: builtin/show-branch.c:654 builtin/show-ref.c:178 builtin/tag.c:446
-#: parse-options.h:135 parse-options.h:242
+#: builtin/fmt-merge-msg.c:663 builtin/fmt-merge-msg.c:666 builtin/grep.c:698
+#: builtin/merge.c:196 builtin/repack.c:179 builtin/repack.c:183
+#: builtin/show-branch.c:654 builtin/show-ref.c:178 builtin/tag.c:589
+#: parse-options.h:132 parse-options.h:239
 msgid "n"
 msgstr "n"
 
@@ -5447,136 +5409,153 @@ msgstr "utiliser <texte> comme début de message"
 msgid "file to read from"
 msgstr "fichier d'où lire"
 
-#: builtin/for-each-ref.c:1063
+#: builtin/for-each-ref.c:1051
 msgid "git for-each-ref [options] [<pattern>]"
 msgstr "git for-each-ref [options] [<motif>]"
 
-#: builtin/for-each-ref.c:1078
+#: builtin/for-each-ref.c:1066
 msgid "quote placeholders suitably for shells"
 msgstr "échapper les champs réservés pour les interpréteurs de commandes"
 
-#: builtin/for-each-ref.c:1080
+#: builtin/for-each-ref.c:1068
 msgid "quote placeholders suitably for perl"
 msgstr "échapper les champs réservés pour perl"
 
-#: builtin/for-each-ref.c:1082
+#: builtin/for-each-ref.c:1070
 msgid "quote placeholders suitably for python"
 msgstr "échapper les champs réservés pour python"
 
-#: builtin/for-each-ref.c:1084
+#: builtin/for-each-ref.c:1072
 msgid "quote placeholders suitably for tcl"
 msgstr "échapper les champs réservés pour tcl"
 
-#: builtin/for-each-ref.c:1087
+#: builtin/for-each-ref.c:1075
 msgid "show only <n> matched refs"
 msgstr "n'afficher que <n> références correspondant"
 
-#: builtin/for-each-ref.c:1088 builtin/replace.c:177
+#: builtin/for-each-ref.c:1076 builtin/replace.c:435
 msgid "format"
 msgstr "format"
 
-#: builtin/for-each-ref.c:1088
+#: builtin/for-each-ref.c:1076
 msgid "format to use for the output"
 msgstr "format à utiliser pour la sortie"
 
-#: builtin/for-each-ref.c:1089
+#: builtin/for-each-ref.c:1077
 msgid "key"
 msgstr "clé"
 
-#: builtin/for-each-ref.c:1090
+#: builtin/for-each-ref.c:1078
 msgid "field name to sort on"
 msgstr "nom du champ servant à trier"
 
-#: builtin/fsck.c:607
+#: builtin/fsck.c:147 builtin/prune.c:172
+msgid "Checking connectivity"
+msgstr "Vérification de la connectivité"
+
+#: builtin/fsck.c:538
+msgid "Checking object directories"
+msgstr "Vérification des répertoires d'objet"
+
+#: builtin/fsck.c:601
 msgid "git fsck [options] [<object>...]"
 msgstr "git fsck [options] [<objet>...]"
 
-#: builtin/fsck.c:613
+#: builtin/fsck.c:607
 msgid "show unreachable objects"
 msgstr "afficher les objets inaccessibles"
 
-#: builtin/fsck.c:614
+#: builtin/fsck.c:608
 msgid "show dangling objects"
 msgstr "afficher les objets en suspens"
 
-#: builtin/fsck.c:615
+#: builtin/fsck.c:609
 msgid "report tags"
 msgstr "afficher les étiquettes"
 
-#: builtin/fsck.c:616
+#: builtin/fsck.c:610
 msgid "report root nodes"
 msgstr "signaler les nœuds racines"
 
-#: builtin/fsck.c:617
+#: builtin/fsck.c:611
 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:618
+#: builtin/fsck.c:612
 msgid "make reflogs head nodes (default)"
 msgstr "considérer les reflogs comme nœuds tête (par défaut)"
 
-#: builtin/fsck.c:619
+#: builtin/fsck.c:613
 msgid "also consider packs and alternate objects"
 msgstr "inspecter aussi les objets pack et alternatifs"
 
-#: builtin/fsck.c:620
+#: builtin/fsck.c:614
 msgid "enable more strict checking"
 msgstr "activer une vérification plus strict"
 
-#: builtin/fsck.c:622
+#: builtin/fsck.c:616
 msgid "write dangling objects in .git/lost-found"
 msgstr "écrire les objets en suspens dans .git/lost-found"
 
-#: builtin/fsck.c:623 builtin/prune.c:144
+#: builtin/fsck.c:617 builtin/prune.c:144
 msgid "show progress"
 msgstr "afficher la progression"
 
+#: builtin/fsck.c:667
+msgid "Checking objects"
+msgstr "Vérification des objets"
+
 #: builtin/gc.c:24
 msgid "git gc [options]"
 msgstr "git gc [options]"
 
-#: builtin/gc.c:80
+#: builtin/gc.c:91
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s invalide : '%s'"
 
-#: builtin/gc.c:107
+#: builtin/gc.c:118
 #, c-format
 msgid "insanely long object directory %.*s"
 msgstr "objet répertoire démentiellement long %.*s"
 
-#: builtin/gc.c:262
+#: builtin/gc.c:287
 msgid "prune unreferenced objects"
 msgstr "éliminer les objets non référencés"
 
-#: builtin/gc.c:264
+#: builtin/gc.c:289
 msgid "be more thorough (increased runtime)"
 msgstr "être plus consciencieux (durée de traitement allongée)"
 
-#: builtin/gc.c:265
+#: builtin/gc.c:290
 msgid "enable auto-gc mode"
 msgstr "activer le mode auto-gc"
 
-#: builtin/gc.c:266
+#: builtin/gc.c:291
 msgid "force running gc even if there may be another gc running"
 msgstr ""
 "forcer le lancement du ramasse-miettes même si un autre ramasse-miettes "
 "tourne déjà"
 
-#: builtin/gc.c:306
+#: builtin/gc.c:332
 #, c-format
-msgid ""
-"Auto packing the repository for optimum performance. You may also\n"
-"run \"git gc\" manually. See \"git help gc\" for more information.\n"
+msgid "Auto packing the repository in background for optimum performance.\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"
+"Compression automatique du dépôt en tâche de fond pour optimiser les "
+"performances.\n"
+
+#: builtin/gc.c:334
+#, c-format
+msgid "Auto packing the repository for optimum performance.\n"
+msgstr "Compression du dépôt pour optimiser les performances.\n"
 
-#. be quiet on --auto
-#: builtin/gc.c:316
+#: builtin/gc.c:335
+#, c-format
+msgid "See \"git help gc\" for manual housekeeping.\n"
+msgstr "Voir \"git help gc\" pour toute information sur le nettoyage manuel.\n"
+
+#: builtin/gc.c:353
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
@@ -5584,7 +5563,7 @@ msgstr ""
 "un ramasse-miettes est déjà en cours sur la machine '%s' pid %<PRIuMAX> "
 "(utilisez --force si ce n'est pas le cas)"
 
-#: builtin/gc.c:341
+#: builtin/gc.c:375
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
@@ -5600,233 +5579,228 @@ msgstr "git grep [options] [-e] <motif> [<révision>...] [[--] <chemin>...]"
 msgid "grep: failed to create thread: %s"
 msgstr "grep : échec de création du fil: %s"
 
-#: builtin/grep.c:365
-#, c-format
-msgid "Failed to chdir: %s"
-msgstr "Échec de chdir: %s"
-
-#: builtin/grep.c:443 builtin/grep.c:478
+#: builtin/grep.c:441 builtin/grep.c:476
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "impossible de lire l'arbre (%s)"
 
-#: builtin/grep.c:493
+#: builtin/grep.c:491
 #, 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:551
+#: builtin/grep.c:547
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "l'option '%c' attend un valeur numérique"
 
-#: builtin/grep.c:568
+#: builtin/grep.c:564
 #, c-format
 msgid "cannot open '%s'"
 msgstr "impossible d'ouvrir '%s'"
 
-#: builtin/grep.c:642
+#: builtin/grep.c:638
 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:644
+#: builtin/grep.c:640
 msgid "find in contents not managed by git"
 msgstr "rechercher dans les contenus non gérés par git"
 
-#: builtin/grep.c:646
+#: builtin/grep.c:642
 msgid "search in both tracked and untracked files"
 msgstr "rechercher dans les fichiers suivis et non-suivis"
 
-#: builtin/grep.c:648
+#: builtin/grep.c:644
 msgid "search also in ignored files"
 msgstr "rechercher aussi dans les fichiers ignorés"
 
-#: builtin/grep.c:651
+#: builtin/grep.c:647
 msgid "show non-matching lines"
 msgstr "afficher les lignes qui ne correspondent pas"
 
-#: builtin/grep.c:653
+#: builtin/grep.c:649
 msgid "case insensitive matching"
 msgstr "correspondance insensible à la casse"
 
-#: builtin/grep.c:655
+#: builtin/grep.c:651
 msgid "match patterns only at word boundaries"
 msgstr "rechercher les motifs aux séparateurs de mots"
 
-#: builtin/grep.c:657
+#: builtin/grep.c:653
 msgid "process binary files as text"
 msgstr "traiter les fichiers binaires comme texte"
 
-#: builtin/grep.c:659
+#: builtin/grep.c:655
 msgid "don't match patterns in binary files"
 msgstr "ne pas chercher les motifs dans les fichiers binaires"
 
-#: builtin/grep.c:662
+#: builtin/grep.c:658
 msgid "process binary files with textconv filters"
 msgstr "traiter les fichiers binaires avec les filtres textconv"
 
-#: builtin/grep.c:664
+#: builtin/grep.c:660
 msgid "descend at most <depth> levels"
 msgstr "descendre au plus de <profondeur> dans l'arborescence"
 
-#: builtin/grep.c:668
+#: builtin/grep.c:664
 msgid "use extended POSIX regular expressions"
 msgstr "utiliser des expressions régulières étendues POSIX"
 
-#: builtin/grep.c:671
+#: builtin/grep.c:667
 msgid "use basic POSIX regular expressions (default)"
 msgstr "utiliser des expressions régulières basiques POSIX (par défaut)"
 
-#: builtin/grep.c:674
+#: builtin/grep.c:670
 msgid "interpret patterns as fixed strings"
 msgstr "interpréter les motifs comme de chaînes fixes"
 
-#: builtin/grep.c:677
+#: builtin/grep.c:673
 msgid "use Perl-compatible regular expressions"
 msgstr "utiliser des expressions régulières compatibles avec Perl"
 
-#: builtin/grep.c:680
+#: builtin/grep.c:676
 msgid "show line numbers"
 msgstr "afficher les numéros de ligne"
 
-#: builtin/grep.c:681
+#: builtin/grep.c:677
 msgid "don't show filenames"
 msgstr "ne pas pas afficher les noms de fichier"
 
-#: builtin/grep.c:682
+#: builtin/grep.c:678
 msgid "show filenames"
 msgstr "afficher les noms de fichier"
 
-#: builtin/grep.c:684
+#: builtin/grep.c:680
 msgid "show filenames relative to top directory"
 msgstr "afficher les noms de fichiers relativement au répertoire de base"
 
-#: builtin/grep.c:686
+#: builtin/grep.c:682
 msgid "show only filenames instead of matching lines"
 msgstr "n'afficher que les noms de fichiers au lieu des lignes correspondant"
 
-#: builtin/grep.c:688
+#: builtin/grep.c:684
 msgid "synonym for --files-with-matches"
 msgstr "synonyme pour --files-with-matches"
 
-#: builtin/grep.c:691
+#: builtin/grep.c:687
 msgid "show only the names of files without match"
 msgstr "n'afficher que les noms des fichiers sans correspondance"
 
-#: builtin/grep.c:693
+#: builtin/grep.c:689
 msgid "print NUL after filenames"
 msgstr "imprimer une caractère NUL après le noms de fichier"
 
-#: builtin/grep.c:695
+#: builtin/grep.c:691
 msgid "show the number of matches instead of matching lines"
 msgstr "afficher le nombre de correspondances au lieu des lignes correspondant"
 
-#: builtin/grep.c:696
+#: builtin/grep.c:692
 msgid "highlight matches"
 msgstr "mettre en évidence les correspondances"
 
-#: builtin/grep.c:698
+#: builtin/grep.c:694
 msgid "print empty line between matches from different files"
 msgstr ""
 "imprimer une ligne vide entre les correspondances de fichiers différents"
 
-#: builtin/grep.c:700
+#: builtin/grep.c:696
 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:703
+#: builtin/grep.c:699
 msgid "show <n> context lines before and after matches"
 msgstr "afficher <n> lignes de contexte avant et après les correspondances"
 
-#: builtin/grep.c:706
+#: builtin/grep.c:702
 msgid "show <n> context lines before matches"
 msgstr "afficher <n> lignes de contexte avant les correspondances"
 
-#: builtin/grep.c:708
+#: builtin/grep.c:704
 msgid "show <n> context lines after matches"
 msgstr "afficher <n> lignes de contexte après les correspondances"
 
-#: builtin/grep.c:709
+#: builtin/grep.c:705
 msgid "shortcut for -C NUM"
 msgstr "raccourci pour -C NUM"
 
-#: builtin/grep.c:712
+#: builtin/grep.c:708
 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:714
+#: builtin/grep.c:710
 msgid "show the surrounding function"
 msgstr "afficher la fonction contenante"
 
-#: builtin/grep.c:717
+#: builtin/grep.c:713
 msgid "read patterns from file"
 msgstr "lire les motifs depuis fichier"
 
-#: builtin/grep.c:719
+#: builtin/grep.c:715
 msgid "match <pattern>"
 msgstr "rechercher <motif>"
 
-#: builtin/grep.c:721
+#: builtin/grep.c:717
 msgid "combine patterns specified with -e"
 msgstr "combiner les motifs spécifiés par -e"
 
-#: builtin/grep.c:733
+#: builtin/grep.c:729
 msgid "indicate hit with exit status without output"
 msgstr ""
 "indiquer des correspondances avec le code de sortie mais sans rien afficher"
 
-#: builtin/grep.c:735
+#: builtin/grep.c:731
 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:737
+#: builtin/grep.c:733
 msgid "show parse tree for grep expression"
 msgstr "afficher l'arbre d'analyse pour le motif grep"
 
-#: builtin/grep.c:741
+#: builtin/grep.c:737
 msgid "pager"
 msgstr "pagineur"
 
-#: builtin/grep.c:741
+#: builtin/grep.c:737
 msgid "show matching files in the pager"
 msgstr "afficher les fichiers correspondant dans le pagineur"
 
-#: builtin/grep.c:744
+#: builtin/grep.c:740
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "permettre l'appel de grep(1) (ignoré par ce build)"
 
-#: builtin/grep.c:745 builtin/show-ref.c:187
+#: builtin/grep.c:741 builtin/show-ref.c:187
 msgid "show usage"
 msgstr "afficher l'usage"
 
-#: builtin/grep.c:812
+#: builtin/grep.c:808
 msgid "no pattern given."
 msgstr "aucun motif fourni."
 
-#: builtin/grep.c:870
+#: builtin/grep.c:866
 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:893
+#: builtin/grep.c:892
 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:898
+#: builtin/grep.c:897
 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:901
+#: builtin/grep.c:900
 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:909
+#: builtin/grep.c:908
 msgid "both --cached and trees are given."
 msgstr "--cached et des arbres sont fournis en même temps."
 
@@ -5842,7 +5816,7 @@ msgstr ""
 msgid "git hash-object  --stdin-paths < <list-of-paths>"
 msgstr "git hash-object  --stdin-paths < <liste-de-chemins>"
 
-#: builtin/hash-object.c:72
+#: builtin/hash-object.c:72 builtin/tag.c:609
 msgid "type"
 msgstr "type"
 
@@ -5987,281 +5961,292 @@ msgstr "usage : %s%s"
 msgid "`git %s' is aliased to `%s'"
 msgstr "`git %s\" est un alias de `%s'"
 
-#: builtin/index-pack.c:184
+#: builtin/index-pack.c:145
+#, c-format
+msgid "unable to open %s"
+msgstr "impossible d'ouvrir %s"
+
+#: builtin/index-pack.c:191
 #, c-format
 msgid "object type mismatch at %s"
 msgstr "type d'objet non correspondant à %s"
 
-#: builtin/index-pack.c:204
-msgid "object of unexpected type"
-msgstr "objet de type inattendu"
+#: builtin/index-pack.c:211
+#, c-format
+msgid "did not receive expected object %s"
+msgstr "objet attendu non reçu %s"
+
+#: builtin/index-pack.c:214
+#, c-format
+msgid "object %s: expected type %s, found %s"
+msgstr "objet %s : type attendu %s, reçu %s"
 
-#: builtin/index-pack.c:244
+#: builtin/index-pack.c:256
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] "impossible de remplir %d octet"
 msgstr[1] "impossible de remplir %d octets"
 
-#: builtin/index-pack.c:254
+#: builtin/index-pack.c:266
 msgid "early EOF"
 msgstr "fin de fichier prématurée"
 
-#: builtin/index-pack.c:255
+#: builtin/index-pack.c:267
 msgid "read error on input"
 msgstr "erreur de lecture sur l'entrée"
 
-#: builtin/index-pack.c:267
+#: builtin/index-pack.c:279
 msgid "used more bytes than were available"
 msgstr "plus d'octets utilisés que disponibles"
 
-#: builtin/index-pack.c:274
+#: builtin/index-pack.c:286
 msgid "pack too large for current definition of off_t"
 msgstr "le paquet est trop grand pour la définition actuelle de off_t"
 
-#: builtin/index-pack.c:290
+#: builtin/index-pack.c:302
 #, c-format
 msgid "unable to create '%s'"
 msgstr "impossible de créer '%s'"
 
-#: builtin/index-pack.c:295
+#: builtin/index-pack.c:307
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "impossible d'ouvrir le fichier paquet '%s'"
 
-#: builtin/index-pack.c:309
+#: builtin/index-pack.c:321
 msgid "pack signature mismatch"
 msgstr "la signature du paquet ne correspond pas"
 
-#: builtin/index-pack.c:311
+#: builtin/index-pack.c:323
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "la version de paquet %<PRIu32> non supportée"
 
-#: builtin/index-pack.c:329
+#: builtin/index-pack.c:341
 #, c-format
 msgid "pack has bad object at offset %lu: %s"
 msgstr "le paquet a un mauvais objet à l'offset %lu: %s"
 
-#: builtin/index-pack.c:451
+#: builtin/index-pack.c:462
 #, c-format
 msgid "inflate returned %d"
 msgstr "la décompression (inflate) a retourné %d"
 
-#: builtin/index-pack.c:500
+#: builtin/index-pack.c:511
 msgid "offset value overflow for delta base object"
 msgstr "dépassement de la valeur d'offset pour l'objet delta de base"
 
-#: builtin/index-pack.c:508
+#: builtin/index-pack.c:519
 msgid "delta base offset is out of bound"
 msgstr "l'objet delta de base est hors limite"
 
-#: builtin/index-pack.c:516
+#: builtin/index-pack.c:527
 #, c-format
 msgid "unknown object type %d"
 msgstr "type d'objet inconnu %d"
 
-#: builtin/index-pack.c:547
+#: builtin/index-pack.c:558
 msgid "cannot pread pack file"
 msgstr "impossible de lire (pread) le fichier paquet"
 
-#: builtin/index-pack.c:549
+#: builtin/index-pack.c:560
 #, c-format
 msgid "premature end of pack file, %lu byte missing"
 msgid_plural "premature end of pack file, %lu bytes missing"
 msgstr[0] "fin prématurée du fichier paquet, %lu octet lu"
 msgstr[1] "fin prématurée du fichier paquet, %lu octets lus"
 
-#: builtin/index-pack.c:575
+#: builtin/index-pack.c:586
 msgid "serious inflate inconsistency"
 msgstr "grave incohérence dans la décompression (inflate)"
 
-#: builtin/index-pack.c:666 builtin/index-pack.c:672 builtin/index-pack.c:695
-#: builtin/index-pack.c:729 builtin/index-pack.c:738
+#: builtin/index-pack.c:677 builtin/index-pack.c:683 builtin/index-pack.c:706
+#: builtin/index-pack.c:740 builtin/index-pack.c:749
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "COLLISION SHA1 TROUVÉE AVEC %s !"
 
-#: builtin/index-pack.c:669 builtin/pack-objects.c:171
-#: builtin/pack-objects.c:263
+#: builtin/index-pack.c:680 builtin/pack-objects.c:162
+#: builtin/pack-objects.c:254
 #, c-format
 msgid "unable to read %s"
 msgstr "impossible de lire %s"
 
-#: builtin/index-pack.c:735
+#: builtin/index-pack.c:746
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "impossible de lire l'objet existant %s"
 
-#: builtin/index-pack.c:749
+#: builtin/index-pack.c:760
 #, c-format
 msgid "invalid blob object %s"
 msgstr "objet blob invalide %s"
 
-#: builtin/index-pack.c:763
+#: builtin/index-pack.c:774
 #, c-format
 msgid "invalid %s"
 msgstr "%s invalide"
 
-#: builtin/index-pack.c:766
+#: builtin/index-pack.c:777
 msgid "Error in object"
 msgstr "Erreur dans l'objet"
 
-#: builtin/index-pack.c:768
+#: builtin/index-pack.c:779
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr "Tous les objets enfants de %s ne sont pas accessibles"
 
-#: builtin/index-pack.c:839 builtin/index-pack.c:869
+#: builtin/index-pack.c:851 builtin/index-pack.c:881
 msgid "failed to apply delta"
 msgstr "échec d'application du delta"
 
-#: builtin/index-pack.c:1010
+#: builtin/index-pack.c:1022
 msgid "Receiving objects"
 msgstr "Réception d'objets"
 
-#: builtin/index-pack.c:1010
+#: builtin/index-pack.c:1022
 msgid "Indexing objects"
 msgstr "Indexation d'objets"
 
-#: builtin/index-pack.c:1036
+#: builtin/index-pack.c:1048
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "le paquet est corrompu (SHA1 ne correspond pas)"
 
-#: builtin/index-pack.c:1041
+#: builtin/index-pack.c:1053
 msgid "cannot fstat packfile"
 msgstr "impossible d'obtenir le statut (fstat) du fichier paquet"
 
-#: builtin/index-pack.c:1044
+#: builtin/index-pack.c:1056
 msgid "pack has junk at the end"
 msgstr "le paquet est invalide à la fin"
 
-#: builtin/index-pack.c:1055
+#: builtin/index-pack.c:1067
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr "confusion extrême dans parse_pack_objects()"
 
-#: builtin/index-pack.c:1078
+#: builtin/index-pack.c:1090
 msgid "Resolving deltas"
 msgstr "Résolution des deltas"
 
-#: builtin/index-pack.c:1088
+#: builtin/index-pack.c:1100
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "impossible de créer le fil : %s"
 
-#: builtin/index-pack.c:1130
+#: builtin/index-pack.c:1142
 msgid "confusion beyond insanity"
 msgstr "confusion extrême"
 
-#: builtin/index-pack.c:1138
+#: builtin/index-pack.c:1150
 #, c-format
 msgid "completed with %d local objects"
 msgstr "complété avec %d objets locaux"
 
-#: builtin/index-pack.c:1148
+#: builtin/index-pack.c:1160
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
 msgstr ""
 "Somme de contrôle de fin inattendue pour %s (corruption sur le disque ?)"
 
-#: builtin/index-pack.c:1152
+#: builtin/index-pack.c:1164
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] "le paquet a %d delta non résolu"
 msgstr[1] "le paquet a %d deltas non résolus"
 
-#: builtin/index-pack.c:1177
+#: builtin/index-pack.c:1189
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr "impossible de compresser l'objet ajouté (%d)"
 
-#: builtin/index-pack.c:1256
+#: builtin/index-pack.c:1268
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "l'objet local %s est corrompu"
 
-#: builtin/index-pack.c:1280
+#: builtin/index-pack.c:1292
 msgid "error while closing pack file"
 msgstr "erreur en fermeture du fichier paquet"
 
-#: builtin/index-pack.c:1293
+#: builtin/index-pack.c:1305
 #, c-format
 msgid "cannot write keep file '%s'"
 msgstr "impossible d'écrire le fichier \"keep\" '%s'"
 
-#: builtin/index-pack.c:1301
+#: builtin/index-pack.c:1313
 #, c-format
 msgid "cannot close written keep file '%s'"
 msgstr "impossible de fermer le fichier \"keep\" '%s'"
 
-#: builtin/index-pack.c:1314
+#: builtin/index-pack.c:1326
 msgid "cannot store pack file"
 msgstr "impossible de stocker le fichier paquet"
 
-#: builtin/index-pack.c:1325
+#: builtin/index-pack.c:1337
 msgid "cannot store index file"
 msgstr "impossible de stocker le fichier d'index"
 
-#: builtin/index-pack.c:1358
+#: builtin/index-pack.c:1370
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "mauvais pack.indexversion=%<PRIu32>"
 
-#: builtin/index-pack.c:1364
+#: builtin/index-pack.c:1376
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "nombre de fils spécifié invalide (%d)"
 
-#: builtin/index-pack.c:1368 builtin/index-pack.c:1546
+#: builtin/index-pack.c:1380 builtin/index-pack.c:1559
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "pas de support des fils, ignore %s"
 
-#: builtin/index-pack.c:1426
+#: builtin/index-pack.c:1438
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "Impossible d'ouvrir le fichier paquet existant '%s'"
 
-#: builtin/index-pack.c:1428
+#: builtin/index-pack.c:1440
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr "Impossible d'ouvrir le fichier paquet d'index existant pour '%s'"
 
-#: builtin/index-pack.c:1475
+#: builtin/index-pack.c:1487
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] "pas un delta : %d objet"
 msgstr[1] "pas un delta : %d objets"
 
-#: builtin/index-pack.c:1482
+#: builtin/index-pack.c:1494
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] "longueur chaînée = %d : %lu objet"
 msgstr[1] "longueur chaînée = %d : %lu objets"
 
-#: builtin/index-pack.c:1510
+#: builtin/index-pack.c:1523
 msgid "Cannot come back to cwd"
 msgstr "Impossible de revenir au répertoire de travail courant"
 
-#: builtin/index-pack.c:1558 builtin/index-pack.c:1561
-#: builtin/index-pack.c:1573 builtin/index-pack.c:1577
+#: builtin/index-pack.c:1571 builtin/index-pack.c:1574
+#: builtin/index-pack.c:1586 builtin/index-pack.c:1590
 #, c-format
 msgid "bad %s"
 msgstr "mauvais %s"
 
-#: builtin/index-pack.c:1591
+#: builtin/index-pack.c:1604
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin ne peut pas être utilisé sans --stdin"
 
-#: builtin/index-pack.c:1595 builtin/index-pack.c:1605
+#: builtin/index-pack.c:1608 builtin/index-pack.c:1617
 #, c-format
 msgid "packfile name '%s' does not end with '.pack'"
 msgstr "le nom de fichier paquet '%s' ne se termine pas par '.pack'"
 
-#: builtin/index-pack.c:1614
+#: builtin/index-pack.c:1625
 msgid "--verify with no packfile name given"
 msgstr "--verify sans nom de fichier paquet donné"
 
@@ -6351,33 +6336,31 @@ msgstr "impossible de traiter le fichier de type %d"
 msgid "unable to move %s to %s"
 msgstr "impossible de déplacer %s vers %s"
 
-#.
-#. * TRANSLATORS: The first '%s' is either "Reinitialized
-#. * existing" or "Initialized empty", the second " shared" or
-#. * "", and the last '%s%s' is the verbatim directory name.
-#.
-#: builtin/init-db.c:420
+#. TRANSLATORS: The first '%s' is either "Reinitialized
+#. existing" or "Initialized empty", the second " shared" or
+#. "", and the last '%s%s' is the verbatim directory name.
+#: builtin/init-db.c:418
 #, c-format
 msgid "%s%s Git repository in %s%s\n"
 msgstr "Dépôt Git%2$s %1$s dans %3$s%4$s\n"
 
-#: builtin/init-db.c:421
+#: builtin/init-db.c:419
 msgid "Reinitialized existing"
 msgstr "existant réinitialisé"
 
-#: builtin/init-db.c:421
+#: builtin/init-db.c:419
 msgid "Initialized empty"
 msgstr "vide initialisé"
 
-#: builtin/init-db.c:422
+#: builtin/init-db.c:420
 msgid " shared"
 msgstr " partagé"
 
-#: builtin/init-db.c:441
+#: builtin/init-db.c:439
 msgid "cannot tell cwd"
 msgstr "impossible de déterminer le répertoire de travail courant"
 
-#: builtin/init-db.c:467
+#: builtin/init-db.c:465
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [directory]"
@@ -6385,29 +6368,29 @@ msgstr ""
 "git init [-q | --quiet] [--bare] [--template=<répertoire-modèle>] [--"
 "shared[=<permissions>]] [répertoire]"
 
-#: builtin/init-db.c:490
+#: builtin/init-db.c:488
 msgid "permissions"
 msgstr "permissions"
 
-#: builtin/init-db.c:491
+#: builtin/init-db.c:489
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr "spécifier que le dépôt git sera partagé entre plusieurs utilisateurs"
 
-#: builtin/init-db.c:493 builtin/prune-packed.c:79 builtin/repack.c:155
+#: builtin/init-db.c:491 builtin/prune-packed.c:79 builtin/repack.c:172
 msgid "be quiet"
 msgstr "être silencieux"
 
-#: builtin/init-db.c:525 builtin/init-db.c:530
+#: builtin/init-db.c:523 builtin/init-db.c:528
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "impossible de créer le répertoire (mkdir) %s"
 
-#: builtin/init-db.c:534
+#: builtin/init-db.c:532
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "impossible de se déplacer vers le répertoire (chdir) %s"
 
-#: builtin/init-db.c:556
+#: builtin/init-db.c:554
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
@@ -6416,11 +6399,11 @@ msgstr ""
 "%s (ou --work-tree=<répertoire>) n'est pas autorisé sans spécifier %s (ou --"
 "git-dir=<répertoire>)"
 
-#: builtin/init-db.c:580
+#: builtin/init-db.c:578
 msgid "Cannot access current working directory"
 msgstr "Impossible d'accéder au répertoire de travail courant"
 
-#: builtin/init-db.c:587
+#: builtin/init-db.c:585
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "Impossible d'accéder à l'arbre de travail '%s'"
@@ -6433,38 +6416,38 @@ msgstr "git log [<options>] [<page de révisions>] [[--] <chemin>...]\n"
 msgid "   or: git show [options] <object>..."
 msgstr "   ou : git show [options] <objet>..."
 
-#: builtin/log.c:125
+#: builtin/log.c:127
 msgid "suppress diff output"
 msgstr "supprimer la sortie des différences"
 
-#: builtin/log.c:126
+#: builtin/log.c:128
 msgid "show source"
 msgstr "afficher la source"
 
-#: builtin/log.c:127
+#: builtin/log.c:129
 msgid "Use mail map file"
 msgstr "Utiliser le fichier de correspondance de mail"
 
-#: builtin/log.c:128
+#: builtin/log.c:130
 msgid "decorate options"
 msgstr "décorer les options"
 
-#: builtin/log.c:231
+#: builtin/log.c:229
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Sortie finale : %d %s\n"
 
-#: builtin/log.c:473 builtin/log.c:565
+#: builtin/log.c:470 builtin/log.c:562
 #, c-format
 msgid "Could not read object %s"
 msgstr "Impossible de lire l'objet %s"
 
-#: builtin/log.c:589
+#: builtin/log.c:586
 #, c-format
 msgid "Unknown type: %d"
 msgstr "Type inconnu : %d"
 
-#: builtin/log.c:689
+#: builtin/log.c:687
 msgid "format.headers without value"
 msgstr "format.headers sans valeur"
 
@@ -6483,199 +6466,208 @@ msgstr "Exactement une plage nécessaire."
 
 #: builtin/log.c:809
 msgid "Not a range."
-msgstr "Pas une plage."
+msgstr "Ceci n'est pas une plage."
 
-#: builtin/log.c:911
+#: builtin/log.c:916
 msgid "Cover letter needs email format"
 msgstr "La lettre de motivation doit être au format e-mail"
 
-#: builtin/log.c:987
+#: builtin/log.c:995
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to aberrant : %s"
 
-#: builtin/log.c:1015
+#: builtin/log.c:1023
 msgid "git format-patch [options] [<since> | <revision range>]"
 msgstr "git format-patch [options] [<depuis> | <plage de révisions>]"
 
-#: builtin/log.c:1060
+#: builtin/log.c:1068
 msgid "Two output directories?"
 msgstr "Deux répertoires de sortie ?"
 
-#: builtin/log.c:1175
+#: builtin/log.c:1183
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "utiliser [PATCH n/m] même avec un patch unique"
 
-#: builtin/log.c:1178
+#: builtin/log.c:1186
 msgid "use [PATCH] even with multiple patches"
 msgstr "utiliser [PATCH] même avec des patchs multiples"
 
-#: builtin/log.c:1182
+#: builtin/log.c:1190
 msgid "print patches to standard out"
 msgstr "afficher les patchs sur la sortie standard"
 
-#: builtin/log.c:1184
+#: builtin/log.c:1192
 msgid "generate a cover letter"
 msgstr "générer une lettre de motivation"
 
-#: builtin/log.c:1186
+#: builtin/log.c:1194
 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:1187
+#: builtin/log.c:1195
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1188
+#: builtin/log.c:1196
 msgid "use <sfx> instead of '.patch'"
 msgstr "utiliser <sfx> au lieu de '.patch'"
 
-#: builtin/log.c:1190
+#: builtin/log.c:1198
 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:1192
+#: builtin/log.c:1200
 msgid "mark the series as Nth re-roll"
 msgstr "marquer la série comme une Nième réédition"
 
-#: builtin/log.c:1194
+#: builtin/log.c:1202
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "utiliser [<préfixe>] au lieu de [PATCH]"
 
-#: builtin/log.c:1197
+#: builtin/log.c:1205
 msgid "store resulting files in <dir>"
 msgstr "stocker les fichiers résultats dans <répertoire>"
 
-#: builtin/log.c:1200
+#: builtin/log.c:1208
 msgid "don't strip/add [PATCH]"
 msgstr "ne pas retirer/ajouter [PATCH]"
 
-#: builtin/log.c:1203
+#: builtin/log.c:1211
 msgid "don't output binary diffs"
 msgstr "ne pas imprimer les diffs binaires"
 
-#: builtin/log.c:1205
+#: builtin/log.c:1213
 msgid "don't include a patch matching a commit upstream"
 msgstr "ne pas inclure un patch correspondant à un commit amont"
 
-#: builtin/log.c:1207
+#: builtin/log.c:1215
 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:1209
+#: builtin/log.c:1217
 msgid "Messaging"
 msgstr "Communication"
 
-#: builtin/log.c:1210
+#: builtin/log.c:1218
 msgid "header"
 msgstr "en-tête"
 
-#: builtin/log.c:1211
+#: builtin/log.c:1219
 msgid "add email header"
 msgstr "ajouter l'en-tête d'e-mail"
 
-#: builtin/log.c:1212 builtin/log.c:1214
+#: builtin/log.c:1220 builtin/log.c:1222
 msgid "email"
 msgstr "e-mail"
 
-#: builtin/log.c:1212
+#: builtin/log.c:1220
 msgid "add To: header"
 msgstr "ajouter l'en-tête \"To:\""
 
-#: builtin/log.c:1214
+#: builtin/log.c:1222
 msgid "add Cc: header"
 msgstr "ajouter l'en-tête \"Cc:\""
 
-#: builtin/log.c:1216
+#: builtin/log.c:1224
 msgid "ident"
 msgstr "ident"
 
-#: builtin/log.c:1217
+#: builtin/log.c:1225
 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:1219
+#: builtin/log.c:1227
 msgid "message-id"
 msgstr "id-message"
 
-#: builtin/log.c:1220
+#: builtin/log.c:1228
 msgid "make first mail a reply to <message-id>"
 msgstr "répondre dans le premier message à <id-message>"
 
-#: builtin/log.c:1221 builtin/log.c:1224
+#: builtin/log.c:1229 builtin/log.c:1232
 msgid "boundary"
-msgstr "frontière"
+msgstr "limite"
 
-#: builtin/log.c:1222
+#: builtin/log.c:1230
 msgid "attach the patch"
 msgstr "attacher le patch"
 
-#: builtin/log.c:1225
+#: builtin/log.c:1233
 msgid "inline the patch"
 msgstr "patch à l'intérieur"
 
-#: builtin/log.c:1229
+#: builtin/log.c:1237
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
 "activer l'enfilage de message, styles : shallow (superficiel), deep (profond)"
 
-#: builtin/log.c:1231
+#: builtin/log.c:1239
 msgid "signature"
 msgstr "signature"
 
-#: builtin/log.c:1232
+#: builtin/log.c:1240
 msgid "add a signature"
 msgstr "ajouter une signature"
 
-#: builtin/log.c:1233
+#: builtin/log.c:1242
+msgid "add a signature from a file"
+msgstr "ajouter une signature depuis un fichier"
+
+#: builtin/log.c:1243
 msgid "don't print the patch filenames"
 msgstr "ne pas afficher les noms de fichiers des patchs"
 
-#: builtin/log.c:1307
+#: builtin/log.c:1317
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "ligne d'identification invalide : %s"
 
-#: builtin/log.c:1322
+#: builtin/log.c:1332
 msgid "-n and -k are mutually exclusive."
 msgstr "-n et -k sont mutuellement exclusifs."
 
-#: builtin/log.c:1324
+#: builtin/log.c:1334
 msgid "--subject-prefix and -k are mutually exclusive."
 msgstr "--subject-prefix et -k sont mutuellement exclusifs."
 
-#: builtin/log.c:1332
+#: builtin/log.c:1342
 msgid "--name-only does not make sense"
 msgstr "--name-only n'a pas de sens"
 
-#: builtin/log.c:1334
+#: builtin/log.c:1344
 msgid "--name-status does not make sense"
 msgstr "--name-status n'a pas de sens"
 
-#: builtin/log.c:1336
+#: builtin/log.c:1346
 msgid "--check does not make sense"
 msgstr "--check n'a pas de sens"
 
-#: builtin/log.c:1359
+#: builtin/log.c:1369
 msgid "standard output, or directory, which one?"
 msgstr "sortie standard, ou répertoire, lequel ?"
 
-#: builtin/log.c:1361
+#: builtin/log.c:1371
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "Impossible de créer le répertoire '%s'"
 
-#: builtin/log.c:1509
+#: builtin/log.c:1468
+#, c-format
+msgid "unable to read signature file '%s'"
+msgstr "lecture du fichier de signature '%s' impossible"
+
+#: builtin/log.c:1531
 msgid "Failed to create output files"
 msgstr "Échec de création des fichiers en sortie"
 
-#: builtin/log.c:1558
+#: builtin/log.c:1579
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<branche_amont> [<head> [<limite>]]]"
 
-#: builtin/log.c:1613
+#: builtin/log.c:1634
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -6683,103 +6675,103 @@ msgstr ""
 "Impossible de trouver une branche distante suivie, merci de spécifier "
 "<branche_amont> manuellement.\n"
 
-#: builtin/log.c:1626 builtin/log.c:1628 builtin/log.c:1640
+#: builtin/log.c:1647 builtin/log.c:1649 builtin/log.c:1661
 #, c-format
 msgid "Unknown commit %s"
 msgstr "Commit inconnu %s"
 
-#: builtin/ls-files.c:398
+#: builtin/ls-files.c:401
 msgid "git ls-files [options] [<file>...]"
 msgstr "git ls-files [options] [<fichier>...]"
 
-#: builtin/ls-files.c:455
+#: builtin/ls-files.c:458
 msgid "identify the file status with tags"
 msgstr "identifier le statut de fichier avec les étiquettes"
 
-#: builtin/ls-files.c:457
+#: builtin/ls-files.c:460
 msgid "use lowercase letters for 'assume unchanged' files"
 msgstr "utiliser des minuscules pour les fichier 'assumés inchangés'"
 
-#: builtin/ls-files.c:459
+#: builtin/ls-files.c:462
 msgid "show cached files in the output (default)"
 msgstr "afficher les fichiers mis en cache dans la sortie (défaut)"
 
-#: builtin/ls-files.c:461
+#: builtin/ls-files.c:464
 msgid "show deleted files in the output"
 msgstr "afficher les fichiers supprimés dans la sortie"
 
-#: builtin/ls-files.c:463
+#: builtin/ls-files.c:466
 msgid "show modified files in the output"
 msgstr "afficher les fichiers modifiés dans la sortie"
 
-#: builtin/ls-files.c:465
+#: builtin/ls-files.c:468
 msgid "show other files in the output"
 msgstr "afficher les autres fichiers dans la sortie"
 
-#: builtin/ls-files.c:467
+#: builtin/ls-files.c:470
 msgid "show ignored files in the output"
 msgstr "afficher les fichiers ignorés dans la sortie"
 
-#: builtin/ls-files.c:470
+#: builtin/ls-files.c:473
 msgid "show staged contents' object name in the output"
 msgstr "afficher les nom des objets indexés dans la sortie"
 
-#: builtin/ls-files.c:472
+#: builtin/ls-files.c:475
 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:474
+#: builtin/ls-files.c:477
 msgid "show 'other' directories' name only"
 msgstr "afficher seulement les noms des répertoires 'other'"
 
-#: builtin/ls-files.c:477
+#: builtin/ls-files.c:480
 msgid "don't show empty directories"
 msgstr "ne pas afficher les répertoires vides"
 
-#: builtin/ls-files.c:480
+#: builtin/ls-files.c:483
 msgid "show unmerged files in the output"
 msgstr "afficher les fichiers non fusionnés dans la sortie"
 
-#: builtin/ls-files.c:482
+#: builtin/ls-files.c:485
 msgid "show resolve-undo information"
 msgstr "afficher l'information resolv-undo"
 
-#: builtin/ls-files.c:484
+#: builtin/ls-files.c:487
 msgid "skip files matching pattern"
 msgstr "sauter les fichiers correspondant au motif"
 
-#: builtin/ls-files.c:487
+#: builtin/ls-files.c:490
 msgid "exclude patterns are read from <file>"
 msgstr "les motifs d'exclusion sont lus depuis <fichier>"
 
-#: builtin/ls-files.c:490
+#: builtin/ls-files.c:493
 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:492
+#: builtin/ls-files.c:495
 msgid "add the standard git exclusions"
 msgstr "ajouter les exclusions git standard"
 
-#: builtin/ls-files.c:495
+#: builtin/ls-files.c:498
 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:498
+#: builtin/ls-files.c:501
 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:499
+#: builtin/ls-files.c:502
 msgid "tree-ish"
 msgstr "arbre ou apparenté"
 
-#: builtin/ls-files.c:500
+#: builtin/ls-files.c:503
 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:502
+#: builtin/ls-files.c:505
 msgid "show debugging data"
 msgstr "afficher les données de débogage"
 
@@ -6894,7 +6886,7 @@ msgstr "abandonner si l'avance rapide n'est pas possible"
 msgid "Verify that the named commit has a valid GPG signature"
 msgstr "Vérifier que la validation a une signature GPG valide"
 
-#: builtin/merge.c:212 builtin/notes.c:738 builtin/revert.c:89
+#: builtin/merge.c:212 builtin/notes.c:742 builtin/revert.c:89
 msgid "strategy"
 msgstr "stratégie"
 
@@ -6968,7 +6960,7 @@ msgstr "'%s' ne pointe pas sur un commit"
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Mauvaise chaîne branch.%s.mergeoptions : %s"
 
-#: builtin/merge.c:650
+#: builtin/merge.c:653
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree a échoué à écrire un arbre"
 
@@ -6981,24 +6973,24 @@ msgstr "Impossible de gérer autre chose que la fusion de deux têtes."
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Options inconnue pour merge-recursive : -X%s"
 
-#: builtin/merge.c:706
+#: builtin/merge.c:705
 #, c-format
 msgid "unable to write %s"
 msgstr "impossible d'écrire %s"
 
-#: builtin/merge.c:795
+#: builtin/merge.c:794
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Impossible de lire depuis '%s'"
 
-#: builtin/merge.c:804
+#: builtin/merge.c:803
 #, 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:810
+#: builtin/merge.c:809
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -7015,49 +7007,49 @@ msgstr ""
 "Les lignes commençant par '%c' seront ignorées, et un message vide\n"
 "abandonne la validation.\n"
 
-#: builtin/merge.c:834
+#: builtin/merge.c:833
 msgid "Empty commit message."
 msgstr "Message de validation vide."
 
-#: builtin/merge.c:846
+#: builtin/merge.c:845
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Merveilleux.\n"
 
-#: builtin/merge.c:911
+#: builtin/merge.c:908
 #, 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:927
+#: builtin/merge.c:924
 #, c-format
 msgid "'%s' is not a commit"
 msgstr "'%s' n'est pas une validation"
 
-#: builtin/merge.c:968
+#: builtin/merge.c:965
 msgid "No current branch."
 msgstr "Pas de branche courante."
 
-#: builtin/merge.c:970
+#: builtin/merge.c:967
 msgid "No remote for the current branch."
 msgstr "Pas de branche distante pour la branche courante."
 
-#: builtin/merge.c:972
+#: builtin/merge.c:969
 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:977
+#: builtin/merge.c:974
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Pas de branche de suivi pour %s depuis %s"
 
-#: builtin/merge.c:1133
+#: builtin/merge.c:1130
 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:1149 git-pull.sh:31
+#: builtin/merge.c:1146 git-pull.sh:31
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you can merge."
@@ -7065,11 +7057,11 @@ msgstr ""
 "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe).\n"
 "Veuillez valider vos changements avant de pouvoir fusionner."
 
-#: builtin/merge.c:1152 git-pull.sh:34
+#: builtin/merge.c:1149 git-pull.sh:34
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Vous n'avez pas terminé votre fusion (MERGE_HEAD existe)."
 
-#: builtin/merge.c:1156
+#: builtin/merge.c:1153
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you can merge."
@@ -7077,103 +7069,102 @@ msgstr ""
 "Vous n'avez pas terminé votre picorage (CHERRY_PICK_HEAD existe).\n"
 "Veuillez valider vos changements avant de pouvoir fusionner."
 
-#: builtin/merge.c:1159
+#: builtin/merge.c:1156
 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:1168
+#: builtin/merge.c:1165
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Vous ne pouvez pas combiner --squash avec --no-ff."
 
-#: builtin/merge.c:1177
+#: builtin/merge.c:1174
 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:1209
+#: builtin/merge.c:1206
 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:1212
+#: builtin/merge.c:1209
 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:1214
+#: builtin/merge.c:1211
 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:1219
+#: builtin/merge.c:1216
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - pas possible de fusionner ceci"
 
-#: builtin/merge.c:1270
+#: builtin/merge.c:1267
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr "La validation %s a une signature GPG non fiable, prétendument par %s."
 
-#: builtin/merge.c:1273
+#: builtin/merge.c:1270
 #, 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."
 
-#. 'N'
-#: builtin/merge.c:1276
+#: builtin/merge.c:1273
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "La validation %s n'a pas de signature GPG."
 
-#: builtin/merge.c:1279
+#: builtin/merge.c:1276
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr "La validation %s a une signature GPG correcte par %s\n"
 
-#: builtin/merge.c:1363
+#: builtin/merge.c:1357
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Mise à jour %s..%s\n"
 
-#: builtin/merge.c:1402
+#: builtin/merge.c:1396
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "Essai de fusion vraiment triviale dans l'index...\n"
 
-#: builtin/merge.c:1409
+#: builtin/merge.c:1403
 #, c-format
 msgid "Nope.\n"
 msgstr "Non.\n"
 
-#: builtin/merge.c:1441
+#: builtin/merge.c:1435
 msgid "Not possible to fast-forward, aborting."
 msgstr "Pas possible d'avancer rapidement, abandon."
 
-#: builtin/merge.c:1464 builtin/merge.c:1543
+#: builtin/merge.c:1458 builtin/merge.c:1537
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "Retour de l'arbre à l'original...\n"
 
-#: builtin/merge.c:1468
+#: builtin/merge.c:1462
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Essai de la stratégie de fusion %s...\n"
 
-#: builtin/merge.c:1534
+#: builtin/merge.c:1528
 #, 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:1536
+#: builtin/merge.c:1530
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "La fusion avec la stratégie %s a échoué.\n"
 
-#: builtin/merge.c:1545
+#: builtin/merge.c:1539
 #, 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:1557
+#: builtin/merge.c:1551
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -7259,19 +7250,19 @@ msgstr "ne pas avertir à propos des conflits"
 msgid "set labels for file1/orig_file/file2"
 msgstr "définir les labels pour fichier1/orig_file/fichier2"
 
-#: builtin/mktree.c:67
+#: builtin/mktree.c:64
 msgid "git mktree [-z] [--missing] [--batch]"
 msgstr "git mktree [-z] [--missing] [--batch]"
 
-#: builtin/mktree.c:153
+#: builtin/mktree.c:150
 msgid "input is NUL terminated"
 msgstr "l'entrée se termine par NUL"
 
-#: builtin/mktree.c:154 builtin/write-tree.c:24
+#: builtin/mktree.c:151 builtin/write-tree.c:24
 msgid "allow missing objects"
 msgstr "autoriser les objets manquants"
 
-#: builtin/mktree.c:155
+#: builtin/mktree.c:152
 msgid "allow creation of more than one tree"
 msgstr "autoriser la création de plus d'un arbre"
 
@@ -7321,88 +7312,88 @@ msgstr ""
 msgid "Huh? %.*s is in index?"
 msgstr "Hein ? %.*s est dans l'index ?"
 
-#: builtin/mv.c:168
+#: builtin/mv.c:169
 msgid "source directory is empty"
 msgstr "le répertoire source est vide"
 
-#: builtin/mv.c:200
+#: builtin/mv.c:205
 msgid "not under version control"
 msgstr "pas sous le contrôle de version"
 
-#: builtin/mv.c:202
+#: builtin/mv.c:208
 msgid "destination exists"
 msgstr "la destination existe"
 
-#: builtin/mv.c:210
+#: builtin/mv.c:216
 #, c-format
 msgid "overwriting '%s'"
 msgstr "écrasement de '%s'"
 
-#: builtin/mv.c:213
+#: builtin/mv.c:219
 msgid "Cannot overwrite"
 msgstr "Impossible d'écraser"
 
-#: builtin/mv.c:216
+#: builtin/mv.c:222
 msgid "multiple sources for the same target"
 msgstr "multiples sources pour la même destination"
 
-#: builtin/mv.c:218
+#: builtin/mv.c:224
 msgid "destination directory does not exist"
 msgstr "le répertoire de destination n'existe pas"
 
-#: builtin/mv.c:233
+#: builtin/mv.c:244
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr "%s, source=%s, destination=%s"
 
-#: builtin/mv.c:243
+#: builtin/mv.c:254
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr "Renommage de %s en %s\n"
 
-#: builtin/mv.c:246 builtin/remote.c:726 builtin/repack.c:328
+#: builtin/mv.c:257 builtin/remote.c:725 builtin/repack.c:358
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "le renommage de '%s' a échoué"
 
-#: builtin/name-rev.c:258
+#: builtin/name-rev.c:255
 msgid "git name-rev [options] <commit>..."
 msgstr "git name-rev [options] <validation>..."
 
-#: builtin/name-rev.c:259
+#: builtin/name-rev.c:256
 msgid "git name-rev [options] --all"
 msgstr "git name-rev [options] --all"
 
-#: builtin/name-rev.c:260
+#: builtin/name-rev.c:257
 msgid "git name-rev [options] --stdin"
 msgstr "git name-rev [options] --stdin"
 
-#: builtin/name-rev.c:312
+#: builtin/name-rev.c:309
 msgid "print only names (no SHA-1)"
 msgstr "afficher seulement les noms (pas de SHA-1)"
 
-#: builtin/name-rev.c:313
+#: builtin/name-rev.c:310
 msgid "only use tags to name the commits"
 msgstr "utiliser seulement les étiquettes pour nommer les validations"
 
-#: builtin/name-rev.c:315
+#: builtin/name-rev.c:312
 msgid "only use refs matching <pattern>"
 msgstr "utiliser seulement les références correspondant à <motif>"
 
-#: builtin/name-rev.c:317
+#: builtin/name-rev.c:314
 msgid "list all commits reachable from all refs"
 msgstr ""
 "afficher toutes les validations accessibles depuis toutes les références"
 
-#: builtin/name-rev.c:318
+#: builtin/name-rev.c:315
 msgid "read from stdin"
 msgstr "lire depuis l'entrée standard"
 
-#: builtin/name-rev.c:319
+#: builtin/name-rev.c:316
 msgid "allow to print `undefined` names (default)"
 msgstr "autoriser l'affichage des noms `non définis` (par défaut)"
 
-#: builtin/name-rev.c:325
+#: builtin/name-rev.c:322
 msgid "dereference tags in the input (internal use)"
 msgstr "déréférencer les étiquettes en entrée (usage interne)"
 
@@ -7532,7 +7523,7 @@ msgstr "impossible de lire la sortie de 'show'"
 msgid "failed to finish 'show' for object '%s'"
 msgstr "impossible de finir 'show' pour l'objet '%s'"
 
-#: builtin/notes.c:167 builtin/tag.c:341
+#: builtin/notes.c:167 builtin/tag.c:477
 #, c-format
 msgid "could not create file '%s'"
 msgstr "impossible de créer le fichier '%s'"
@@ -7541,7 +7532,7 @@ msgstr "impossible de créer le fichier '%s'"
 msgid "Please supply the note contents using either -m or -F option"
 msgstr "Veuillez fournir le contenu de la note en utilisant l'option -m ou -F"
 
-#: builtin/notes.c:207 builtin/notes.c:844
+#: builtin/notes.c:207 builtin/notes.c:848
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "Suppression de la note pour l'objet %s\n"
@@ -7555,20 +7546,20 @@ msgstr "impossible d'écrire l'objet note"
 msgid "The note contents has been left in %s"
 msgstr "Le contenu de la note a été laissé dans %s"
 
-#: builtin/notes.c:248 builtin/tag.c:537
+#: builtin/notes.c:248 builtin/tag.c:692
 #, c-format
 msgid "cannot read '%s'"
 msgstr "impossible de lire '%s'"
 
-#: builtin/notes.c:250 builtin/tag.c:540
+#: builtin/notes.c:250 builtin/tag.c:695
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "impossible d'ouvrir ou lire '%s'"
 
-#: builtin/notes.c:269 builtin/notes.c:316 builtin/notes.c:318
-#: builtin/notes.c:378 builtin/notes.c:432 builtin/notes.c:515
-#: builtin/notes.c:520 builtin/notes.c:595 builtin/notes.c:637
-#: builtin/notes.c:839 builtin/tag.c:553
+#: builtin/notes.c:269 builtin/notes.c:320 builtin/notes.c:322
+#: builtin/notes.c:382 builtin/notes.c:436 builtin/notes.c:519
+#: builtin/notes.c:524 builtin/notes.c:599 builtin/notes.c:641
+#: builtin/notes.c:843 builtin/tag.c:708
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "Impossible de résoudre '%s' comme une référence valide."
@@ -7578,53 +7569,58 @@ msgstr "Impossible de résoudre '%s' comme une référence valide."
 msgid "Failed to read object '%s'."
 msgstr "Impossible de lire l'objet '%s'."
 
-#: builtin/notes.c:312
+#: builtin/notes.c:276
+#, c-format
+msgid "Cannot read note data from non-blob object '%s'."
+msgstr "Impossible de lire les informations de note d'un objet non-blob '%s'."
+
+#: builtin/notes.c:316
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Ligne en entrée malformée : '%s'."
 
-#: builtin/notes.c:327
+#: builtin/notes.c:331
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Impossible de copier les notes de '%s' vers '%s'"
 
-#: builtin/notes.c:371 builtin/notes.c:425 builtin/notes.c:498
-#: builtin/notes.c:510 builtin/notes.c:583 builtin/notes.c:630
-#: builtin/notes.c:904
+#: builtin/notes.c:375 builtin/notes.c:429 builtin/notes.c:502
+#: builtin/notes.c:514 builtin/notes.c:587 builtin/notes.c:634
+#: builtin/notes.c:908
 msgid "too many parameters"
 msgstr "trop de paramètres"
 
-#: builtin/notes.c:384 builtin/notes.c:643
+#: builtin/notes.c:388 builtin/notes.c:647
 #, c-format
 msgid "No note found for object %s."
 msgstr "Pas de note trouvée pour l'objet %s."
 
-#: builtin/notes.c:406 builtin/notes.c:563
+#: builtin/notes.c:410 builtin/notes.c:567
 msgid "note contents as a string"
 msgstr "contenu de la note sous forme de chaîne"
 
-#: builtin/notes.c:409 builtin/notes.c:566
+#: builtin/notes.c:413 builtin/notes.c:570
 msgid "note contents in a file"
 msgstr "contenu de la note dans un fichier"
 
-#: builtin/notes.c:411 builtin/notes.c:414 builtin/notes.c:568
-#: builtin/notes.c:571 builtin/tag.c:474
+#: builtin/notes.c:415 builtin/notes.c:418 builtin/notes.c:572
+#: builtin/notes.c:575 builtin/tag.c:627
 msgid "object"
 msgstr "objet"
 
-#: builtin/notes.c:412 builtin/notes.c:569
+#: builtin/notes.c:416 builtin/notes.c:573
 msgid "reuse and edit specified note object"
 msgstr "réutiliser et éditer l'objet de note spécifié"
 
-#: builtin/notes.c:415 builtin/notes.c:572
+#: builtin/notes.c:419 builtin/notes.c:576
 msgid "reuse specified note object"
 msgstr "réutiliser l'objet de note spécifié"
 
-#: builtin/notes.c:417 builtin/notes.c:485
+#: builtin/notes.c:421 builtin/notes.c:489
 msgid "replace existing notes"
 msgstr "remplacer les notes existantes"
 
-#: builtin/notes.c:451
+#: builtin/notes.c:455
 #, c-format
 msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -7633,25 +7629,25 @@ 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:456 builtin/notes.c:533
+#: builtin/notes.c:460 builtin/notes.c:537
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "Écrasement des notes existantes pour l'objet %s\n"
 
-#: builtin/notes.c:486
+#: builtin/notes.c:490
 msgid "read objects from stdin"
 msgstr "lire les objets depuis l'entrée standard"
 
-#: builtin/notes.c:488
+#: builtin/notes.c:492
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr ""
 "charger la configuration de réécriture pour <commande> (implique --stdin)"
 
-#: builtin/notes.c:506
+#: builtin/notes.c:510
 msgid "too few parameters"
 msgstr "pas assez de paramètres"
 
-#: builtin/notes.c:527
+#: builtin/notes.c:531
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -7660,12 +7656,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:539
+#: builtin/notes.c:543
 #, 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:588
+#: builtin/notes.c:592
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -7674,15 +7670,15 @@ 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:735
+#: builtin/notes.c:739
 msgid "General options"
 msgstr "Options générales"
 
-#: builtin/notes.c:737
+#: builtin/notes.c:741
 msgid "Merge options"
 msgstr "Options de fusion"
 
-#: builtin/notes.c:739
+#: builtin/notes.c:743
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
@@ -7690,210 +7686,238 @@ msgstr ""
 "résoudre les conflits de notes en utilisant la stratégie donnée (manual/ours/"
 "theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:741
+#: builtin/notes.c:745
 msgid "Committing unmerged notes"
 msgstr "Validation des notes non fusionnées"
 
-#: builtin/notes.c:743
+#: builtin/notes.c:747
 msgid "finalize notes merge by committing unmerged notes"
 msgstr "finaliser la fusion de notes en validant les notes non fusionnées"
 
-#: builtin/notes.c:745
+#: builtin/notes.c:749
 msgid "Aborting notes merge resolution"
 msgstr "Abandon de la résolution de fusion des notes"
 
-#: builtin/notes.c:747
+#: builtin/notes.c:751
 msgid "abort notes merge"
 msgstr "abandonner la fusion de notes"
 
-#: builtin/notes.c:842
+#: builtin/notes.c:846
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "L'objet %s n'a pas de note\n"
 
-#: builtin/notes.c:854
+#: builtin/notes.c:858
 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:857
+#: builtin/notes.c:861
 msgid "read object names from the standard input"
 msgstr "lire les noms d'objet depuis l'entrée standard"
 
-#: builtin/notes.c:938
-msgid "notes_ref"
-msgstr "références_notes"
+#: builtin/notes.c:942
+msgid "notes-ref"
+msgstr "références-notes"
 
-#: builtin/notes.c:939
+#: builtin/notes.c:943
 msgid "use notes from <notes_ref>"
 msgstr "utiliser les notes depuis <références_notes>"
 
-#: builtin/notes.c:974 builtin/remote.c:1593
+#: builtin/notes.c:978 builtin/remote.c:1616
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "Sous-commande inconnue : %s"
 
-#: builtin/pack-objects.c:23
+#: builtin/pack-objects.c:25
 msgid "git pack-objects --stdout [options...] [< ref-list | < object-list]"
 msgstr ""
 "git pack-objects --stdout [options...] [< liste-références | < liste-objets]"
 
-#: builtin/pack-objects.c:24
+#: builtin/pack-objects.c:26
 msgid "git pack-objects [options...] base-name [< ref-list | < object-list]"
 msgstr ""
 "git pack-objects [options...] base-name [< liste-références | < liste-objets]"
 
-#: builtin/pack-objects.c:184 builtin/pack-objects.c:187
+#: builtin/pack-objects.c:175 builtin/pack-objects.c:178
 #, c-format
 msgid "deflate error (%d)"
 msgstr "erreur de compression (%d)"
 
-#: builtin/pack-objects.c:2396
+#: builtin/pack-objects.c:771
+msgid "Writing objects"
+msgstr "Écriture des objets"
+
+#: builtin/pack-objects.c:1012
+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:2174
+msgid "Compressing objects"
+msgstr "Compression des objets"
+
+#: builtin/pack-objects.c:2526
 #, c-format
 msgid "unsupported index version %s"
 msgstr "version d'index non supportée %s"
 
-#: builtin/pack-objects.c:2400
+#: builtin/pack-objects.c:2530
 #, c-format
 msgid "bad index version '%s'"
 msgstr "mauvaise version d'index '%s'"
 
-#: builtin/pack-objects.c:2423
+#: builtin/pack-objects.c:2553
 #, c-format
 msgid "option %s does not accept negative form"
 msgstr "l'option %s n'accepte pas de valeur négative"
 
-#: builtin/pack-objects.c:2427
+#: builtin/pack-objects.c:2557
 #, c-format
 msgid "unable to parse value '%s' for option %s"
 msgstr "impossible d'analyser la valeur '%s' pour l'option %s"
 
-#: builtin/pack-objects.c:2446
+#: builtin/pack-objects.c:2576
 msgid "do not show progress meter"
 msgstr "ne pas afficher la barre de progression"
 
-#: builtin/pack-objects.c:2448
+#: builtin/pack-objects.c:2578
 msgid "show progress meter"
 msgstr "afficher la barre de progression"
 
-#: builtin/pack-objects.c:2450
+#: builtin/pack-objects.c:2580
 msgid "show progress meter during object writing phase"
 msgstr "afficher la barre de progression durant la phase d'écrite des objets"
 
-#: builtin/pack-objects.c:2453
+#: builtin/pack-objects.c:2583
 msgid "similar to --all-progress when progress meter is shown"
 msgstr "similaire à --all-progress quand la barre de progression est affichée"
 
-#: builtin/pack-objects.c:2454
+#: builtin/pack-objects.c:2584
 msgid "version[,offset]"
 msgstr "version[,offset]"
 
-#: builtin/pack-objects.c:2455
+#: builtin/pack-objects.c:2585
 msgid "write the pack index file in the specified idx format version"
 msgstr ""
 "écrire le fichier d'index du paquet dans le format d'index de version "
 "spécifié"
 
-#: builtin/pack-objects.c:2458
+#: builtin/pack-objects.c:2588
 msgid "maximum size of each output pack file"
 msgstr "taille maximum de chaque fichier paquet en sortie"
 
-#: builtin/pack-objects.c:2460
+#: builtin/pack-objects.c:2590
 msgid "ignore borrowed objects from alternate object store"
 msgstr "ignorer les objets empruntés à un autre magasin d'objets"
 
-#: builtin/pack-objects.c:2462
+#: builtin/pack-objects.c:2592
 msgid "ignore packed objects"
 msgstr "ignorer les objets empaquetés"
 
-#: builtin/pack-objects.c:2464
+#: builtin/pack-objects.c:2594
 msgid "limit pack window by objects"
 msgstr "limiter la fenêtre d'empaquetage par objets"
 
-#: builtin/pack-objects.c:2466
+#: builtin/pack-objects.c:2596
 msgid "limit pack window by memory in addition to object limit"
 msgstr ""
 "limiter la fenêtre d'empaquetage par mémoire en plus de la limite d'objets"
 
-#: builtin/pack-objects.c:2468
+#: builtin/pack-objects.c:2598
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr ""
 "longueur maximum de la chaîne de delta autorisée dans le paquet résultant"
 
-#: builtin/pack-objects.c:2470
+#: builtin/pack-objects.c:2600
 msgid "reuse existing deltas"
 msgstr "réutiliser les deltas existants"
 
-#: builtin/pack-objects.c:2472
+#: builtin/pack-objects.c:2602
 msgid "reuse existing objects"
 msgstr "réutiliser les objets existants"
 
-#: builtin/pack-objects.c:2474
+#: builtin/pack-objects.c:2604
 msgid "use OFS_DELTA objects"
 msgstr "utiliser les objets OFS_DELTA"
 
-#: builtin/pack-objects.c:2476
+#: builtin/pack-objects.c:2606
 msgid "use threads when searching for best delta matches"
 msgstr ""
 "utiliser des fils lors de la recherche pour une meilleurs correspondance des "
 "deltas"
 
-#: builtin/pack-objects.c:2478
+#: builtin/pack-objects.c:2608
 msgid "do not create an empty pack output"
 msgstr "ne pas créer un paquet vide"
 
-#: builtin/pack-objects.c:2480
+#: builtin/pack-objects.c:2610
 msgid "read revision arguments from standard input"
 msgstr "lire les paramètres de révision depuis l'entrée standard"
 
-#: builtin/pack-objects.c:2482
+#: builtin/pack-objects.c:2612
 msgid "limit the objects to those that are not yet packed"
 msgstr "limiter les objets à ceux qui ne sont pas encore empaquetés"
 
-#: builtin/pack-objects.c:2485
+#: builtin/pack-objects.c:2615
 msgid "include objects reachable from any reference"
 msgstr "inclure les objets accessibles depuis toute référence"
 
-#: builtin/pack-objects.c:2488
+#: builtin/pack-objects.c:2618
 msgid "include objects referred by reflog entries"
 msgstr "inclure les objets référencés par les éléments de reflog"
 
-#: builtin/pack-objects.c:2491
+#: builtin/pack-objects.c:2621
 msgid "output pack to stdout"
 msgstr "afficher l'empaquetage sur la sortie standard"
 
-#: builtin/pack-objects.c:2493
+#: builtin/pack-objects.c:2623
 msgid "include tag objects that refer to objects to be packed"
 msgstr "inclure les objets d'étiquettes qui réfèrent à des objets à empaqueter"
 
-#: builtin/pack-objects.c:2495
+#: builtin/pack-objects.c:2625
 msgid "keep unreachable objects"
 msgstr "garder les objets inaccessibles"
 
-#: builtin/pack-objects.c:2496 parse-options.h:143
+#: builtin/pack-objects.c:2626 parse-options.h:140
 msgid "time"
 msgstr "heure"
 
-#: builtin/pack-objects.c:2497
+#: builtin/pack-objects.c:2627
 msgid "unpack unreachable objects newer than <time>"
 msgstr "dépaqueter les objets inaccessibles plus récents que <heure>"
 
-#: builtin/pack-objects.c:2500
+#: builtin/pack-objects.c:2630
 msgid "create thin packs"
 msgstr "créer des paquets légers"
 
-#: builtin/pack-objects.c:2502
+#: builtin/pack-objects.c:2632
 msgid "ignore packs that have companion .keep file"
 msgstr "ignorer les paquets qui ont un fichier .keep"
 
-#: builtin/pack-objects.c:2504
+#: builtin/pack-objects.c:2634
 msgid "pack compression level"
 msgstr "niveau de compression du paquet"
 
-#: builtin/pack-objects.c:2506
+#: builtin/pack-objects.c:2636
 msgid "do not hide commits by grafts"
 msgstr "ne pas cacher les validations par greffes"
 
+#: builtin/pack-objects.c:2638
+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:2640
+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:2719
+msgid "Counting objects"
+msgstr "Décompte des objets"
+
 #: builtin/pack-refs.c:6
 msgid "git pack-refs [options]"
 msgstr "git pack-refs [options]"
@@ -7910,6 +7934,10 @@ msgstr "éliminer les références perdues (défaut)"
 msgid "git prune-packed [-n|--dry-run] [-q|--quiet]"
 msgstr "git prune-packed [-n|--dry-run] [-q|--quiet]"
 
+#: builtin/prune-packed.c:49
+msgid "Removing duplicate objects"
+msgstr "Suppression des objets dupliqués"
+
 #: builtin/prune.c:12
 msgid "git prune [-n] [-v] [--expire <time>] [--] [<head>...]"
 msgstr "git prune [-n] [-v] [--expire <heure>] [--] [<head>...]"
@@ -7930,15 +7958,15 @@ msgstr "faire expirer les objets plus vieux que <heure>"
 msgid "git push [<options>] [<repository> [<refspec>...]]"
 msgstr "git push [<options>] [<dépôt> [<spécification-de-référence>...]]"
 
-#: builtin/push.c:86
+#: builtin/push.c:85
 msgid "tag shorthand without <tag>"
 msgstr "raccourci d'étiquette sans <étiquette>"
 
-#: builtin/push.c:96
+#: builtin/push.c:95
 msgid "--delete only accepts plain target ref names"
 msgstr "--delete accepte seulement des noms entiers de références cibles"
 
-#: builtin/push.c:141
+#: builtin/push.c:139
 msgid ""
 "\n"
 "To choose either option permanently, see push.default in 'git help config'."
@@ -7947,7 +7975,7 @@ msgstr ""
 "Pour choisir l'option de manière permanente, voir push.default dans 'git "
 "help config'."
 
-#: builtin/push.c:144
+#: builtin/push.c:142
 #, c-format
 msgid ""
 "The upstream branch of your current branch does not match\n"
@@ -7972,7 +8000,7 @@ msgstr ""
 "    git push %s %s\n"
 "%s"
 
-#: builtin/push.c:159
+#: builtin/push.c:157
 #, c-format
 msgid ""
 "You are not currently on a branch.\n"
@@ -7987,7 +8015,7 @@ msgstr ""
 "\n"
 "    git push %s HEAD:<nom-de-la-branche-amont>\n"
 
-#: builtin/push.c:173
+#: builtin/push.c:171
 #, c-format
 msgid ""
 "The current branch %s has no upstream branch.\n"
@@ -8001,13 +8029,13 @@ msgstr ""
 "\n"
 "    git push --set-upstream %s %s\n"
 
-#: builtin/push.c:181
+#: builtin/push.c:179
 #, 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:184
+#: builtin/push.c:182
 #, c-format
 msgid ""
 "You are pushing to remote '%s', which is not the upstream of\n"
@@ -8018,11 +8046,11 @@ 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:207
+#: builtin/push.c:205
 msgid ""
-"push.default is unset; its implicit value is changing in\n"
+"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 current behavior after the default changes, use:\n"
+"and maintain the traditional behavior, use:\n"
 "\n"
 "  git config --global push.default matching\n"
 "\n"
@@ -8033,7 +8061,7 @@ msgid ""
 "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"
-"In Git 2.0, Git will default to the more conservative 'simple'\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"
@@ -8042,7 +8070,7 @@ msgid ""
 "(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 change dans Git 2.0\n"
+"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"
@@ -8057,11 +8085,11 @@ msgstr ""
 "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"
-"Dans Git 2.0 Git utilisera par défaut le comportement plus conservatif "
+"Depuis Git 2.0, Git utilise par défaut le comportement plus conservatif "
 "'simple'\n"
-"qui ne pousse la branche courante vers la branche distante que 'git pull' "
-"utilise\n"
-"pour mettre à jour la branche courante.\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 "
@@ -8069,14 +8097,14 @@ msgstr ""
 "'current' au lieu de 'simple' si vous utilisez de temps en temps d'anciennes "
 "versions de Git)"
 
-#: builtin/push.c:274
+#: builtin/push.c:272
 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:281
+#: builtin/push.c:279
 msgid ""
 "Updates were rejected because the tip of your current branch is behind\n"
 "its remote counterpart. Integrate the remote changes (e.g.\n"
@@ -8091,23 +8119,7 @@ msgstr ""
 "Voir la 'Note à propos des avances rapides' dans 'git push --help' pour plus "
 "d'information."
 
-#: builtin/push.c:287
-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."
-
-#: builtin/push.c:293
+#: builtin/push.c:285
 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"
@@ -8122,7 +8134,7 @@ msgstr ""
 "Voir la 'Note à propos des avances rapides' dans 'git push --help' pour plus "
 "d'information."
 
-#: builtin/push.c:299
+#: builtin/push.c:291
 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"
@@ -8140,13 +8152,13 @@ msgstr ""
 "Voir la 'Note à propos des avances rapides' dans 'git push --help' pour plus "
 "d'information."
 
-#: builtin/push.c:306
+#: builtin/push.c:298
 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:309
+#: builtin/push.c:301
 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"
@@ -8158,22 +8170,22 @@ msgstr ""
 "pointer\n"
 "vers un objet qui n'est pas un commit, sans utiliser l'option '--force'.\n"
 
-#: builtin/push.c:375
+#: builtin/push.c:360
 #, c-format
 msgid "Pushing to %s\n"
-msgstr "Poussage vers %s\n"
+msgstr "Poussée vers %s\n"
 
-#: builtin/push.c:379
+#: 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:412
+#: builtin/push.c:394
 #, c-format
 msgid "bad repository '%s'"
 msgstr "mauvais dépôt '%s'"
 
-#: builtin/push.c:413
+#: builtin/push.c:395
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -8195,96 +8207,96 @@ msgstr ""
 "\n"
 "    git push <nom>\n"
 
-#: builtin/push.c:428
+#: builtin/push.c:410
 msgid "--all and --tags are incompatible"
 msgstr "--all et --tags sont incompatibles"
 
-#: builtin/push.c:429
+#: builtin/push.c:411
 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:434
+#: builtin/push.c:416
 msgid "--mirror and --tags are incompatible"
 msgstr "--mirror et --tags sont incompatibles"
 
-#: builtin/push.c:435
+#: builtin/push.c:417
 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:440
+#: builtin/push.c:422
 msgid "--all and --mirror are incompatible"
 msgstr "--all et --mirror sont incompatibles"
 
-#: builtin/push.c:500
+#: builtin/push.c:482
 msgid "repository"
 msgstr "dépôt"
 
-#: builtin/push.c:501
+#: builtin/push.c:483
 msgid "push all refs"
 msgstr "pousser toutes les références"
 
-#: builtin/push.c:502
+#: builtin/push.c:484
 msgid "mirror all refs"
 msgstr "refléter toutes les références"
 
-#: builtin/push.c:504
+#: builtin/push.c:486
 msgid "delete refs"
 msgstr "supprimer les références"
 
-#: builtin/push.c:505
+#: builtin/push.c:487
 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:508
+#: builtin/push.c:490
 msgid "force updates"
 msgstr "forcer les mises à jour"
 
-#: builtin/push.c:510
+#: builtin/push.c:492
 msgid "refname>:<expect"
 msgstr "nom de référence>:<attendu"
 
-#: builtin/push.c:511
+#: builtin/push.c:493
 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:513
+#: builtin/push.c:495
 msgid "check"
 msgstr "check"
 
-#: builtin/push.c:514
+#: builtin/push.c:496
 msgid "control recursive pushing of submodules"
-msgstr "contrôler le poussage récursif des sous-modules"
+msgstr "contrôler la poussée récursive des sous-modules"
 
-#: builtin/push.c:516
+#: builtin/push.c:498
 msgid "use thin pack"
 msgstr "utiliser un empaquetage léger"
 
-#: builtin/push.c:517 builtin/push.c:518
+#: builtin/push.c:499 builtin/push.c:500
 msgid "receive pack program"
 msgstr "recevoir le programme d'empaquetage"
 
-#: builtin/push.c:519
+#: builtin/push.c:501
 msgid "set upstream for git pull/status"
 msgstr "définir la branche amont pour git pull/status"
 
-#: builtin/push.c:522
+#: builtin/push.c:504
 msgid "prune locally removed refs"
 msgstr "éliminer les références locales supprimées"
 
-#: builtin/push.c:524
+#: builtin/push.c:506
 msgid "bypass pre-push hook"
 msgstr "éviter d'utiliser le crochet pre-push"
 
-#: builtin/push.c:525
+#: builtin/push.c:507
 msgid "push missing but relevant tags"
 msgstr "pousser les étiquettes manquantes mais pertinentes"
 
-#: builtin/push.c:535
+#: builtin/push.c:517
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete est incompatible avec --all, --mirror et --tags"
 
-#: builtin/push.c:537
+#: builtin/push.c:519
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete n'a pas de sens sans aucune référence"
 
@@ -8514,12 +8526,12 @@ msgstr ""
 "spécifier les branches à suivre n'a de sens qu'avec des miroirs de "
 "rapatriement"
 
-#: builtin/remote.c:185 builtin/remote.c:641
+#: builtin/remote.c:185 builtin/remote.c:640
 #, c-format
 msgid "remote %s already exists."
 msgstr "la distante %s existe déjà."
 
-#: builtin/remote.c:189 builtin/remote.c:645
+#: builtin/remote.c:189 builtin/remote.c:644
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' n'est pas un nom valide de distante"
@@ -8529,47 +8541,47 @@ msgstr "'%s' n'est pas un nom valide de distante"
 msgid "Could not setup master '%s'"
 msgstr "Impossible de paramétrer la maîtresse '%s'"
 
-#: builtin/remote.c:289
+#: builtin/remote.c:288
 #, c-format
 msgid "more than one %s"
 msgstr "plus d'un %s"
 
-#: builtin/remote.c:334
+#: builtin/remote.c:333
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr ""
 "Impossible d'obtenir une correspondance distante pour la spécification de "
 "référence %s"
 
-#: builtin/remote.c:435 builtin/remote.c:443
+#: builtin/remote.c:434 builtin/remote.c:442
 msgid "(matching)"
 msgstr "(correspond)"
 
-#: builtin/remote.c:447
+#: builtin/remote.c:446
 msgid "(delete)"
 msgstr "(supprimer)"
 
-#: builtin/remote.c:590 builtin/remote.c:596 builtin/remote.c:602
+#: builtin/remote.c:589 builtin/remote.c:595 builtin/remote.c:601
 #, c-format
 msgid "Could not append '%s' to '%s'"
 msgstr "Impossible d'ajouter '%s' à '%s'"
 
-#: builtin/remote.c:634 builtin/remote.c:787 builtin/remote.c:885
+#: builtin/remote.c:633 builtin/remote.c:794 builtin/remote.c:894
 #, c-format
 msgid "No such remote: %s"
 msgstr "Distante inconnue : %s"
 
-#: builtin/remote.c:651
+#: builtin/remote.c:650
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr "Impossible de renommer la section de configuration '%s' en '%s'"
 
-#: builtin/remote.c:657 builtin/remote.c:794
+#: builtin/remote.c:656 builtin/remote.c:846
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr "Impossible de supprimer la section de configuration '%s'"
 
-#: builtin/remote.c:672
+#: builtin/remote.c:671
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -8580,32 +8592,32 @@ msgstr ""
 "\t%s\n"
 "\tVeuillez mettre à jour la configuration manuellement si nécessaire."
 
-#: builtin/remote.c:678
+#: builtin/remote.c:677
 #, c-format
 msgid "Could not append '%s'"
 msgstr "Impossible d'ajouter '%s'"
 
-#: builtin/remote.c:689
+#: builtin/remote.c:688
 #, c-format
 msgid "Could not set '%s'"
 msgstr "Impossible de définir '%s'"
 
-#: builtin/remote.c:711
+#: builtin/remote.c:710
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "échec de suppression de '%s'"
 
-#: builtin/remote.c:745
+#: builtin/remote.c:744
 #, c-format
 msgid "creating '%s' failed"
 msgstr "échec de création de '%s'"
 
-#: builtin/remote.c:759
+#: builtin/remote.c:765
 #, c-format
 msgid "Could not remove branch %s"
 msgstr "Impossible de supprimer la branche %s"
 
-#: builtin/remote.c:829
+#: builtin/remote.c:832
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -8620,120 +8632,120 @@ msgstr[1] ""
 "supprimées ;\n"
 "pour les supprimer, utilisez :"
 
-#: builtin/remote.c:938
+#: builtin/remote.c:947
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr " nouveau (le prochain rapatriement (fetch) stockera dans remotes/%s)"
 
-#: builtin/remote.c:941
+#: builtin/remote.c:950
 msgid " tracked"
 msgstr " suivi"
 
-#: builtin/remote.c:943
+#: builtin/remote.c:952
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " dépassé (utilisez 'git remote prune' pour supprimer)"
 
-#: builtin/remote.c:945
+#: builtin/remote.c:954
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:986
+#: builtin/remote.c:995
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr "branch.%s.merge invalide ; ne peut pas rebaser sur plus d'une branche"
 
-#: builtin/remote.c:993
+#: builtin/remote.c:1002
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "rebase sur la distante %s"
 
-#: builtin/remote.c:996
+#: builtin/remote.c:1005
 #, c-format
 msgid " merges with remote %s"
 msgstr " fusionne avec la distante %s"
 
-#: builtin/remote.c:997
+#: builtin/remote.c:1006
 msgid "    and with remote"
 msgstr "    et avec la distante"
 
-#: builtin/remote.c:999
+#: builtin/remote.c:1008
 #, c-format
 msgid "merges with remote %s"
 msgstr "fusionne avec la distante %s"
 
-#: builtin/remote.c:1000
+#: builtin/remote.c:1009
 msgid "   and with remote"
 msgstr "   et avec la distante"
 
-#: builtin/remote.c:1046
+#: builtin/remote.c:1055
 msgid "create"
 msgstr "créer"
 
-#: builtin/remote.c:1049
+#: builtin/remote.c:1058
 msgid "delete"
 msgstr "supprimer"
 
-#: builtin/remote.c:1053
+#: builtin/remote.c:1062
 msgid "up to date"
 msgstr "à jour"
 
-#: builtin/remote.c:1056
+#: builtin/remote.c:1065
 msgid "fast-forwardable"
 msgstr "peut être mis à jour en avance rapide"
 
-#: builtin/remote.c:1059
+#: builtin/remote.c:1068
 msgid "local out of date"
 msgstr "le local n'est pas à jour"
 
-#: builtin/remote.c:1066
+#: builtin/remote.c:1075
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s force vers %-*s (%s)"
 
-#: builtin/remote.c:1069
+#: builtin/remote.c:1078
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s pousse vers %-*s (%s)"
 
-#: builtin/remote.c:1073
+#: builtin/remote.c:1082
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s force vers %s"
 
-#: builtin/remote.c:1076
+#: builtin/remote.c:1085
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s pousse vers %s"
 
-#: builtin/remote.c:1144
+#: builtin/remote.c:1153
 msgid "do not query remotes"
 msgstr "ne pas interroger les distantes"
 
-#: builtin/remote.c:1171
+#: builtin/remote.c:1180
 #, c-format
 msgid "* remote %s"
 msgstr "* distante %s"
 
-#: builtin/remote.c:1172
+#: builtin/remote.c:1181
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  URL de rapatriement : %s"
 
-#: builtin/remote.c:1173 builtin/remote.c:1318
+#: builtin/remote.c:1182 builtin/remote.c:1329
 msgid "(no URL)"
 msgstr "(pas d'URL)"
 
-#: builtin/remote.c:1182 builtin/remote.c:1184
+#: builtin/remote.c:1191 builtin/remote.c:1193
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  URL push : %s"
 
-#: builtin/remote.c:1186 builtin/remote.c:1188 builtin/remote.c:1190
+#: builtin/remote.c:1195 builtin/remote.c:1197 builtin/remote.c:1199
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Branche HEAD : %s"
 
-#: builtin/remote.c:1192
+#: builtin/remote.c:1201
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
@@ -8741,239 +8753,303 @@ msgstr ""
 "  Branche HEAD (la HEAD distante est ambiguë, peut être l'une des "
 "suivantes) :\n"
 
-#: builtin/remote.c:1204
+#: builtin/remote.c:1213
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Branche distante :%s"
 msgstr[1] "  Branches distantes :%s"
 
-#: builtin/remote.c:1207 builtin/remote.c:1234
+#: builtin/remote.c:1216 builtin/remote.c:1243
 msgid " (status not queried)"
 msgstr " (statut non demandé)"
 
-#: builtin/remote.c:1216
+#: builtin/remote.c:1225
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  Branche locale configurée pour 'git pull' :"
 msgstr[1] "  Branches locales configurées pour 'git pull' :"
 
-#: builtin/remote.c:1224
+#: builtin/remote.c:1233
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  Les références locales seront reflétées par 'git push'"
 
-#: builtin/remote.c:1231
+#: builtin/remote.c:1240
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  Référence locale configurée pour 'git push'%s :"
 msgstr[1] "  Références locales configurées pour 'git push'%s :"
 
-#: builtin/remote.c:1252
+#: builtin/remote.c:1261
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "définir refs/remotes/<nom>/HEAD selon la distante"
 
-#: builtin/remote.c:1254
+#: builtin/remote.c:1263
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "supprimer refs/remotes/<nom>/HEAD"
 
-#: builtin/remote.c:1269
+#: builtin/remote.c:1278
 msgid "Cannot determine remote HEAD"
 msgstr "Impossible de déterminer la HEAD distante"
 
-#: builtin/remote.c:1271
+#: builtin/remote.c:1280
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr ""
 "Il y a de multiples branches HEAD distantes. Veuillez en choisir une "
 "explicitement avec :"
 
-#: builtin/remote.c:1281
+#: builtin/remote.c:1290
 #, c-format
 msgid "Could not delete %s"
 msgstr "Impossible de supprimer %s"
 
-#: builtin/remote.c:1289
+#: builtin/remote.c:1298
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Référence non valide : %s"
 
-#: builtin/remote.c:1291
+#: builtin/remote.c:1300
 #, c-format
 msgid "Could not setup %s"
 msgstr "Impossible de paramétrer %s"
 
-#: builtin/remote.c:1307
+#: builtin/remote.c:1318
 #, c-format
 msgid " %s will become dangling!"
-msgstr " %s deviendra en suspens !"
+msgstr " %s se retrouvera en suspens !"
 
-#: builtin/remote.c:1308
+#: builtin/remote.c:1319
 #, c-format
 msgid " %s has become dangling!"
-msgstr " %s est devenu en suspens !"
+msgstr " %s se retrouve en suspens !"
 
-#: builtin/remote.c:1314
+#: builtin/remote.c:1325
 #, c-format
 msgid "Pruning %s"
 msgstr "Élimination de %s"
 
-#: builtin/remote.c:1315
+#: builtin/remote.c:1326
 #, c-format
 msgid "URL: %s"
 msgstr "URL : %s"
 
-#: builtin/remote.c:1328
+#: builtin/remote.c:1349
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [serait éliminé] %s"
 
-#: builtin/remote.c:1331
+#: builtin/remote.c:1352
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [éliminé] %s"
 
-#: builtin/remote.c:1374
+#: builtin/remote.c:1397
 msgid "prune remotes after fetching"
 msgstr "éliminer les distants après le rapatriement"
 
-#: builtin/remote.c:1440 builtin/remote.c:1514
+#: builtin/remote.c:1463 builtin/remote.c:1537
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Pas de serveur remote '%s'"
 
-#: builtin/remote.c:1460
+#: builtin/remote.c:1483
 msgid "add branch"
 msgstr "ajouter une branche"
 
-#: builtin/remote.c:1467
+#: builtin/remote.c:1490
 msgid "no remote specified"
 msgstr "pas de serveur distant spécifié"
 
-#: builtin/remote.c:1489
+#: builtin/remote.c:1512
 msgid "manipulate push URLs"
 msgstr "manipuler les URLs push"
 
-#: builtin/remote.c:1491
+#: builtin/remote.c:1514
 msgid "add URL"
 msgstr "ajouter une URL"
 
-#: builtin/remote.c:1493
+#: builtin/remote.c:1516
 msgid "delete URLs"
 msgstr "supprimer des URLs"
 
-#: builtin/remote.c:1500
+#: builtin/remote.c:1523
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete n'a aucun sens"
 
-#: builtin/remote.c:1540
+#: builtin/remote.c:1563
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Motif d'URL ancien invalide : %s"
 
-#: builtin/remote.c:1548
+#: builtin/remote.c:1571
 #, c-format
 msgid "No such URL found: %s"
 msgstr "Pas d'URL trouvée : %s"
 
-#: builtin/remote.c:1550
+#: builtin/remote.c:1573
 msgid "Will not delete all non-push URLs"
 msgstr "Pas de suppression de toutes les URLs non-push"
 
-#: builtin/remote.c:1564
+#: builtin/remote.c:1587
 msgid "be verbose; must be placed before a subcommand"
 msgstr "être verbeux : doit être placé avant une sous-commande"
 
-#: builtin/repack.c:15
+#: builtin/repack.c:17
 msgid "git repack [options]"
 msgstr "git repack [options]"
 
-#: builtin/repack.c:143
+#: builtin/repack.c:160
 msgid "pack everything in a single pack"
 msgstr "empaqueter tout dans un seul paquet"
 
-#: builtin/repack.c:145
+#: builtin/repack.c:162
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "identique à -a et transformer les objets inaccessibles en suspens"
 
-#: builtin/repack.c:148
+#: builtin/repack.c:165
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "supprimer les paquets redondants et lancer git-prune-packed"
 
-#: builtin/repack.c:150
+#: builtin/repack.c:167
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "passer --no-reuse-delta à git-pack-objects"
 
-#: builtin/repack.c:152
+#: builtin/repack.c:169
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "passer --no-reuse-object à git-pack-objects"
 
-#: builtin/repack.c:154
+#: builtin/repack.c:171
 msgid "do not run git-update-server-info"
 msgstr "ne pas lancer git update-server-info"
 
-#: builtin/repack.c:157
+#: builtin/repack.c:174
 msgid "pass --local to git-pack-objects"
 msgstr "passer --local à git-pack-objects"
 
-#: builtin/repack.c:158
+#: builtin/repack.c:176
+msgid "write bitmap index"
+msgstr "écrire un index en bitmap"
+
+#: builtin/repack.c:177
 msgid "approxidate"
 msgstr "date approximative"
 
-#: builtin/repack.c:159
+#: builtin/repack.c:178
 msgid "with -A, do not loosen objects older than this"
 msgstr "avec -A, ne pas suspendre les objets plus vieux que celui-ci"
 
-#: builtin/repack.c:161
+#: builtin/repack.c:180
 msgid "size of the window used for delta compression"
 msgstr "taille de la fenêtre utilisée pour la compression des deltas"
 
-#: builtin/repack.c:162 builtin/repack.c:166
+#: builtin/repack.c:181 builtin/repack.c:185
 msgid "bytes"
 msgstr "octets"
 
-#: builtin/repack.c:163
+#: builtin/repack.c:182
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr ""
 "idem ci-dessus, mais limiter la taille mémoire au lieu du nombre d'éléments"
 
-#: builtin/repack.c:165
+#: builtin/repack.c:184
 msgid "limits the maximum delta depth"
 msgstr "limite la profondeur maximale des deltas"
 
-#: builtin/repack.c:167
+#: builtin/repack.c:186
 msgid "maximum size of each packfile"
 msgstr "taille maximum de chaque fichier paquet"
 
-#: builtin/repack.c:343
+#: builtin/repack.c:188
+msgid "repack objects in packs marked with .keep"
+msgstr "réempaqueter les objets dans des paquets marqués avec .keep"
+
+#: builtin/repack.c:374
 #, c-format
 msgid "removing '%s' failed"
 msgstr "la suppression de '%s' a échoué"
 
-#: builtin/replace.c:17
+#: builtin/replace.c:19
 msgid "git replace [-f] <object> <replacement>"
 msgstr "git replace [-f] <objet> <remplacement>"
 
-#: builtin/replace.c:18
+#: builtin/replace.c:20
+msgid "git replace [-f] --edit <object>"
+msgstr "git replace [-f] --edit <objet>"
+
+#: builtin/replace.c:21
+msgid "git replace [-f] --graft <commit> [<parent>...]"
+msgstr "git replace [-f] --graft <commit> [<parent>...]"
+
+#: builtin/replace.c:22
 msgid "git replace -d <object>..."
 msgstr "git replace -d <objet>..."
 
-#: builtin/replace.c:19
+#: builtin/replace.c:23
 msgid "git replace [--format=<format>] [-l [<pattern>]]"
 msgstr "git replace [--format=<format>] [-l [<motif>]]"
 
-#: builtin/replace.c:174
+#: builtin/replace.c:322 builtin/replace.c:360 builtin/replace.c:388
+#, c-format
+msgid "Not a valid object name: '%s'"
+msgstr "Nom d'objet invalide : '%s'"
+
+#: builtin/replace.c:352
+#, c-format
+msgid "bad mergetag in commit '%s'"
+msgstr "mauvaise étiquette de fusion dans le commit '%s'"
+
+#: builtin/replace.c:354
+#, c-format
+msgid "malformed mergetag in commit '%s'"
+msgstr "étiquette de fusion malformée dans le commit '%s'"
+
+#: builtin/replace.c:365
+#, c-format
+msgid ""
+"original commit '%s' contains mergetag '%s' that is discarded; use --edit "
+"instead of --graft"
+msgstr "le commit original '%s' contient l'étiquette de fusion '%s' qui a disparu ; utilisez --edit au lieu de --graft"
+
+#: builtin/replace.c:398
+#, c-format
+msgid "the original commit '%s' has a gpg signature."
+msgstr "le commit original '%s' contient une signature GPG."
+
+#: builtin/replace.c:399
+msgid "the signature will be removed in the replacement commit!"
+msgstr "la signature sera éliminée dans la validation de remplacement !"
+
+#: builtin/replace.c:405
+#, c-format
+msgid "could not write replacement commit for: '%s'"
+msgstr "Impossible d'écrire le commit de remplacement pour '%s'"
+
+#: builtin/replace.c:429
 msgid "list replace refs"
 msgstr "afficher les références de remplacement"
 
-#: builtin/replace.c:175
+#: builtin/replace.c:430
 msgid "delete replace refs"
 msgstr "supprimer les références de remplacement"
 
-#: builtin/replace.c:176
+#: builtin/replace.c:431
+msgid "edit existing object"
+msgstr "éditer l'objet existant"
+
+#: builtin/replace.c:432
+msgid "change a commit's parents"
+msgstr "Modifier les parents d'un commit"
+
+#: builtin/replace.c:433
 msgid "replace the ref if it exists"
 msgstr "remplacer la référence si elle existe"
 
-#: builtin/replace.c:177
+#: builtin/replace.c:434
+msgid "do not pretty-print contents for --edit"
+msgstr "afficher sans mise en forme pour --edit"
+
+#: builtin/replace.c:435
 msgid "use this format"
 msgstr "utiliser ce format"
 
@@ -9037,96 +9113,106 @@ msgstr "Impossible de trouver l'arbre pour %s."
 msgid "HEAD is now at %s"
 msgstr "HEAD est maintenant à %s"
 
-#: builtin/reset.c:172
+#: builtin/reset.c:182
 #, 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:262
+#: builtin/reset.c:275
 msgid "be quiet, only report errors"
 msgstr "être silencieux, afficher seulement les erreurs"
 
-#: builtin/reset.c:264
+#: builtin/reset.c:277
 msgid "reset HEAD and index"
 msgstr "réinitialiser HEAD et l'index"
 
-#: builtin/reset.c:265
+#: builtin/reset.c:278
 msgid "reset only HEAD"
 msgstr "réinitialiser seulement HEAD"
 
-#: builtin/reset.c:267 builtin/reset.c:269
+#: builtin/reset.c:280 builtin/reset.c:282
 msgid "reset HEAD, index and working tree"
 msgstr "réinitialiser HEAD, l'index et la copie de travail"
 
-#: builtin/reset.c:271
+#: builtin/reset.c:284
 msgid "reset HEAD but keep local changes"
 msgstr "réinitialiser HEAD mais garder les changements locaux"
 
-#: builtin/reset.c:289
+#: builtin/reset.c:287
+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:304
 #, 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:292 builtin/reset.c:300
+#: builtin/reset.c:307 builtin/reset.c:315
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Impossible d'analyser l'objet '%s'."
 
-#: builtin/reset.c:297
+#: builtin/reset.c:312
 #, 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:306
+#: builtin/reset.c:321
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr "--patch est incompatible avec --{hard,mixed,soft}"
 
-#: builtin/reset.c:315
+#: builtin/reset.c:330
 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:317
+#: builtin/reset.c:332
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "Impossible de faire un \"%s reset\" avec des chemins."
 
-#: builtin/reset.c:327
+#: builtin/reset.c:342
 #, 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:344
+#: builtin/reset.c:346
+msgid "-N can only be used with --mixed"
+msgstr "-N ne peut être utilisé qu'avec --mixed"
+
+#: builtin/reset.c:363
 msgid "Unstaged changes after reset:"
 msgstr "Modifications non indexées après reset :"
 
-#: builtin/reset.c:350
+#: builtin/reset.c:369
 #, 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:355
+#: builtin/reset.c:373
 msgid "Could not write new index file."
 msgstr "Impossible d'écrire le nouveau fichier d'index."
 
-#: builtin/rev-parse.c:359
+#: builtin/rev-parse.c:360
 msgid "git rev-parse --parseopt [options] -- [<args>...]"
 msgstr "git rev-parse --parseopt [options] -- [<arguments>...]"
 
-#: builtin/rev-parse.c:364
+#: builtin/rev-parse.c:365
 msgid "keep the `--` passed as an arg"
 msgstr "garder le `--` passé en argument"
 
-#: builtin/rev-parse.c:366
+#: builtin/rev-parse.c:367
 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:369
+#: builtin/rev-parse.c:370
 msgid "output in stuck long form"
 msgstr "sortie en forme longue fixée"
 
-#: builtin/rev-parse.c:486
+#: builtin/rev-parse.c:498
 msgid ""
 "git rev-parse --parseopt [options] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -9198,35 +9284,35 @@ msgstr "option"
 msgid "option for merge strategy"
 msgstr "option pour la stratégie de fusion"
 
-#: builtin/revert.c:102
+#: builtin/revert.c:104
 msgid "append commit name"
 msgstr "ajouter le nom de validation"
 
-#: builtin/revert.c:103
+#: builtin/revert.c:105
 msgid "allow fast-forward"
 msgstr "autoriser l'avance rapide"
 
-#: builtin/revert.c:104
+#: builtin/revert.c:106
 msgid "preserve initially empty commits"
 msgstr "préserver les validations vides initialement"
 
-#: builtin/revert.c:105
+#: builtin/revert.c:107
 msgid "allow commits with empty messages"
 msgstr "autoriser les validations avec des messages vides"
 
-#: builtin/revert.c:106
+#: builtin/revert.c:108
 msgid "keep redundant, empty commits"
 msgstr "garder les validations redondantes, vides"
 
-#: builtin/revert.c:110
+#: builtin/revert.c:112
 msgid "program error"
 msgstr "erreur du programme"
 
-#: builtin/revert.c:195
+#: builtin/revert.c:197
 msgid "revert failed"
 msgstr "revert a échoué"
 
-#: builtin/revert.c:210
+#: builtin/revert.c:212
 msgid "cherry-pick failed"
 msgstr "le picorage a échoué"
 
@@ -9512,11 +9598,11 @@ msgstr "supprimer la référence symbolique"
 msgid "shorten ref output"
 msgstr "raccourcir l'affichage de la référence"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:254
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:349
 msgid "reason"
 msgstr "raison"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:254
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:349
 msgid "reason of the update"
 msgstr "raison de la mise à jour"
 
@@ -9543,310 +9629,339 @@ msgstr ""
 msgid "git tag -v <tagname>..."
 msgstr "git tag -v <nométiquette>..."
 
-#: builtin/tag.c:60
+#: builtin/tag.c:69
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "objet malformé à '%s'"
 
-#: builtin/tag.c:207
+#: builtin/tag.c:301
 #, c-format
 msgid "tag name too long: %.*s..."
 msgstr "nom d'étiquette trop long : %.*s..."
 
-#: builtin/tag.c:212
+#: builtin/tag.c:306
 #, c-format
 msgid "tag '%s' not found."
 msgstr "étiquette '%s' non trouvée."
 
-#: builtin/tag.c:227
+#: builtin/tag.c:321
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr "Étiquette '%s' supprimée (elle était %s)\n"
 
-#: builtin/tag.c:239
+#: builtin/tag.c:333
 #, c-format
 msgid "could not verify the tag '%s'"
 msgstr "impossible de vérifier l'étiquette '%s'"
 
-#: builtin/tag.c:249
+#: builtin/tag.c:343
 #, c-format
 msgid ""
 "\n"
-"Write a tag message\n"
+"Write a message for tag:\n"
+"  %s\n"
 "Lines starting with '%c' will be ignored.\n"
 msgstr ""
 "\n"
-"Écrire un message pour l'étiquette\n"
+"Écrivez un message pour l'étiquette :\n"
+"  %s\n"
 "Les lignes commençant par '%c' seront ignorées.\n"
 
-#: builtin/tag.c:253
+#: builtin/tag.c:347
 #, c-format
 msgid ""
 "\n"
-"Write a tag message\n"
+"Write a message for tag:\n"
+"  %s\n"
 "Lines starting with '%c' will be kept; you may remove them yourself if you "
 "want to.\n"
 msgstr ""
 "\n"
-"Écrire un message pour l'étiquette\n"
-"Les lignes commençant par '%c' seront gardées ; vous pouvez les retirer vous-"
-"même si vous le souhaitez.\n"
+"Écrivez un message pour l'étiquette :\n"
+"  %s\n"
+"Les lignes commençant par '%c' seront gardées ; vous pouvez les retirer vous-même si vous le souhaitez.\n"
 
-#: builtin/tag.c:292
+#: builtin/tag.c:371
+#, c-format
+msgid "unsupported sort specification '%s'"
+msgstr "spécification de tri non supportée '%s'"
+
+#: builtin/tag.c:373
+#, c-format
+msgid "unsupported sort specification '%s' in variable '%s'"
+msgstr "spécification de tri non supportée '%s' dans le variable '%s'"
+
+#: builtin/tag.c:428
 msgid "unable to sign the tag"
 msgstr "impossible de signer l'étiquette"
 
-#: builtin/tag.c:294
+#: builtin/tag.c:430
 msgid "unable to write tag file"
 msgstr "impossible d'écrire le fichier d'étiquettes"
 
-#: builtin/tag.c:319
+#: builtin/tag.c:455
 msgid "bad object type."
 msgstr "mauvais type d'objet."
 
-#: builtin/tag.c:332
+#: builtin/tag.c:468
 msgid "tag header too big."
 msgstr "en-tête d'étiquette trop gros."
 
-#: builtin/tag.c:368
+#: builtin/tag.c:504
 msgid "no tag message?"
 msgstr "pas de message pour l'étiquette ?"
 
-#: builtin/tag.c:374
+#: builtin/tag.c:510
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr "Le message pour l'étiquette a été laissé dans %s\n"
 
-#: builtin/tag.c:423
+#: builtin/tag.c:559
 msgid "switch 'points-at' requires an object"
 msgstr "le commutateur 'points-at' a besoin d'un objet"
 
-#: builtin/tag.c:425
+#: builtin/tag.c:561
 #, c-format
 msgid "malformed object name '%s'"
 msgstr "nom d'objet malformé '%s'"
 
-#: builtin/tag.c:445
+#: builtin/tag.c:588
 msgid "list tag names"
 msgstr "afficher les noms des étiquettes"
 
-#: builtin/tag.c:447
+#: builtin/tag.c:590
 msgid "print <n> lines of each tag message"
 msgstr "affiche <n> lignes de chaque message d'étiquette"
 
-#: builtin/tag.c:449
+#: builtin/tag.c:592
 msgid "delete tags"
 msgstr "supprimer des étiquettes"
 
-#: builtin/tag.c:450
+#: builtin/tag.c:593
 msgid "verify tags"
 msgstr "vérifier des étiquettes"
 
-#: builtin/tag.c:452
+#: builtin/tag.c:595
 msgid "Tag creation options"
 msgstr "Options de création de l'étiquette"
 
-#: builtin/tag.c:454
+#: builtin/tag.c:597
 msgid "annotated tag, needs a message"
 msgstr "étiquette annotée, nécessite un message"
 
-#: builtin/tag.c:456
+#: builtin/tag.c:599
 msgid "tag message"
 msgstr "message pour l'étiquette"
 
-#: builtin/tag.c:458
+#: builtin/tag.c:601
 msgid "annotated and GPG-signed tag"
 msgstr "étiquette annotée et signée avec GPG"
 
-#: builtin/tag.c:462
+#: builtin/tag.c:605
 msgid "use another key to sign the tag"
 msgstr "utiliser une autre clé pour signer l'étiquette"
 
-#: builtin/tag.c:463
+#: builtin/tag.c:606
 msgid "replace the tag if exists"
 msgstr "remplacer l'étiquette si elle existe"
 
-#: builtin/tag.c:464
+#: builtin/tag.c:607
 msgid "show tag list in columns"
 msgstr "afficher la liste des étiquettes sous forme de colonnes"
 
-#: builtin/tag.c:466
+#: builtin/tag.c:609
+msgid "sort tags"
+msgstr "trier les étiquettes"
+
+#: builtin/tag.c:613
 msgid "Tag listing options"
 msgstr "Options d'affichage des étiquettes"
 
-#: builtin/tag.c:469
+#: builtin/tag.c:616 builtin/tag.c:622
 msgid "print only tags that contain the commit"
 msgstr "afficher seulement les étiquettes qui contiennent la validation"
 
-#: builtin/tag.c:475
+#: builtin/tag.c:628
 msgid "print only tags of the object"
 msgstr "afficher seulement les étiquettes de l'objet"
 
-#: builtin/tag.c:501
+#: builtin/tag.c:654
 msgid "--column and -n are incompatible"
 msgstr "--column et -n sont incompatibles"
 
-#: builtin/tag.c:518
+#: builtin/tag.c:666
+msgid "--sort and -n are incompatible"
+msgstr "--sort et -n sont incompatibles"
+
+#: builtin/tag.c:673
 msgid "-n option is only allowed with -l."
 msgstr "l'option -n est autorisée seulement avec -l."
 
-#: builtin/tag.c:520
+#: builtin/tag.c:675
 msgid "--contains option is only allowed with -l."
 msgstr "l'option --contains est autorisée seulement avec -l."
 
-#: builtin/tag.c:522
+#: builtin/tag.c:677
 msgid "--points-at option is only allowed with -l."
 msgstr "l'option --points-at est autorisée seulement avec -l."
 
-#: builtin/tag.c:530
+#: builtin/tag.c:685
 msgid "only one -F or -m option is allowed."
 msgstr "une seule option -F ou -m est autorisée."
 
-#: builtin/tag.c:550
+#: builtin/tag.c:705
 msgid "too many params"
 msgstr "trop de paramètres"
 
-#: builtin/tag.c:556
+#: builtin/tag.c:711
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "'%s' n'est pas un nom d'étiquette valide."
 
-#: builtin/tag.c:561
+#: builtin/tag.c:716
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "l'étiquette '%s' existe déjà"
 
-#: builtin/tag.c:579
+#: builtin/tag.c:734
 #, c-format
 msgid "%s: cannot lock the ref"
 msgstr "%s : impossible de verrouiller la référence"
 
-#: builtin/tag.c:581
+#: builtin/tag.c:736
 #, c-format
 msgid "%s: cannot update the ref"
 msgstr "%s : impossible de mettre à jour la référence"
 
-#: builtin/tag.c:583
+#: builtin/tag.c:738
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Étiquette '%s' mise à jour (elle était %s)\n"
 
+#: builtin/unpack-objects.c:483
+msgid "Unpacking objects"
+msgstr "Dépaquetage des objets"
+
 #: builtin/update-index.c:402
 msgid "git update-index [options] [--] [<file>...]"
 msgstr "git update-index [options] [--] [<fichier>...]"
 
-#: builtin/update-index.c:720
+#: builtin/update-index.c:755
 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:723
+#: builtin/update-index.c:758
 msgid "refresh: ignore submodules"
 msgstr "rafraîchir : ignorer les sous-modules"
 
-#: builtin/update-index.c:726
+#: builtin/update-index.c:761
 msgid "do not ignore new files"
 msgstr "ne pas ignorer les nouveaux fichiers"
 
-#: builtin/update-index.c:728
+#: builtin/update-index.c:763
 msgid "let files replace directories and vice-versa"
 msgstr "laisser les fichiers remplacer des répertoires et vice-versa"
 
-#: builtin/update-index.c:730
+#: builtin/update-index.c:765
 msgid "notice files missing from worktree"
 msgstr "aviser des fichiers manquants dans la copie de travail"
 
-#: builtin/update-index.c:732
+#: builtin/update-index.c:767
 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:735
+#: builtin/update-index.c:770
 msgid "refresh stat information"
 msgstr "rafraîchir l'information de stat"
 
-#: builtin/update-index.c:739
+#: builtin/update-index.c:774
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "comme --refresh, mais en ignorant l'option assume-unchanged"
 
-#: builtin/update-index.c:743
-msgid "<mode> <object> <path>"
-msgstr "<mode> <objet> <chemin>"
+#: builtin/update-index.c:778
+msgid "<mode>,<object>,<path>"
+msgstr "<mode>, <objet>, <chemin>"
 
-#: builtin/update-index.c:744
+#: builtin/update-index.c:779
 msgid "add the specified entry to the index"
 msgstr "ajouter l'élément spécifié dans l'index"
 
-#: builtin/update-index.c:748
+#: builtin/update-index.c:783
 msgid "(+/-)x"
 msgstr "(+/-)x"
 
-#: builtin/update-index.c:749
+#: builtin/update-index.c:784
 msgid "override the executable bit of the listed files"
 msgstr "outrepasser le bit exécutable pour les fichiers listés"
 
-#: builtin/update-index.c:753
+#: builtin/update-index.c:788
 msgid "mark files as \"not changing\""
 msgstr "marquer les fichiers comme \"non changeants\""
 
-#: builtin/update-index.c:756
+#: builtin/update-index.c:791
 msgid "clear assumed-unchanged bit"
 msgstr "mettre à zéro le bit supposé-non-modifié"
 
-#: builtin/update-index.c:759
+#: builtin/update-index.c:794
 msgid "mark files as \"index-only\""
 msgstr "marquer les fichiers comme \"index seulement\""
 
-#: builtin/update-index.c:762
+#: builtin/update-index.c:797
 msgid "clear skip-worktree bit"
 msgstr "mettre à zéro le bit sauter-la-copie-de travail"
 
-#: builtin/update-index.c:765
+#: builtin/update-index.c:800
 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:767
+#: builtin/update-index.c:802
 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:769
+#: builtin/update-index.c:804
 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:771
+#: builtin/update-index.c:806
 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:775
+#: builtin/update-index.c:810
 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:779
+#: builtin/update-index.c:814
 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:783
+#: builtin/update-index.c:818
 msgid "only update entries that differ from HEAD"
 msgstr "mettre à jour seulement les éléments qui diffèrent de HEAD"
 
-#: builtin/update-index.c:787
+#: builtin/update-index.c:822
 msgid "ignore files missing from worktree"
 msgstr "ignorer les fichiers manquants dans la copie de travail"
 
-#: builtin/update-index.c:790
+#: builtin/update-index.c:825
 msgid "report actions to standard output"
 msgstr "afficher les actions sur la sortie standard"
 
-#: builtin/update-index.c:792
+#: builtin/update-index.c:827
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr "(pour porcelaines) oublier les conflits sauvés et non résolus"
 
-#: builtin/update-index.c:796
+#: builtin/update-index.c:831
 msgid "write index in this format"
 msgstr "écrire l'index dans ce format"
 
+#: builtin/update-index.c:833
+msgid "enable or disable split index"
+msgstr "activer ou désactiver l'index divisé"
+
 #: builtin/update-ref.c:9
 msgid "git update-ref [options] -d <refname> [<oldval>]"
 msgstr "git update-ref [options] -d <nomréférence> [<anciennevaleur>]"
@@ -9861,19 +9976,19 @@ msgstr ""
 msgid "git update-ref [options] --stdin [-z]"
 msgstr "git update-ref [options] --stdin [-z]"
 
-#: builtin/update-ref.c:255
+#: builtin/update-ref.c:350
 msgid "delete the reference"
 msgstr "supprimer la référence"
 
-#: builtin/update-ref.c:257
+#: builtin/update-ref.c:352
 msgid "update <refname> not the one it points to"
 msgstr "mettre à jour <nomréférence> et non la référence pointée par lui"
 
-#: builtin/update-ref.c:258
+#: builtin/update-ref.c:353
 msgid "stdin has NUL-terminated arguments"
 msgstr "l'entrée standard a des arguments qui se terminent par NUL"
 
-#: builtin/update-ref.c:259
+#: builtin/update-ref.c:354
 msgid "read updates from stdin"
 msgstr "lire les mises à jour depuis l'entrée standard"
 
@@ -9885,15 +10000,23 @@ msgstr "git update-server-info [--force]"
 msgid "update the info files from scratch"
 msgstr "mettre à jour les fichiers d'information à partir de zéro"
 
-#: builtin/verify-pack.c:56
+#: builtin/verify-commit.c:17
+msgid "git verify-commit [-v|--verbose] <commit>..."
+msgstr "git verify-commit [-v|--verbose] <commit>..."
+
+#: builtin/verify-commit.c:75
+msgid "print commit contents"
+msgstr "afficher le contenu du commit"
+
+#: builtin/verify-pack.c:55
 msgid "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..."
 msgstr "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..."
 
-#: builtin/verify-pack.c:66
+#: builtin/verify-pack.c:65
 msgid "verbose"
 msgstr "verbeux"
 
-#: builtin/verify-pack.c:68
+#: builtin/verify-pack.c:67
 msgid "show statistics only"
 msgstr "afficher seulement les statistiques"
 
@@ -9931,23 +10054,23 @@ msgstr ""
 "quelques concepts. Voir 'git help <command>' ou 'git help <concept>'\n"
 "pour en lire plus à propos d'une commande spécifique ou d'un concept."
 
-#: parse-options.h:146
-msgid "expiry date"
-msgstr "date d'expiration"
+#: parse-options.h:143
+msgid "expiry-date"
+msgstr "date-d'expiration"
 
-#: parse-options.h:161
+#: parse-options.h:158
 msgid "no-op (backward compatibility)"
 msgstr "sans action (rétrocompatibilité)"
 
-#: parse-options.h:235
+#: parse-options.h:232
 msgid "be more verbose"
 msgstr "être plus verbeux"
 
-#: parse-options.h:237
+#: parse-options.h:234
 msgid "be more quiet"
 msgstr "être plus silencieux"
 
-#: parse-options.h:243
+#: parse-options.h:240
 msgid "use <n> digits to display SHA-1s"
 msgstr "utiliser <n> chiffres pour afficher les SHA-1s"
 
@@ -10039,11 +10162,11 @@ msgid "Create, list, delete or verify a tag object signed with GPG"
 msgstr ""
 "Créer, lister, supprimer ou vérifier un objet d'étiquette signé avec GPG"
 
-#: git-am.sh:50
+#: git-am.sh:52
 msgid "You need to set your committer info first"
 msgstr "Vous devez d'abord définir vos informations de validateur"
 
-#: git-am.sh:95
+#: git-am.sh:97
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -10051,7 +10174,7 @@ msgstr ""
 "Vous semblez avoir déplacé la HEAD depuis le dernier échec de 'am'.\n"
 "Pas de retour à ORIG_HEAD"
 
-#: git-am.sh:105
+#: git-am.sh:107
 #, sh-format
 msgid ""
 "When you have resolved this problem, run \"$cmdline --continue\".\n"
@@ -10063,22 +10186,22 @@ msgstr ""
 "Pour restaurer la branche d'origine et stopper le patchage, lancez "
 "\"$cmdline --abort\"."
 
-#: git-am.sh:121
+#: git-am.sh:123
 msgid "Cannot fall back to three-way merge."
 msgstr "Impossible de retourner à une fusion à 3 points."
 
-#: git-am.sh:137
+#: git-am.sh:139
 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."
 
-#: git-am.sh:139
+#: git-am.sh:141
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 "Utilisation de l'information de l'index pour reconstruire un arbre de base..."
 
-#: git-am.sh:154
+#: git-am.sh:156
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -10086,28 +10209,28 @@ msgstr ""
 "Avez-vous édité le patch à la main ?\n"
 "Il ne s'applique pas aux blobs enregistrés dans son index."
 
-#: git-am.sh:163
+#: git-am.sh:165
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Retour à un patch de la base et fusion à 3 points..."
 
-#: git-am.sh:179
+#: git-am.sh:181
 msgid "Failed to merge in the changes."
 msgstr "Échec d'intégration des modifications."
 
-#: git-am.sh:274
+#: git-am.sh:276
 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"
 
-#: git-am.sh:361
+#: git-am.sh:363
 #, sh-format
 msgid "Patch format $patch_format is not supported."
 msgstr "Le format de patch $patch_format n'est pas supporté."
 
-#: git-am.sh:363
+#: git-am.sh:365
 msgid "Patch format detection failed."
 msgstr "Échec de détection du format du patch."
 
-#: git-am.sh:389
+#: git-am.sh:392
 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."
@@ -10115,17 +10238,17 @@ msgstr ""
 "L'option -b/--binary ne fait plus rien depuis longtemps,\n"
 "et elle sera supprimée. Veuillez ne plus l'utiliser."
 
-#: git-am.sh:479
+#: git-am.sh:486
 #, sh-format
 msgid "previous rebase directory $dotest still exists but mbox given."
 msgstr ""
 "le répertoire précédent de rebasage $dotest existe toujours mais mbox donnée."
 
-#: git-am.sh:484
+#: git-am.sh:491
 msgid "Please make up your mind. --skip or --abort?"
 msgstr "Décidez-vous. --skip ou --abort ?"
 
-#: git-am.sh:520
+#: git-am.sh:527
 #, sh-format
 msgid ""
 "Stray $dotest directory found.\n"
@@ -10134,18 +10257,18 @@ msgstr ""
 "Répertoire abandonné $dotest trouvé.\n"
 "Utilisez \"git am --abort\" pour le supprimer."
 
-#: git-am.sh:528
+#: git-am.sh:535
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr ""
 "Pas de résolution de l'opération en cours, nous ne sommes pas dans une "
 "reprise."
 
-#: git-am.sh:594
+#: git-am.sh:601
 #, sh-format
 msgid "Dirty index: cannot apply patches (dirty: $files)"
 msgstr "Index sale : impossible d'appliquer des patchs (sales : $files)"
 
-#: git-am.sh:698
+#: git-am.sh:705
 #, sh-format
 msgid ""
 "Patch is empty.  Was it split wrong?\n"
@@ -10157,32 +10280,32 @@ msgstr ""
 "Pour restaurer la branche d'origine et stopper le patchage, lancez "
 "\"$cmdline --abort\"."
 
-#: git-am.sh:725
+#: git-am.sh:732
 msgid "Patch does not have a valid e-mail address."
 msgstr "Le patch n'a pas d'adresse e-mail valide."
 
-#: git-am.sh:772
+#: git-am.sh:779
 msgid "cannot be interactive without stdin connected to a terminal."
 msgstr ""
 "impossible d'être interactif sans entrée standard connectée à un terminal."
 
-#: git-am.sh:776
+#: git-am.sh:783
 msgid "Commit Body is:"
 msgstr "Le corps de la validation est :"
 
 #. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
 #. in your translation. The program will only accept English
 #. input at this point.
-#: git-am.sh:783
+#: git-am.sh:790
 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 "
 
-#: git-am.sh:819
+#: git-am.sh:826
 #, sh-format
 msgid "Applying: $FIRSTLINE"
 msgstr "Application : $FIRSTLINE"
 
-#: git-am.sh:840
+#: git-am.sh:847
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -10193,7 +10316,7 @@ msgstr ""
 "introduit les mêmes changements ; vous pourriez avoir envie de sauter ce "
 "patch."
 
-#: git-am.sh:848
+#: git-am.sh:855
 msgid ""
 "You still have unmerged paths in your index\n"
 "did you forget to use 'git add'?"
@@ -10201,16 +10324,16 @@ msgstr ""
 "Vous avez toujours des chemins non fusionnés dans votre index\n"
 "auriez-vous oublié de faire 'git add' ?"
 
-#: git-am.sh:864
+#: git-am.sh:871
 msgid "No changes -- Patch already applied."
 msgstr "Pas de changement -- Patch déjà appliqué."
 
-#: git-am.sh:874
+#: git-am.sh:881
 #, sh-format
 msgid "Patch failed at $msgnum $FIRSTLINE"
 msgstr "Le patch a échoué à $msgnum $FIRSTLINE"
 
-#: git-am.sh:877
+#: git-am.sh:884
 #, sh-format
 msgid ""
 "The copy of the patch that failed is found in:\n"
@@ -10219,7 +10342,7 @@ msgstr ""
 "La copie du patch qui a échoué se trouve dans :\n"
 "   $dotest/patch"
 
-#: git-am.sh:895
+#: git-am.sh:902
 msgid "applying to an empty history"
 msgstr "application à un historique vide"
 
@@ -10287,8 +10410,6 @@ msgstr "Mauvaise révision en entrée : $rev"
 msgid "'git bisect bad' can take only one argument."
 msgstr "'git bisect bad' n'accepte qu'un seul argument."
 
-#. have bad but not good.  we could bisect although
-#. this is less optimum.
 #: git-bisect.sh:273
 msgid "Warning: bisecting only with a bad commit."
 msgstr "Attention : bissection avec seulement une mauvaise validation."
@@ -10395,17 +10516,13 @@ msgstr ""
 msgid "Pull is not possible because you have unmerged files."
 msgstr "Le pull n'est pas possible car vous avez des fichiers non fusionnés."
 
-#: git-pull.sh:223
+#: git-pull.sh:245
 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"
 
-#. The fetch involved updating the current branch.
-#. The working tree and the index file is still based on the
-#. $orig_head commit, but we are merging into $curr_head.
-#. First update the working tree to match $curr_head.
-#: git-pull.sh:247
+#: git-pull.sh:269
 #, sh-format
 msgid ""
 "Warning: fetch updated the current branch head.\n"
@@ -10416,15 +10533,15 @@ msgstr ""
 "Attention : mise à jour en avance rapide de votre copie de travail\n"
 "Attention : depuis la validation $orig_head."
 
-#: git-pull.sh:272
+#: git-pull.sh:294
 msgid "Cannot merge multiple branches into empty head"
 msgstr "Impossible de fusionner de multiples branches sur une tête vide"
 
-#: git-pull.sh:276
+#: git-pull.sh:298
 msgid "Cannot rebase onto multiple branches"
 msgstr "Impossible de rebaser sur de multiples branches"
 
-#: git-rebase.sh:55
+#: git-rebase.sh:57
 msgid ""
 "When you have resolved this problem, run \"git rebase --continue\".\n"
 "If you prefer to skip this patch, run \"git rebase --skip\" instead.\n"
@@ -10436,16 +10553,16 @@ msgstr ""
 "Pour extraire la branche d'origine et stopper le rebasage, lancez \"git "
 "rebase --abort\"."
 
-#: git-rebase.sh:158
+#: git-rebase.sh:165
 msgid "Applied autostash."
 msgstr "Autoremisage appliqué."
 
-#: git-rebase.sh:161
+#: git-rebase.sh:168
 #, sh-format
 msgid "Cannot store $stash_sha1"
 msgstr "Impossible de stocker $stash_sha1"
 
-#: git-rebase.sh:162
+#: git-rebase.sh:169
 msgid ""
 "Applying autostash resulted in conflicts.\n"
 "Your changes are safe in the stash.\n"
@@ -10455,33 +10572,33 @@ msgstr ""
 "Vos  modifications sont à l'abri dans la remise.\n"
 "Vous pouvez lancer \"git stash pop\" ou \"git stash drop\" à tout moment.\n"
 
-#: git-rebase.sh:201
+#: git-rebase.sh:208
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Le crochet pre-rebase a refusé de rebaser."
 
-#: git-rebase.sh:206
+#: git-rebase.sh:213
 msgid "It looks like git-am is in progress. Cannot rebase."
 msgstr "Il semble que git-am soit en cours. Impossible de rebaser."
 
-#: git-rebase.sh:346
+#: git-rebase.sh:351
 msgid "The --exec option must be used with the --interactive option"
 msgstr "L'option --exec doit être utilisée avec l'option --interactive"
 
-#: git-rebase.sh:351
+#: git-rebase.sh:356
 msgid "No rebase in progress?"
 msgstr "Pas de rebasage en cours ?"
 
-#: git-rebase.sh:362
+#: git-rebase.sh:367
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
 "L'action --edit-todo peut seulement être utilisée lors d'un rebasage "
 "interactif."
 
-#: git-rebase.sh:369
+#: git-rebase.sh:374
 msgid "Cannot read HEAD"
 msgstr "Impossible de lire HEAD"
 
-#: git-rebase.sh:372
+#: git-rebase.sh:377
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -10489,12 +10606,12 @@ msgstr ""
 "Vous devez éditer tous les conflits de fusion et\n"
 "les marquer comme résolus avec git add"
 
-#: git-rebase.sh:390
+#: git-rebase.sh:395
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr "Impossible de revenir à $head_name"
 
-#: git-rebase.sh:409
+#: git-rebase.sh:414
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -10516,66 +10633,65 @@ msgstr ""
 "chose\n"
 "d'important ici."
 
-#: git-rebase.sh:456
+#: git-rebase.sh:465
 #, sh-format
 msgid "invalid upstream $upstream_name"
 msgstr "invalide $upstream_name en amont"
 
-#: git-rebase.sh:480
+#: git-rebase.sh:489
 #, sh-format
 msgid "$onto_name: there are more than one merge bases"
 msgstr "$onto_name : il y a plus d'une base de fusion"
 
-#: git-rebase.sh:483 git-rebase.sh:487
+#: git-rebase.sh:492 git-rebase.sh:496
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr "$onto_name : il n'y a pas de base de fusion"
 
-#: git-rebase.sh:492
+#: git-rebase.sh:501
 #, sh-format
 msgid "Does not point to a valid commit: $onto_name"
 msgstr "Ne pointe pas sur une validation valide : $onto_name"
 
-#: git-rebase.sh:515
+#: git-rebase.sh:524
 #, sh-format
 msgid "fatal: no such branch: $branch_name"
 msgstr "fatal : pas de branche : $branch_name"
 
-#: git-rebase.sh:548
+#: git-rebase.sh:557
 msgid "Cannot autostash"
 msgstr "Autoremisage impossible"
 
-#: git-rebase.sh:553
+#: git-rebase.sh:562
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr "Autoremisage créé : $stash_abbrev"
 
-#: git-rebase.sh:557
+#: git-rebase.sh:566
 msgid "Please commit or stash them."
 msgstr "Veuillez les valider ou les remiser."
 
-#: git-rebase.sh:577
+#: git-rebase.sh:586
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr "La branche courante $branch_name est à jour."
 
-#: git-rebase.sh:581
+#: git-rebase.sh:590
 #, sh-format
 msgid "Current branch $branch_name is up to date, rebase forced."
 msgstr "La branche courante $branch_name est à jour, rebasage forcé."
 
-#: git-rebase.sh:592
+#: git-rebase.sh:601
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "Changements de $mb sur $onto :"
 
-#. Detach HEAD and reset the tree
-#: git-rebase.sh:601
+#: git-rebase.sh:610
 msgid "First, rewinding head to replay your work on top of it..."
 msgstr ""
 "Premièrement, rembobinons head pour rejouer votre travail par-dessus..."
 
-#: git-rebase.sh:611
+#: git-rebase.sh:620
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr "$branch_name mise à jour en avance rapide sur $onto_name."
@@ -10592,23 +10708,23 @@ msgstr "Vous n'avez pas encore la validation initiale"
 msgid "Cannot save the current index state"
 msgstr "Impossible de sauver l'état courant de l'index"
 
-#: git-stash.sh:123 git-stash.sh:136
+#: git-stash.sh:124 git-stash.sh:137
 msgid "Cannot save the current worktree state"
 msgstr "Impossible de sauver l'état courant de la copie de travail"
 
-#: git-stash.sh:140
+#: git-stash.sh:141
 msgid "No changes selected"
 msgstr "Aucun changement sélectionné"
 
-#: git-stash.sh:143
+#: git-stash.sh:144
 msgid "Cannot remove temporary index (can't happen)"
 msgstr "Impossible de supprimer l'index temporaire (ne peut pas se produire)"
 
-#: git-stash.sh:156
+#: git-stash.sh:157
 msgid "Cannot record working tree state"
 msgstr "Impossible d'enregistrer l'état de la copie de travail"
 
-#: git-stash.sh:190
+#: git-stash.sh:191
 #, sh-format
 msgid "Cannot update $ref_stash with $w_commit"
 msgstr "Impossible de mettre à jour $ref_stash avec $w_commit"
@@ -10623,7 +10739,7 @@ msgstr "Impossible de mettre à jour $ref_stash avec $w_commit"
 #. $ git stash save --blah-blah 2>&1 | head -n 2
 #. error: unknown option for 'stash save': --blah-blah
 #. To provide a message, use git stash save -- '--blah-blah'
-#: git-stash.sh:237
+#: git-stash.sh:238
 #, sh-format
 msgid ""
 "error: unknown option for 'stash save': $option\n"
@@ -10632,85 +10748,85 @@ msgstr ""
 "erreur: option inconnue pour 'stash save': $option\n"
 "        Pour fournir un message, utilisez git stash save -- '$option'"
 
-#: git-stash.sh:258
+#: git-stash.sh:259
 msgid "No local changes to save"
 msgstr "Pas de modifications locales à sauver"
 
-#: git-stash.sh:262
+#: git-stash.sh:263
 msgid "Cannot initialize stash"
 msgstr "Impossible d'initialiser le remisage"
 
-#: git-stash.sh:266
+#: git-stash.sh:267
 msgid "Cannot save the current status"
 msgstr "Impossible de sauver le statut courant"
 
-#: git-stash.sh:284
+#: git-stash.sh:285
 msgid "Cannot remove worktree changes"
 msgstr "Impossible de supprimer les changements de la copie de travail"
 
-#: git-stash.sh:383
+#: git-stash.sh:384
 msgid "No stash found."
 msgstr "Pas de remisage trouvé."
 
-#: git-stash.sh:390
+#: git-stash.sh:391
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Trop de révisions spécifiées : $REV"
 
-#: git-stash.sh:396
+#: git-stash.sh:397
 #, sh-format
 msgid "$reference is not valid reference"
 msgstr "$reference n'est pas une référence valide"
 
-#: git-stash.sh:424
+#: git-stash.sh:425
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr "'$args' n'est pas une validation de type remisage"
 
-#: git-stash.sh:435
+#: git-stash.sh:436
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr "'$args' n'est pas une référence de remisage"
 
-#: git-stash.sh:443
+#: git-stash.sh:444
 msgid "unable to refresh index"
 msgstr "impossible de rafraîchir l'index"
 
-#: git-stash.sh:447
+#: git-stash.sh:448
 msgid "Cannot apply a stash in the middle of a merge"
 msgstr "Impossible d'appliquer un remisage en cours de fusion"
 
-#: git-stash.sh:455
+#: git-stash.sh:456
 msgid "Conflicts in index. Try without --index."
 msgstr "Conflits dans l'index. Essayez sans --index."
 
-#: git-stash.sh:457
+#: git-stash.sh:458
 msgid "Could not save index tree"
-msgstr "Impossible de sauver l'arbre d'index"
+msgstr "Impossible de sauvegarder l'arbre d'index"
 
-#: git-stash.sh:491
+#: git-stash.sh:492
 msgid "Cannot unstage modified files"
 msgstr "Impossible de désindexer les fichiers modifiés"
 
-#: git-stash.sh:506
+#: git-stash.sh:507
 msgid "Index was not unstashed."
 msgstr "L'index n'a pas été sorti de remise."
 
-#: git-stash.sh:523
+#: git-stash.sh:530
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "${REV} supprimé ($s)"
 
-#: git-stash.sh:524
+#: git-stash.sh:531
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: Impossible de supprimer l'élément de stash"
 
-#: git-stash.sh:531
+#: git-stash.sh:538
 msgid "No branch name specified"
 msgstr "Aucune branche spécifiée"
 
-#: git-stash.sh:603
+#: git-stash.sh:610
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Pour les restaurer tapez \"git stash apply\")"
 
@@ -10726,35 +10842,35 @@ msgstr ""
 "Pas de mise en correspondance du sous-module trouvé dans .gitmodules pour le "
 "chemin '$sm_path'"
 
-#: git-submodule.sh:281
+#: git-submodule.sh:287
 #, sh-format
 msgid "Clone of '$url' into submodule path '$sm_path' failed"
 msgstr "Le clonage de '$url' dans le chemin de sous-module '$sm_path' a échoué"
 
-#: git-submodule.sh:293
+#: git-submodule.sh:296
 #, sh-format
 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"
 
-#: git-submodule.sh:403
+#: git-submodule.sh:406
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 "Un chemin relatif ne peut être utilisé que depuis la racine de la copie de "
 "travail"
 
-#: git-submodule.sh:413
+#: git-submodule.sh:416
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr "L'URL de dépôt '$repo' doit être absolu ou commencer par ./|../"
 
-#: git-submodule.sh:430
+#: git-submodule.sh:433
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr "'$sm_path' existe déjà dans l'index"
 
-#: git-submodule.sh:434
+#: git-submodule.sh:437
 #, sh-format
 msgid ""
 "The following path is ignored by one of your .gitignore files:\n"
@@ -10765,24 +10881,24 @@ msgstr ""
 "$sm_path\n"
 "Utilisez -f si vous voulez vraiment l'ajouter."
 
-#: git-submodule.sh:452
+#: git-submodule.sh:455
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr "Ajout du dépôt existant à '$sm_path' dans l'index"
 
-#: git-submodule.sh:454
+#: git-submodule.sh:457
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr "'$sm_path' existe déjà et n'est pas un dépôt git valide"
 
-#: git-submodule.sh:462
+#: git-submodule.sh:465
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
 "Un répertoire git pour '$sm_name' est trouvé en local avec le(s) serveur(s) "
 "distant(s) :"
 
-#: git-submodule.sh:464
+#: git-submodule.sh:467
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from"
@@ -10790,7 +10906,7 @@ msgstr ""
 "Si vous voulez réutiliser ce répertoire git local au lieu de cloner à "
 "nouveau depuis"
 
-#: git-submodule.sh:466
+#: git-submodule.sh:469
 #, sh-format
 msgid ""
 "use the '--force' option. If the local git directory is not the correct repo"
@@ -10798,7 +10914,7 @@ msgstr ""
 "utilisez l'option '--force'. Si le répertoire local git n'est pas le dépôt "
 "correct"
 
-#: git-submodule.sh:467
+#: git-submodule.sh:470
 #, sh-format
 msgid ""
 "or you are unsure what this means choose another name with the '--name' "
@@ -10807,74 +10923,74 @@ msgstr ""
 "ou vous ne savez pas ce que cela signifie de choisir un autre nom avec "
 "l'option '--name'."
 
-#: git-submodule.sh:469
+#: git-submodule.sh:472
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
 msgstr "Réactivation du répertoire git local pour le sous-module '$sm_name'."
 
-#: git-submodule.sh:481
+#: git-submodule.sh:484
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr "Impossible d'extraire le sous-module '$sm_path'"
 
-#: git-submodule.sh:486
+#: git-submodule.sh:489
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr "Échec d'ajout du sous-module '$sm_path'"
 
-#: git-submodule.sh:495
+#: git-submodule.sh:498
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr "Échec d'enregistrement du sous-module '$sm_path'"
 
-#: git-submodule.sh:539
+#: git-submodule.sh:542
 #, sh-format
 msgid "Entering '$prefix$displaypath'"
 msgstr "Entrée dans '$prefix$displaypath'"
 
-#: git-submodule.sh:559
+#: git-submodule.sh:562
 #, sh-format
 msgid "Stopping at '$prefix$displaypath'; script returned non-zero status."
 msgstr ""
 "Arrêt sur '$prefix$displaypath' ; le script a retourné un statut non nul."
 
-#: git-submodule.sh:605
+#: git-submodule.sh:608
 #, sh-format
 msgid "No url found for submodule path '$displaypath' in .gitmodules"
 msgstr ""
-"URL non trouvé pour le chemin de sous-module '$displaypath' dans .gitmodules"
+"URL non trouvée pour le chemin de sous-module '$displaypath' dans .gitmodules"
 
-#: git-submodule.sh:614
+#: git-submodule.sh:617
 #, sh-format
 msgid "Failed to register url for submodule path '$displaypath'"
 msgstr ""
 "Échec d'enregistrement de l'URL pour le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:616
+#: git-submodule.sh:619
 #, sh-format
 msgid "Submodule '$name' ($url) registered for path '$displaypath'"
 msgstr "Sous-module '$name' ($url) enregistré pour le chemin '$displaypath'"
 
-#: git-submodule.sh:633
+#: git-submodule.sh:636
 #, sh-format
 msgid "Failed to register update mode for submodule path '$displaypath'"
 msgstr ""
 "Échec d'enregistrement du mode de mise à jour pour le chemin de sous-module "
 "'$displaypath'"
 
-#: git-submodule.sh:671
+#: git-submodule.sh:674
 #, sh-format
 msgid "Use '.' if you really want to deinitialize all submodules"
 msgstr ""
 "Utilisez '.' si vous voulez vraiment réinitialiser tous les sous-modules"
 
-#: git-submodule.sh:688
+#: git-submodule.sh:691
 #, sh-format
 msgid "Submodule work tree '$displaypath' contains a .git directory"
 msgstr ""
 "La copie de travail du sous-module '$displaypath' contient un répertoire .git"
 
-#: git-submodule.sh:689
+#: git-submodule.sh:692
 #, sh-format
 msgid ""
 "(use 'rm -rf' if you really want to remove it including all of its history)"
@@ -10882,7 +10998,7 @@ msgstr ""
 "(utilisez 'rm -rf' si vous voulez vraiment le supprimer en incluant tout son "
 "historique)"
 
-#: git-submodule.sh:695
+#: git-submodule.sh:698
 #, sh-format
 msgid ""
 "Submodule work tree '$displaypath' contains local modifications; use '-f' to "
@@ -10891,30 +11007,30 @@ msgstr ""
 "La copie de travail du sous-module '$displaypath' contient des modifications "
 "locales ; utilisez '-f' pour les annuler"
 
-#: git-submodule.sh:698
+#: git-submodule.sh:701
 #, sh-format
 msgid "Cleared directory '$displaypath'"
 msgstr "Répertoire '$displaypath' nettoyé"
 
-#: git-submodule.sh:699
+#: git-submodule.sh:702
 #, sh-format
 msgid "Could not remove submodule work tree '$displaypath'"
 msgstr ""
 "Impossible de supprimer la copie de travail du sous-module '$displaypath'"
 
-#: git-submodule.sh:702
+#: git-submodule.sh:705
 #, sh-format
 msgid "Could not create empty submodule directory '$displaypath'"
 msgstr "Impossible de créer le répertoire vide du sous-module '$displaypath'"
 
-#: git-submodule.sh:711
+#: git-submodule.sh:714
 #, sh-format
 msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
 msgstr ""
 "Le sous-module '$name' ($url) n'est pas enregistré pour le chemin "
 "'$displaypath'"
 
-#: git-submodule.sh:834
+#: git-submodule.sh:830
 #, sh-format
 msgid ""
 "Submodule path '$displaypath' not initialized\n"
@@ -10923,46 +11039,57 @@ msgstr ""
 "Chemin de sous-module '$displaypath' non initialisé\n"
 "Peut-être souhaitez-vous utiliser 'update --init' ?"
 
-#: git-submodule.sh:847
+#: git-submodule.sh:843
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
 "Impossible de trouver la révision courante dans le chemin de sous-module "
 "'$displaypath'"
 
-#: git-submodule.sh:856
+#: git-submodule.sh:852
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr "Impossible de rapatrier dans le chemin de sous-module '$sm_path'"
 
-#: git-submodule.sh:880
+#: git-submodule.sh:876
 #, sh-format
 msgid "Unable to fetch in submodule path '$displaypath'"
 msgstr "Impossible de rapatrier dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:894
+#: git-submodule.sh:890
+#, sh-format
+msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
+msgstr ""
+"Impossible d'extraire '$sha1' dans le chemin de sous-module '$displaypath'"
+
+#: git-submodule.sh:891
+#, sh-format
+msgid "Submodule path '$displaypath': checked out '$sha1'"
+msgstr "Chemin de sous-module '$displaypath' : '$sha1' extrait"
+
+#: git-submodule.sh:895
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Impossible de rebaser '$sha1' dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:895
+#: git-submodule.sh:896
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr "Chemin de sous-module '$displaypath' : rebasé dans '$sha1'"
 
-#: git-submodule.sh:900
+#: git-submodule.sh:901
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Impossible de fusionner '$sha1' dans le chemin de sous-module '$displaypath'"
 
-#: git-submodule.sh:901
+#: git-submodule.sh:902
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr "Chemin de sous-module '$displaypath' : fusionné dans '$sha1'"
 
-#: git-submodule.sh:906
+#: git-submodule.sh:907
 #, sh-format
 msgid ""
 "Execution of '$command $sha1' failed in submodule  path '$prefix$sm_path'"
@@ -10970,70 +11097,180 @@ msgstr ""
 "L'exécution de '$command $sha1' a échoué dans le chemin de sous-module "
 "'$prefix$sm_path'"
 
-#: git-submodule.sh:907
+#: git-submodule.sh:908
 #, sh-format
 msgid "Submodule path '$prefix$sm_path': '$command $sha1'"
 msgstr "Chemin de sous-module '$prefix$sm_path' : '$command $sha1'"
 
-#: git-submodule.sh:912
-#, sh-format
-msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
-msgstr ""
-"Impossible d'extraire '$sha1' dans le chemin de sous-module '$displaypath'"
-
-#: git-submodule.sh:913
-#, sh-format
-msgid "Submodule path '$displaypath': checked out '$sha1'"
-msgstr "Chemin de sous-module '$displaypath' : '$sha1' extrait"
-
-#: git-submodule.sh:940
+#: git-submodule.sh:938
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr "Échec de parcours dans le chemin du sous-module '$displaypath'"
 
-#: git-submodule.sh:1048
+#: git-submodule.sh:1046
 msgid "The --cached option cannot be used with the --files option"
 msgstr "L'option --cached ne peut pas être utilisée avec l'option --files"
 
-#. unexpected type
-#: git-submodule.sh:1096
+#: git-submodule.sh:1098
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr "mode $mod_dst inattendu"
 
-#: git-submodule.sh:1116
+#: git-submodule.sh:1118
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_src"
 msgstr "  Attention : $display_name ne contient pas la validation $sha1_src"
 
-#: git-submodule.sh:1119
+#: git-submodule.sh:1121
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
 msgstr "  Attention : $display_name ne contient pas la validation $sha1_dst"
 
-#: git-submodule.sh:1122
+#: git-submodule.sh:1124
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
 msgstr ""
 "  Attention : $display_name ne contient pas les validations $sha1_src et "
 "$sha1_dst"
 
-#: git-submodule.sh:1147
+#: git-submodule.sh:1149
 msgid "blob"
 msgstr "blob"
 
-#: git-submodule.sh:1261
+#: git-submodule.sh:1267
 #, sh-format
 msgid "Failed to recurse into submodule path '$sm_path'"
 msgstr "Échec de parcours dans le chemin du sous-module '$sm_path'"
 
-#: git-submodule.sh:1325
+#: git-submodule.sh:1331
 #, sh-format
 msgid "Synchronizing submodule url for '$displaypath'"
 msgstr "Synchronisation de l'URL sous-module pour '$displaypath'"
 
-#~ msgid "copied:     %s -> %s"
+#~ 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 "ahead "
+#~ msgstr "devant "
+
+#~ 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"
@@ -11050,9 +11287,6 @@ msgstr "Synchronisation de l'URL sous-module pour '$displaypath'"
 #~ msgid "input paths are terminated by a null character"
 #~ msgstr "les chemins en entrée sont terminés par le caractère nul"
 
-#~ msgid "done\n"
-#~ msgstr "fait\n"
-
 #~ msgid ""
 #~ "The following untracked files would NOT be saved but need to be removed "
 #~ "by stash save:"