l10n: it.po: update the Italian translation for v2.23.0
authorAlessandro Menti <alessandro.menti@alessandromenti.it>
Thu, 1 Aug 2019 07:32:52 +0000 (09:32 +0200)
committerAlessandro Menti <alessandro.menti@alessandromenti.it>
Thu, 1 Aug 2019 07:39:42 +0000 (09:39 +0200)
Update the Italian translation for Git v2.23.0 (l10n round 1), as
well as adding some minor localization fixes.

Signed-off-by: Alessandro Menti <alessandro.menti@alessandromenti.it>
po/it.po

index 1be282a..0e151c2 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -11,8 +11,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2019-06-04 08:24+0800\n"
-"PO-Revision-Date: 2019-06-27 20:16+0200\n"
+"POT-Creation-Date: 2019-07-30 09:59+0800\n"
+"PO-Revision-Date: 2019-07-30 18:32+0200\n"
 "Last-Translator: Alessandro Menti <alessandro.menti@alessandromenti.it>\n"
 "Language-Team: Italian <>\n"
 "Language: it\n"
@@ -20,51 +20,51 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 19.04.2\n"
+"X-Generator: Lokalize 19.04.3\n"
 
-#: advice.c:103
+#: advice.c:109
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr "%ssuggerimento: %.*s%s\n"
 
-#: advice.c:156
+#: advice.c:162
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr ""
 "Il cherry picking non è possibile perché ci sono file di cui non è stato "
 "eseguito il merge."
 
-#: advice.c:158
+#: advice.c:164
 msgid "Committing is not possible because you have unmerged files."
 msgstr ""
 "Il commit non è possibile perché ci sono file di cui non è stato eseguito il "
 "merge."
 
-#: advice.c:160
+#: advice.c:166
 msgid "Merging is not possible because you have unmerged files."
 msgstr ""
 "Il merge non è possibile perché ci sono file di cui non è stato eseguito il "
 "merge."
 
-#: advice.c:162
+#: advice.c:168
 msgid "Pulling is not possible because you have unmerged files."
 msgstr ""
 "Il pull non è possibile perché ci sono file di cui non è stato eseguito il "
 "merge."
 
-#: advice.c:164
+#: advice.c:170
 msgid "Reverting is not possible because you have unmerged files."
 msgstr ""
 "Il revert non è possibile perché ci sono file di cui non è stato eseguito il "
 "merge."
 
-#: advice.c:166
+#: advice.c:172
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr ""
 "Impossibile eseguire il %s perché ci sono file di cui non è stato eseguito "
 "il merge."
 
-#: advice.c:174
+#: advice.c:180
 msgid ""
 "Fix them up in the work tree, and then use 'git add/rm <file>'\n"
 "as appropriate to mark resolution and make a commit."
@@ -72,51 +72,65 @@ msgstr ""
 "Correggili nell'albero di lavoro, quindi usa 'git add/rm <file>...' come "
 "appropriato per risolverli ed esegui un commit."
 
-#: advice.c:182
+#: advice.c:188
 msgid "Exiting because of an unresolved conflict."
 msgstr "Esco a causa di un conflitto non risolto."
 
-#: advice.c:187 builtin/merge.c:1320
+#: advice.c:193 builtin/merge.c:1327
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Il merge non è stato concluso (esiste MERGE_HEAD)."
 
-#: advice.c:189
+#: advice.c:195
 msgid "Please, commit your changes before merging."
 msgstr "Esegui il commit delle modifiche prima di eseguire il merge."
 
-#: advice.c:190
+#: advice.c:196
 msgid "Exiting because of unfinished merge."
 msgstr "Esco a causa di un merge non terminato."
 
-#: advice.c:196
+#: advice.c:202
 #, c-format
 msgid ""
-"Note: checking out '%s'.\n"
+"Note: switching to '%s'.\n"
 "\n"
 "You are in 'detached HEAD' state. You can look around, make experimental\n"
 "changes and commit them, and you can discard any commits you make in this\n"
-"state without impacting any branches by performing another checkout.\n"
+"state without impacting any branches by switching back to a branch.\n"
 "\n"
 "If you want to create a new branch to retain commits you create, you may\n"
-"do so (now or later) by using -b with the checkout command again. Example:\n"
+"do so (now or later) by using -c with the switch command. Example:\n"
 "\n"
-"  git checkout -b <new-branch-name>\n"
+"  git switch -c <new-branch-name>\n"
+"\n"
+"Or undo this operation with:\n"
+"\n"
+"  git switch -\n"
+"\n"
+"Turn off this advice by setting config variable advice.detachedHead to "
+"false\n"
 "\n"
 msgstr ""
 "Nota: eseguo il checkout di '%s'.\n"
 "\n"
-"Sei nello stato 'HEAD scollegato'. Puoi dare un'occhiata, apportare "
-"modifiche\n"
-"sperimentali ed eseguirne il commit, e puoi scartare qualunque commit "
-"eseguito\n"
-"in questo stato senza che ciò abbia alcuna influenza sugli altri branch "
-"eseguendo\n"
-"un nuovo checkout.\n"
+"Sei nello stato 'HEAD scollegato'. Puoi dare un'occhiata, apportare"
+" modifiche\n"
+"sperimentali ed eseguirne il commit, e puoi scartare qualunque commit"
+" eseguito\n"
+"in questo stato senza che ciò abbia alcuna influenza sugli altri branch"
+" tornando\n"
+"su un branch.\n"
 "\n"
 "Se vuoi creare un nuovo branch per mantenere i commit creati, puoi farlo\n"
-"(ora o in seguito) rieseguendo il checkout con il parametro -b. Ad esempio:\n"
+"(ora o in seguito) usando l'opzione -c con il comando switch. Ad esempio:\n"
+"\n"
+"  git switch -c <nome nuovo branch>\n"
 "\n"
-"  git checkout -b <nome-nuovo-branch>\n"
+"Oppure puoi annullare quest'operazione con:\n"
+"\n"
+"  git switch -\n"
+"\n"
+"Disattiva questo consiglio impostando la variabile di configurazione\n"
+"advice.detachedHead a false\n"
 "\n"
 
 #: alias.c:50
@@ -127,95 +141,95 @@ msgstr "la riga di comando termina con \\"
 msgid "unclosed quote"
 msgstr "virgolette non chiuse"
 
-#: apply.c:63
+#: apply.c:69
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr "opzione spazi bianchi '%s' non riconosciuta"
 
-#: apply.c:79
+#: apply.c:85
 #, c-format
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "opzione ignora spazi bianchi '%s' non riconosciuta"
 
-#: apply.c:129
+#: apply.c:135
 msgid "--reject and --3way cannot be used together."
 msgstr "--reject e --3way non possono essere usati insieme."
 
-#: apply.c:131
+#: apply.c:137
 msgid "--cached and --3way cannot be used together."
 msgstr "--cached e --3way non possono essere usati insieme."
 
-#: apply.c:134
+#: apply.c:140
 msgid "--3way outside a repository"
 msgstr "--3way al di fuori di un repository"
 
-#: apply.c:145
+#: apply.c:151
 msgid "--index outside a repository"
 msgstr "--index al di fuori di un repository"
 
-#: apply.c:148
+#: apply.c:154
 msgid "--cached outside a repository"
 msgstr "--cached al di fuori di un repository"
 
-#: apply.c:829
+#: apply.c:801
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "Impossibile preparare l'espressione regolare timestamp %s"
 
-#: apply.c:838
+#: apply.c:810
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec ha restituito %d per l'input: %s"
 
-#: apply.c:912
+#: apply.c:884
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "impossibile trovare il nome del file nella patch alla riga %d"
 
-#: apply.c:950
+#: apply.c:922
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 "git apply: git-diff errato - atteso /dev/null, ricevuto %s alla riga %d"
 
-#: apply.c:956
+#: apply.c:928
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr ""
 "git apply: git-diff errato - nuovo nome del file inconsistente alla riga %d"
 
-#: apply.c:957
+#: apply.c:929
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr ""
 "git apply: git-diff errato - vecchio nome del file inconsistente alla riga %d"
 
-#: apply.c:962
+#: apply.c:934
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply: git-diff errato - atteso /dev/null alla riga %d"
 
-#: apply.c:991
+#: apply.c:963
 #, c-format
 msgid "invalid mode on line %d: %s"
-msgstr "modalità non valida alla riga %d: %s"
+msgstr "modo non valido alla riga %d: %s"
 
-#: apply.c:1310
+#: apply.c:1282
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr "righe di intestazione %d e %d inconsistenti"
 
-#: apply.c:1482
+#: apply.c:1460
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "recount: riga inattesa: %.*s"
 
-#: apply.c:1551
+#: apply.c:1529
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "frammento di patch senza intestazione alla riga %d: %.*s"
 
-#: apply.c:1571
+#: apply.c:1551
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -230,110 +244,110 @@ msgstr[1] ""
 "l'intestazione git diff non riporta le informazioni sul file una volta "
 "rimossi %d componenti iniziali del percorso (riga %d)"
 
-#: apply.c:1584
+#: apply.c:1564
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr "l'intestazione git diff non riporta le informazioni sul file (riga %d)"
 
-#: apply.c:1772
+#: apply.c:1752
 msgid "new file depends on old contents"
-msgstr "il nuovo file dipende da contenuti precedenti"
+msgstr "il nuovo file dipende da vecchi contenuti"
 
-#: apply.c:1774
+#: apply.c:1754
 msgid "deleted file still has contents"
 msgstr "il file eliminato ha ancora dei contenuti"
 
-#: apply.c:1808
+#: apply.c:1788
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "patch corrotta alla riga %d"
 
-#: apply.c:1845
+#: apply.c:1825
 #, c-format
 msgid "new file %s depends on old contents"
-msgstr "il nuovo file %s dipende da contenuti precedenti"
+msgstr "il nuovo file %s dipende da vecchi contenuti"
 
-#: apply.c:1847
+#: apply.c:1827
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "il file eliminato %s ha ancora dei contenuti"
 
-#: apply.c:1850
+#: apply.c:1830
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** attenzione: il file %s diventa vuoto ma non è eliminato"
 
-#: apply.c:1997
+#: apply.c:1977
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "patch binaria corrotta alla riga %d: %.*s"
 
-#: apply.c:2034
+#: apply.c:2014
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "patch binaria non riconosciuta alla riga %d"
 
-#: apply.c:2196
+#: apply.c:2176
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "patch con soli contenuti garbage alla riga %d"
 
-#: apply.c:2282
+#: apply.c:2262
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "impossibile leggere il collegamento simbolico %s"
 
-#: apply.c:2286
+#: apply.c:2266
 #, c-format
 msgid "unable to open or read %s"
 msgstr "impossibile aprire o leggere %s"
 
-#: apply.c:2945
+#: apply.c:2925
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "inizio della riga non valido: '%c'"
 
-#: apply.c:3066
+#: apply.c:3046
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] "Applicazione frammento %d riuscita alla riga %d (offset: %d riga)."
 msgstr[1] "Applicazione frammento %d riuscita alla riga %d (offset: %d righe)."
 
-#: apply.c:3078
+#: apply.c:3058
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "Contesto ridotto a (%ld/%ld) per applicare il frammento alla riga %d"
 
-#: apply.c:3084
+#: apply.c:3064
 #, c-format
 msgid ""
 "while searching for:\n"
 "%.*s"
 msgstr ""
-"durante la ricerca per:\n"
+"durante la ricerca di:\n"
 "%.*s"
 
-#: apply.c:3106
+#: apply.c:3086
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "dati della patch binaria mancanti per '%s'"
 
-#: apply.c:3114
+#: apply.c:3094
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 "impossibile applicare una patch binaria al contrario senza l'hunk contrario "
 "per '%s'"
 
-#: apply.c:3161
+#: apply.c:3141
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 "impossibile applicare una patch binaria a '%s' senza la riga d'indice "
 "completa"
 
-#: apply.c:3171
+#: apply.c:3151
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
@@ -341,434 +355,434 @@ msgstr ""
 "la patch si applica a '%s' (%s), che non corrisponde ai contenuti correnti "
 "del file."
 
-#: apply.c:3179
+#: apply.c:3159
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
-msgstr "la patch si applica a un file vuoto '%s' ma non è vuoto"
+msgstr "la patch si applica a un file vuoto '%s' ma il file non è vuoto"
 
-#: apply.c:3197
+#: apply.c:3177
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "impossibile leggere la postimmagine %s necessaria per '%s'"
 
-#: apply.c:3210
+#: apply.c:3190
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "la patch binaria non si applica correttamente a '%s'"
 
-#: apply.c:3216
+#: apply.c:3196
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 "la patch binaria su '%s' crea risultati non corretti (atteso %s, ricevuto %s)"
 
-#: apply.c:3237
+#: apply.c:3217
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "patch non riuscita: %s:%ld"
 
-#: apply.c:3360
+#: apply.c:3340
 #, c-format
 msgid "cannot checkout %s"
 msgstr "impossibile eseguire il checkout di '%s'"
 
-#: apply.c:3412 apply.c:3423 apply.c:3469 midx.c:59 setup.c:279
+#: apply.c:3392 apply.c:3403 apply.c:3449 midx.c:62 setup.c:279
 #, c-format
 msgid "failed to read %s"
 msgstr "lettura di %s non riuscita"
 
-#: apply.c:3420
+#: apply.c:3400
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "lettura di '%s' oltre un collegamento simbolico"
 
-#: apply.c:3449 apply.c:3692
+#: apply.c:3429 apply.c:3672
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "il percorso %s è stato rinominato/eliminato"
 
-#: apply.c:3535 apply.c:3707
+#: apply.c:3515 apply.c:3687
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s: non esiste nell'indice"
 
-#: apply.c:3544 apply.c:3715
+#: apply.c:3524 apply.c:3695
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s: non corrisponde all'indice"
 
-#: apply.c:3579
+#: apply.c:3559
 msgid "repository lacks the necessary blob to fall back on 3-way merge."
 msgstr ""
 "dal repository manca il blob necessario per ripiegare sul merge a tre vie."
 
-#: apply.c:3582
+#: apply.c:3562
 #, c-format
 msgid "Falling back to three-way merge...\n"
 msgstr "Ripiego sul merge a tre vie...\n"
 
-#: apply.c:3598 apply.c:3602
+#: apply.c:3578 apply.c:3582
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr "impossibile leggere i contenuti correnti di '%s'"
 
-#: apply.c:3614
+#: apply.c:3594
 #, c-format
 msgid "Failed to fall back on three-way merge...\n"
 msgstr "Ripiego sul merge a tre vie non riuscito...\n"
 
-#: apply.c:3628
+#: apply.c:3608
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr "Patch applicata a '%s' con conflitti.\n"
 
-#: apply.c:3633
+#: apply.c:3613
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr "Patch '%s' applicata correttamente.\n"
 
-#: apply.c:3659
+#: apply.c:3639
 msgid "removal patch leaves file contents"
 msgstr "la rimozione della patch lascia contenuti del file"
 
-#: apply.c:3732
+#: apply.c:3712
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s: tipo errato"
 
-#: apply.c:3734
+#: apply.c:3714
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s ha il tipo %o, atteso %o"
 
-#: apply.c:3885 apply.c:3887 read-cache.c:830 read-cache.c:856
+#: apply.c:3865 apply.c:3867 read-cache.c:830 read-cache.c:856
 #: read-cache.c:1309
 #, c-format
 msgid "invalid path '%s'"
-msgstr "percorso non valido: %s"
+msgstr "percorso '%s' non valido"
 
-#: apply.c:3943
+#: apply.c:3923
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s: esiste già nell'indice"
 
-#: apply.c:3946
+#: apply.c:3926
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s: esiste già nella directory di lavoro"
 
-#: apply.c:3966
+#: apply.c:3946
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
-msgstr ""
-"la nuova modalità (%o) di %s non corrisponde alla vecchia modalità (%o)"
+msgstr "il nuovo modo (%o) di %s non corrisponde al vecchio modo (%o)"
 
-#: apply.c:3971
+#: apply.c:3951
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
-msgstr ""
-"la nuova modalità (%o) di %s non corrisponde alla vecchia modalità (%o) di %s"
+msgstr "il nuovo modo (%o) di %s non corrisponde al vecchio modo (%o) di %s"
 
-#: apply.c:3991
+#: apply.c:3971
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "il file interessato '%s' si trova oltre un collegamento simbolico"
 
-#: apply.c:3995
+#: apply.c:3975
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: la patch non si applica correttamente"
 
-#: apply.c:4010
+#: apply.c:3990
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Controllo della patch %s in corso..."
 
-#: apply.c:4102
+#: apply.c:4082
 #, c-format
 msgid "sha1 information is lacking or useless for submodule %s"
 msgstr "le informazioni SHA1 per il sottomodulo %s sono mancanti o inutili"
 
-#: apply.c:4109
+#: apply.c:4089
 #, c-format
 msgid "mode change for %s, which is not in current HEAD"
-msgstr "modifica modalità per %s che non è nell'HEAD corrente"
+msgstr "modifica modo per %s che non è nell'HEAD corrente"
 
-#: apply.c:4112
+#: apply.c:4092
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "le informazioni SHA1 sono mancanti o inutili (%s)."
 
-#: apply.c:4117 builtin/checkout.c:257 builtin/reset.c:143
+#: apply.c:4097 builtin/checkout.c:278 builtin/reset.c:143
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "make_cache_entry non riuscito per il percorso '%s'"
 
-#: apply.c:4121
+#: apply.c:4101
 #, c-format
 msgid "could not add %s to temporary index"
 msgstr "impossibile aggiungere %s all'indice temporaneo"
 
-#: apply.c:4131
+#: apply.c:4111
 #, c-format
 msgid "could not write temporary index to %s"
 msgstr "impossibile scrivere l'indice temporaneo in %s"
 
-#: apply.c:4269
+#: apply.c:4249
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "impossibile rimuovere %s dall'indice"
 
-#: apply.c:4303
+#: apply.c:4283
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "patch corrotta per il sottomodulo %s"
 
-#: apply.c:4309
+#: apply.c:4289
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "impossibile eseguire lo stat del file appena creato '%s'"
 
-#: apply.c:4317
+#: apply.c:4297
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr "impossibile creare l'archivio di backup per il file appena creato %s"
 
-#: apply.c:4323 apply.c:4468
+#: apply.c:4303 apply.c:4448
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "impossibile aggiungere la voce della cache per %s"
 
-#: apply.c:4366
+#: apply.c:4346
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "scrittura in '%s' non riuscita"
 
-#: apply.c:4370
+#: apply.c:4350
 #, c-format
 msgid "closing file '%s'"
 msgstr "chiusura del file '%s' in corso"
 
-#: apply.c:4440
+#: apply.c:4420
 #, c-format
 msgid "unable to write file '%s' mode %o"
-msgstr "impossibile scrivere il file '%s' in modalità %o"
+msgstr "impossibile scrivere il file '%s' con modo %o"
 
-#: apply.c:4538
+#: apply.c:4518
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Patch %s applicata correttamente."
 
-#: apply.c:4546
+#: apply.c:4526
 msgid "internal error"
 msgstr "errore interno"
 
-#: apply.c:4549
+#: apply.c:4529
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "Applicazione della patch %%s con %d frammento respinto..."
 msgstr[1] "Applicazione della patch %%s con %d frammenti respinti..."
 
-#: apply.c:4560
+#: apply.c:4540
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "nome file .rej troncato a %.*s.rej"
 
-#: apply.c:4568 builtin/fetch.c:837 builtin/fetch.c:1118
+#: apply.c:4548 builtin/fetch.c:869 builtin/fetch.c:1161
 #, c-format
 msgid "cannot open %s"
 msgstr "impossibile aprire %s"
 
-#: apply.c:4582
+#: apply.c:4562
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Frammento %d applicato correttamente."
 
-#: apply.c:4586
+#: apply.c:4566
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Frammento %d respinto."
 
-#: apply.c:4696
+#: apply.c:4676
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "Patch '%s' ignorata."
 
-#: apply.c:4704
+#: apply.c:4684
 msgid "unrecognized input"
 msgstr "input non riconosciuto"
 
-#: apply.c:4724
+#: apply.c:4704
 msgid "unable to read index file"
 msgstr "impossibile leggere il file index"
 
-#: apply.c:4879
+#: apply.c:4859
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "impossibile aprire la patch '%s': %s"
 
-#: apply.c:4906
+#: apply.c:4886
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "%d errore di spazi bianchi soppresso"
 msgstr[1] "%d errori di spazi bianchi soppressi"
 
-#: apply.c:4912 apply.c:4927
+#: apply.c:4892 apply.c:4907
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] "%d riga aggiunge errori di spazi bianchi."
 msgstr[1] "%d righe aggiungono errori di spazi bianchi."
 
-#: apply.c:4920
+#: apply.c:4900
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] "%d riga applicata dopo la correzione di errori di spazi bianchi."
 msgstr[1] "%d righe applicate dopo la correzione di errori di spazi bianchi."
 
-#: apply.c:4936 builtin/add.c:540 builtin/mv.c:301 builtin/rm.c:390
+#: apply.c:4916 builtin/add.c:540 builtin/mv.c:301 builtin/rm.c:390
 msgid "Unable to write new index file"
 msgstr "Impossibile scrivere il nuovo file index"
 
-#: apply.c:4963 apply.c:4966 builtin/am.c:2210 builtin/am.c:2213
-#: builtin/clone.c:120 builtin/fetch.c:118 builtin/merge.c:271
-#: builtin/pull.c:207 builtin/submodule--helper.c:407
-#: builtin/submodule--helper.c:1366 builtin/submodule--helper.c:1369
-#: builtin/submodule--helper.c:1849 builtin/submodule--helper.c:1852
-#: builtin/submodule--helper.c:2091 git-add--interactive.perl:197
+#: apply.c:4943 apply.c:4946 builtin/am.c:2208 builtin/am.c:2211
+#: builtin/clone.c:123 builtin/fetch.c:128 builtin/merge.c:273
+#: builtin/pull.c:208 builtin/submodule--helper.c:407
+#: builtin/submodule--helper.c:1367 builtin/submodule--helper.c:1370
+#: builtin/submodule--helper.c:1850 builtin/submodule--helper.c:1853
+#: builtin/submodule--helper.c:2092 git-add--interactive.perl:211
 msgid "path"
 msgstr "percorso"
 
-#: apply.c:4964
+#: apply.c:4944
 msgid "don't apply changes matching the given path"
 msgstr "non applicare le modifiche corrispondenti al percorso specificato"
 
-#: apply.c:4967
+#: apply.c:4947
 msgid "apply changes matching the given path"
 msgstr "applica le modifiche corrispondenti al percorso specificato"
 
-#: apply.c:4969 builtin/am.c:2219
+#: apply.c:4949 builtin/am.c:2217
 msgid "num"
 msgstr "num"
 
-#: apply.c:4970
+#: apply.c:4950
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "rimuovi <num> barre iniziali dai percorsi diff tradizionali"
 
-#: apply.c:4973
+#: apply.c:4953
 msgid "ignore additions made by the patch"
 msgstr "ignora le aggiunte create dalla patch"
 
-#: apply.c:4975
+#: apply.c:4955
 msgid "instead of applying the patch, output diffstat for the input"
-msgstr "invece di applicare la patch, mostra l'output di diffstat per l'input"
+msgstr ""
+"invece di applicare la patch, visualizza l'output di diffstat per l'input"
 
-#: apply.c:4979
+#: apply.c:4959
 msgid "show number of added and deleted lines in decimal notation"
-msgstr "mostra il numero di righe aggiunte ed eliminate in notazione decimale"
+msgstr ""
+"visualizza il numero di righe aggiunte ed eliminate in notazione decimale"
 
-#: apply.c:4981
+#: apply.c:4961
 msgid "instead of applying the patch, output a summary for the input"
-msgstr "invece di applicare la patch, mostra un riassunto per l'input"
+msgstr "invece di applicare la patch, visualizza un riassunto per l'input"
 
-#: apply.c:4983
+#: apply.c:4963
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "invece di applicare la patch, verifica se può essere applicata"
 
-#: apply.c:4985
+#: apply.c:4965
 msgid "make sure the patch is applicable to the current index"
 msgstr "assicura che la patch sia applicabile all'indice corrente"
 
-#: apply.c:4987
+#: apply.c:4967
 msgid "mark new files with `git add --intent-to-add`"
 msgstr "contrassegna i nuovi file con `git add --intent-to-add`"
 
-#: apply.c:4989
+#: apply.c:4969
 msgid "apply a patch without touching the working tree"
 msgstr "applica una patch senza modificare l'albero di lavoro"
 
-#: apply.c:4991
+#: apply.c:4971
 msgid "accept a patch that touches outside the working area"
 msgstr ""
 "accetta una patch che apporta modifiche al di fuori dell'area di lavoro"
 
-#: apply.c:4994
+#: apply.c:4974
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "applica anche la patch (da usare con --stat/--summary/--check)"
 
-#: apply.c:4996
+#: apply.c:4976
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "prova un merge a tre vie se la patch non si applica correttamente"
 
-#: apply.c:4998
+#: apply.c:4978
 msgid "build a temporary index based on embedded index information"
 msgstr "compila un index temporaneo basato sulle informazioni indice incluse"
 
-#: apply.c:5001 builtin/checkout-index.c:173 builtin/ls-files.c:524
+#: apply.c:4981 builtin/checkout-index.c:173 builtin/ls-files.c:524
 msgid "paths are separated with NUL character"
 msgstr "i percorsi sono separati con un carattere NUL"
 
-#: apply.c:5003
+#: apply.c:4983
 msgid "ensure at least <n> lines of context match"
-msgstr "assicura almeno <n> righe di contesto corrispondente"
+msgstr "assicura che almeno <n> righe di contesto corrispondano"
 
-#: apply.c:5004 builtin/am.c:2198 builtin/interpret-trailers.c:97
-#: builtin/interpret-trailers.c:99 builtin/interpret-trailers.c:101
-#: builtin/pack-objects.c:3317 builtin/rebase.c:1415
+#: apply.c:4984 builtin/am.c:2196 builtin/interpret-trailers.c:98
+#: builtin/interpret-trailers.c:100 builtin/interpret-trailers.c:102
+#: builtin/pack-objects.c:3319 builtin/rebase.c:1421
 msgid "action"
 msgstr "azione"
 
-#: apply.c:5005
+#: apply.c:4985
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "rileva righe nuove o modificate che hanno errori di spazi bianchi"
 
-#: apply.c:5008 apply.c:5011
+#: apply.c:4988 apply.c:4991
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignora modifiche agli spazi bianchi durante la ricerca dei contesti"
 
-#: apply.c:5014
+#: apply.c:4994
 msgid "apply the patch in reverse"
 msgstr "applica la patch in maniera inversa"
 
-#: apply.c:5016
+#: apply.c:4996
 msgid "don't expect at least one line of context"
 msgstr "non aspettare almeno una riga di contesto"
 
-#: apply.c:5018
+#: apply.c:4998
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "lascia i frammenti respinti nei file *.rej corrispondenti"
 
-#: apply.c:5020
+#: apply.c:5000
 msgid "allow overlapping hunks"
 msgstr "consenti la sovrapposizione dei frammenti"
 
-#: apply.c:5021 builtin/add.c:291 builtin/check-ignore.c:22
-#: builtin/commit.c:1317 builtin/count-objects.c:98 builtin/fsck.c:786
-#: builtin/log.c:2045 builtin/mv.c:123 builtin/read-tree.c:128
+#: apply.c:5001 builtin/add.c:291 builtin/check-ignore.c:22
+#: builtin/commit.c:1337 builtin/count-objects.c:98 builtin/fsck.c:786
+#: builtin/log.c:2085 builtin/mv.c:123 builtin/read-tree.c:128
 msgid "be verbose"
 msgstr "visualizza ulteriori dettagli"
 
-#: apply.c:5023
+#: apply.c:5003
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 "tollera carattere fine riga rilevato erroneamente come mancante alla fine "
 "del file"
 
-#: apply.c:5026
+#: apply.c:5006
 msgid "do not trust the line counts in the hunk headers"
 msgstr ""
 "non fare affidamento sul numero di righe nelle intestazioni dei frammenti"
 
-#: apply.c:5028 builtin/am.c:2207
+#: apply.c:5008 builtin/am.c:2205
 msgid "root"
 msgstr "radice"
 
-#: apply.c:5029
+#: apply.c:5009
 msgid "prepend <root> to all filenames"
-msgstr "anteponi <root> a tutti i nomi file"
+msgstr "anteponi <radice> a tutti i nomi file"
 
 #: archive.c:14
 msgid "git archive [<options>] <tree-ish> [<path>...]"
@@ -809,98 +823,98 @@ msgstr "%s non è un nome oggetto valido"
 msgid "not a tree object: %s"
 msgstr "%s non è un oggetto albero valido"
 
-#: archive.c:424
+#: archive.c:426
 msgid "current working directory is untracked"
 msgstr "la directory di lavoro corrente non è tracciata"
 
-#: archive.c:455
+#: archive.c:457
 msgid "fmt"
 msgstr "fmt"
 
-#: archive.c:455
+#: archive.c:457
 msgid "archive format"
 msgstr "formato archivio"
 
-#: archive.c:456 builtin/log.c:1557
+#: archive.c:458 builtin/log.c:1597
 msgid "prefix"
 msgstr "prefisso"
 
-#: archive.c:457
+#: archive.c:459
 msgid "prepend prefix to each pathname in the archive"
 msgstr "anteponi <prefisso> a ogni nome percorso nell'archivio"
 
-#: archive.c:458 builtin/blame.c:821 builtin/blame.c:822
-#: builtin/commit-tree.c:117 builtin/config.c:129 builtin/fast-export.c:1091
-#: builtin/fast-export.c:1093 builtin/grep.c:895 builtin/hash-object.c:105
+#: archive.c:460 builtin/blame.c:862 builtin/blame.c:874 builtin/blame.c:875
+#: builtin/commit-tree.c:117 builtin/config.c:129 builtin/fast-export.c:1134
+#: builtin/fast-export.c:1136 builtin/grep.c:897 builtin/hash-object.c:105
 #: builtin/ls-files.c:560 builtin/ls-files.c:563 builtin/notes.c:412
 #: builtin/notes.c:578 builtin/read-tree.c:123 parse-options.h:177
 msgid "file"
 msgstr "file"
 
-#: archive.c:459 builtin/archive.c:90
+#: archive.c:461 builtin/archive.c:90
 msgid "write the archive to this file"
 msgstr "scrivi l'archivio in questo file"
 
-#: archive.c:461
+#: archive.c:463
 msgid "read .gitattributes in working directory"
 msgstr "leggi il file .gitattributes nella directory di lavoro"
 
-#: archive.c:462
+#: archive.c:464
 msgid "report archived files on stderr"
 msgstr "elenca i file archiviati sullo standard error"
 
-#: archive.c:463
+#: archive.c:465
 msgid "store only"
 msgstr "salva solamente"
 
-#: archive.c:464
+#: archive.c:466
 msgid "compress faster"
 msgstr "comprimi più velocemente"
 
-#: archive.c:472
+#: archive.c:474
 msgid "compress better"
 msgstr "comprimi meglio"
 
-#: archive.c:475
+#: archive.c:477
 msgid "list supported archive formats"
 msgstr "elenca i formati archivio supportati"
 
-#: archive.c:477 builtin/archive.c:91 builtin/clone.c:110 builtin/clone.c:113
-#: builtin/submodule--helper.c:1378 builtin/submodule--helper.c:1858
+#: archive.c:479 builtin/archive.c:91 builtin/clone.c:113 builtin/clone.c:116
+#: builtin/submodule--helper.c:1379 builtin/submodule--helper.c:1859
 msgid "repo"
 msgstr "repository"
 
-#: archive.c:478 builtin/archive.c:92
+#: archive.c:480 builtin/archive.c:92
 msgid "retrieve the archive from remote repository <repo>"
 msgstr "recupera l'archivio dal repository remoto <repository>"
 
-#: archive.c:479 builtin/archive.c:93 builtin/difftool.c:707
+#: archive.c:481 builtin/archive.c:93 builtin/difftool.c:707
 #: builtin/notes.c:498
 msgid "command"
 msgstr "comando"
 
-#: archive.c:480 builtin/archive.c:94
+#: archive.c:482 builtin/archive.c:94
 msgid "path to the remote git-upload-archive command"
 msgstr "percorso al comando remoto git-upload-archive"
 
-#: archive.c:487
+#: archive.c:489
 msgid "Unexpected option --remote"
 msgstr "Opzione --remote inattesa"
 
-#: archive.c:489
+#: archive.c:491
 msgid "Option --exec can only be used together with --remote"
 msgstr "L'opzione --exec può essere usata solo con --remote"
 
-#: archive.c:491
+#: archive.c:493
 msgid "Unexpected option --output"
 msgstr "Opzione --output inattesa"
 
-#: archive.c:513
+#: archive.c:515
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr "Formato archivio '%s' sconosciuto"
 
-#: archive.c:520
+#: archive.c:522
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr "Argomento non supportato per il formato '%s': -%d"
@@ -913,7 +927,7 @@ msgstr "impossibile eseguire lo streaming del blob %s"
 #: archive-tar.c:260 archive-zip.c:363
 #, c-format
 msgid "unsupported file mode: 0%o (SHA1: %s)"
-msgstr "modalità file non supportata: 0%o (SHA1: %s)"
+msgstr "modo file non supportato: 0%o (SHA1: %s)"
 
 #: archive-tar.c:287 archive-zip.c:353
 #, c-format
@@ -970,7 +984,7 @@ msgid ""
 "Use '\\!' for literal leading exclamation."
 msgstr ""
 "I pattern negativi sono ignorati negli attributi git\n"
-"Usare '\\!' per specificare un punto esclamativo iniziale letteralmente."
+"Usa '\\!' per specificare letteralmente un punto esclamativo iniziale."
 
 #: bisect.c:468
 #, c-format
@@ -1046,12 +1060,12 @@ msgstr "Bisezione: dev'essere testata una base del merge\n"
 msgid "a %s revision is needed"
 msgstr "è richiesta una revisione %s"
 
-#: bisect.c:884 builtin/notes.c:177 builtin/tag.c:248
+#: bisect.c:884 builtin/notes.c:177 builtin/tag.c:254
 #, c-format
 msgid "could not create file '%s'"
 msgstr "impossibile creare il file '%s'"
 
-#: bisect.c:928 builtin/merge.c:146
+#: bisect.c:928 builtin/merge.c:148
 #, c-format
 msgid "could not read file '%s'"
 msgstr "impossibile leggere il file '%s'"
@@ -1093,41 +1107,41 @@ msgstr[0] ""
 msgstr[1] ""
 "Bisezione in corso: %d revisioni rimanenti da testare dopo questa %s\n"
 
-#: blame.c:1794
+#: blame.c:2697
 msgid "--contents and --reverse do not blend well."
 msgstr "--contents e --reverse non sono compatibili."
 
-#: blame.c:1808
+#: blame.c:2711
 msgid "cannot use --contents with final commit object name"
 msgstr "impossibile usare --contents con il nome oggetto del commit finale"
 
-#: blame.c:1829
+#: blame.c:2732
 msgid "--reverse and --first-parent together require specified latest commit"
 msgstr ""
 "le opzioni --reverse e --first-parent se usate insieme richiedono che sia "
 "specificato l'ultimo commit"
 
-#: blame.c:1838 bundle.c:164 ref-filter.c:2077 remote.c:1938 sequencer.c:2030
-#: sequencer.c:4224 builtin/commit.c:1017 builtin/log.c:382 builtin/log.c:940
-#: builtin/log.c:1428 builtin/log.c:1804 builtin/log.c:2094 builtin/merge.c:415
-#: builtin/pack-objects.c:3140 builtin/pack-objects.c:3155
+#: blame.c:2741 bundle.c:167 ref-filter.c:2196 remote.c:1938 sequencer.c:2033
+#: sequencer.c:4348 builtin/commit.c:1020 builtin/log.c:404 builtin/log.c:980
+#: builtin/log.c:1468 builtin/log.c:1844 builtin/log.c:2134 builtin/merge.c:411
+#: builtin/pack-objects.c:3142 builtin/pack-objects.c:3157
 #: builtin/shortlog.c:192
 msgid "revision walk setup failed"
 msgstr "impostazione percorso revisioni non riuscita"
 
-#: blame.c:1856
+#: blame.c:2759
 msgid ""
 "--reverse --first-parent together require range along first-parent chain"
 msgstr ""
 "le opzioni --reverse e --first-parent se usate insieme richiedono che sia "
 "specificato un intervallo nella catena del primo commit genitore"
 
-#: blame.c:1867
+#: blame.c:2770
 #, c-format
 msgid "no such path %s in %s"
 msgstr "il percorso %s in %s non esiste"
 
-#: blame.c:1878
+#: blame.c:2781
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "impossibile leggere il blob %s per il percorso %s"
@@ -1269,12 +1283,12 @@ msgstr "Nome oggetto ambiguo: '%s'."
 msgid "Not a valid branch point: '%s'."
 msgstr "Punto di branch non valido: '%s'."
 
-#: branch.c:359
+#: branch.c:364
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "Il checkout di '%s' è già stato eseguito in '%s'"
 
-#: branch.c:382
+#: branch.c:387
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr "L'HEAD dell'albero di lavoro %s non è aggiornato"
@@ -1289,8 +1303,8 @@ msgstr "'%s' non sembra essere un file bundle v2"
 msgid "unrecognized header: %s%s (%d)"
 msgstr "intestazione non riconosciuta: %s%s (%d)"
 
-#: bundle.c:90 rerere.c:480 rerere.c:690 sequencer.c:2281 sequencer.c:2916
-#: builtin/commit.c:788
+#: bundle.c:90 rerere.c:480 rerere.c:690 sequencer.c:2283 sequencer.c:3024
+#: builtin/commit.c:791
 #, c-format
 msgid "could not open '%s'"
 msgstr "impossibile aprire '%s'"
@@ -1299,60 +1313,64 @@ msgstr "impossibile aprire '%s'"
 msgid "Repository lacks these prerequisite commits:"
 msgstr "Dal repository mancano questi commit richiesti come prerequisito:"
 
-#: bundle.c:194
+#: bundle.c:146
+msgid "need a repository to verify a bundle"
+msgstr "è necessario un repository per verificare un bundle"
+
+#: bundle.c:197
 #, c-format
 msgid "The bundle contains this ref:"
 msgid_plural "The bundle contains these %d refs:"
-msgstr[0] "Il bundle contiene questo ref:"
-msgstr[1] "Il bundle contiene questi %d ref:"
+msgstr[0] "Il bundle contiene questo riferimento:"
+msgstr[1] "Il bundle contiene questi %d riferimenti:"
 
-#: bundle.c:201
+#: bundle.c:204
 msgid "The bundle records a complete history."
-msgstr "Il bundle registra una cronologia completa."
+msgstr "Nel bundle è registrata una cronologia completa."
 
-#: bundle.c:203
+#: bundle.c:206
 #, c-format
 msgid "The bundle requires this ref:"
 msgid_plural "The bundle requires these %d refs:"
-msgstr[0] "Il bundle richiede questo ref:"
-msgstr[1] "Il bundle richiede questi %d ref:"
+msgstr[0] "Il bundle richiede questo riferimento:"
+msgstr[1] "Il bundle richiede questi %d riferimenti:"
 
-#: bundle.c:269
+#: bundle.c:272
 msgid "unable to dup bundle descriptor"
 msgstr "impossibile duplicare il descrittore bundle"
 
-#: bundle.c:276
+#: bundle.c:279
 msgid "Could not spawn pack-objects"
 msgstr "Impossibile avviare pack-objects"
 
-#: bundle.c:287
+#: bundle.c:290
 msgid "pack-objects died"
 msgstr "comando pack-objects morto"
 
-#: bundle.c:329
+#: bundle.c:332
 msgid "rev-list died"
 msgstr "comando rev-list morto"
 
-#: bundle.c:378
+#: bundle.c:381
 #, c-format
 msgid "ref '%s' is excluded by the rev-list options"
-msgstr "il ref '%s' è escluso dalle opzioni di rev-list"
+msgstr "il riferimento '%s' è escluso dalle opzioni di rev-list"
 
-#: bundle.c:457 builtin/log.c:197 builtin/log.c:1709 builtin/shortlog.c:306
+#: bundle.c:460 builtin/log.c:212 builtin/log.c:1749 builtin/shortlog.c:306
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "argomento non riconosciuto: %s"
 
-#: bundle.c:465
+#: bundle.c:468
 msgid "Refusing to create empty bundle."
 msgstr "Mi rifiuto di creare un bundle vuoto."
 
-#: bundle.c:475
+#: bundle.c:478
 #, c-format
 msgid "cannot create '%s'"
 msgstr "impossibile creare '%s'"
 
-#: bundle.c:500
+#: bundle.c:503
 msgid "index-pack died"
 msgstr "comando index-pack morto"
 
@@ -1361,8 +1379,8 @@ msgstr "comando index-pack morto"
 msgid "invalid color value: %.*s"
 msgstr "valore colore non valido: %.*s"
 
-#: commit.c:50 sequencer.c:2697 builtin/am.c:355 builtin/am.c:399
-#: builtin/am.c:1377 builtin/am.c:2022 builtin/replace.c:455
+#: commit.c:50 sequencer.c:2727 builtin/am.c:355 builtin/am.c:399
+#: builtin/am.c:1378 builtin/am.c:2020 builtin/replace.c:455
 #, c-format
 msgid "could not parse %s"
 msgstr "impossibile analizzare %s"
@@ -1372,7 +1390,7 @@ msgstr "impossibile analizzare %s"
 msgid "%s %s is not a commit!"
 msgstr "%s %s non è un commit!"
 
-#: commit.c:193
+#: commit.c:192
 msgid ""
 "Support for <GIT_DIR>/info/grafts is deprecated\n"
 "and will be removed in a future Git version.\n"
@@ -1386,33 +1404,33 @@ msgstr ""
 "Il supporto per <GIT_DIR>/info/graft è deprecato\n"
 "e sarà rimosso in una versione futura di Git.\n"
 "\n"
-"Usare \"git replace --convert-graft-file\"\n"
+"Usa \"git replace --convert-graft-file\"\n"
 "per convertire i graft in ref sostitutivi.\n"
 "\n"
-"Per disabilitare questo messaggio, eseguire\n"
+"Per disabilitare questo messaggio, esegui\n"
 "\"git config advice.graftFileDeprecated false\""
 
-#: commit.c:1128
+#: commit.c:1127
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr "Il commit %s ha una firma GPG non affidabile, presumibilmente di %s."
 
-#: commit.c:1131
+#: commit.c:1130
 #, c-format
 msgid "Commit %s has a bad GPG signature allegedly by %s."
 msgstr "Il commit %s ha una firma GPG non valida presumibilmente di %s."
 
-#: commit.c:1134
+#: commit.c:1133
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "Il commit %s non ha una firma GPG."
 
-#: commit.c:1137
+#: commit.c:1136
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr "Il commit %s ha una firma GPG valida di %s\n"
 
-#: commit.c:1391
+#: commit.c:1390
 msgid ""
 "Warning: commit message did not conform to UTF-8.\n"
 "You may want to amend it after fixing the message, or set the config\n"
@@ -1423,86 +1441,108 @@ msgstr ""
 "la variabile di configurazione i18n.commitencoding alla codifica usata\n"
 "dal tuo progetto.\n"
 
-#: commit-graph.c:105
+#: commit-graph.c:127
 msgid "commit-graph file is too small"
 msgstr "il file grafo dei commit %s è troppo piccolo"
 
-#: commit-graph.c:170
+#: commit-graph.c:192
 #, c-format
 msgid "commit-graph signature %X does not match signature %X"
 msgstr "la firma del grafo dei commit %X non corrisponde alla firma %X"
 
-#: commit-graph.c:177
+#: commit-graph.c:199
 #, c-format
 msgid "commit-graph version %X does not match version %X"
 msgstr "la versione del grafo dei commit %X non corrisponde alla versione %X"
 
-#: commit-graph.c:184
+#: commit-graph.c:206
 #, c-format
 msgid "commit-graph hash version %X does not match version %X"
 msgstr ""
 "la versione hash del grafo dei commit %X non corrisponde alla versione %X"
 
-#: commit-graph.c:207
+#: commit-graph.c:229
 msgid "commit-graph chunk lookup table entry missing; file may be incomplete"
 msgstr ""
 "voce blocco grafo dei commit mancante nella tabella di ricerca; il file "
 "potrebbe non essere completo"
 
-#: commit-graph.c:218
+#: commit-graph.c:240
 #, c-format
 msgid "commit-graph improper chunk offset %08x%08x"
 msgstr "offset blocco grafo dei commit improprio %08x%08x"
 
-#: commit-graph.c:255
+#: commit-graph.c:283
 #, c-format
 msgid "commit-graph chunk id %08x appears multiple times"
 msgstr "l'ID del blocco grafo dei commit %08x compare più volte"
 
-#: commit-graph.c:390
+#: commit-graph.c:347
+msgid "commit-graph has no base graphs chunk"
+msgstr "il grafo dei commit non ha un blocco grafi di base"
+
+#: commit-graph.c:357
+msgid "commit-graph chain does not match"
+msgstr "la catena del grafo dei commit non corrisponde"
+
+#: commit-graph.c:404
+#, c-format
+msgid "invalid commit-graph chain: line '%s' not a hash"
+msgstr "catena grafo dei commit non valida: la riga '%s' non è un hash"
+
+#: commit-graph.c:430
+msgid "unable to find all commit-graph files"
+msgstr "impossibile trovare tutti i file grafo dei commit"
+
+#: commit-graph.c:553 commit-graph.c:613
+msgid "invalid commit position. commit-graph is likely corrupt"
+msgstr ""
+"posizione commit non valida. Il grafo dei commit è probabilmente corrotto"
+
+#: commit-graph.c:574
 #, c-format
 msgid "could not find commit %s"
 msgstr "impossibile trovare il commit %s"
 
-#: commit-graph.c:732 builtin/pack-objects.c:2649
+#: commit-graph.c:1001 builtin/pack-objects.c:2651
 #, c-format
 msgid "unable to get type of object %s"
 msgstr "impossibile recuperare il tipo dell'oggetto %s"
 
-#: commit-graph.c:765
+#: commit-graph.c:1033
 msgid "Loading known commits in commit graph"
 msgstr "Caricamento commit noti nel grafo dei commit in corso"
 
-#: commit-graph.c:781
+#: commit-graph.c:1050
 msgid "Expanding reachable commits in commit graph"
 msgstr "Espansione dei commit raggiungibili nel grafo dei commit in corso"
 
-#: commit-graph.c:793
+#: commit-graph.c:1069
 msgid "Clearing commit marks in commit graph"
 msgstr "Rimozione dei contrassegni commit nel grafo dei commit in corso"
 
-#: commit-graph.c:813
+#: commit-graph.c:1088
 msgid "Computing commit graph generation numbers"
 msgstr "Calcolo numeri generazione del grafo dei commit in corso"
 
-#: commit-graph.c:930
+#: commit-graph.c:1162
 #, c-format
 msgid "Finding commits for commit graph in %d pack"
 msgid_plural "Finding commits for commit graph in %d packs"
 msgstr[0] "Ricerca dei commit per il grafo dei commit in %d pack in corso"
 msgstr[1] "Ricerca dei commit per il grafo dei commit in %d pack in corso"
 
-#: commit-graph.c:943
+#: commit-graph.c:1175
 #, c-format
 msgid "error adding pack %s"
 msgstr "errore durante l'aggiunta del pack %s"
 
-#: commit-graph.c:945
+#: commit-graph.c:1179
 #, c-format
 msgid "error opening index for %s"
 msgstr "errore durante l'apertura dell'indice per %s"
 
-#: commit-graph.c:959
+#: commit-graph.c:1203
 #, c-format
 msgid "Finding commits for commit graph from %d ref"
 msgid_plural "Finding commits for commit graph from %d refs"
@@ -1511,98 +1551,132 @@ msgstr[0] ""
 msgstr[1] ""
 "Ricerca dei commit per il grafo dei commit da %d riferimenti in corso"
 
-#: commit-graph.c:991
+#: commit-graph.c:1237
 msgid "Finding commits for commit graph among packed objects"
 msgstr ""
 "Ricerca dei commit per il grafo dei commit fra gli oggetti nei pack in corso"
 
-#: commit-graph.c:1004
+#: commit-graph.c:1252
 msgid "Counting distinct commits in commit graph"
 msgstr "Conteggio commit distinti nel grafo dei commit in corso"
 
-#: commit-graph.c:1017
-#, c-format
-msgid "the commit graph format cannot write %d commits"
-msgstr ""
-"il formato del grafo dei commit non può essere usato per scrivere %d commit"
-
-#: commit-graph.c:1026
+#: commit-graph.c:1283
 msgid "Finding extra edges in commit graph"
 msgstr "Ricerca degli archi aggiuntivi nel grafo dei commit in corso"
 
-#: commit-graph.c:1050
-msgid "too many commits to write graph"
-msgstr "troppi commit da scrivere nel grafo"
+#: commit-graph.c:1331
+msgid "failed to write correct number of base graph ids"
+msgstr "impossibile scrivere il numero esatto degli ID grafo di base"
 
-#: commit-graph.c:1057 midx.c:819
+#: commit-graph.c:1364 midx.c:811
 #, c-format
 msgid "unable to create leading directories of %s"
 msgstr "impossibile creare le prime directory di %s"
 
-#: commit-graph.c:1097
+#: commit-graph.c:1376 builtin/index-pack.c:306 builtin/repack.c:251
+#, c-format
+msgid "unable to create '%s'"
+msgstr "impossibile creare '%s'"
+
+#: commit-graph.c:1436
 #, c-format
 msgid "Writing out commit graph in %d pass"
 msgid_plural "Writing out commit graph in %d passes"
 msgstr[0] "Scrittura in %d passaggio del grafo dei commit in corso"
 msgstr[1] "Scrittura in %d passaggi del grafo dei commit in corso"
 
-#: commit-graph.c:1162
+#: commit-graph.c:1477
+msgid "unable to open commit-graph chain file"
+msgstr "impossibile aprire il file catena grafo dei commit"
+
+#: commit-graph.c:1489
+msgid "failed to rename base commit-graph file"
+msgstr "impossibile ridenominare il file di base grafo dei commit"
+
+#: commit-graph.c:1509
+msgid "failed to rename temporary commit-graph file"
+msgstr "impossibile ridenominare il file temporaneo grafo dei commit"
+
+#: commit-graph.c:1620
+msgid "Scanning merged commits"
+msgstr "Scansione dei commit sottoposti a merge in corso"
+
+#: commit-graph.c:1631
+#, c-format
+msgid "unexpected duplicate commit id %s"
+msgstr "ID commit duplicato inatteso: %s"
+
+#: commit-graph.c:1656
+msgid "Merging commit-graph"
+msgstr "Merge del grafo dei commit in corso"
+
+#: commit-graph.c:1842
+#, c-format
+msgid "the commit graph format cannot write %d commits"
+msgstr ""
+"il formato del grafo dei commit non può essere usato per scrivere %d commit"
+
+#: commit-graph.c:1853
+msgid "too many commits to write graph"
+msgstr "troppi commit da scrivere nel grafo"
+
+#: commit-graph.c:1943
 msgid "the commit-graph file has incorrect checksum and is likely corrupt"
 msgstr ""
 "il file del grafo dei commit ha un checksum non corretto e probabilmente è "
 "corrotto"
 
-#: commit-graph.c:1172
+#: commit-graph.c:1953
 #, c-format
 msgid "commit-graph has incorrect OID order: %s then %s"
 msgstr "il grafo dei commit ha un ordine OID non corretto: %s seguito da %s"
 
-#: commit-graph.c:1182 commit-graph.c:1197
+#: commit-graph.c:1963 commit-graph.c:1978
 #, c-format
 msgid "commit-graph has incorrect fanout value: fanout[%d] = %u != %u"
 msgstr ""
 "il grafo dei commit ha un valore fanout non corretto: fanout[%d] = %u != %u"
 
-#: commit-graph.c:1189
+#: commit-graph.c:1970
 #, c-format
 msgid "failed to parse commit %s from commit-graph"
 msgstr "impossibile analizzare il commit %s nel grafo dei commit"
 
-#: commit-graph.c:1206
+#: commit-graph.c:1987
 msgid "Verifying commits in commit graph"
 msgstr "Verifica dei commit nel grafo dei commit in corso"
 
-#: commit-graph.c:1219
+#: commit-graph.c:2000
 #, c-format
 msgid "failed to parse commit %s from object database for commit-graph"
 msgstr ""
 "impossibile analizzare il commit %s dal database oggetti per il grafo dei "
 "commit"
 
-#: commit-graph.c:1226
+#: commit-graph.c:2007
 #, c-format
 msgid "root tree OID for commit %s in commit-graph is %s != %s"
 msgstr ""
 "l'OID dell'albero radice per il commit %s nel grafo dei commit è %s != %s"
 
-#: commit-graph.c:1236
+#: commit-graph.c:2017
 #, c-format
 msgid "commit-graph parent list for commit %s is too long"
 msgstr "l'elenco genitori nel grafo dei commit per il commit %s è troppo lungo"
 
-#: commit-graph.c:1242
+#: commit-graph.c:2026
 #, c-format
 msgid "commit-graph parent for %s is %s != %s"
 msgstr "il genitore nel grafo dei commit per %s è %s != %s"
 
-#: commit-graph.c:1255
+#: commit-graph.c:2039
 #, c-format
 msgid "commit-graph parent list for commit %s terminates early"
 msgstr ""
 "l'elenco genitori nel grafo dei commit per il commit %s è finito prima del "
 "previsto"
 
-#: commit-graph.c:1260
+#: commit-graph.c:2044
 #, c-format
 msgid ""
 "commit-graph has generation number zero for commit %s, but non-zero elsewhere"
@@ -1610,7 +1684,7 @@ msgstr ""
 "il grafo dei commit ha un numero generazione zero per il commit %s ma non "
 "pari a zero per gli altri"
 
-#: commit-graph.c:1264
+#: commit-graph.c:2048
 #, c-format
 msgid ""
 "commit-graph has non-zero generation number for commit %s, but zero elsewhere"
@@ -1618,12 +1692,12 @@ msgstr ""
 "il grafo dei commit ha un numero generazione non pari a zero per il commit "
 "%s ma pari a zero per gli altri"
 
-#: commit-graph.c:1279
+#: commit-graph.c:2063
 #, c-format
 msgid "commit-graph generation for commit %s is %u != %u"
 msgstr "il numero generazione nel grafo dei commit per il commit %s è %u != %u"
 
-#: commit-graph.c:1285
+#: commit-graph.c:2069
 #, c-format
 msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
 msgstr ""
@@ -1633,7 +1707,7 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "memoria esaurita"
 
-#: config.c:123
+#: config.c:124
 #, c-format
 msgid ""
 "exceeded maximum include depth (%d) while including\n"
@@ -1648,309 +1722,309 @@ msgstr ""
 "\t%s\n"
 "Ciò può essere dovuto a delle inclusioni circolari."
 
-#: config.c:139
+#: config.c:140
 #, c-format
 msgid "could not expand include path '%s'"
 msgstr "impossibile espandere il percorso di inclusione '%s'"
 
-#: config.c:150
+#: config.c:151
 msgid "relative config includes must come from files"
 msgstr "le inclusioni configurazione relative devono provenire da file"
 
-#: config.c:190
+#: config.c:197
 msgid "relative config include conditionals must come from files"
 msgstr ""
 "i condizionali di inclusione configurazione relativi devono provenire da file"
 
-#: config.c:348
+#: config.c:375
 #, c-format
 msgid "key does not contain a section: %s"
 msgstr "la chiave non contiene una sezione: %s"
 
-#: config.c:354
+#: config.c:381
 #, c-format
 msgid "key does not contain variable name: %s"
 msgstr "la chiave non contiene un nome variabile: %s"
 
-#: config.c:378 sequencer.c:2459
+#: config.c:405 sequencer.c:2463
 #, c-format
 msgid "invalid key: %s"
 msgstr "chiave non valida: %s"
 
-#: config.c:384
+#: config.c:411
 #, c-format
 msgid "invalid key (newline): %s"
 msgstr "chiave non valida (nuova riga): %s"
 
-#: config.c:420 config.c:432
+#: config.c:447 config.c:459
 #, c-format
 msgid "bogus config parameter: %s"
 msgstr "parametro configurazione fittizio: %s"
 
-#: config.c:467
+#: config.c:494
 #, c-format
 msgid "bogus format in %s"
 msgstr "formato fittizio in %s"
 
-#: config.c:793
+#: config.c:820
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr "riga configurazione %d errata nel blob %s"
 
-#: config.c:797
+#: config.c:824
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr "riga configurazione %d errata nel file %s"
 
-#: config.c:801
+#: config.c:828
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr "riga configurazione %d errata nello standard input"
 
-#: config.c:805
+#: config.c:832
 #, c-format
 msgid "bad config line %d in submodule-blob %s"
 msgstr "riga configurazione %d errata nel blob sottomodulo %s"
 
-#: config.c:809
+#: config.c:836
 #, c-format
 msgid "bad config line %d in command line %s"
 msgstr "riga configurazione %d errata nella riga di comando %s"
 
-#: config.c:813
+#: config.c:840
 #, c-format
 msgid "bad config line %d in %s"
 msgstr "riga configurazione %d errata in %s"
 
-#: config.c:952
+#: config.c:977
 msgid "out of range"
 msgstr "fuori intervallo"
 
-#: config.c:952
+#: config.c:977
 msgid "invalid unit"
 msgstr "unità non valida"
 
-#: config.c:958
+#: config.c:978
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr "valore configurazione numerico '%s' errato per '%s': %s"
 
-#: config.c:963
+#: config.c:997
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
 msgstr "valore configurazione numerico '%s' errato per '%s' nel blob %s: %s"
 
-#: config.c:966
+#: config.c:1000
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in file %s: %s"
 msgstr "valore configurazione numerico '%s' errato per '%s' nel file %s: %s"
 
-#: config.c:969
+#: config.c:1003
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
 "valore configurazione numerico '%s' errato per '%s' nello standard input: %s"
 
-#: config.c:972
+#: config.c:1006
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 msgstr ""
 "valore configurazione numerico '%s' errato per '%s' nel blob sottomodulo %s: "
 "%s"
 
-#: config.c:975
+#: config.c:1009
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr ""
 "valore configurazione numerico '%s' errato per '%s' nella riga di comando "
 "%s: %s"
 
-#: config.c:978
+#: config.c:1012
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr "valore configurazione numerico '%s' errato per '%s' in %s: %s"
 
-#: config.c:1073
+#: config.c:1107
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr "espansione directory utente in '%s' non riuscita"
 
-#: config.c:1082
+#: config.c:1116
 #, c-format
 msgid "'%s' for '%s' is not a valid timestamp"
 msgstr "'%s' per '%s' non è un timestamp valido"
 
-#: config.c:1173
+#: config.c:1207
 #, c-format
 msgid "abbrev length out of range: %d"
 msgstr "lunghezza abbreviazione fuori intervallo: %d"
 
-#: config.c:1187 config.c:1198
+#: config.c:1221 config.c:1232
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "livello compressione zlib %d non valido"
 
-#: config.c:1290
+#: config.c:1324
 msgid "core.commentChar should only be one character"
 msgstr "core.commentChar dovrebbe essere composto da un solo carattere"
 
-#: config.c:1323
+#: config.c:1357
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr "modalità non valida per la creazione di un oggetto: %s"
 
-#: config.c:1395
+#: config.c:1429
 #, c-format
 msgid "malformed value for %s"
 msgstr "valore malformato per %s"
 
-#: config.c:1421
+#: config.c:1455
 #, c-format
 msgid "malformed value for %s: %s"
 msgstr "valore malformato per %s: %s"
 
-#: config.c:1422
+#: config.c:1456
 msgid "must be one of nothing, matching, simple, upstream or current"
 msgstr "dev'essere nothing, matching, simple, upstream o current"
 
-#: config.c:1483 builtin/pack-objects.c:3397
+#: config.c:1517 builtin/pack-objects.c:3399
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "livello compressione pack %d non valido"
 
-#: config.c:1604
+#: config.c:1638
 #, c-format
 msgid "unable to load config blob object '%s'"
 msgstr "impossibile caricare l'oggetto blob configurazione '%s'"
 
-#: config.c:1607
+#: config.c:1641
 #, c-format
 msgid "reference '%s' does not point to a blob"
 msgstr "il riferimento '%s' non punta ad un blob"
 
-#: config.c:1624
+#: config.c:1658
 #, c-format
 msgid "unable to resolve config blob '%s'"
 msgstr "impossibile risolvere il blob configurazione '%s'"
 
-#: config.c:1654
+#: config.c:1688
 #, c-format
 msgid "failed to parse %s"
 msgstr "analisi di %s non riuscita"
 
-#: config.c:1710
+#: config.c:1744
 msgid "unable to parse command-line config"
 msgstr "impossibile analizzare la configurazione a riga di comando"
 
-#: config.c:2059
+#: config.c:2093
 msgid "unknown error occurred while reading the configuration files"
 msgstr ""
 "si è verificato un errore imprevisto durante la lettura dei file di "
 "configurazione"
 
-#: config.c:2229
+#: config.c:2263
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s non valido: '%s'"
 
-#: config.c:2272
+#: config.c:2306
 #, c-format
 msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
 msgstr ""
 "valore core.untrackedCache '%s' non valido; utilizzerò il valore predefinito "
 "'keep'"
 
-#: config.c:2298
+#: config.c:2332
 #, c-format
 msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
 msgstr ""
 "il valore splitIndex.maxPercentChange '%d' dovrebbe essere compreso fra 0 e "
 "100"
 
-#: config.c:2344
+#: config.c:2378
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr "impossibile analizzare '%s' dalla configurazione a riga di comando"
 
-#: config.c:2346
+#: config.c:2380
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr "variabile configurazione '%s' errata nel file '%s' alla riga %d"
 
-#: config.c:2427
+#: config.c:2461
 #, c-format
 msgid "invalid section name '%s'"
 msgstr "nome sezione '%s' non valido"
 
-#: config.c:2459
+#: config.c:2493
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s ha più valori"
 
-#: config.c:2488
+#: config.c:2522
 #, c-format
 msgid "failed to write new configuration file %s"
 msgstr "scrittura del nuovo file di configurazione %s non riuscita"
 
-#: config.c:2740 config.c:3064
+#: config.c:2774 config.c:3098
 #, c-format
 msgid "could not lock config file %s"
 msgstr "impossibile bloccare il file di configurazione %s"
 
-#: config.c:2751
+#: config.c:2785
 #, c-format
 msgid "opening %s"
 msgstr "apertura di %s in corso"
 
-#: config.c:2786 builtin/config.c:328
+#: config.c:2820 builtin/config.c:328
 #, c-format
 msgid "invalid pattern: %s"
 msgstr "pattern non valido: %s"
 
-#: config.c:2811
+#: config.c:2845
 #, c-format
 msgid "invalid config file %s"
 msgstr "file di configurazione %s non valido"
 
-#: config.c:2824 config.c:3077
+#: config.c:2858 config.c:3111
 #, c-format
 msgid "fstat on %s failed"
 msgstr "fstat di %s non riuscita"
 
-#: config.c:2835
+#: config.c:2869
 #, c-format
 msgid "unable to mmap '%s'"
 msgstr "impossibile eseguire mmap su '%s'"
 
-#: config.c:2844 config.c:3082
+#: config.c:2878 config.c:3116
 #, c-format
 msgid "chmod on %s failed"
 msgstr "esecuzione chmod su %s non riuscita"
 
-#: config.c:2929 config.c:3179
+#: config.c:2963 config.c:3213
 #, c-format
 msgid "could not write config file %s"
 msgstr "impossibile scrivere il file di configurazione %s"
 
-#: config.c:2963
+#: config.c:2997
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "impossibile impostare '%s' a '%s'"
 
-#: config.c:2965 builtin/remote.c:782
+#: config.c:2999 builtin/remote.c:782
 #, c-format
 msgid "could not unset '%s'"
 msgstr "impossibile eliminare l'impostazione di '%s'"
 
-#: config.c:3055
+#: config.c:3089
 #, c-format
 msgid "invalid section name: %s"
 msgstr "nome sezione non valido: %s"
 
-#: config.c:3222
+#: config.c:3256
 #, c-format
 msgid "missing value for '%s'"
-msgstr "valore mancante per %s"
+msgstr "valore mancante per '%s'"
 
 #: connect.c:61
 msgid "the remote end hung up upon initial contact"
@@ -2031,7 +2105,7 @@ msgstr "impossibile impostare SO_KEEPALIVE sul socket"
 #: connect.c:635 connect.c:698
 #, c-format
 msgid "Looking up %s ... "
-msgstr "Risoluzione di %s in corso..."
+msgstr "Risoluzione di %s in corso... "
 
 #: connect.c:639
 #, c-format
@@ -2046,7 +2120,7 @@ msgid ""
 "Connecting to %s (port %s) ... "
 msgstr ""
 "fatto.\n"
-"Connessione a %s (porta %s) in corso..."
+"Connessione a %s (porta %s) in corso... "
 
 #: connect.c:665 connect.c:742
 #, c-format
@@ -2114,19 +2188,19 @@ msgstr "percorso strano '%s' bloccato"
 msgid "unable to fork"
 msgstr "impossibile eseguire fork"
 
-#: connected.c:85 builtin/fsck.c:221 builtin/prune.c:43
+#: connected.c:86 builtin/fsck.c:221 builtin/prune.c:43
 msgid "Checking connectivity"
 msgstr "Controllo connessione in corso"
 
-#: connected.c:97
+#: connected.c:98
 msgid "Could not run 'git rev-list'"
-msgstr "Non è stato possibile eseguire 'git-rev-list'"
+msgstr "Impossibile eseguire 'git-rev-list'"
 
-#: connected.c:117
+#: connected.c:118
 msgid "failed write to rev-list"
 msgstr "scrittura nella rev-list non riuscita"
 
-#: connected.c:124
+#: connected.c:125
 msgid "failed to close rev-list's stdin"
 msgstr "chiusura standard input della rev-list non riuscita"
 
@@ -2349,7 +2423,7 @@ msgstr ""
 "l'espressione regolare dell'isola tratta dalla configurazione ha troppi "
 "gruppi cattura (massimo=%d)"
 
-#: delta-islands.c:466
+#: delta-islands.c:467
 #, c-format
 msgid "Marked %d islands, done.\n"
 msgstr "Contrassegnate %d isole, fatto.\n"
@@ -2428,36 +2502,36 @@ msgstr ""
 "Trovati errori nella variabile di configurazione 'diff.dirstat':\n"
 "%s"
 
-#: diff.c:4210
+#: diff.c:4215
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "processo esterno diff morto, mi fermo a %s"
 
-#: diff.c:4555
+#: diff.c:4560
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr ""
 "le opzioni --name-only, --name-status, --check e -s sono mutuamente esclusive"
 
-#: diff.c:4558
+#: diff.c:4563
 msgid "-G, -S and --find-object are mutually exclusive"
 msgstr "le opzioni -G, -S e --find-object sono mutuamente esclusive"
 
-#: diff.c:4636
+#: diff.c:4641
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow richiede esattamente uno specificatore percorso"
 
-#: diff.c:4684
+#: diff.c:4689
 #, c-format
 msgid "invalid --stat value: %s"
 msgstr "valore non valido per --stat: %s"
 
-#: diff.c:4689 diff.c:4694 diff.c:4699 diff.c:4704 diff.c:5217
+#: diff.c:4694 diff.c:4699 diff.c:4704 diff.c:4709 diff.c:5222
 #: parse-options.c:199 parse-options.c:203
 #, c-format
 msgid "%s expects a numerical value"
 msgstr "%s richiede un valore numerico"
 
-#: diff.c:4721
+#: diff.c:4726
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -2466,42 +2540,42 @@ msgstr ""
 "Analisi del parametro dell'opzione --dirstat/-X non riuscita:\n"
 "%s"
 
-#: diff.c:4806
+#: diff.c:4811
 #, c-format
 msgid "unknown change class '%c' in --diff-filter=%s"
 msgstr "classe modifica '%c' sconosciuta in --diff-filter=%s"
 
-#: diff.c:4830
+#: diff.c:4835
 #, c-format
 msgid "unknown value after ws-error-highlight=%.*s"
 msgstr "valore sconosciuto dopo ws-error-highlight=%.*s"
 
-#: diff.c:4844
+#: diff.c:4849
 #, c-format
 msgid "unable to resolve '%s'"
 msgstr "impossibile risolvere '%s'"
 
-#: diff.c:4894 diff.c:4900
+#: diff.c:4899 diff.c:4905
 #, c-format
 msgid "%s expects <n>/<m> form"
 msgstr "%s richiede il formato <n>/<m>"
 
-#: diff.c:4912
+#: diff.c:4917
 #, c-format
 msgid "%s expects a character, got '%s'"
 msgstr "%s richiede un carattere, ricevuto '%s'"
 
-#: diff.c:4933
+#: diff.c:4938
 #, c-format
 msgid "bad --color-moved argument: %s"
 msgstr "argomento --color-moved errato: %s"
 
-#: diff.c:4952
+#: diff.c:4957
 #, c-format
 msgid "invalid mode '%s' in --color-moved-ws"
 msgstr "modo non valido '%s' in --color-moved-ws"
 
-#: diff.c:4992
+#: diff.c:4997
 msgid ""
 "option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
 "\"histogram\""
@@ -2509,151 +2583,151 @@ msgstr ""
 "l'opzione diff-algorithm accetta i valori \"myers\", \"minimal\", \"patience"
 "\" e \"histogram\""
 
-#: diff.c:5028 diff.c:5048
+#: diff.c:5033 diff.c:5053
 #, c-format
 msgid "invalid argument to %s"
 msgstr "argomento non valido per %s"
 
-#: diff.c:5186
+#: diff.c:5191
 #, c-format
 msgid "failed to parse --submodule option parameter: '%s'"
 msgstr "analisi del parametro dell'opzione --submodule non riuscita: '%s'"
 
-#: diff.c:5242
+#: diff.c:5247
 #, c-format
 msgid "bad --word-diff argument: %s"
 msgstr "argomento --word-diff errato: %s"
 
-#: diff.c:5265
+#: diff.c:5270
 msgid "Diff output format options"
 msgstr "Opzioni formato output diff"
 
-#: diff.c:5267 diff.c:5273
+#: diff.c:5272 diff.c:5278
 msgid "generate patch"
 msgstr "genera patch"
 
-#: diff.c:5270 builtin/log.c:167
+#: diff.c:5275 builtin/log.c:182
 msgid "suppress diff output"
 msgstr "non visualizzare l'output del diff"
 
-#: diff.c:5275 diff.c:5389 diff.c:5396
+#: diff.c:5280 diff.c:5394 diff.c:5401
 msgid "<n>"
 msgstr "<n>"
 
-#: diff.c:5276 diff.c:5279
+#: diff.c:5281 diff.c:5284
 msgid "generate diffs with <n> lines context"
 msgstr "genera diff con <n> righe di contesto"
 
-#: diff.c:5281
+#: diff.c:5286
 msgid "generate the diff in raw format"
 msgstr "genera il diff in formato grezzo"
 
-#: diff.c:5284
+#: diff.c:5289
 msgid "synonym for '-p --raw'"
 msgstr "sinonimo di '-p --raw'"
 
-#: diff.c:5288
+#: diff.c:5293
 msgid "synonym for '-p --stat'"
 msgstr "sinonimo di '-p --stat'"
 
-#: diff.c:5292
+#: diff.c:5297
 msgid "machine friendly --stat"
 msgstr "--stat leggibile da una macchina"
 
-#: diff.c:5295
+#: diff.c:5300
 msgid "output only the last line of --stat"
 msgstr "emetti in output solo l'ultima riga di --stat"
 
-#: diff.c:5297 diff.c:5305
+#: diff.c:5302 diff.c:5310
 msgid "<param1,param2>..."
 msgstr "<parametro1,parametro2>..."
 
-#: diff.c:5298
+#: diff.c:5303
 msgid ""
 "output the distribution of relative amount of changes for each sub-directory"
 msgstr ""
 "emetti in output la distribuzione del numero di modifiche relativo a ogni "
 "sottodirectory"
 
-#: diff.c:5302
+#: diff.c:5307
 msgid "synonym for --dirstat=cumulative"
 msgstr "sinonimo di --dirstat=cumulative"
 
-#: diff.c:5306
+#: diff.c:5311
 msgid "synonym for --dirstat=files,param1,param2..."
 msgstr "sinonimo di --dirstat=files,parametro1,parametro2..."
 
-#: diff.c:5310
+#: diff.c:5315
 msgid "warn if changes introduce conflict markers or whitespace errors"
 msgstr ""
 "avvisa se le modifiche introducono marcatori conflitto o errori spazi bianchi"
 
-#: diff.c:5313
+#: diff.c:5318
 msgid "condensed summary such as creations, renames and mode changes"
 msgstr ""
 "riassunto conciso (ad es. elementi creati, ridenominati e modifiche modi)"
 
-#: diff.c:5316
+#: diff.c:5321
 msgid "show only names of changed files"
 msgstr "visualizza solo i nomi dei file modificati"
 
-#: diff.c:5319
+#: diff.c:5324
 msgid "show only names and status of changed files"
 msgstr "visualizza solo i nomi e lo stato dei file modificati"
 
-#: diff.c:5321
+#: diff.c:5326
 msgid "<width>[,<name-width>[,<count>]]"
 msgstr "<ampiezza>[,<ampiezza nome>[,<numero>]]"
 
-#: diff.c:5322
+#: diff.c:5327
 msgid "generate diffstat"
 msgstr "genera diffstat"
 
-#: diff.c:5324 diff.c:5327 diff.c:5330
+#: diff.c:5329 diff.c:5332 diff.c:5335
 msgid "<width>"
 msgstr "<ampiezza>"
 
-#: diff.c:5325
+#: diff.c:5330
 msgid "generate diffstat with a given width"
 msgstr "genera il diffstat con un'ampiezza specificata"
 
-#: diff.c:5328
+#: diff.c:5333
 msgid "generate diffstat with a given name width"
 msgstr "genera il diffstat con un'ampiezza nomi specificata"
 
-#: diff.c:5331
+#: diff.c:5336
 msgid "generate diffstat with a given graph width"
 msgstr "genera il diffstat con un'ampiezza grafo specificata"
 
-#: diff.c:5333
+#: diff.c:5338
 msgid "<count>"
 msgstr "<numero>"
 
-#: diff.c:5334
+#: diff.c:5339
 msgid "generate diffstat with limited lines"
 msgstr "genera il diffstat con righe limitate"
 
-#: diff.c:5337
+#: diff.c:5342
 msgid "generate compact summary in diffstat"
 msgstr "genera riassunto conciso nel diffstat"
 
-#: diff.c:5340
+#: diff.c:5345
 msgid "output a binary diff that can be applied"
 msgstr "stampa in output un diff binario che può essere applicato"
 
-#: diff.c:5343
+#: diff.c:5348
 msgid "show full pre- and post-image object names on the \"index\" lines"
 msgstr "visualizza i nomi oggetto pre e post immagine nelle righe \"indice\""
 
-#: diff.c:5345
+#: diff.c:5350
 msgid "show colored diff"
 msgstr "visualizza diff colorato"
 
-#: diff.c:5346
+#: diff.c:5351
 msgid "<kind>"
 msgstr "<tipo>"
 
-#: diff.c:5347
+#: diff.c:5352
 msgid ""
 "highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
 "diff"
@@ -2661,7 +2735,7 @@ msgstr ""
 "evidenzia gli errori di spazi bianchi nelle righe 'contesto', 'vecchie' o "
 "'nuove' nel diff"
 
-#: diff.c:5350
+#: diff.c:5355
 msgid ""
 "do not munge pathnames and use NULs as output field terminators in --raw or "
 "--numstat"
@@ -2669,91 +2743,91 @@ msgstr ""
 "non rimuovere i nomi percorso e usare caratteri NUL come terminatori campo "
 "in --raw o --numstat"
 
-#: diff.c:5353 diff.c:5356 diff.c:5359 diff.c:5465
+#: diff.c:5358 diff.c:5361 diff.c:5364 diff.c:5470
 msgid "<prefix>"
 msgstr "<prefisso>"
 
-#: diff.c:5354
+#: diff.c:5359
 msgid "show the given source prefix instead of \"a/\""
 msgstr "visualizza il prefisso sorgente specificato invece di \"a/\""
 
-#: diff.c:5357
+#: diff.c:5362
 msgid "show the given destination prefix instead of \"b/\""
 msgstr "visualizza il prefisso destinazione specificato invece di \"b/\""
 
-#: diff.c:5360
+#: diff.c:5365
 msgid "prepend an additional prefix to every line of output"
 msgstr "anteponi un prefisso aggiuntivo ad ogni riga dell'output"
 
-#: diff.c:5363
+#: diff.c:5368
 msgid "do not show any source or destination prefix"
 msgstr "non visualizzare alcun prefisso sorgente o destinazione"
 
-#: diff.c:5366
+#: diff.c:5371
 msgid "show context between diff hunks up to the specified number of lines"
 msgstr ""
 "visualizza il contesto tra gli hunk del diff fino al numero di righe "
 "specificato"
 
-#: diff.c:5370 diff.c:5375 diff.c:5380
+#: diff.c:5375 diff.c:5380 diff.c:5385
 msgid "<char>"
 msgstr "<carattere>"
 
-#: diff.c:5371
+#: diff.c:5376
 msgid "specify the character to indicate a new line instead of '+'"
 msgstr "specifica il carattere che indica una nuova riga al posto di '+'"
 
-#: diff.c:5376
+#: diff.c:5381
 msgid "specify the character to indicate an old line instead of '-'"
 msgstr "specifica il carattere che indica una vecchia riga al posto di '-'"
 
-#: diff.c:5381
+#: diff.c:5386
 msgid "specify the character to indicate a context instead of ' '"
 msgstr "specifica il carattere che indica un contesto al posto di ' '"
 
-#: diff.c:5384
+#: diff.c:5389
 msgid "Diff rename options"
 msgstr "Opzioni rinominazione diff"
 
-#: diff.c:5385
+#: diff.c:5390
 msgid "<n>[/<m>]"
 msgstr "<n>[/<m>]"
 
-#: diff.c:5386
+#: diff.c:5391
 msgid "break complete rewrite changes into pairs of delete and create"
 msgstr ""
 "spezza modifiche di riscrittura completa in coppie eliminazione/creazione"
 
-#: diff.c:5390
+#: diff.c:5395
 msgid "detect renames"
 msgstr "rileva le ridenominazioni"
 
-#: diff.c:5394
+#: diff.c:5399
 msgid "omit the preimage for deletes"
 msgstr "ometti la preimmagine per le eliminazioni"
 
-#: diff.c:5397
+#: diff.c:5402
 msgid "detect copies"
 msgstr "rileva le copie"
 
-#: diff.c:5401
+#: diff.c:5406
 msgid "use unmodified files as source to find copies"
 msgstr "usa file non modificati come sorgente per trovare copie"
 
-#: diff.c:5403
+#: diff.c:5408
 msgid "disable rename detection"
 msgstr "disabilita rilevamento ridenominazione"
 
-#: diff.c:5406
+#: diff.c:5411
 msgid "use empty blobs as rename source"
 msgstr "usa blob vuoti come sorgente ridenominazione"
 
-#: diff.c:5408
+#: diff.c:5413
 msgid "continue listing the history of a file beyond renames"
 msgstr ""
 "continua a elencare la cronologia di un file al di là delle ridenominazioni"
 
-#: diff.c:5411
+#: diff.c:5416
 msgid ""
 "prevent rename/copy detection if the number of rename/copy targets exceeds "
 "given limit"
@@ -2761,159 +2835,159 @@ msgstr ""
 "impedisci il rilevamento ridenominazione/copia se il numero delle "
 "destinazioni ridenominazione/copia eccede il limite specificato"
 
-#: diff.c:5413
+#: diff.c:5418
 msgid "Diff algorithm options"
 msgstr "Opzioni algoritmo diff"
 
-#: diff.c:5415
+#: diff.c:5420
 msgid "produce the smallest possible diff"
 msgstr "produci il diff più piccolo possibile"
 
-#: diff.c:5418
+#: diff.c:5423
 msgid "ignore whitespace when comparing lines"
 msgstr "ignora gli spazi bianchi durante il confronto delle righe"
 
-#: diff.c:5421
+#: diff.c:5426
 msgid "ignore changes in amount of whitespace"
 msgstr "ignora le modifiche al numero degli spazi bianchi"
 
-#: diff.c:5424
+#: diff.c:5429
 msgid "ignore changes in whitespace at EOL"
 msgstr "ignora modifiche agli spazi bianchi a fine riga"
 
-#: diff.c:5427
+#: diff.c:5432
 msgid "ignore carrier-return at the end of line"
 msgstr "ignora carattere ritorno a capo a fine riga"
 
-#: diff.c:5430
+#: diff.c:5435
 msgid "ignore changes whose lines are all blank"
 msgstr "ignora modifiche che riguardano solo righe vuote"
 
-#: diff.c:5433
+#: diff.c:5438
 msgid "heuristic to shift diff hunk boundaries for easy reading"
 msgstr ""
 "euristica per spostare i limiti degli hunk nel diff per una lettura agevole"
 
-#: diff.c:5436
+#: diff.c:5441
 msgid "generate diff using the \"patience diff\" algorithm"
 msgstr "genera il diff usando l'algoritmo \"patience diff\""
 
-#: diff.c:5440
+#: diff.c:5445
 msgid "generate diff using the \"histogram diff\" algorithm"
 msgstr "genera il diff usando l'algoritmo \"histogram diff\""
 
-#: diff.c:5442
+#: diff.c:5447
 msgid "<algorithm>"
 msgstr "<algoritmo>"
 
-#: diff.c:5443
+#: diff.c:5448
 msgid "choose a diff algorithm"
 msgstr "seleziona un algoritmo diff"
 
-#: diff.c:5445
+#: diff.c:5450
 msgid "<text>"
 msgstr "<testo>"
 
-#: diff.c:5446
+#: diff.c:5451
 msgid "generate diff using the \"anchored diff\" algorithm"
 msgstr "genera il diff usando l'algoritmo \"anchored diff\""
 
-#: diff.c:5448 diff.c:5457 diff.c:5460
+#: diff.c:5453 diff.c:5462 diff.c:5465
 msgid "<mode>"
 msgstr "<modalità>"
 
-#: diff.c:5449
+#: diff.c:5454
 msgid "show word diff, using <mode> to delimit changed words"
 msgstr ""
 "visualizza il diff parola per parola usando <modalità> per delimitare le "
 "parole modificate"
 
-#: diff.c:5451 diff.c:5454 diff.c:5499
+#: diff.c:5456 diff.c:5459 diff.c:5504
 msgid "<regex>"
 msgstr "<espressione regolare>"
 
-#: diff.c:5452
+#: diff.c:5457
 msgid "use <regex> to decide what a word is"
 msgstr "usa <espressione regolare> per decidere cosa costituisce una parola"
 
-#: diff.c:5455
+#: diff.c:5460
 msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
 msgstr ""
 "equivalente di --word-diff=color --word-diff-regex=<espressione regolare>"
 
-#: diff.c:5458
+#: diff.c:5463
 msgid "moved lines of code are colored differently"
 msgstr "le righe di codice spostate sono colorate in modo diverso"
 
-#: diff.c:5461
+#: diff.c:5466
 msgid "how white spaces are ignored in --color-moved"
 msgstr "modo in cui sono ignorati gli spazi bianchi in --color-moved"
 
-#: diff.c:5464
+#: diff.c:5469
 msgid "Other diff options"
 msgstr "Altre opzioni diff"
 
-#: diff.c:5466
+#: diff.c:5471
 msgid "when run from subdir, exclude changes outside and show relative paths"
 msgstr ""
 "se eseguito da una sottodirectory, escludi le modifiche esterne ad essa e "
 "visualizza i percorsi relativi"
 
-#: diff.c:5470
+#: diff.c:5475
 msgid "treat all files as text"
 msgstr "tratta tutti i file come se fossero di testo"
 
-#: diff.c:5472
+#: diff.c:5477
 msgid "swap two inputs, reverse the diff"
 msgstr "scambia i due input, genera un diff al contrario"
 
-#: diff.c:5474
+#: diff.c:5479
 msgid "exit with 1 if there were differences, 0 otherwise"
 msgstr "esci con codice 1 se ci sono differenze, con 0 altrimenti"
 
-#: diff.c:5476
+#: diff.c:5481
 msgid "disable all output of the program"
 msgstr "disabilita l'intero output del programma"
 
-#: diff.c:5478
+#: diff.c:5483
 msgid "allow an external diff helper to be executed"
 msgstr "consenti l'esecuzione di un helper diff esterno"
 
-#: diff.c:5480
+#: diff.c:5485
 msgid "run external text conversion filters when comparing binary files"
 msgstr ""
 "esegui filtri di conversione in testo esterni quando si confrontano file "
 "binari"
 
-#: diff.c:5482
+#: diff.c:5487
 msgid "<when>"
 msgstr "<quando>"
 
-#: diff.c:5483
+#: diff.c:5488
 msgid "ignore changes to submodules in the diff generation"
 msgstr "ignora le modifiche ai sottomoduli durante la generazione del diff"
 
-#: diff.c:5486
+#: diff.c:5491
 msgid "<format>"
 msgstr "<formato>"
 
-#: diff.c:5487
+#: diff.c:5492
 msgid "specify how differences in submodules are shown"
-msgstr "specifica come verranno visualizzare le differenze nei sottomoduli"
+msgstr "specifica come verranno visualizzate le differenze nei sottomoduli"
 
-#: diff.c:5491
+#: diff.c:5496
 msgid "hide 'git add -N' entries from the index"
 msgstr "nascondi le voci 'git add -N' nell'indice"
 
-#: diff.c:5494
+#: diff.c:5499
 msgid "treat 'git add -N' entries as real in the index"
 msgstr "tratta le voci 'git add -N' come reali nell'indice"
 
-#: diff.c:5496
+#: diff.c:5501
 msgid "<string>"
 msgstr "<stringa>"
 
-#: diff.c:5497
+#: diff.c:5502
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "string"
@@ -2921,7 +2995,7 @@ msgstr ""
 "cerca differenze che modificano il numero di occorrenze della stringa "
 "specificata"
 
-#: diff.c:5500
+#: diff.c:5505
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "regex"
@@ -2929,24 +3003,24 @@ msgstr ""
 "cerca differenze che modificano il numero di occorrenze dell'espressione "
 "regolare specificata"
 
-#: diff.c:5503
+#: diff.c:5508
 msgid "show all changes in the changeset with -S or -G"
 msgstr "visualizza tutte le modifiche nel changeset con -S o -G"
 
-#: diff.c:5506
+#: diff.c:5511
 msgid "treat <string> in -S as extended POSIX regular expression"
 msgstr ""
 "tratta la <stringa> nell'opzione -S come un'espressione regolare POSIX estesa"
 
-#: diff.c:5509
+#: diff.c:5514
 msgid "control the order in which files appear in the output"
 msgstr "controlla l'ordine con cui i file appariranno nell'output"
 
-#: diff.c:5510
+#: diff.c:5515
 msgid "<object-id>"
 msgstr "<ID oggetto>"
 
-#: diff.c:5511
+#: diff.c:5516
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "object"
@@ -2954,34 +3028,34 @@ msgstr ""
 "cerca differenze che modificano il numero di occorrenze dell'oggetto "
 "specificato"
 
-#: diff.c:5513
+#: diff.c:5518
 msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
 msgstr "[(A|C|D|M|R|T|U|X|B)...[*]]"
 
-#: diff.c:5514
+#: diff.c:5519
 msgid "select files by diff type"
 msgstr "seleziona file in base al tipo diff"
 
-#: diff.c:5516
+#: diff.c:5521
 msgid "<file>"
 msgstr "<file>"
 
-#: diff.c:5517
+#: diff.c:5522
 msgid "Output to a specific file"
 msgstr "Salva l'output in un file specifico"
 
-#: diff.c:6150
+#: diff.c:6177
 msgid "inexact rename detection was skipped due to too many files."
 msgstr ""
 "il rilevamento ridenominazione non esatta è stato omesso per la presenza di "
 "troppi file."
 
-#: diff.c:6153
+#: diff.c:6180
 msgid "only found copies from modified paths due to too many files."
 msgstr ""
 "trovate solo copie dai percorsi modificati per la presenza di troppi file."
 
-#: diff.c:6156
+#: diff.c:6183
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -3087,32 +3161,32 @@ msgstr "impossibile scrivere sul remoto"
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc richiede multi_ack_detailed"
 
-#: fetch-pack.c:360 fetch-pack.c:1271
+#: fetch-pack.c:360 fetch-pack.c:1284
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "riga shallow non valida: '%s'"
 
-#: fetch-pack.c:366 fetch-pack.c:1277
+#: fetch-pack.c:366 fetch-pack.c:1290
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "riga unshallow non valida: '%s'"
 
-#: fetch-pack.c:368 fetch-pack.c:1279
+#: fetch-pack.c:368 fetch-pack.c:1292
 #, c-format
 msgid "object not found: %s"
 msgstr "oggetto non trovato: %s"
 
-#: fetch-pack.c:371 fetch-pack.c:1282
+#: fetch-pack.c:371 fetch-pack.c:1295
 #, c-format
 msgid "error in object: %s"
 msgstr "errore nell'oggetto: %s"
 
-#: fetch-pack.c:373 fetch-pack.c:1284
+#: fetch-pack.c:373 fetch-pack.c:1297
 #, c-format
 msgid "no shallow found: %s"
 msgstr "nessuno shallow trovato: %s"
 
-#: fetch-pack.c:376 fetch-pack.c:1288
+#: fetch-pack.c:376 fetch-pack.c:1301
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "attesi shallow/unshallow, ricevuto %s"
@@ -3131,7 +3205,7 @@ msgstr "commit non valido: %s"
 msgid "giving up"
 msgstr "smetto di provare"
 
-#: fetch-pack.c:477 progress.c:284
+#: fetch-pack.c:477 progress.c:277
 msgid "done"
 msgstr "fatto"
 
@@ -3174,155 +3248,131 @@ msgstr "%s non riuscito"
 msgid "error in sideband demultiplexer"
 msgstr "errore nel demultiplexer della banda laterale"
 
-#: fetch-pack.c:906
-msgid "Server does not support shallow clients"
-msgstr "Il server non supporta client shallow"
-
-#: fetch-pack.c:910
-msgid "Server supports multi_ack_detailed"
-msgstr "Il server supporta multi_ack_detailes"
-
-#: fetch-pack.c:913
-msgid "Server supports no-done"
-msgstr "Il server supporta no-done"
-
-#: fetch-pack.c:919
-msgid "Server supports multi_ack"
-msgstr "Il server supporta multi_ack"
-
-#: fetch-pack.c:923
-msgid "Server supports side-band-64k"
-msgstr "Il server supporta side-band-64k"
-
-#: fetch-pack.c:927
-msgid "Server supports side-band"
-msgstr "Il server supporta side-band"
-
-#: fetch-pack.c:931
-msgid "Server supports allow-tip-sha1-in-want"
-msgstr "Il server supporta allow-tip-sha1-in-want"
-
-#: fetch-pack.c:935
-msgid "Server supports allow-reachable-sha1-in-want"
-msgstr "Il server supporta allow-reachable-sha1-in-want"
-
-#: fetch-pack.c:945
-msgid "Server supports ofs-delta"
-msgstr "Il server supporta ofs-delta"
-
-#: fetch-pack.c:951 fetch-pack.c:1144
-msgid "Server supports filter"
-msgstr "Il server supporta filter"
-
-#: fetch-pack.c:959
+#: fetch-pack.c:908
 #, c-format
 msgid "Server version is %.*s"
 msgstr "La versione del server è %.*s"
 
-#: fetch-pack.c:965
+#: fetch-pack.c:913 fetch-pack.c:919 fetch-pack.c:922 fetch-pack.c:928
+#: fetch-pack.c:932 fetch-pack.c:936 fetch-pack.c:940 fetch-pack.c:944
+#: fetch-pack.c:948 fetch-pack.c:952 fetch-pack.c:956 fetch-pack.c:960
+#: fetch-pack.c:966 fetch-pack.c:972 fetch-pack.c:977 fetch-pack.c:982
+#, c-format
+msgid "Server supports %s"
+msgstr "Il server supporta %s"
+
+#: fetch-pack.c:915
+msgid "Server does not support shallow clients"
+msgstr "Il server non supporta client shallow"
+
+#: fetch-pack.c:975
 msgid "Server does not support --shallow-since"
 msgstr "Il server non supporta --shallow-since"
 
-#: fetch-pack.c:969
+#: fetch-pack.c:980
 msgid "Server does not support --shallow-exclude"
 msgstr "Il server non supporta --shallow-exclude"
 
-#: fetch-pack.c:971
+#: fetch-pack.c:984
 msgid "Server does not support --deepen"
 msgstr "Il server non supporta --deepen"
 
-#: fetch-pack.c:988
+#: fetch-pack.c:1001
 msgid "no common commits"
 msgstr "nessun commit in comune"
 
-#: fetch-pack.c:1000 fetch-pack.c:1449
+#: fetch-pack.c:1013 fetch-pack.c:1462
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack: recupero non riuscito."
 
-#: fetch-pack.c:1138
+#: fetch-pack.c:1151
 msgid "Server does not support shallow requests"
 msgstr "Il server non supporta le richieste shallow"
 
-#: fetch-pack.c:1171
+#: fetch-pack.c:1157
+msgid "Server supports filter"
+msgstr "Il server supporta filter"
+
+#: fetch-pack.c:1184
 msgid "unable to write request to remote"
 msgstr "impossibile scrivere la richiesta sul remoto"
 
-#: fetch-pack.c:1189
+#: fetch-pack.c:1202
 #, c-format
 msgid "error reading section header '%s'"
 msgstr "errore durante la lettura dell'intestazione di sezione '%s'"
 
-#: fetch-pack.c:1195
+#: fetch-pack.c:1208
 #, c-format
 msgid "expected '%s', received '%s'"
 msgstr "atteso '%s', ricevuto '%s'"
 
-#: fetch-pack.c:1234
+#: fetch-pack.c:1247
 #, c-format
 msgid "unexpected acknowledgment line: '%s'"
 msgstr "riga di conferma inattesa: '%s'"
 
-#: fetch-pack.c:1239
+#: fetch-pack.c:1252
 #, c-format
 msgid "error processing acks: %d"
 msgstr "errore durante l'elaborazione degli ack: %d"
 
-#: fetch-pack.c:1249
+#: fetch-pack.c:1262
 msgid "expected packfile to be sent after 'ready'"
 msgstr "ci si attendeva che il packfile fosse inviato dopo 'ready'"
 
-#: fetch-pack.c:1251
+#: fetch-pack.c:1264
 msgid "expected no other sections to be sent after no 'ready'"
 msgstr ""
 "ci si attendeva che nessun'altra sezione fosse inviata in assenza di 'ready'"
 
-#: fetch-pack.c:1293
+#: fetch-pack.c:1306
 #, c-format
 msgid "error processing shallow info: %d"
 msgstr "errore durante l'elaborazione delle informazioni shallow: %d"
 
-#: fetch-pack.c:1340
+#: fetch-pack.c:1353
 #, c-format
 msgid "expected wanted-ref, got '%s'"
 msgstr "atteso wanted-ref, ricevuto '%s'"
 
-#: fetch-pack.c:1345
+#: fetch-pack.c:1358
 #, c-format
 msgid "unexpected wanted-ref: '%s'"
 msgstr "wanted-ref inatteso: '%s'"
 
-#: fetch-pack.c:1350
+#: fetch-pack.c:1363
 #, c-format
 msgid "error processing wanted refs: %d"
 msgstr "errore durante l'elaborazione dei riferimenti desiderati: %d"
 
-#: fetch-pack.c:1676
+#: fetch-pack.c:1689
 msgid "no matching remote head"
 msgstr "nessun head remoto corrispondente"
 
-#: fetch-pack.c:1699 builtin/clone.c:673
+#: fetch-pack.c:1712 builtin/clone.c:686
 msgid "remote did not send all necessary objects"
 msgstr "il remoto non ha inviato tutti gli oggetti necessari"
 
-#: fetch-pack.c:1726
+#: fetch-pack.c:1739
 #, c-format
 msgid "no such remote ref %s"
 msgstr "riferimento remoto non esistente: %s"
 
-#: fetch-pack.c:1729
+#: fetch-pack.c:1742
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr "Il server non consente richieste per l'oggetto non pubblicizzato %s"
 
-#: gpg-interface.c:318
+#: gpg-interface.c:321
 msgid "gpg failed to sign the data"
 msgstr "gpg non è riuscito a firmare i dati"
 
-#: gpg-interface.c:344
+#: gpg-interface.c:347
 msgid "could not create temporary file"
 msgstr "impossibile creare il file temporaneo"
 
-#: gpg-interface.c:347
+#: gpg-interface.c:350
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr "scrittura della firma separata in '%s' non riuscita"
@@ -3332,18 +3382,18 @@ msgstr "scrittura della firma separata in '%s' non riuscita"
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr "ignoro il colore non valido '%.*s' in log.graphColors"
 
-#: grep.c:2113
+#: grep.c:2117
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "'%s': impossibile leggere %s"
 
-#: grep.c:2130 setup.c:164 builtin/clone.c:411 builtin/diff.c:82
+#: grep.c:2134 setup.c:164 builtin/clone.c:409 builtin/diff.c:82
 #: builtin/rm.c:135
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "stat di '%s' non riuscito"
 
-#: grep.c:2141
+#: grep.c:2145
 #, c-format
 msgid "'%s': short read"
 msgstr "'%s': lettura troppo breve"
@@ -3413,7 +3463,7 @@ msgstr "comandi git disponibili altrove nel tuo $PATH"
 msgid "These are common Git commands used in various situations:"
 msgstr "Questi sono i comandi Git comuni usati in varie situazioni:"
 
-#: help.c:363 git.c:97
+#: help.c:363 git.c:98
 #, c-format
 msgid "unsupported command listing type '%s'"
 msgstr "tipo elenco comandi non supportato: '%s'"
@@ -3561,7 +3611,7 @@ msgstr "nome ident vuoto (per <%s>) non consentito"
 msgid "name consists only of disallowed characters: %s"
 msgstr "il nome è composto solo da caratteri non consentiti: %s"
 
-#: ident.c:436 builtin/commit.c:608
+#: ident.c:436 builtin/commit.c:611
 #, c-format
 msgid "invalid date format: %s"
 msgstr "formato data non valido: %s"
@@ -3593,6 +3643,11 @@ msgstr "atteso 'tree:<profondità>'"
 msgid "sparse:path filters support has been dropped"
 msgstr "il supporto per i filtri sparse:percorso è stato rimosso"
 
+#: list-objects-filter-options.c:94
+#, c-format
+msgid "invalid filter-spec '%s'"
+msgstr "specificatore filtro '%s' non valido"
+
 #: list-objects-filter-options.c:158
 msgid "cannot change partial clone promisor remote"
 msgstr "impossibile modificare il remoto promettente del clone parziale"
@@ -3626,8 +3681,8 @@ msgstr "Impossibile creare '%s.lock': %s"
 msgid "failed to read the cache"
 msgstr "lettura della cache non riuscita"
 
-#: merge.c:107 rerere.c:720 builtin/am.c:1887 builtin/am.c:1921
-#: builtin/checkout.c:461 builtin/checkout.c:811 builtin/clone.c:773
+#: merge.c:107 rerere.c:720 builtin/am.c:1885 builtin/am.c:1919
+#: builtin/checkout.c:536 builtin/checkout.c:796 builtin/clone.c:786
 #: builtin/stash.c:264
 msgid "unable to write new index file"
 msgstr "impossibile scrivere il nuovo file index"
@@ -3652,93 +3707,93 @@ msgstr ""
 msgid "error building trees"
 msgstr "errore durante la costruzione degli alberi"
 
-#: merge-recursive.c:861
+#: merge-recursive.c:863
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "creazione del percorso '%s' non riuscita%s"
 
-#: merge-recursive.c:872
+#: merge-recursive.c:874
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr "Rimuovo %s per fare spazio alla sottodirectory\n"
 
-#: merge-recursive.c:886 merge-recursive.c:905
+#: merge-recursive.c:888 merge-recursive.c:907
 msgid ": perhaps a D/F conflict?"
 msgstr ": forse si tratta di un conflitto D/F?"
 
-#: merge-recursive.c:895
+#: merge-recursive.c:897
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "mi rifiuto di perdere un file non tracciato in '%s'"
 
-#: merge-recursive.c:936 builtin/cat-file.c:40
+#: merge-recursive.c:938 builtin/cat-file.c:40
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "impossibile leggere l'oggetto %s '%s'"
 
-#: merge-recursive.c:939
+#: merge-recursive.c:941
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "atteso blob per %s '%s'"
 
-#: merge-recursive.c:963
+#: merge-recursive.c:965
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr "apertura di '%s' non riuscita: %s"
 
-#: merge-recursive.c:974
+#: merge-recursive.c:976
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr "creazione del collegamento simbolico '%s' non riuscita: %s"
 
-#: merge-recursive.c:979
+#: merge-recursive.c:981
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "non so che fare con %06o %s '%s'"
 
-#: merge-recursive.c:1175
+#: merge-recursive.c:1177
 #, c-format
 msgid "Failed to merge submodule %s (not checked out)"
 msgstr "Merge del sottomodulo %s non riuscito (checkout non eseguito)"
 
-#: merge-recursive.c:1182
+#: merge-recursive.c:1184
 #, c-format
 msgid "Failed to merge submodule %s (commits not present)"
 msgstr "Merge del sottomodulo %s non riuscito (commit non presenti)"
 
-#: merge-recursive.c:1189
+#: merge-recursive.c:1191
 #, c-format
 msgid "Failed to merge submodule %s (commits don't follow merge-base)"
 msgstr ""
 "Merge del sottomodulo %s non riuscito (i commit non seguono la base del "
 "merge)"
 
-#: merge-recursive.c:1197 merge-recursive.c:1209
+#: merge-recursive.c:1199 merge-recursive.c:1211
 #, c-format
 msgid "Fast-forwarding submodule %s to the following commit:"
 msgstr "Eseguo il fast forward del sottomodulo %s al seguente commit:"
 
-#: merge-recursive.c:1200 merge-recursive.c:1212
+#: merge-recursive.c:1202 merge-recursive.c:1214
 #, c-format
 msgid "Fast-forwarding submodule %s"
 msgstr "Eseguo il fast forward del sottomodulo %s"
 
-#: merge-recursive.c:1235
+#: merge-recursive.c:1237
 #, c-format
 msgid "Failed to merge submodule %s (merge following commits not found)"
 msgstr ""
 "Merge del sottomodulo %s non riuscito (merge dopo i commit non trovato)"
 
-#: merge-recursive.c:1239
+#: merge-recursive.c:1241
 #, c-format
 msgid "Failed to merge submodule %s (not fast-forward)"
 msgstr "Merge del sottomodulo %s non riuscito (non fast forward)"
 
-#: merge-recursive.c:1240
+#: merge-recursive.c:1242
 msgid "Found a possible merge resolution for the submodule:\n"
 msgstr "Trovata possibile risoluzione merge per il sottomodulo:\n"
 
-#: merge-recursive.c:1243
+#: merge-recursive.c:1245
 #, c-format
 msgid ""
 "If this is correct simply add it to the index for example\n"
@@ -3755,32 +3810,32 @@ msgstr ""
 "\n"
 "per accettare questo suggerimento.\n"
 
-#: merge-recursive.c:1252
+#: merge-recursive.c:1254
 #, c-format
 msgid "Failed to merge submodule %s (multiple merges found)"
 msgstr "Merge del sottomodulo %s non riuscito (più merge trovati)"
 
-#: merge-recursive.c:1325
+#: merge-recursive.c:1327
 msgid "Failed to execute internal merge"
 msgstr "Esecuzione del merge interno non riuscita"
 
-#: merge-recursive.c:1330
+#: merge-recursive.c:1332
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Impossibile aggiungere %s al database"
 
-#: merge-recursive.c:1362
+#: merge-recursive.c:1364
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Merge automatico di %s in corso"
 
-#: merge-recursive.c:1385
+#: merge-recursive.c:1387
 #, c-format
 msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
 msgstr ""
 "Errore: mi rifiuto di perdere il file non tracciato %s; scrivo invece in %s."
 
-#: merge-recursive.c:1457
+#: merge-recursive.c:1459
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -3789,7 +3844,7 @@ msgstr ""
 "CONFLITTO (%s/eliminazione): %s eliminato in %s e %s in %s. Versione %s di "
 "%s lasciata nell'albero."
 
-#: merge-recursive.c:1462
+#: merge-recursive.c:1464
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -3798,7 +3853,7 @@ msgstr ""
 "CONFLITTO (%s/eliminazione): %s eliminato in %s e %s come %s in %s. Versione "
 "%s di %s lasciata nell'albero."
 
-#: merge-recursive.c:1469
+#: merge-recursive.c:1471
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -3807,7 +3862,7 @@ msgstr ""
 "CONFLITTO (%s/eliminazione): %s eliminato in %s e %s in %s. Versione %s di "
 "%s lasciata nell'albero in %s."
 
-#: merge-recursive.c:1474
+#: merge-recursive.c:1476
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -3816,43 +3871,43 @@ msgstr ""
 "CONFLITTO (%s/eliminazione): %s eliminato in %s e %s come %s in %s. Versione "
 "%s di %s lasciata nell'albero in %s."
 
-#: merge-recursive.c:1509
+#: merge-recursive.c:1511
 msgid "rename"
 msgstr "ridenominazione"
 
-#: merge-recursive.c:1509
+#: merge-recursive.c:1511
 msgid "renamed"
 msgstr "rinominato"
 
-#: merge-recursive.c:1589 merge-recursive.c:2445 merge-recursive.c:3085
+#: merge-recursive.c:1591 merge-recursive.c:2450 merge-recursive.c:3093
 #, c-format
 msgid "Refusing to lose dirty file at %s"
 msgstr "Mi rifiuto di perdere un file sporco in %s"
 
-#: merge-recursive.c:1599
+#: merge-recursive.c:1601
 #, c-format
 msgid "Refusing to lose untracked file at %s, even though it's in the way."
 msgstr ""
 "Mi rifiuto di perdere un file non tracciato in %s, benché sia d'ostacolo."
 
-#: merge-recursive.c:1657
+#: merge-recursive.c:1659
 #, c-format
 msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
 msgstr ""
 "CONFLITTO (ridenominazione/aggiunta): elemento ridenominato %s->%s in %s. %s "
 "aggiunto in %s"
 
-#: merge-recursive.c:1687
+#: merge-recursive.c:1690
 #, c-format
 msgid "%s is a directory in %s adding as %s instead"
 msgstr "%s è una directory in %s; la aggiungo come %s"
 
-#: merge-recursive.c:1692
+#: merge-recursive.c:1695
 #, c-format
 msgid "Refusing to lose untracked file at %s; adding as %s instead"
 msgstr "Mi rifiuto di perdere un file non tracciato in %s; lo aggiungo come %s"
 
-#: merge-recursive.c:1711
+#: merge-recursive.c:1714
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -3861,18 +3916,18 @@ msgstr ""
 "CONFLITTO (ridenominazione/ridenominazione): file ridenominato \"%s\"->\"%s"
 "\" nel branch \"%s\", ridenominato \"%s\"->\"%s\" in \"%s\"%s"
 
-#: merge-recursive.c:1716
+#: merge-recursive.c:1719
 msgid " (left unresolved)"
 msgstr " (lasciato irrisolto)"
 
-#: merge-recursive.c:1825
+#: merge-recursive.c:1828
 #, c-format
 msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
 "CONFLITTO (ridenominazione/ridenominazione): file ridenominato %s->%s in %s. "
 "Ridenominato %s->%s in %s"
 
-#: merge-recursive.c:2030
+#: merge-recursive.c:2035
 #, c-format
 msgid ""
 "CONFLICT (directory rename split): Unclear where to place %s because "
@@ -3883,7 +3938,7 @@ msgstr ""
 "perché la directory %s è stata ridenominata in più directory diverse e "
 "nessuna directory di destinazione contiene la maggior parte dei file."
 
-#: merge-recursive.c:2062
+#: merge-recursive.c:2067
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
@@ -3893,7 +3948,7 @@ msgstr ""
 "%s è d'ostacolo alle seguenti ridenominazioni directory che spostano in tale "
 "posizione i seguenti percorsi: %s."
 
-#: merge-recursive.c:2072
+#: merge-recursive.c:2077
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
@@ -3903,7 +3958,7 @@ msgstr ""
 "un percorso in %s; delle ridenominazioni directory implicite hanno tentato "
 "di spostare in tale posizione i seguenti percorsi: %s"
 
-#: merge-recursive.c:2164
+#: merge-recursive.c:2169
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
@@ -3912,7 +3967,7 @@ msgstr ""
 "CONFLITTO (ridenominazione/ridenominazione): directory ridenominata %s->%s "
 "in %s. Directory ridenominata %s->%s in %s"
 
-#: merge-recursive.c:2408
+#: merge-recursive.c:2413
 #, c-format
 msgid ""
 "WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
@@ -3921,52 +3976,52 @@ msgstr ""
 "ATTENZIONE: evito di applicare la ridenominazione %s -> %s a %s perché %s "
 "stesso è stato ridenominato."
 
-#: merge-recursive.c:2929
+#: merge-recursive.c:2937
 #, c-format
 msgid "cannot read object %s"
 msgstr "impossibile leggere l'oggetto %s"
 
-#: merge-recursive.c:2932
+#: merge-recursive.c:2940
 #, c-format
 msgid "object %s is not a blob"
 msgstr "l'oggetto %s non è un blob"
 
-#: merge-recursive.c:2996
+#: merge-recursive.c:3004
 msgid "modify"
 msgstr "modifica"
 
-#: merge-recursive.c:2996
+#: merge-recursive.c:3004
 msgid "modified"
 msgstr "modificato"
 
-#: merge-recursive.c:3008
+#: merge-recursive.c:3016
 msgid "content"
 msgstr "contenuto"
 
-#: merge-recursive.c:3012
+#: merge-recursive.c:3020
 msgid "add/add"
 msgstr "aggiunta/aggiunta"
 
-#: merge-recursive.c:3035
+#: merge-recursive.c:3043
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "Omesso %s (elemento sottoposto a merge uguale a quello esistente)"
 
-#: merge-recursive.c:3057 git-submodule.sh:937
+#: merge-recursive.c:3065 git-submodule.sh:937
 msgid "submodule"
 msgstr "sottomodulo"
 
-#: merge-recursive.c:3058
+#: merge-recursive.c:3066
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLITTO (%s): conflitto di merge in %s"
 
-#: merge-recursive.c:3088
+#: merge-recursive.c:3096
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Lo aggiungo come %s"
 
-#: merge-recursive.c:3170
+#: merge-recursive.c:3178
 #, c-format
 msgid ""
 "Path updated: %s added in %s inside a directory that was renamed in %s; "
@@ -3975,7 +4030,7 @@ msgstr ""
 "Percorso aggiornato: %s aggiunto in %s in una directory ridenominata in %s; "
 "lo sposto in %s."
 
-#: merge-recursive.c:3173
+#: merge-recursive.c:3181
 #, c-format
 msgid ""
 "CONFLICT (file location): %s added in %s inside a directory that was renamed "
@@ -3984,7 +4039,7 @@ msgstr ""
 "CONFLITTO (posizione file): %s aggiunto in %s in una directory ridenominata "
 "in %s, il che suggerisce che forse dovrebbe essere spostato in %s."
 
-#: merge-recursive.c:3177
+#: merge-recursive.c:3185
 #, c-format
 msgid ""
 "Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
@@ -3993,7 +4048,7 @@ msgstr ""
 "Percorso aggiornato: %s ridenominato in %s in %s in una directory "
 "ridenominata in %s; lo sposto in %s."
 
-#: merge-recursive.c:3180
+#: merge-recursive.c:3188
 #, c-format
 msgid ""
 "CONFLICT (file location): %s renamed to %s in %s, inside a directory that "
@@ -4003,37 +4058,37 @@ msgstr ""
 "ridenominata in %s, il che suggerisce che forse dovrebbe essere spostato in "
 "%s."
 
-#: merge-recursive.c:3294
+#: merge-recursive.c:3302
 #, c-format
 msgid "Removing %s"
 msgstr "Rimozione di %s"
 
-#: merge-recursive.c:3317
+#: merge-recursive.c:3325
 msgid "file/directory"
 msgstr "file/directory"
 
-#: merge-recursive.c:3322
+#: merge-recursive.c:3330
 msgid "directory/file"
 msgstr "directory/file"
 
-#: merge-recursive.c:3329
+#: merge-recursive.c:3337
 #, c-format
 msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr ""
 "CONFLITTO (%s): una directory denominata %s esiste già in %s. Aggiungo %s "
 "come %s"
 
-#: merge-recursive.c:3338
+#: merge-recursive.c:3346
 #, c-format
 msgid "Adding %s"
 msgstr "Aggiunta %s"
 
-#: merge-recursive.c:3347
+#: merge-recursive.c:3355
 #, c-format
 msgid "CONFLICT (add/add): Merge conflict in %s"
 msgstr "CONFLITTO (aggiungi/aggiungi): conflitto di merge in %s"
 
-#: merge-recursive.c:3385
+#: merge-recursive.c:3393
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -4042,176 +4097,189 @@ msgstr ""
 "Le tue modifiche locali ai seguenti file sarebbero sovrascritte dal merge:\n"
 "  %s"
 
-#: merge-recursive.c:3396
+#: merge-recursive.c:3404
 msgid "Already up to date!"
 msgstr "Già aggiornato!"
 
-#: merge-recursive.c:3405
+#: merge-recursive.c:3413
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "merge degli alberi %s e %s non riuscito"
 
-#: merge-recursive.c:3504
+#: merge-recursive.c:3512
 msgid "Merging:"
 msgstr "Merge in corso:"
 
-#: merge-recursive.c:3517
+#: merge-recursive.c:3525
 #, c-format
 msgid "found %u common ancestor:"
 msgid_plural "found %u common ancestors:"
 msgstr[0] "trovato %u antenato comune:"
 msgstr[1] "trovati %u antenati comuni:"
 
-#: merge-recursive.c:3556
+#: merge-recursive.c:3564
 msgid "merge returned no commit"
 msgstr "il merge non ha restituito alcun commit"
 
-#: merge-recursive.c:3622
+#: merge-recursive.c:3630
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Impossibile analizzare l'oggetto '%s'"
 
-#: merge-recursive.c:3638 builtin/merge.c:702 builtin/merge.c:873
+#: merge-recursive.c:3646 builtin/merge.c:698 builtin/merge.c:869
 msgid "Unable to write index."
 msgstr "Impossibile scrivere l'indice."
 
-#: midx.c:66
+#: midx.c:69
 #, c-format
 msgid "multi-pack-index file %s is too small"
 msgstr "il file multi-pack-index %s è troppo piccolo"
 
-#: midx.c:82
+#: midx.c:85
 #, c-format
 msgid "multi-pack-index signature 0x%08x does not match signature 0x%08x"
 msgstr "la firma del multi-pack-index 0x%08x non corrisponde alla firma 0x%08x"
 
-#: midx.c:87
+#: midx.c:90
 #, c-format
 msgid "multi-pack-index version %d not recognized"
 msgstr "versione %d multi-pack-index non riconosciuta"
 
-#: midx.c:92
+#: midx.c:95
 #, c-format
 msgid "hash version %u does not match"
 msgstr "la versione dell'hash %u non corrisponde"
 
-#: midx.c:106
+#: midx.c:109
 msgid "invalid chunk offset (too large)"
 msgstr "offset blocco non valido (troppo grande)"
 
-#: midx.c:130
+#: midx.c:133
 msgid "terminating multi-pack-index chunk id appears earlier than expected"
 msgstr "l'ID blocco finale multi-pack-index compare prima di quanto previsto"
 
-#: midx.c:143
+#: midx.c:146
 msgid "multi-pack-index missing required pack-name chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto pack-name"
 
-#: midx.c:145
+#: midx.c:148
 msgid "multi-pack-index missing required OID fanout chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto fanout OID"
 
-#: midx.c:147
+#: midx.c:150
 msgid "multi-pack-index missing required OID lookup chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto lookup OID"
 
-#: midx.c:149
+#: midx.c:152
 msgid "multi-pack-index missing required object offsets chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto offset oggetti"
 
-#: midx.c:163
+#: midx.c:166
 #, c-format
 msgid "multi-pack-index pack names out of order: '%s' before '%s'"
 msgstr "nomi pack multi-pack-index in disordine: '%s' appare prima di '%s'"
 
-#: midx.c:208
+#: midx.c:211
 #, c-format
 msgid "bad pack-int-id: %u (%u total packs)"
 msgstr "pack-int-id non valido: %u (%u pack totali)"
 
-#: midx.c:258
+#: midx.c:261
 msgid "multi-pack-index stores a 64-bit offset, but off_t is too small"
 msgstr ""
 "nel multi-pack-index è salvato un offset a 64 bit, ma off_t è troppo piccolo"
 
-#: midx.c:286
+#: midx.c:289
 msgid "error preparing packfile from multi-pack-index"
 msgstr "errore durante la preparazione del packfile dal multi-pack-index"
 
-#: midx.c:457
+#: midx.c:470
 #, c-format
 msgid "failed to add packfile '%s'"
 msgstr "aggiunta del packfile '%s' non riuscita"
 
-#: midx.c:463
+#: midx.c:476
 #, c-format
 msgid "failed to open pack-index '%s'"
 msgstr "apertura del pack-index '%s' non riuscita"
 
-#: midx.c:557
+#: midx.c:536
 #, c-format
 msgid "failed to locate object %d in packfile"
 msgstr "ricerca dell'oggetto %d nel packfile non riuscita"
 
-#: midx.c:993
+#: midx.c:865
+#, c-format
+msgid "did not see pack-file %s to drop"
+msgstr "non ho visto il file pack %s da scartare"
+
+#: midx.c:1036
 #, c-format
 msgid "failed to clear multi-pack-index at %s"
 msgstr "pulizia del multi-pack-index %s non riuscita"
 
-#: midx.c:1048
+#: midx.c:1091
 msgid "Looking for referenced packfiles"
 msgstr "Ricerca di file pack referenziati in corso"
 
-#: midx.c:1063
+#: midx.c:1106
 #, c-format
 msgid ""
 "oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
 msgstr ""
 "fanout oid in disordine: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
 
-#: midx.c:1067
+#: midx.c:1110
 msgid "Verifying OID order in MIDX"
 msgstr "Verifica ordine OID in MIDX in corso"
 
-#: midx.c:1076
+#: midx.c:1119
 #, c-format
 msgid "oid lookup out of order: oid[%d] = %s >= %s = oid[%d]"
 msgstr "lookup oid in disordine: oid[%d] = %s >= %s = oid[%d]"
 
-#: midx.c:1095
+#: midx.c:1138
 msgid "Sorting objects by packfile"
 msgstr "Ordinamento degli oggetti nel packfile in corso"
 
-#: midx.c:1101
+#: midx.c:1144
 msgid "Verifying object offsets"
 msgstr "Verifica offset oggetti in corso"
 
-#: midx.c:1117
+#: midx.c:1160
 #, c-format
 msgid "failed to load pack entry for oid[%d] = %s"
 msgstr "caricamento voce pack per oid[%d] = %s non riuscito"
 
-#: midx.c:1123
+#: midx.c:1166
 #, c-format
 msgid "failed to load pack-index for packfile %s"
 msgstr "caricamento pack-index per il packfile %s non riuscito"
 
-#: midx.c:1132
+#: midx.c:1175
 #, c-format
 msgid "incorrect object offset for oid[%d] = %s: %<PRIx64> != %<PRIx64>"
 msgstr "offset oggetto non corretto per oid[%d] = %s: %<PRIx64> != %<PRIx64>"
 
-#: name-hash.c:531
+#: midx.c:1350
+msgid "could not start pack-objects"
+msgstr "impossibile avviare pack-objects"
+
+#: midx.c:1369
+msgid "could not finish pack-objects"
+msgstr "impossibile finire pack-objects"
+
+#: name-hash.c:532
 #, c-format
 msgid "unable to create lazy_dir thread: %s"
 msgstr "impossibile creare il thread lazy_dir: %s"
 
-#: name-hash.c:553
+#: name-hash.c:554
 #, c-format
 msgid "unable to create lazy_name thread: %s"
 msgstr "impossibile creare il thread lazy_name: %s"
 
-#: name-hash.c:559
+#: name-hash.c:560
 #, c-format
 msgid "unable to join lazy_name thread: %s"
 msgstr "impossibile bloccare il thread lazy_name: %s"
@@ -4283,17 +4351,17 @@ msgstr "impossibile analizzare l'oggetto: %s"
 msgid "hash mismatch %s"
 msgstr "hash non corrispondente: %s"
 
-#: packfile.c:617
+#: packfile.c:648
 msgid "offset before end of packfile (broken .idx?)"
 msgstr "offset collocato prima della fine del packfile (.idx corrotto?)"
 
-#: packfile.c:1868
+#: packfile.c:1899
 #, c-format
 msgid "offset before start of pack index for %s (corrupt index?)"
 msgstr ""
 "offset collocato prima dell'inizio dell'indice pack per %s (indice corrotto?)"
 
-#: packfile.c:1872
+#: packfile.c:1903
 #, c-format
 msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
@@ -4555,24 +4623,29 @@ msgstr "impossibile creare lstat in versione threaded: %s"
 msgid "unable to parse --pretty format"
 msgstr "impossibile analizzare il formato --pretty"
 
-#: range-diff.c:56
+#: range-diff.c:70
 msgid "could not start `log`"
 msgstr "impossibile avviare `log`"
 
-#: range-diff.c:59
+#: range-diff.c:72
 msgid "could not read `log` output"
 msgstr "impossibile leggere l'output di `log`"
 
-#: range-diff.c:74 sequencer.c:4897
+#: range-diff.c:91 sequencer.c:5021
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr "impossibile analizzare il commit '%s'"
 
-#: range-diff.c:224
+#: range-diff.c:117
+#, c-format
+msgid "could not parse git header '%.*s'"
+msgstr "impossibile analizzare l'header Git '%.*s'"
+
+#: range-diff.c:274
 msgid "failed to generate diff"
 msgstr "generazione del diff non riuscita"
 
-#: range-diff.c:455 range-diff.c:457
+#: range-diff.c:506 range-diff.c:508
 #, c-format
 msgid "could not parse log for '%s'"
 msgstr "impossibile analizzare il registro di '%s'"
@@ -4689,11 +4762,10 @@ msgid "unordered stage entries for '%s'"
 msgstr "voci stage non ordinate per '%s'"
 
 #: read-cache.c:1946 read-cache.c:2234 rerere.c:565 rerere.c:599 rerere.c:1111
-#: builtin/add.c:460 builtin/check-ignore.c:178 builtin/checkout.c:358
-#: builtin/checkout.c:672 builtin/checkout.c:1060 builtin/clean.c:955
-#: builtin/commit.c:344 builtin/diff-tree.c:120 builtin/grep.c:498
-#: builtin/mv.c:145 builtin/reset.c:245 builtin/rm.c:271
-#: builtin/submodule--helper.c:330
+#: builtin/add.c:460 builtin/check-ignore.c:178 builtin/checkout.c:467
+#: builtin/checkout.c:651 builtin/clean.c:956 builtin/commit.c:347
+#: builtin/diff-tree.c:120 builtin/grep.c:499 builtin/mv.c:145
+#: builtin/reset.c:245 builtin/rm.c:271 builtin/submodule--helper.c:330
 msgid "index file corrupt"
 msgstr "file indice corrotto"
 
@@ -4747,12 +4819,12 @@ msgstr "impossibile aggiornare l'indice condiviso '%s'"
 msgid "broken index, expect %s in %s, got %s"
 msgstr "indice corrotto, atteso %s in %s, presente %s"
 
-#: read-cache.c:2989 wrapper.c:658 builtin/merge.c:1117
+#: read-cache.c:2989 wrapper.c:658 builtin/merge.c:1114
 #, c-format
 msgid "could not close '%s'"
 msgstr "impossibile chiudere '%s'"
 
-#: read-cache.c:3092 sequencer.c:2354 sequencer.c:3807
+#: read-cache.c:3092 sequencer.c:2358 sequencer.c:3928
 #, c-format
 msgid "could not stat '%s'"
 msgstr "impossibile eseguire lo stat di '%s'"
@@ -4837,7 +4909,7 @@ msgid_plural "Rebase %s onto %s (%d commands)"
 msgstr[0] "Rebase di %s su %s (%d comando)"
 msgstr[1] "Rebase di %s su %s (%d comandi)"
 
-#: rebase-interactive.c:65 git-rebase--preserve-merges.sh:173
+#: rebase-interactive.c:65 git-rebase--preserve-merges.sh:228
 msgid ""
 "\n"
 "Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
@@ -4846,7 +4918,7 @@ msgstr ""
 "Non eliminare alcuna riga. Usa esplicitamente 'drop' per rimuovere un "
 "commit.\n"
 
-#: rebase-interactive.c:68 git-rebase--preserve-merges.sh:177
+#: rebase-interactive.c:68 git-rebase--preserve-merges.sh:232
 msgid ""
 "\n"
 "If you remove a line here THAT COMMIT WILL BE LOST.\n"
@@ -4854,7 +4926,7 @@ msgstr ""
 "\n"
 "Rimuovendo una riga da qui IL COMMIT CORRISPONDENTE ANDRÀ PERDUTO.\n"
 
-#: rebase-interactive.c:74 git-rebase--preserve-merges.sh:816
+#: rebase-interactive.c:74 git-rebase--preserve-merges.sh:871
 msgid ""
 "\n"
 "You are editing the todo file of an ongoing interactive rebase.\n"
@@ -4868,7 +4940,7 @@ msgstr ""
 "    git rebase --continue\n"
 "\n"
 
-#: rebase-interactive.c:79 git-rebase--preserve-merges.sh:893
+#: rebase-interactive.c:79 git-rebase--preserve-merges.sh:948
 msgid ""
 "\n"
 "However, if you remove everything, the rebase will be aborted.\n"
@@ -4878,12 +4950,12 @@ msgstr ""
 "Ciò nonostante, se rimuovi tutto, il rebase sarà annullato.\n"
 "\n"
 
-#: rebase-interactive.c:85 git-rebase--preserve-merges.sh:900
+#: rebase-interactive.c:85 git-rebase--preserve-merges.sh:955
 msgid "Note that empty commits are commented out"
 msgstr "Nota che i commit vuoti sono commentati"
 
-#: rebase-interactive.c:105 rerere.c:485 rerere.c:692 sequencer.c:3339
-#: sequencer.c:3365 sequencer.c:4996 builtin/fsck.c:356 builtin/rebase.c:235
+#: rebase-interactive.c:105 rerere.c:485 rerere.c:692 sequencer.c:3447
+#: sequencer.c:3473 sequencer.c:5120 builtin/fsck.c:356 builtin/rebase.c:235
 #, c-format
 msgid "could not write '%s'"
 msgstr "impossibile scrivere '%s'"
@@ -4921,97 +4993,98 @@ msgstr ""
 "I comportamenti possibili sono ignore, warn, error.\n"
 "\n"
 
-#: refs.c:192
+#: refs.c:262
 #, c-format
 msgid "%s does not point to a valid object!"
 msgstr "%s non punta a un oggetto valido!"
 
-#: refs.c:597
+#: refs.c:667
 #, c-format
 msgid "ignoring dangling symref %s"
 msgstr "ignoro il riferimento simbolico pendente %s"
 
-#: refs.c:599 ref-filter.c:1982
+#: refs.c:669 ref-filter.c:2092
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "ignoro il riferimento rotto %s"
 
-#: refs.c:734
+#: refs.c:804
 #, c-format
 msgid "could not open '%s' for writing: %s"
 msgstr "impossibile aprire '%s' in scrittura: %s"
 
-#: refs.c:744 refs.c:795
+#: refs.c:814 refs.c:865
 #, c-format
 msgid "could not read ref '%s'"
 msgstr "impossibile leggere il riferimento '%s'"
 
-#: refs.c:750
+#: refs.c:820
 #, c-format
 msgid "ref '%s' already exists"
 msgstr "il riferimento '%s' esiste già"
 
-#: refs.c:755
+#: refs.c:825
 #, c-format
 msgid "unexpected object ID when writing '%s'"
 msgstr "ID oggetto inatteso durante la scrittura di '%s'"
 
-#: refs.c:763 sequencer.c:400 sequencer.c:2679 sequencer.c:2805
-#: sequencer.c:2819 sequencer.c:3076 sequencer.c:4913 wrapper.c:656
+#: refs.c:833 sequencer.c:403 sequencer.c:2709 sequencer.c:2913
+#: sequencer.c:2927 sequencer.c:3184 sequencer.c:5037 wrapper.c:656
 #, c-format
 msgid "could not write to '%s'"
 msgstr "impossibile scrivere su '%s'"
 
-#: refs.c:790 wrapper.c:225 wrapper.c:395 builtin/am.c:715 builtin/rebase.c:993
+#: refs.c:860 wrapper.c:225 wrapper.c:395 builtin/am.c:715
+#: builtin/rebase.c:1003
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "impossibile aprire '%s' in scrittura"
 
-#: refs.c:797
+#: refs.c:867
 #, c-format
 msgid "unexpected object ID when deleting '%s'"
 msgstr "ID oggetto inatteso durante l'eliminazione di '%s'"
 
-#: refs.c:928
+#: refs.c:998
 #, c-format
 msgid "log for ref %s has gap after %s"
 msgstr "il registro per il riferimento %s ha delle voci mancanti dopo %s"
 
-#: refs.c:934
+#: refs.c:1004
 #, c-format
 msgid "log for ref %s unexpectedly ended on %s"
 msgstr "il registro per il riferimento %s è terminato inaspettatamente a %s"
 
-#: refs.c:993
+#: refs.c:1063
 #, c-format
 msgid "log for %s is empty"
 msgstr "il registro per %s è vuoto"
 
-#: refs.c:1085
+#: refs.c:1155
 #, c-format
 msgid "refusing to update ref with bad name '%s'"
 msgstr "mi rifiuto di aggiornare il riferimento con il nome non valido '%s'"
 
-#: refs.c:1161
+#: refs.c:1231
 #, c-format
 msgid "update_ref failed for ref '%s': %s"
 msgstr "update_ref per il riferimento '%s' non riuscita: %s"
 
-#: refs.c:1942
+#: refs.c:2012
 #, c-format
 msgid "multiple updates for ref '%s' not allowed"
 msgstr "aggiornamenti multipli per il riferimento '%s' non consentiti"
 
-#: refs.c:1974
+#: refs.c:2044
 msgid "ref updates forbidden inside quarantine environment"
 msgstr "aggiornamenti riferimento vietati nell'ambiente quarantena"
 
-#: refs.c:2070 refs.c:2100
+#: refs.c:2140 refs.c:2170
 #, c-format
 msgid "'%s' exists; cannot create '%s'"
 msgstr "'%s' esiste già; impossibile creare '%s'"
 
-#: refs.c:2076 refs.c:2111
+#: refs.c:2146 refs.c:2181
 #, c-format
 msgid "cannot process '%s' and '%s' at the same time"
 msgstr "impossibile gestire '%s' e '%s' contemporaneamente"
@@ -5037,141 +5110,141 @@ msgstr "impossibile eliminare i riferimenti: %s"
 msgid "invalid refspec '%s'"
 msgstr "specificatore riferimento '%s' non valido"
 
-#: ref-filter.c:39 wt-status.c:1909
+#: ref-filter.c:42 wt-status.c:1934
 msgid "gone"
 msgstr "sparito"
 
-#: ref-filter.c:40
+#: ref-filter.c:43
 #, c-format
 msgid "ahead %d"
 msgstr "dopo %d"
 
-#: ref-filter.c:41
+#: ref-filter.c:44
 #, c-format
 msgid "behind %d"
 msgstr "prima di %d"
 
-#: ref-filter.c:42
+#: ref-filter.c:45
 #, c-format
 msgid "ahead %d, behind %d"
 msgstr "dopo %d, prima di %d"
 
-#: ref-filter.c:138
+#: ref-filter.c:162
 #, c-format
 msgid "expected format: %%(color:<color>)"
 msgstr "formato atteso: %%(color:<colore>)"
 
-#: ref-filter.c:140
+#: ref-filter.c:164
 #, c-format
 msgid "unrecognized color: %%(color:%s)"
 msgstr "colore non riconosciuto: %%(color:%s)"
 
-#: ref-filter.c:162
+#: ref-filter.c:186
 #, c-format
 msgid "Integer value expected refname:lstrip=%s"
 msgstr "Atteso valore intero: refname:lstrip=%s"
 
-#: ref-filter.c:166
+#: ref-filter.c:190
 #, c-format
 msgid "Integer value expected refname:rstrip=%s"
 msgstr "Atteso valore intero: refname:rstrip=%s"
 
-#: ref-filter.c:168
+#: ref-filter.c:192
 #, c-format
 msgid "unrecognized %%(%s) argument: %s"
 msgstr "argomento %%(%s) non riconosciuto: %s"
 
-#: ref-filter.c:223
+#: ref-filter.c:247
 #, c-format
 msgid "%%(objecttype) does not take arguments"
 msgstr "%%(objecttype) non accetta argomenti"
 
-#: ref-filter.c:245
+#: ref-filter.c:269
 #, c-format
 msgid "unrecognized %%(objectsize) argument: %s"
 msgstr "argomento %%(objectsize) non riconosciuto: %s"
 
-#: ref-filter.c:253
+#: ref-filter.c:277
 #, c-format
 msgid "%%(deltabase) does not take arguments"
 msgstr "%%(deltabase) non accetta argomenti"
 
-#: ref-filter.c:265
+#: ref-filter.c:289
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr "%%(body) non accetta argomenti"
 
-#: ref-filter.c:274
+#: ref-filter.c:298
 #, c-format
 msgid "%%(subject) does not take arguments"
 msgstr "%%(subject) non accetta argomenti"
 
-#: ref-filter.c:296
+#: ref-filter.c:320
 #, c-format
 msgid "unknown %%(trailers) argument: %s"
 msgstr "argomento %%(trailers) sconosciuto: %s"
 
-#: ref-filter.c:325
+#: ref-filter.c:349
 #, c-format
 msgid "positive value expected contents:lines=%s"
 msgstr "atteso valore positivo in contents:lines=%s"
 
-#: ref-filter.c:327
+#: ref-filter.c:351
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr "argomento %%(contents) non riconosciuto: %s"
 
-#: ref-filter.c:342
+#: ref-filter.c:366
 #, c-format
 msgid "positive value expected objectname:short=%s"
 msgstr "atteso valore positivo in objectname:short=%s"
 
-#: ref-filter.c:346
+#: ref-filter.c:370
 #, c-format
 msgid "unrecognized %%(objectname) argument: %s"
 msgstr "argomento %%(objectname) non riconosciuto: %s"
 
-#: ref-filter.c:376
+#: ref-filter.c:400
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr "formato atteso: %%(align:<ampiezza>,<posizione>)"
 
-#: ref-filter.c:388
+#: ref-filter.c:412
 #, c-format
 msgid "unrecognized position:%s"
 msgstr "valore non riconosciuto: position:%s"
 
-#: ref-filter.c:395
+#: ref-filter.c:419
 #, c-format
 msgid "unrecognized width:%s"
 msgstr "valore non riconosciuto: width:%s"
 
-#: ref-filter.c:404
+#: ref-filter.c:428
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr "argomento %%(align) non riconosciuto: %s"
 
-#: ref-filter.c:412
+#: ref-filter.c:436
 #, c-format
 msgid "positive width expected with the %%(align) atom"
 msgstr "attesa ampiezza positiva con l'atom %%(align)"
 
-#: ref-filter.c:430
+#: ref-filter.c:454
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr "argomento %%(if) non riconosciuto: %s"
 
-#: ref-filter.c:531
+#: ref-filter.c:556
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr "nome campo malformato: %.*s"
 
-#: ref-filter.c:558
+#: ref-filter.c:583
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr "nome campo sconosciuto: %.*s"
 
-#: ref-filter.c:562
+#: ref-filter.c:587
 #, c-format
 msgid ""
 "not a git repository, but the field '%.*s' requires access to object data"
@@ -5179,127 +5252,111 @@ msgstr ""
 "non è un repository git, ma il campo '%.*s' richiede l'accesso ai dati "
 "oggetto"
 
-#: ref-filter.c:686
+#: ref-filter.c:711
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr "formato: atomo %%(if) usato senza un atomo %%(then)"
 
-#: ref-filter.c:749
+#: ref-filter.c:774
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr "formato: atomo %%(then) usato senza un atomo %%(if)"
 
-#: ref-filter.c:751
+#: ref-filter.c:776
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr "formato: atomo %%(then) usato più di una volta"
 
-#: ref-filter.c:753
+#: ref-filter.c:778
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr "formato: atomo %%(then) usato dopo %%(else)"
 
-#: ref-filter.c:781
+#: ref-filter.c:806
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr "formato: atomo %%(else) usato senza un atomo %%(if)"
 
-#: ref-filter.c:783
+#: ref-filter.c:808
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr "formato: atomo %%(else) usato senza un atomo %%(then)"
 
-#: ref-filter.c:785
+#: ref-filter.c:810
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr "formato: atomo %%(else) usato più di una volta"
 
-#: ref-filter.c:800
+#: ref-filter.c:825
 #, c-format
 msgid "format: %%(end) atom used without corresponding atom"
 msgstr "formato: atomo %%(end) usato senza l'atomo corrispondente"
 
-#: ref-filter.c:857
+#: ref-filter.c:882
 #, c-format
 msgid "malformed format string %s"
 msgstr "stringa di formato %s malformata"
 
-#: ref-filter.c:1453
-#, c-format
-msgid "(no branch, rebasing %s)"
-msgstr "(nessun branch, eseguo il rebase di %s)"
-
-#: ref-filter.c:1456
-#, c-format
-msgid "(no branch, rebasing detached HEAD %s)"
-msgstr "(nessun branch, eseguo il rebase dell'HEAD scollegato %s)"
-
-#: ref-filter.c:1459
+#: ref-filter.c:1485
 #, c-format
-msgid "(no branch, bisect started on %s)"
-msgstr "(nessun branch, bisezione avviata su %s)"
+msgid "no branch, rebasing %s"
+msgstr "nessun branch, eseguo il rebase di %s"
 
-#. TRANSLATORS: make sure this matches "HEAD
-#. detached at " in wt-status.c
-#.
-#: ref-filter.c:1467
+#: ref-filter.c:1488
 #, c-format
-msgid "(HEAD detached at %s)"
-msgstr "(HEAD scollegato su %s)"
+msgid "no branch, rebasing detached HEAD %s"
+msgstr "nessun branch, eseguo il rebase dell'HEAD scollegato %s"
 
-#. TRANSLATORS: make sure this matches "HEAD
-#. detached from " in wt-status.c
-#.
-#: ref-filter.c:1474
+#: ref-filter.c:1491
 #, c-format
-msgid "(HEAD detached from %s)"
-msgstr "(HEAD scollegato da %s)"
+msgid "no branch, bisect started on %s"
+msgstr "nessun branch, bisezione avviata su %s"
 
-#: ref-filter.c:1478
-msgid "(no branch)"
-msgstr "(nessun branch)"
+#: ref-filter.c:1501
+msgid "no branch"
+msgstr "nessun branch"
 
-#: ref-filter.c:1512 ref-filter.c:1669
+#: ref-filter.c:1537 ref-filter.c:1743
 #, c-format
 msgid "missing object %s for %s"
 msgstr "oggetto %s mancante per %s"
 
-#: ref-filter.c:1522
+#: ref-filter.c:1547
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "parse_object_buffer non riuscito su %s per %s"
 
-#: ref-filter.c:1888
+#: ref-filter.c:1998
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "oggetto malformato in '%s'"
 
-#: ref-filter.c:1977
+#: ref-filter.c:2087
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "ignoro il riferimento con il nome malformato %s"
 
-#: ref-filter.c:2263
+#: ref-filter.c:2382
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "formato: atomo %%(end) mancante"
 
-#: ref-filter.c:2363
+#: ref-filter.c:2482
 #, c-format
 msgid "option `%s' is incompatible with --merged"
 msgstr "l'opzione `%s' non è compatibile con --merged"
 
-#: ref-filter.c:2366
+#: ref-filter.c:2485
 #, c-format
 msgid "option `%s' is incompatible with --no-merged"
 msgstr "l'opzione `%s' non è compatibile con --no-merged"
 
-#: ref-filter.c:2376
+#: ref-filter.c:2495
 #, c-format
 msgid "malformed object name %s"
 msgstr "nome dell'oggetto %s malformato"
 
-#: ref-filter.c:2381
+#: ref-filter.c:2500
 #, c-format
 msgid "option `%s' must point to a commit"
 msgstr "l'opzione `%s' deve puntare ad un commit"
@@ -5551,13 +5608,11 @@ msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
 "Your branch is behind '%s' by %d commits, and can be fast-forwarded.\n"
 msgstr[0] ""
-"Il tuo branch, rispetto a '%s', è indietro di %d commit e ne posso eseguire"
-" il "
-"fast forward.\n"
+"Il tuo branch, rispetto a '%s', è indietro di %d commit e ne posso eseguire "
+"il fast forward.\n"
 msgstr[1] ""
-"Il tuo branch, rispetto a '%s', è indietro di %d commit e ne posso eseguire"
-" il "
-"fast forward.\n"
+"Il tuo branch, rispetto a '%s', è indietro di %d commit e ne posso eseguire "
+"il fast forward.\n"
 
 #: remote.c:2051
 msgid "  (use \"git pull\" to update your local branch)\n"
@@ -5660,8 +5715,8 @@ msgstr "impossibile eseguire l'unlink dell'oggetto smarrito '%s'"
 msgid "Recorded preimage for '%s'"
 msgstr "Salvata preimmagine di '%s'"
 
-#: rerere.c:881 submodule.c:2024 builtin/log.c:1750
-#: builtin/submodule--helper.c:1417 builtin/submodule--helper.c:1427
+#: rerere.c:881 submodule.c:2023 builtin/log.c:1790
+#: builtin/submodule--helper.c:1418 builtin/submodule--helper.c:1428
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "impossibile creare la directory '%s'"
@@ -5695,20 +5750,20 @@ msgstr "Risoluzione per '%s' dimenticata\n"
 msgid "unable to open rr-cache directory"
 msgstr "impossibile aprire la directory cache rr"
 
-#: revision.c:2476
+#: revision.c:2507
 msgid "your current branch appears to be broken"
 msgstr "sembra che il tuo branch corrente sia rotto"
 
-#: revision.c:2479
+#: revision.c:2510
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr "il tuo branch corrente '%s' non ha ancora commit"
 
-#: revision.c:2679
+#: revision.c:2710
 msgid "--first-parent is incompatible with --bisect"
 msgstr "--first-parent non è compatibile con --bisect"
 
-#: revision.c:2683
+#: revision.c:2714
 msgid "-L does not yet support diff formats besides -p and -s"
 msgstr "-L non supporta ancora formati diff oltre a -p e -s"
 
@@ -5780,24 +5835,29 @@ msgstr "modalità pulizia messaggio commit non valida: '%s'"
 msgid "could not delete '%s'"
 msgstr "impossibile eliminare '%s'"
 
-#: sequencer.c:318
+#: sequencer.c:311 builtin/rebase.c:759 builtin/rebase.c:1645 builtin/rm.c:369
+#, c-format
+msgid "could not remove '%s'"
+msgstr "impossibile rimuovere '%s'"
+
+#: sequencer.c:321
 msgid "revert"
 msgstr "revert"
 
-#: sequencer.c:320
+#: sequencer.c:323
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:322
+#: sequencer.c:325
 msgid "rebase -i"
 msgstr "rebase -i"
 
-#: sequencer.c:324
+#: sequencer.c:327
 #, c-format
 msgid "unknown action: %d"
 msgstr "azione sconosciuta: %d"
 
-#: sequencer.c:382
+#: sequencer.c:385
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -5805,7 +5865,7 @@ msgstr ""
 "dopo aver risolto i conflitti, contrassegna i percorsi corretti\n"
 "con 'git add <path>' o 'git rm <path>'"
 
-#: sequencer.c:385
+#: sequencer.c:388
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -5815,44 +5875,44 @@ msgstr ""
 "con 'git add <path>' o 'git rm <path>' ed esegui\n"
 "il commit del risultato con 'git commit'"
 
-#: sequencer.c:398 sequencer.c:2801
+#: sequencer.c:401 sequencer.c:2909
 #, c-format
 msgid "could not lock '%s'"
 msgstr "impossibile bloccare '%s'"
 
-#: sequencer.c:405
+#: sequencer.c:408
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "impossibile scrivere il carattere di fine riga in '%s'"
 
-#: sequencer.c:410 sequencer.c:2684 sequencer.c:2807 sequencer.c:2821
-#: sequencer.c:3084
+#: sequencer.c:413 sequencer.c:2714 sequencer.c:2915 sequencer.c:2929
+#: sequencer.c:3192
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr "finalizzazione di '%s' non riuscita"
 
-#: sequencer.c:433 sequencer.c:978 sequencer.c:1652 sequencer.c:2704
-#: sequencer.c:3066 sequencer.c:3175 builtin/am.c:245 builtin/commit.c:760
-#: builtin/merge.c:1115 builtin/rebase.c:567
+#: sequencer.c:436 sequencer.c:981 sequencer.c:1655 sequencer.c:2734
+#: sequencer.c:3174 sequencer.c:3283 builtin/am.c:245 builtin/commit.c:763
+#: builtin/merge.c:1112 builtin/rebase.c:567
 #, c-format
 msgid "could not read '%s'"
 msgstr "impossibile leggere '%s'"
 
-#: sequencer.c:459
+#: sequencer.c:462
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "le tue modifiche locali sarebbero sovrascritte da %s."
 
-#: sequencer.c:463
+#: sequencer.c:466
 msgid "commit your changes or stash them to proceed."
 msgstr "esegui il commit delle modifiche o lo stash per procedere."
 
-#: sequencer.c:495
+#: sequencer.c:498
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s: fast forward"
 
-#: sequencer.c:534 builtin/tag.c:555
+#: sequencer.c:537 builtin/tag.c:565
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Modalità pulizia non valida: %s"
@@ -5860,70 +5920,70 @@ msgstr "Modalità pulizia non valida: %s"
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase -i".
 #.
-#: sequencer.c:629
+#: sequencer.c:632
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: impossibile scrivere il nuovo file indice"
 
-#: sequencer.c:646
+#: sequencer.c:649
 msgid "unable to update cache tree"
 msgstr "impossibile aggiornare l'albero cache"
 
-#: sequencer.c:660
+#: sequencer.c:663
 msgid "could not resolve HEAD commit"
 msgstr "impossibile risolvere il commit HEAD"
 
-#: sequencer.c:740
+#: sequencer.c:743
 #, c-format
 msgid "no key present in '%.*s'"
 msgstr "nessuna chiave presente in '%.*s'"
 
-#: sequencer.c:751
+#: sequencer.c:754
 #, c-format
 msgid "unable to dequote value of '%s'"
 msgstr "impossibile rimuovere gli apici dal valore di '%s'"
 
-#: sequencer.c:788 wrapper.c:227 wrapper.c:397 builtin/am.c:706
-#: builtin/am.c:798 builtin/merge.c:1112 builtin/rebase.c:1035
+#: sequencer.c:791 wrapper.c:227 wrapper.c:397 builtin/am.c:706
+#: builtin/am.c:798 builtin/merge.c:1109 builtin/rebase.c:1045
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "impossibile aprire '%s' in lettura"
 
-#: sequencer.c:798
+#: sequencer.c:801
 msgid "'GIT_AUTHOR_NAME' already given"
 msgstr "'GIT_AUTHOR_NAME' già specificato"
 
-#: sequencer.c:803
+#: sequencer.c:806
 msgid "'GIT_AUTHOR_EMAIL' already given"
 msgstr "'GIT_AUTHOR_EMAIL' già specificato"
 
-#: sequencer.c:808
+#: sequencer.c:811
 msgid "'GIT_AUTHOR_DATE' already given"
 msgstr "'GIT_AUTHOR_DATE' già specificato"
 
-#: sequencer.c:812
+#: sequencer.c:815
 #, c-format
 msgid "unknown variable '%s'"
 msgstr "variabile '%s' sconosciuta"
 
-#: sequencer.c:817
+#: sequencer.c:820
 msgid "missing 'GIT_AUTHOR_NAME'"
 msgstr "'GIT_AUTHOR_NAME' mancante"
 
-#: sequencer.c:819
+#: sequencer.c:822
 msgid "missing 'GIT_AUTHOR_EMAIL'"
 msgstr "'GIT_AUTHOR_EMAIL' mancante"
 
-#: sequencer.c:821
+#: sequencer.c:824
 msgid "missing 'GIT_AUTHOR_DATE'"
 msgstr "'GIT_AUTHOR_DATE' mancante"
 
-#: sequencer.c:881
+#: sequencer.c:884
 #, c-format
 msgid "invalid date format '%s' in '%s'"
 msgstr "formato data '%s' non valido in '%s'"
 
-#: sequencer.c:898
+#: sequencer.c:901
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -5953,15 +6013,15 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:992
+#: sequencer.c:995
 msgid "writing root commit"
 msgstr "scrittura commit radice in corso"
 
-#: sequencer.c:1213
+#: sequencer.c:1216
 msgid "'prepare-commit-msg' hook failed"
 msgstr "hook 'prepare-commit-msg' non riuscito"
 
-#: sequencer.c:1220
+#: sequencer.c:1223
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -5975,20 +6035,20 @@ msgid ""
 "\n"
 "    git commit --amend --reset-author\n"
 msgstr ""
-"Il tuo nome e l'indirizzo e-mail sono stati configurati "
-"automaticamente usando\n"
+"Il tuo nome e l'indirizzo e-mail sono stati configurati automaticamente "
+"usando\n"
 "il tuo nome utente ed il nome host. Per favore, verifica che siano esatti.\n"
 "È possibile eliminare questo messaggio impostandoli esplicitamente.\n"
 "Esegui il seguente comando e segui le istruzioni fornite nel tuo editor\n"
 "per modificare il file di configurazione:\n"
 "\n"
 "    git config --global --edit\n"
-"Dopo questa operazione, puoi ripristinare l'identità usata in questo "
-"commit con:\n"
+"Dopo questa operazione, puoi ripristinare l'identità usata in questo commit "
+"con:\n"
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1233
+#: sequencer.c:1236
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -6001,322 +6061,365 @@ msgid ""
 "\n"
 "    git commit --amend --reset-author\n"
 msgstr ""
-"Il tuo nome e l'indirizzo e-mail sono stati configurati "
-"automaticamente usando\n"
+"Il tuo nome e l'indirizzo e-mail sono stati configurati automaticamente "
+"usando\n"
 "il tuo nome utente ed il nome host. Per favore, verifica che siano esatti.\n"
 "È possibile eliminare questo messaggio impostandoli esplicitamente:\n"
 "\n"
 "    git config --global user.name \"Il tuo nome\"\n"
 "    git config --global user.email tu@esempio.com\n"
 "\n"
-"Dopo questa operazione, puoi ripristinare l'identità usata in questo "
-"commit con:\n"
+"Dopo questa operazione, puoi ripristinare l'identità usata in questo commit "
+"con:\n"
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1275
+#: sequencer.c:1278
 msgid "couldn't look up newly created commit"
 msgstr "impossibile trovare il commit appena creato"
 
-#: sequencer.c:1277
+#: sequencer.c:1280
 msgid "could not parse newly created commit"
 msgstr "impossibile analizzare il commit appena creato"
 
-#: sequencer.c:1323
+#: sequencer.c:1326
 msgid "unable to resolve HEAD after creating commit"
 msgstr "impossibile risolvere HEAD dopo la creazione del commit"
 
-#: sequencer.c:1325
+#: sequencer.c:1328
 msgid "detached HEAD"
 msgstr "HEAD scollegato"
 
-#: sequencer.c:1329
+#: sequencer.c:1332
 msgid " (root-commit)"
 msgstr " (commit radice)"
 
-#: sequencer.c:1350
+#: sequencer.c:1353
 msgid "could not parse HEAD"
 msgstr "impossibile analizzare HEAD"
 
-#: sequencer.c:1352
+#: sequencer.c:1355
 #, c-format
 msgid "HEAD %s is not a commit!"
 msgstr "L'HEAD %s non è un commit!"
 
-#: sequencer.c:1356 builtin/commit.c:1551
+#: sequencer.c:1359 builtin/commit.c:1571
 msgid "could not parse HEAD commit"
 msgstr "impossibile analizzare il commit HEAD"
 
-#: sequencer.c:1408 sequencer.c:2001
+#: sequencer.c:1411 sequencer.c:2004
 msgid "unable to parse commit author"
 msgstr "impossibile analizzare l'autore del commit"
 
-#: sequencer.c:1418 builtin/am.c:1572 builtin/merge.c:688
+#: sequencer.c:1421 builtin/am.c:1573 builtin/merge.c:684
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree non è riuscito a scrivere un albero"
 
-#: sequencer.c:1435 sequencer.c:1496
+#: sequencer.c:1438 sequencer.c:1499
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr "impossibile leggere il messaggio di commit da '%s'"
 
-#: sequencer.c:1462 builtin/am.c:1594 builtin/commit.c:1650 builtin/merge.c:882
-#: builtin/merge.c:906
+#: sequencer.c:1465 builtin/am.c:1595 builtin/commit.c:1670 builtin/merge.c:878
+#: builtin/merge.c:903
 msgid "failed to write commit object"
 msgstr "scrittura dell'oggetto del commit non riuscita"
 
-#: sequencer.c:1523
+#: sequencer.c:1526
 #, c-format
 msgid "could not parse commit %s"
 msgstr "impossibile analizzare il commit %s"
 
-#: sequencer.c:1528
+#: sequencer.c:1531
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr "impossibile analizzare il commit genitore %s"
 
-#: sequencer.c:1602 sequencer.c:1712
+#: sequencer.c:1605 sequencer.c:1715
 #, c-format
 msgid "unknown command: %d"
 msgstr "comando sconosciuto: %d"
 
-#: sequencer.c:1659 sequencer.c:1684
+#: sequencer.c:1662 sequencer.c:1687
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Questa è una combinazione di %d commit."
 
-#: sequencer.c:1669
+#: sequencer.c:1672
 msgid "need a HEAD to fixup"
 msgstr "è necessaria un'HEAD per il fixup"
 
-#: sequencer.c:1671 sequencer.c:3111
+#: sequencer.c:1674 sequencer.c:3219
 msgid "could not read HEAD"
 msgstr "impossibile leggere l'HEAD"
 
-#: sequencer.c:1673
+#: sequencer.c:1676
 msgid "could not read HEAD's commit message"
 msgstr "impossibile leggere il messaggio di commit dell'HEAD"
 
-#: sequencer.c:1679
+#: sequencer.c:1682
 #, c-format
 msgid "cannot write '%s'"
 msgstr "impossibile scrivere '%s'"
 
-#: sequencer.c:1686 git-rebase--preserve-merges.sh:441
+#: sequencer.c:1689 git-rebase--preserve-merges.sh:496
 msgid "This is the 1st commit message:"
 msgstr "Questo è il primo messaggio di commit:"
 
-#: sequencer.c:1694
+#: sequencer.c:1697
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "impossibile leggere il messaggio di commit di %s"
 
-#: sequencer.c:1701
+#: sequencer.c:1704
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Questo è il messaggio di commit numero %d:"
 
-#: sequencer.c:1707
+#: sequencer.c:1710
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Il messaggio di commit numero %d sarà saltato:"
 
-#: sequencer.c:1795
+#: sequencer.c:1798
 msgid "your index file is unmerged."
 msgstr "il file indice non è stato sottoposto a merge."
 
-#: sequencer.c:1802
+#: sequencer.c:1805
 msgid "cannot fixup root commit"
 msgstr "impossibile eseguire il fixup sul commit radice"
 
-#: sequencer.c:1821
+#: sequencer.c:1824
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr "il commit %s è un merge ma non è stata specificata l'opzione -m."
 
-#: sequencer.c:1829 sequencer.c:1837
+#: sequencer.c:1832 sequencer.c:1840
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "il commit %s non ha il genitore %d"
 
-#: sequencer.c:1843
+#: sequencer.c:1846
 #, c-format
 msgid "cannot get commit message for %s"
 msgstr "impossibile ottenere il messaggio di commit per %s"
 
 #. TRANSLATORS: The first %s will be a "todo" command like
 #. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:1862
+#: sequencer.c:1865
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s: impossibile analizzare il commit genitore %s"
 
-#: sequencer.c:1927
+#: sequencer.c:1930
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "impossibile ridenominare '%s' in '%s'"
 
-#: sequencer.c:1982
+#: sequencer.c:1985
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "non è stato possibile eseguire il revert di %s... %s"
 
-#: sequencer.c:1983
+#: sequencer.c:1986
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "non è stato possibile applicare %s... %s"
 
-#: sequencer.c:2042
+#: sequencer.c:2045
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s: lettura dell'indice non riuscita"
 
-#: sequencer.c:2049
+#: sequencer.c:2052
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s: aggiornamento dell'indice non riuscito"
 
-#: sequencer.c:2118
+#: sequencer.c:2128
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s non accetta argomenti: '%s'"
 
-#: sequencer.c:2127
+#: sequencer.c:2137
 #, c-format
 msgid "missing arguments for %s"
 msgstr "argomenti mancanti per %s"
 
-#: sequencer.c:2164
+#: sequencer.c:2174
 #, c-format
 msgid "could not parse '%.*s'"
 msgstr "impossibile analizzare '%.*s'"
 
-#: sequencer.c:2226
+#: sequencer.c:2228
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "riga %d non valida: %.*s"
 
-#: sequencer.c:2237
+#: sequencer.c:2239
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "impossibile eseguire '%s' senza un commit precedente"
 
-#: sequencer.c:2285 builtin/rebase.c:153 builtin/rebase.c:178
+#: sequencer.c:2287 builtin/rebase.c:153 builtin/rebase.c:178
 #: builtin/rebase.c:204 builtin/rebase.c:229
 #, c-format
 msgid "could not read '%s'."
 msgstr "impossibile leggere '%s'."
 
-#: sequencer.c:2360
+#: sequencer.c:2323
+msgid "cancelling a cherry picking in progress"
+msgstr "annullo un'operazione di cherry-pick in corso"
+
+#: sequencer.c:2330
+msgid "cancelling a revert in progress"
+msgstr "annullo un'operazione di revert in corso"
+
+#: sequencer.c:2364
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "correggi la situazione usando 'git rebase --edit-todo'."
 
-#: sequencer.c:2362
+#: sequencer.c:2366
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "foglio istruzioni inutilizzabile: '%s'"
 
-#: sequencer.c:2367
+#: sequencer.c:2371
 msgid "no commits parsed."
 msgstr "nessun commit analizzato."
 
-#: sequencer.c:2378
+#: sequencer.c:2382
 msgid "cannot cherry-pick during a revert."
 msgstr "impossibile eseguire un cherry-pick durante un revert."
 
-#: sequencer.c:2380
+#: sequencer.c:2384
 msgid "cannot revert during a cherry-pick."
 msgstr "impossibile eseguire un revert durante un cherry-pick."
 
-#: sequencer.c:2462
+#: sequencer.c:2466
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "valore non valido per %s: %s"
 
-#: sequencer.c:2549
+#: sequencer.c:2553
 msgid "unusable squash-onto"
 msgstr "squash-onto inutilizzabile"
 
-#: sequencer.c:2565
+#: sequencer.c:2569
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "foglio opzioni malformati: '%s'"
 
-#: sequencer.c:2648 sequencer.c:4227
+#: sequencer.c:2652 sequencer.c:4351
 msgid "empty commit set passed"
 msgstr "è stato passato un insieme di commit vuoto"
 
-#: sequencer.c:2656
-msgid "a cherry-pick or revert is already in progress"
-msgstr "è già in corso un'operazione di cherry-pick o di revert"
+#: sequencer.c:2668
+msgid "revert is already in progress"
+msgstr "un'operazione di revert è già in corso"
 
-#: sequencer.c:2657
-msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
-msgstr "prova \"git cherry-pick (--continue | --quit | --abort)\""
+#: sequencer.c:2670
+#, c-format
+msgid "try \"git revert (--continue | %s--abort | --quit)\""
+msgstr "prova \"git revert (--continue | %s--abort | --quit)\""
+
+#: sequencer.c:2673
+msgid "cherry-pick is already in progress"
+msgstr "un'operazione di cherry-pick è già in corso"
+
+#: sequencer.c:2675
+#, c-format
+msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
+msgstr "prova \"git cherry-pick (--continue | %s--abort | --quit)\""
 
-#: sequencer.c:2660
+#: sequencer.c:2689
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "impossibile creare la directory sequencer '%s'"
 
-#: sequencer.c:2674
+#: sequencer.c:2704
 msgid "could not lock HEAD"
 msgstr "impossibile bloccare HEAD"
 
-#: sequencer.c:2729 sequencer.c:3979
+#: sequencer.c:2764 sequencer.c:4103
 msgid "no cherry-pick or revert in progress"
 msgstr "nessuna operazione di cherry-pick o revert in corso"
 
-#: sequencer.c:2731
+#: sequencer.c:2766 sequencer.c:2777
 msgid "cannot resolve HEAD"
 msgstr "impossibile risolvere HEAD"
 
-#: sequencer.c:2733 sequencer.c:2768
+#: sequencer.c:2768 sequencer.c:2812
 msgid "cannot abort from a branch yet to be born"
 msgstr ""
 "impossibile interrompere l'operazione da un branch che deve essere ancora "
 "creato"
 
-#: sequencer.c:2754 builtin/grep.c:732
+#: sequencer.c:2798 builtin/grep.c:734
 #, c-format
 msgid "cannot open '%s'"
 msgstr "impossibile aprire '%s'"
 
-#: sequencer.c:2756
+#: sequencer.c:2800
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "impossibile leggere '%s': %s"
 
-#: sequencer.c:2757
+#: sequencer.c:2801
 msgid "unexpected end of file"
 msgstr "fine del file inattesa"
 
-#: sequencer.c:2763
+#: sequencer.c:2807
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr ""
 "il file '%s' in cui è stato salvato l'HEAD prima del cherry pick è corrotto"
 
-#: sequencer.c:2774
+#: sequencer.c:2818
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr ""
 "Sembra che tu abbia spostato l'HEAD. Non eseguo il rewind, controlla l'HEAD!"
 
-#: sequencer.c:2903 sequencer.c:3894
+#: sequencer.c:2859
+msgid "no revert in progress"
+msgstr "nessun revert in corso"
+
+#: sequencer.c:2867
+msgid "no cherry-pick in progress"
+msgstr "nessun cherry-pick in corso"
+
+#: sequencer.c:2877
+msgid "failed to skip the commit"
+msgstr "salto del commit non riuscito"
+
+#: sequencer.c:2884
+msgid "there is nothing to skip"
+msgstr "non c'è nulla da saltare"
+
+#: sequencer.c:2887
+#, c-format
+msgid ""
+"have you committed already?\n"
+"try \"git %s --continue\""
+msgstr ""
+"hai già eseguito il commit?\n"
+"prova \"git %s --continue\""
+
+#: sequencer.c:3011 sequencer.c:4015
 #, c-format
 msgid "could not update %s"
 msgstr "impossibile aggiornare %s"
 
-#: sequencer.c:2941 sequencer.c:3874
+#: sequencer.c:3049 sequencer.c:3995
 msgid "cannot read HEAD"
 msgstr "impossibile leggere l'HEAD"
 
-#: sequencer.c:2958
+#: sequencer.c:3066
 #, c-format
 msgid "unable to copy '%s' to '%s'"
 msgstr "impossibile copiare '%s' in '%s'"
 
-#: sequencer.c:2966
+#: sequencer.c:3074
 #, c-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -6335,27 +6438,27 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:2976
+#: sequencer.c:3084
 #, c-format
 msgid "Could not apply %s... %.*s"
 msgstr "Impossibile applicare %s... %.*s"
 
-#: sequencer.c:2983
+#: sequencer.c:3091
 #, c-format
 msgid "Could not merge %.*s"
 msgstr "Impossibile eseguire il merge di %.*s"
 
-#: sequencer.c:2997 sequencer.c:3001 builtin/difftool.c:633
+#: sequencer.c:3105 sequencer.c:3109 builtin/difftool.c:633
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "impossibile copiare '%s' in '%s'"
 
-#: sequencer.c:3023 sequencer.c:3446 builtin/rebase.c:839 builtin/rebase.c:1580
-#: builtin/rebase.c:1940 builtin/rebase.c:1995
+#: sequencer.c:3131 sequencer.c:3558 builtin/rebase.c:849 builtin/rebase.c:1582
+#: builtin/rebase.c:1953 builtin/rebase.c:2008
 msgid "could not read index"
 msgstr "impossibile leggere l'indice"
 
-#: sequencer.c:3028
+#: sequencer.c:3136
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -6370,11 +6473,11 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:3034
+#: sequencer.c:3142
 msgid "and made changes to the index and/or the working tree\n"
 msgstr "e sono state apportate modifiche all'indice e/o all'albero di lavoro\n"
 
-#: sequencer.c:3040
+#: sequencer.c:3148
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -6391,76 +6494,76 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:3101
+#: sequencer.c:3209
 #, c-format
 msgid "illegal label name: '%.*s'"
 msgstr "nome etichetta illecito: '%.*s'"
 
-#: sequencer.c:3155
+#: sequencer.c:3263
 msgid "writing fake root commit"
 msgstr "scrittura commit radice falso in corso"
 
-#: sequencer.c:3160
+#: sequencer.c:3268
 msgid "writing squash-onto"
 msgstr "scrittura squash-onto in corso"
 
-#: sequencer.c:3198 builtin/rebase.c:844 builtin/rebase.c:850
+#: sequencer.c:3306 builtin/rebase.c:854 builtin/rebase.c:860
 #, c-format
 msgid "failed to find tree of %s"
 msgstr "impossibile trovare l'albero di %s"
 
-#: sequencer.c:3216 builtin/rebase.c:863
+#: sequencer.c:3324 builtin/rebase.c:873
 msgid "could not write index"
 msgstr "impossibile scrivere l'indice"
 
-#: sequencer.c:3243
+#: sequencer.c:3351
 #, c-format
 msgid "could not resolve '%s'"
 msgstr "impossibile risolvere '%s'"
 
-#: sequencer.c:3271
+#: sequencer.c:3379
 msgid "cannot merge without a current revision"
 msgstr "impossibile eseguire il merge senza una revisione corrente"
 
-#: sequencer.c:3293
+#: sequencer.c:3401
 #, c-format
 msgid "unable to parse '%.*s'"
 msgstr "impossibile analizzare '%.*s'"
 
-#: sequencer.c:3302
+#: sequencer.c:3410
 #, c-format
 msgid "nothing to merge: '%.*s'"
 msgstr "non c'è nulla di cui eseguire il merge: '%.*s'"
 
-#: sequencer.c:3314
+#: sequencer.c:3422
 msgid "octopus merge cannot be executed on top of a [new root]"
 msgstr "il merge octopus non può essere eseguito su un [nuovo commit radice]"
 
-#: sequencer.c:3329
+#: sequencer.c:3437
 #, c-format
 msgid "could not get commit message of '%s'"
 msgstr "impossibile ottenere il messaggio di commit per '%s'"
 
-#: sequencer.c:3478
+#: sequencer.c:3590
 #, c-format
 msgid "could not even attempt to merge '%.*s'"
 msgstr "non è stato nemmeno possibile tentare di eseguire il merge di '%.*s'"
 
-#: sequencer.c:3494
+#: sequencer.c:3606
 msgid "merge: Unable to write new index file"
 msgstr "merge: impossibile scrivere il nuovo file indice"
 
-#: sequencer.c:3562 builtin/rebase.c:711
+#: sequencer.c:3675 builtin/rebase.c:711
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Stash automatico applicato.\n"
 
-#: sequencer.c:3574
+#: sequencer.c:3687
 #, c-format
 msgid "cannot store %s"
 msgstr "impossibile memorizzare %s"
 
-#: sequencer.c:3577 builtin/rebase.c:727
+#: sequencer.c:3690 builtin/rebase.c:727 git-rebase--preserve-merges.sh:113
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -6471,31 +6574,31 @@ msgstr ""
 "Le tue modifiche sono al sicuro nello stash.\n"
 "Puoi eseguire \"git stash pop\" o \"git stash drop\" in qualunque momento.\n"
 
-#: sequencer.c:3638
+#: sequencer.c:3751
 #, c-format
 msgid "could not checkout %s"
 msgstr "impossibile eseguire il checkout di %s"
 
-#: sequencer.c:3652
+#: sequencer.c:3765
 #, c-format
 msgid "%s: not a valid OID"
 msgstr "%s: non è un OID valido"
 
-#: sequencer.c:3657 git-rebase--preserve-merges.sh:724
+#: sequencer.c:3770 git-rebase--preserve-merges.sh:779
 msgid "could not detach HEAD"
 msgstr "impossibile scollegare l'HEAD"
 
-#: sequencer.c:3672
+#: sequencer.c:3785
 #, c-format
 msgid "Stopped at HEAD\n"
 msgstr "Fermato a HEAD\n"
 
-#: sequencer.c:3674
+#: sequencer.c:3787
 #, c-format
 msgid "Stopped at %s\n"
 msgstr "Fermato a %s\n"
 
-#: sequencer.c:3682
+#: sequencer.c:3795
 #, c-format
 msgid ""
 "Could not execute the todo command\n"
@@ -6517,49 +6620,49 @@ msgstr ""
 "    git rebase --edit-todo\n"
 "    git rebase --continue\n"
 
-#: sequencer.c:3759
+#: sequencer.c:3877
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "Fermato a %s... %.*s\n"
 
-#: sequencer.c:3837
+#: sequencer.c:3958
 #, c-format
 msgid "unknown command %d"
 msgstr "comando %d sconosciuto"
 
-#: sequencer.c:3882
+#: sequencer.c:4003
 msgid "could not read orig-head"
 msgstr "impossibile leggere orig-head"
 
-#: sequencer.c:3887
+#: sequencer.c:4008
 msgid "could not read 'onto'"
 msgstr "impossibile leggere 'onto'"
 
-#: sequencer.c:3901
+#: sequencer.c:4022
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "impossibile aggiornare l'HEAD a %s"
 
-#: sequencer.c:3991
+#: sequencer.c:4115
 msgid "cannot rebase: You have unstaged changes."
 msgstr ""
 "impossibile eseguire il rebase: ci sono delle modifiche non in staging."
 
-#: sequencer.c:4000
+#: sequencer.c:4124
 msgid "cannot amend non-existing commit"
 msgstr "impossibile modificare un commit inesistente"
 
-#: sequencer.c:4002
+#: sequencer.c:4126
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "file non valido: '%s'"
 
-#: sequencer.c:4004
+#: sequencer.c:4128
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "contenuti non validi: '%s'"
 
-#: sequencer.c:4007
+#: sequencer.c:4131
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -6570,42 +6673,42 @@ msgstr ""
 "di lavoro. Eseguine prima il commit e quindi esegui nuovamente 'git rebase\n"
 "--continue'."
 
-#: sequencer.c:4043 sequencer.c:4081
+#: sequencer.c:4167 sequencer.c:4205
 #, c-format
 msgid "could not write file: '%s'"
 msgstr "impossibile scrivere il file: '%s'"
 
-#: sequencer.c:4096
+#: sequencer.c:4220
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "impossibile rimuovere CHERRY_PICK_HEAD"
 
-#: sequencer.c:4103
+#: sequencer.c:4227
 msgid "could not commit staged changes."
 msgstr "impossibile eseguire il commit delle modifiche in staging."
 
-#: sequencer.c:4204
+#: sequencer.c:4328
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s: impossibile eseguire il cherry pick di un %s"
 
-#: sequencer.c:4208
+#: sequencer.c:4332
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s: revisione non valida"
 
-#: sequencer.c:4243
+#: sequencer.c:4367
 msgid "can't revert as initial commit"
 msgstr "impossibile eseguire il revert come commit iniziale"
 
-#: sequencer.c:4686
+#: sequencer.c:4810
 msgid "make_script: unhandled options"
 msgstr "make_script: opzioni non gestite"
 
-#: sequencer.c:4689
+#: sequencer.c:4813
 msgid "make_script: error preparing revisions"
 msgstr "make_script: errore durante la preparazione delle revisioni"
 
-#: sequencer.c:4847
+#: sequencer.c:4971
 msgid ""
 "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
 "continue'.\n"
@@ -6615,15 +6718,15 @@ msgstr ""
 "eseguire 'git rebase --continue'.\n"
 "Oppure puoi interrompere il rebase con 'git rebase --abort'.\n"
 
-#: sequencer.c:4959 sequencer.c:4976
+#: sequencer.c:5083 sequencer.c:5100
 msgid "nothing to do"
 msgstr "nulla da fare"
 
-#: sequencer.c:4990
+#: sequencer.c:5114
 msgid "could not skip unnecessary pick commands"
 msgstr "impossibile saltare i comandi pick non necessari"
 
-#: sequencer.c:5073
+#: sequencer.c:5197
 msgid "the script was already rearranged."
 msgstr "lo script è già stato riordinato."
 
@@ -6852,196 +6955,201 @@ msgstr "il repository di riferimento '%s' è shallow"
 msgid "reference repository '%s' is grafted"
 msgstr "il repository di riferimento '%s' è un graft"
 
-#: sha1-file.c:846
+#: sha1-file.c:792
+#, c-format
+msgid "invalid line while parsing alternate refs: %s"
+msgstr "riga non valida durante l'analisi dei riferimenti degli alternati: %s"
+
+#: sha1-file.c:943
 #, c-format
 msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
 msgstr "tento di eseguire mmap %<PRIuMAX> al di sopra del limite %<PRIuMAX>"
 
-#: sha1-file.c:871
+#: sha1-file.c:968
 msgid "mmap failed"
 msgstr "mmap non riuscita"
 
-#: sha1-file.c:1035
+#: sha1-file.c:1132
 #, c-format
 msgid "object file %s is empty"
 msgstr "l'oggetto %s è vuoto"
 
-#: sha1-file.c:1159 sha1-file.c:2297
+#: sha1-file.c:1256 sha1-file.c:2395
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr "oggetto sciolto '%s' corrotto"
 
-#: sha1-file.c:1161 sha1-file.c:2301
+#: sha1-file.c:1258 sha1-file.c:2399
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr "dati inutilizzabili presenti alla fine dell'oggetto sciolto '%s'"
 
-#: sha1-file.c:1203
+#: sha1-file.c:1300
 msgid "invalid object type"
 msgstr "tipo oggetto non valido"
 
-#: sha1-file.c:1287
+#: sha1-file.c:1384
 #, c-format
 msgid "unable to unpack %s header with --allow-unknown-type"
 msgstr "impossibile decomprimere l'intestazione %s con --allow-unknown-type"
 
-#: sha1-file.c:1290
+#: sha1-file.c:1387
 #, c-format
 msgid "unable to unpack %s header"
 msgstr "impossibile decomprimere l'intestazione %s"
 
-#: sha1-file.c:1296
+#: sha1-file.c:1393
 #, c-format
 msgid "unable to parse %s header with --allow-unknown-type"
 msgstr "impossibile analizzare l'intestazione %s con --allow-unknown-type"
 
-#: sha1-file.c:1299
+#: sha1-file.c:1396
 #, c-format
 msgid "unable to parse %s header"
 msgstr "impossibile analizzare l'intestazione %s"
 
-#: sha1-file.c:1490
+#: sha1-file.c:1587
 #, c-format
 msgid "failed to read object %s"
 msgstr "lettura dell'oggetto %s non riuscita"
 
-#: sha1-file.c:1494
+#: sha1-file.c:1591
 #, c-format
 msgid "replacement %s not found for %s"
 msgstr "%s sostitutivo non trovato per %s"
 
-#: sha1-file.c:1498
+#: sha1-file.c:1595
 #, c-format
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr "l'oggetto sciolto %s (salvato in %s) è corrotto"
 
-#: sha1-file.c:1502
+#: sha1-file.c:1599
 #, c-format
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr "l'oggetto archiviato %s (salvato in %s) è corrotto"
 
-#: sha1-file.c:1604
+#: sha1-file.c:1702
 #, c-format
 msgid "unable to write file %s"
 msgstr "impossibile scrivere il file %s"
 
-#: sha1-file.c:1611
+#: sha1-file.c:1709
 #, c-format
 msgid "unable to set permission to '%s'"
 msgstr "impossibile impostare i permessi a '%s'"
 
-#: sha1-file.c:1618
+#: sha1-file.c:1716
 msgid "file write error"
 msgstr "errore di scrittura del file"
 
-#: sha1-file.c:1637
+#: sha1-file.c:1735
 msgid "error when closing loose object file"
 msgstr "errore durante la chiusura del file oggetto sciolto"
 
-#: sha1-file.c:1702
+#: sha1-file.c:1800
 #, c-format
 msgid "insufficient permission for adding an object to repository database %s"
 msgstr ""
 "permessi non sufficienti per l'aggiunta di un oggetto al database repository "
 "%s"
 
-#: sha1-file.c:1704
+#: sha1-file.c:1802
 msgid "unable to create temporary file"
 msgstr "impossibile creare il file temporaneo"
 
-#: sha1-file.c:1728
+#: sha1-file.c:1826
 msgid "unable to write loose object file"
 msgstr "impossibile scrivere il file oggetto sciolto"
 
-#: sha1-file.c:1734
+#: sha1-file.c:1832
 #, c-format
 msgid "unable to deflate new object %s (%d)"
 msgstr "impossibile comprimere con deflate il nuovo oggetto %s (%d)"
 
-#: sha1-file.c:1738
+#: sha1-file.c:1836
 #, c-format
 msgid "deflateEnd on object %s failed (%d)"
 msgstr "deflateEnd non riuscita sull'oggetto %s (%d)"
 
-#: sha1-file.c:1742
+#: sha1-file.c:1840
 #, c-format
 msgid "confused by unstable object source data for %s"
 msgstr "sono confuso dall'origine dati oggetto non stabile per %s"
 
-#: sha1-file.c:1752 builtin/pack-objects.c:920
+#: sha1-file.c:1850 builtin/pack-objects.c:920
 #, c-format
 msgid "failed utime() on %s"
 msgstr "utime() di %s non riuscita"
 
-#: sha1-file.c:1827
+#: sha1-file.c:1925
 #, c-format
 msgid "cannot read object for %s"
 msgstr "impossibile leggere l'oggetto per %s"
 
-#: sha1-file.c:1867
+#: sha1-file.c:1965
 msgid "corrupt commit"
 msgstr "commit corrotto"
 
-#: sha1-file.c:1875
+#: sha1-file.c:1973
 msgid "corrupt tag"
 msgstr "tag corrotto"
 
-#: sha1-file.c:1974
+#: sha1-file.c:2072
 #, c-format
 msgid "read error while indexing %s"
 msgstr "errore di lettura durante l'indicizzazione di %s"
 
-#: sha1-file.c:1977
+#: sha1-file.c:2075
 #, c-format
 msgid "short read while indexing %s"
 msgstr "lettura troppo breve durante l'indicizzazione di %s"
 
-#: sha1-file.c:2050 sha1-file.c:2059
+#: sha1-file.c:2148 sha1-file.c:2157
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr "%s: inserimento del record nel database non riuscito"
 
-#: sha1-file.c:2065
+#: sha1-file.c:2163
 #, c-format
 msgid "%s: unsupported file type"
 msgstr "%s: tipo di file non supportato"
 
-#: sha1-file.c:2089
+#: sha1-file.c:2187
 #, c-format
 msgid "%s is not a valid object"
 msgstr "%s non è un oggetto valido"
 
-#: sha1-file.c:2091
+#: sha1-file.c:2189
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s non è un oggetto '%s' valido"
 
-#: sha1-file.c:2118 builtin/index-pack.c:154
+#: sha1-file.c:2216 builtin/index-pack.c:155
 #, c-format
 msgid "unable to open %s"
 msgstr "impossibile aprire %s"
 
-#: sha1-file.c:2308 sha1-file.c:2360
+#: sha1-file.c:2406 sha1-file.c:2458
 #, c-format
 msgid "hash mismatch for %s (expected %s)"
 msgstr "mancata corrispondenza per %s (atteso %s)"
 
-#: sha1-file.c:2332
+#: sha1-file.c:2430
 #, c-format
 msgid "unable to mmap %s"
 msgstr "impossibile eseguire mmap su %s"
 
-#: sha1-file.c:2337
+#: sha1-file.c:2435
 #, c-format
 msgid "unable to unpack header of %s"
 msgstr "impossibile decomprimere l'intestazione di %s"
 
-#: sha1-file.c:2343
+#: sha1-file.c:2441
 #, c-format
 msgid "unable to parse header of %s"
 msgstr "impossibile analizzare l'intestazione di %s"
 
-#: sha1-file.c:2354
+#: sha1-file.c:2452
 #, c-format
 msgid "unable to unpack contents of %s"
 msgstr "impossibile decomprimere i contenuti di %s"
@@ -7061,7 +7169,7 @@ msgid ""
 "because it will be ignored when you just specify 40-hex. These refs\n"
 "may be created by mistake. For example,\n"
 "\n"
-"  git checkout -b $br $(git rev-parse ...)\n"
+"  git switch -c $br $(git rev-parse ...)\n"
 "\n"
 "where \"$br\" is somehow empty and a 40-hex ref is created. Please\n"
 "examine these refs and maybe delete them. Turn this message off by\n"
@@ -7072,13 +7180,65 @@ msgstr ""
 "semplicemente 40 caratteri esadecimali. Questi riferimenti\n"
 "potrebbero essere creati per errore. Ad esempio:\n"
 "\n"
-"  git checkout -b $br $(git rev-parse ...)\n"
+"  git switch -c $br $(git rev-parse ...)\n"
 "\n"
 "dove \"$br\" è vuoto per qualche motivo e quindi viene creato un\n"
 "riferimento con 40 caratteri esadecimali. Esamina tali\n"
 "riferimenti ed eliminali se necessario. Disabilita questo\n"
 "messaggio eseguendo \"git config advice.objectNameWarning false\""
 
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte
+#: strbuf.c:821
+#, c-format
+msgid "%u.%2.2u GiB"
+msgstr "%u.%2.2u GiB"
+
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
+#: strbuf.c:823
+#, c-format
+msgid "%u.%2.2u GiB/s"
+msgstr "%u.%2.2u GiB/s"
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte
+#: strbuf.c:831
+#, c-format
+msgid "%u.%2.2u MiB"
+msgstr "%u.%2.2u MiB"
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
+#: strbuf.c:833
+#, c-format
+msgid "%u.%2.2u MiB/s"
+msgstr "%u.%2.2u MiB/s"
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte
+#: strbuf.c:840
+#, c-format
+msgid "%u.%2.2u KiB"
+msgstr "%u.%2.2u KiB"
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
+#: strbuf.c:842
+#, c-format
+msgid "%u.%2.2u KiB/s"
+msgstr "%u.%2.2u KiB/s"
+
+#. TRANSLATORS: IEC 80000-13:2008 byte
+#: strbuf.c:848
+#, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] "%u byte"
+msgstr[1] "%u byte"
+
+#. TRANSLATORS: IEC 80000-13:2008 byte/second
+#: strbuf.c:850
+#, c-format
+msgid "%u byte/s"
+msgid_plural "%u bytes/s"
+msgstr[0] "%u byte/s"
+msgstr[1] "%u byte/s"
+
 #: submodule.c:114 submodule.c:143
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
@@ -7114,7 +7274,7 @@ msgstr "Lo specificatore percorso '%s' è nel sottomodulo '%.*s'"
 msgid "submodule entry '%s' (%s) is a %s, not a commit"
 msgstr "la voce sottomodulo '%s' (%s) è un %s, non un commit"
 
-#: submodule.c:1147 builtin/branch.c:672 builtin/submodule--helper.c:1988
+#: submodule.c:1147 builtin/branch.c:680 builtin/submodule--helper.c:1989
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Impossibile risolvere HEAD come riferimento valido."
 
@@ -7155,7 +7315,7 @@ msgstr "il sottomodulo '%s' ha l'indice sporco"
 msgid "Submodule '%s' could not be updated."
 msgstr "Impossibile aggiornare il sottomodulo '%s'."
 
-#: submodule.c:2008
+#: submodule.c:2007
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -7163,12 +7323,12 @@ msgstr ""
 "relocate_gitdir non è supportata per il sottomodulo '%s' con più di un "
 "albero di lavoro"
 
-#: submodule.c:2020 submodule.c:2076
+#: submodule.c:2019 submodule.c:2074
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "impossibile ricercare il nome per il sottomodulo '%s'"
 
-#: submodule.c:2027
+#: submodule.c:2026
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -7179,16 +7339,16 @@ msgstr ""
 "'%s' a\n"
 "'%s'\n"
 
-#: submodule.c:2111
+#: submodule.c:2109
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr "impossibile eseguire l'azione ricorsivamente nel sottomodulo '%s'"
 
-#: submodule.c:2155
+#: submodule.c:2153
 msgid "could not start ls-files in .."
 msgstr "impossibile avviare ls-files in .."
 
-#: submodule.c:2194
+#: submodule.c:2192
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree ha restituito il valore di ritorno inatteso %d"
@@ -7362,15 +7522,10 @@ msgstr "Interrompo l'operazione."
 msgid "failed to push all needed submodules"
 msgstr "push di tutti i sottomoduli richiesti non riuscito"
 
-#: transport.c:1326 transport-helper.c:645
+#: transport.c:1340 transport-helper.c:645
 msgid "operation not supported by protocol"
 msgstr "operazione non supportata dal protocollo"
 
-#: transport.c:1430
-#, c-format
-msgid "invalid line while parsing alternate refs: %s"
-msgstr "riga non valida durante l'analisi dei riferimenti degli alternati: %s"
-
 #: transport-helper.c:51 transport-helper.c:80
 msgid "full write to remote helper failed"
 msgstr "scrittura completa verso l'helper remoto non riuscita"
@@ -7415,7 +7570,7 @@ msgstr "impossibile eseguire fast-import"
 msgid "error while running fast-import"
 msgstr "errore durante l'esecuzione di fast-import"
 
-#: transport-helper.c:533 transport-helper.c:1099
+#: transport-helper.c:533 transport-helper.c:1105
 #, c-format
 msgid "could not read ref %s"
 msgstr "impossibile leggere il riferimento %s"
@@ -7470,26 +7625,26 @@ msgstr "l'helper %s non supporta --signed=if-asked"
 msgid "helper %s does not support 'push-option'"
 msgstr "l'helper %s non supporta 'push-option'"
 
-#: transport-helper.c:939
+#: transport-helper.c:945
 msgid "remote-helper doesn't support push; refspec needed"
 msgstr ""
 "l'helper remoto non supporta il push; è necessario uno specificatore "
 "riferimento"
 
-#: transport-helper.c:944
+#: transport-helper.c:950
 #, c-format
 msgid "helper %s does not support 'force'"
 msgstr "l'helper %s non supporta 'force'"
 
-#: transport-helper.c:991
+#: transport-helper.c:997
 msgid "couldn't run fast-export"
 msgstr "impossibile eseguire fast-export"
 
-#: transport-helper.c:996
+#: transport-helper.c:1002
 msgid "error while running fast-export"
 msgstr "errore durante l'esecuzione di fast-export"
 
-#: transport-helper.c:1021
+#: transport-helper.c:1027
 #, c-format
 msgid ""
 "No refs in common and none specified; doing nothing.\n"
@@ -7498,47 +7653,47 @@ msgstr ""
 "Nessun riferimento in comune e nessuno specificato; non eseguo nulla.\n"
 "Forse dovresti specificare un branch come 'master'.\n"
 
-#: transport-helper.c:1085
+#: transport-helper.c:1091
 #, c-format
 msgid "malformed response in ref list: %s"
 msgstr "risposta malformata nell'elenco riferimenti: %s"
 
-#: transport-helper.c:1238
+#: transport-helper.c:1244
 #, c-format
 msgid "read(%s) failed"
 msgstr "read(%s) non riuscita"
 
-#: transport-helper.c:1265
+#: transport-helper.c:1271
 #, c-format
 msgid "write(%s) failed"
 msgstr "write(%s) non riuscita"
 
-#: transport-helper.c:1314
+#: transport-helper.c:1320
 #, c-format
 msgid "%s thread failed"
 msgstr "thread %s non riuscito"
 
-#: transport-helper.c:1318
+#: transport-helper.c:1324
 #, c-format
 msgid "%s thread failed to join: %s"
 msgstr "join non riuscita per il thread %s: %s"
 
-#: transport-helper.c:1337 transport-helper.c:1341
+#: transport-helper.c:1343 transport-helper.c:1347
 #, c-format
 msgid "can't start thread for copying data: %s"
 msgstr "impossibile avviare il thread per la copia dei dati: %s"
 
-#: transport-helper.c:1378
+#: transport-helper.c:1384
 #, c-format
 msgid "%s process failed to wait"
 msgstr "wait non riuscita per il processo %s"
 
-#: transport-helper.c:1382
+#: transport-helper.c:1388
 #, c-format
 msgid "%s process failed"
 msgstr "processo %s non riuscito"
 
-#: transport-helper.c:1400 transport-helper.c:1409
+#: transport-helper.c:1406 transport-helper.c:1415
 msgid "can't start thread for copying data"
 msgstr "impossibile avviare il thread per la copia dei dati"
 
@@ -7554,7 +7709,7 @@ msgstr "modo malformato nella voce dell'albero"
 msgid "empty filename in tree entry"
 msgstr "nome file vuoto nella voce dell'albero"
 
-#: tree-walk.c:116
+#: tree-walk.c:118
 msgid "too-short tree file"
 msgstr "file alber troppo corto"
 
@@ -7804,8 +7959,8 @@ msgid "Aborting\n"
 msgstr "Interrompo l'operazione\n"
 
 #: unpack-trees.c:318
-msgid "Checking out files"
-msgstr "Checkout dei file in corso"
+msgid "Updating files"
+msgstr "Aggiornamento dei file in corso"
 
 #: unpack-trees.c:350
 msgid ""
@@ -7847,35 +8002,35 @@ msgstr "numero di porta non valido"
 msgid "invalid '..' path segment"
 msgstr "parte percorso '..' non valida"
 
-#: worktree.c:255 builtin/am.c:2097
+#: worktree.c:258 builtin/am.c:2095
 #, c-format
 msgid "failed to read '%s'"
 msgstr "lettura di '%s' non riuscita"
 
-#: worktree.c:301
+#: worktree.c:304
 #, c-format
 msgid "'%s' at main working tree is not the repository directory"
 msgstr ""
 "'%s' nell'albero di lavoro principale non è la directory del repository"
 
-#: worktree.c:312
+#: worktree.c:315
 #, c-format
 msgid "'%s' file does not contain absolute path to the working tree location"
 msgstr ""
 "il file '%s' non contiene il percorso assoluto alla posizione dell'albero di "
 "lavoro"
 
-#: worktree.c:324
+#: worktree.c:327
 #, c-format
 msgid "'%s' does not exist"
 msgstr "'%s' non esiste"
 
-#: worktree.c:330
+#: worktree.c:333
 #, c-format
 msgid "'%s' is not a .git file, error code %d"
 msgstr "'%s' non è un file .git, codice d'errore %d"
 
-#: worktree.c:338
+#: worktree.c:341
 #, c-format
 msgid "'%s' does not point back to '%s'"
 msgstr "'%s' non punta a '%s'"
@@ -7894,167 +8049,173 @@ msgstr "impossibile accedere a '%s'"
 msgid "unable to get current working directory"
 msgstr "impossibile ottenere la directory di lavoro corrente"
 
-#: wt-status.c:156
+#: wt-status.c:158
 msgid "Unmerged paths:"
 msgstr "Percorsi non sottoposti a merge:"
 
-#: wt-status.c:183 wt-status.c:210
+#: wt-status.c:187 wt-status.c:219
+msgid "  (use \"git restore --staged <file>...\" to unstage)"
+msgstr ""
+"  (usa \"git restore --staged <file>...\" per rimuovere gli elementi"
+" dall'area di staging)"
+
+#: wt-status.c:190 wt-status.c:222
 #, c-format
-msgid "  (use \"git reset %s <file>...\" to unstage)"
+msgid "  (use \"git restore --source=%s --staged <file>...\" to unstage)"
 msgstr ""
-"  (usa \"git reset %s <file>...\" per rimuovere gli elementi dall'area di "
-"staging)"
+"  (usa \"git restore --source=%s --staged <file>...\" per rimuovere gli"
+" elementi dall'area di staging)"
 
-#: wt-status.c:185 wt-status.c:212
+#: wt-status.c:193 wt-status.c:225
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr ""
 "  (usa \"git rm --cached <file>...\" per rimuovere gli elementi dall'area di "
 "staging)"
 
-#: wt-status.c:189
+#: wt-status.c:197
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr ""
 "  (usa \"git add <file>...\" per contrassegnare il conflitto come risolto)"
 
-#: wt-status.c:191 wt-status.c:195
+#: wt-status.c:199 wt-status.c:203
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr ""
 "  (usa \"git add/rm <file>...\" come appropriato per contrassegnare il "
 "conflitto come risolto)"
 
-#: wt-status.c:193
+#: wt-status.c:201
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr ""
 "  (usa \"git rm <file>...\" per contrassegnare il conflitto come risolto)"
 
-#: wt-status.c:204 wt-status.c:1064
+#: wt-status.c:211 wt-status.c:1074
 msgid "Changes to be committed:"
 msgstr "Modifiche di cui verrà eseguito il commit:"
 
-#: wt-status.c:222 wt-status.c:1073
+#: wt-status.c:234 wt-status.c:1083
 msgid "Changes not staged for commit:"
 msgstr "Modifiche non nell'area di staging per il commit:"
 
-#: wt-status.c:226
+#: wt-status.c:238
 msgid "  (use \"git add <file>...\" to update what will be committed)"
 msgstr ""
 "  (usa \"git add <file>...\" per aggiornare gli elementi di cui sarà "
 "eseguito il commit)"
 
-#: wt-status.c:228
+#: wt-status.c:240
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 msgstr ""
 "  (usa \"git add/rm <file>...\" per aggiornare gli elementi di cui sarà "
 "eseguito il commit)"
 
-#: wt-status.c:229
+#: wt-status.c:241
 msgid ""
-"  (use \"git checkout -- <file>...\" to discard changes in working directory)"
+"  (use \"git restore <file>...\" to discard changes in working directory)"
 msgstr ""
-"  (usa \"git checkout -- <file>...\" per scartare le modifiche nella "
-"directory di lavoro)"
+"  (usa \"git restore <file>...\" per scartare le modifiche nella directory di"
+" lavoro)"
 
-#: wt-status.c:231
+#: wt-status.c:243
 msgid "  (commit or discard the untracked or modified content in submodules)"
 msgstr ""
 "  (esegui il commit o scarta il contenuto non tracciato o modificato nei "
 "sottomoduli)"
 
-#: wt-status.c:243
+#: wt-status.c:254
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
 msgstr ""
 "  (usa \"git %s <file>...\" per includere l'elemento fra quelli di cui verrà "
 "eseguito il commit)"
 
-#: wt-status.c:258
+#: wt-status.c:268
 msgid "both deleted:"
 msgstr "entrambi eliminati:"
 
-#: wt-status.c:260
+#: wt-status.c:270
 msgid "added by us:"
 msgstr "aggiunto da noi:"
 
-#: wt-status.c:262
+#: wt-status.c:272
 msgid "deleted by them:"
 msgstr "eliminato da loro:"
 
-#: wt-status.c:264
+#: wt-status.c:274
 msgid "added by them:"
 msgstr "aggiunto da loro:"
 
-#: wt-status.c:266
+#: wt-status.c:276
 msgid "deleted by us:"
 msgstr "eliminato da noi:"
 
-#: wt-status.c:268
+#: wt-status.c:278
 msgid "both added:"
 msgstr "entrambi aggiunti:"
 
-#: wt-status.c:270
+#: wt-status.c:280
 msgid "both modified:"
 msgstr "entrambi modificati:"
 
-#: wt-status.c:280
+#: wt-status.c:290
 msgid "new file:"
 msgstr "nuovo file:"
 
-#: wt-status.c:282
+#: wt-status.c:292
 msgid "copied:"
 msgstr "copiato:"
 
-#: wt-status.c:284
+#: wt-status.c:294
 msgid "deleted:"
 msgstr "eliminato:"
 
-#: wt-status.c:286
+#: wt-status.c:296
 msgid "modified:"
 msgstr "modificato:"
 
-#: wt-status.c:288
+#: wt-status.c:298
 msgid "renamed:"
 msgstr "rinominato:"
 
-#: wt-status.c:290
+#: wt-status.c:300
 msgid "typechange:"
 msgstr "modifica tipo:"
 
-#: wt-status.c:292
+#: wt-status.c:302
 msgid "unknown:"
 msgstr "sconosciuto:"
 
-#: wt-status.c:294
+#: wt-status.c:304
 msgid "unmerged:"
 msgstr "non sottoposto a merge:"
 
-#: wt-status.c:374
+#: wt-status.c:384
 msgid "new commits, "
 msgstr "nuovi commit, "
 
-#: wt-status.c:376
+#: wt-status.c:386
 msgid "modified content, "
 msgstr "contenuto modificato, "
 
-#: wt-status.c:378
+#: wt-status.c:388
 msgid "untracked content, "
 msgstr "contenuto non tracciato, "
 
-#: wt-status.c:896
+#: wt-status.c:906
 #, c-format
 msgid "Your stash currently has %d entry"
 msgid_plural "Your stash currently has %d entries"
 msgstr[0] "Lo stash attualmente ha %d voce"
 msgstr[1] "Lo stash attualmente ha %d voci"
 
-#: wt-status.c:928
+#: wt-status.c:938
 msgid "Submodules changed but not updated:"
 msgstr "Sottomoduli modificati ma non aggiornati:"
 
-#: wt-status.c:930
+#: wt-status.c:940
 msgid "Submodule changes to be committed:"
 msgstr "Modifiche ai sottomoduli di cui verrà eseguito il commit:"
 
-#: wt-status.c:1012
+#: wt-status.c:1022
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
@@ -8062,111 +8223,123 @@ msgstr ""
 "Non modificare o rimuovere la riga soprastante.\n"
 "Tutto ciò che si trova al di sotto di essa sarà ignorato."
 
-#: wt-status.c:1119
+#: wt-status.c:1114
+#, c-format
+msgid ""
+"\n"
+"It took %.2f seconds to compute the branch ahead/behind values.\n"
+"You can use '--no-ahead-behind' to avoid this.\n"
+msgstr ""
+"\n"
+"Sono stati necessari %.2f secondi per calcolare il numero di commit\n"
+"precedenti/successivi nel branch.\n"
+"Puoi usare '--no-ahead-behind' per evitare il calcolo.\n"
+
+#: wt-status.c:1144
 msgid "You have unmerged paths."
 msgstr "Hai dei percorsi non sottoposti a merge."
 
-#: wt-status.c:1122
+#: wt-status.c:1147
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (risolvi i conflitti ed esegui \"git commit\")"
 
-#: wt-status.c:1124
+#: wt-status.c:1149
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr "  (usa \"git merge --abort\" per interrompere il merge)"
 
-#: wt-status.c:1128
+#: wt-status.c:1153
 msgid "All conflicts fixed but you are still merging."
 msgstr "Tutti i conflitti sono stati risolti ma il merge è ancora in corso."
 
-#: wt-status.c:1131
+#: wt-status.c:1156
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (usa \"git commit\" per terminare il merge)"
 
-#: wt-status.c:1140
+#: wt-status.c:1165
 msgid "You are in the middle of an am session."
 msgstr "Sei nel bel mezzo di una sessione am."
 
-#: wt-status.c:1143
+#: wt-status.c:1168
 msgid "The current patch is empty."
 msgstr "La patch corrente è vuota."
 
-#: wt-status.c:1147
+#: wt-status.c:1172
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (risolvi i conflitti e quindi esegui \"git am --continue\")"
 
-#: wt-status.c:1149
+#: wt-status.c:1174
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (usa \"git am --skip\" per saltare questa patch)"
 
-#: wt-status.c:1151
+#: wt-status.c:1176
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (usa \"git am --abort\" per ripristinare il branch originario)"
 
-#: wt-status.c:1284
+#: wt-status.c:1309
 msgid "git-rebase-todo is missing."
 msgstr "git-rebase-todo è mancante."
 
-#: wt-status.c:1286
+#: wt-status.c:1311
 msgid "No commands done."
 msgstr "Nessun comando eseguito."
 
-#: wt-status.c:1289
+#: wt-status.c:1314
 #, c-format
 msgid "Last command done (%d command done):"
 msgid_plural "Last commands done (%d commands done):"
 msgstr[0] "Ultimo comando eseguito (%d comando eseguito):"
 msgstr[1] "Ultimi comandi eseguiti (%d comandi eseguiti):"
 
-#: wt-status.c:1300
+#: wt-status.c:1325
 #, c-format
 msgid "  (see more in file %s)"
 msgstr "  (vedi di più nel file %s)"
 
-#: wt-status.c:1305
+#: wt-status.c:1330
 msgid "No commands remaining."
 msgstr "Nessun comando rimanente."
 
-#: wt-status.c:1308
+#: wt-status.c:1333
 #, c-format
 msgid "Next command to do (%d remaining command):"
 msgid_plural "Next commands to do (%d remaining commands):"
 msgstr[0] "Prossimo comando da eseguire (%d comando rimanente):"
 msgstr[1] "Prossimi comandi da eseguire (%d comandi rimanenti):"
 
-#: wt-status.c:1316
+#: wt-status.c:1341
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr ""
 "  (usa \"git rebase --edit-todo\" per visualizzare e modificare le "
 "operazioni)"
 
-#: wt-status.c:1328
+#: wt-status.c:1353
 #, c-format
 msgid "You are currently rebasing branch '%s' on '%s'."
 msgstr "Attualmente stai eseguendo il rebase del branch '%s' su '%s'."
 
-#: wt-status.c:1333
+#: wt-status.c:1358
 msgid "You are currently rebasing."
 msgstr "Attualmente stai eseguendo un rebase."
 
-#: wt-status.c:1346
+#: wt-status.c:1371
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (risolvi i conflitti e quindi esegui \"git rebase --continue\")"
 
-#: wt-status.c:1348
+#: wt-status.c:1373
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (usa \"git rebase --skip\" per saltare questa patch)"
 
-#: wt-status.c:1350
+#: wt-status.c:1375
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr ""
 "  (usa \"git rebase --abort\" per eseguire il checkout del branch originario)"
 
-#: wt-status.c:1357
+#: wt-status.c:1382
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr ""
 "  (tutti i conflitti sono stati risolti: esegui \"git rebase --continue\")"
 
-#: wt-status.c:1361
+#: wt-status.c:1386
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -8174,145 +8347,137 @@ msgstr ""
 "Attualmente stai dividendo un commit durante il rebase del branch '%s' su "
 "'%s'."
 
-#: wt-status.c:1366
+#: wt-status.c:1391
 msgid "You are currently splitting a commit during a rebase."
 msgstr "Attualmente stai dividendo un commit durante un rebase."
 
-#: wt-status.c:1369
+#: wt-status.c:1394
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr ""
 "  (Una volta che la tua directory di lavoro è pulita, esegui \"git rebase --"
 "continue\")"
 
-#: wt-status.c:1373
+#: wt-status.c:1398
 #, c-format
 msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 "Attualmente stai modificando un commit durante il rebase del branch '%s' su "
 "'%s'."
 
-#: wt-status.c:1378
+#: wt-status.c:1403
 msgid "You are currently editing a commit during a rebase."
 msgstr "Attualmente stai modificando un commit durante un rebase."
 
-#: wt-status.c:1381
+#: wt-status.c:1406
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (usa \"git commit --amend\" per correggere il commit corrente)"
 
-#: wt-status.c:1383
+#: wt-status.c:1408
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
 "  (usa \"git rebase --continue\" una volta soddisfatto delle tue modifiche)"
 
-#: wt-status.c:1394
+#: wt-status.c:1419
 msgid "Cherry-pick currently in progress."
 msgstr "Cherry-pick in corso."
 
-#: wt-status.c:1397
+#: wt-status.c:1422
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "Attualmente stai eseguendo il cherry-pick del commit %s."
 
-#: wt-status.c:1404
+#: wt-status.c:1429
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (risolvi i conflitti ed esegui \"git cherry-pick --continue\")"
 
-#: wt-status.c:1407
+#: wt-status.c:1432
 msgid "  (run \"git cherry-pick --continue\" to continue)"
 msgstr "  (esegui \"git cherry-pick --continue\" per continuare)"
 
-#: wt-status.c:1410
+#: wt-status.c:1435
 msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
 msgstr ""
 "  (tutti i conflitti sono stati risolti: esegui \"git cherry-pick --continue"
 "\")"
 
-#: wt-status.c:1412
+#: wt-status.c:1437
 msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
 msgstr ""
 "  (usa \"git cherry-pick --abort\" per annullare l'operazione di cherry-pick)"
 
-#: wt-status.c:1422
+#: wt-status.c:1447
 msgid "Revert currently in progress."
 msgstr "Revert in corso."
 
-#: wt-status.c:1425
+#: wt-status.c:1450
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Attualmente stai eseguendo il revert del commit %s."
 
-#: wt-status.c:1431
+#: wt-status.c:1456
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (risolvi i conflitti ed esegui \"git revert --continue\")"
 
-#: wt-status.c:1434
+#: wt-status.c:1459
 msgid "  (run \"git revert --continue\" to continue)"
 msgstr "  (esegui \"git revert --continue\" per continuare)"
 
-#: wt-status.c:1437
+#: wt-status.c:1462
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr ""
 "  (tutti i conflitti sono stati risolti: esegui \"git revert --continue\")"
 
-#: wt-status.c:1439
+#: wt-status.c:1464
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (usa \"git revert --abort\" per annullare l'operazione di revert)"
 
-#: wt-status.c:1449
+#: wt-status.c:1474
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr "Attualmente stai eseguendo una bisezione partendo dal branch '%s'."
 
-#: wt-status.c:1453
+#: wt-status.c:1478
 msgid "You are currently bisecting."
 msgstr "Attualmente stai eseguendo una bisezione."
 
-#: wt-status.c:1456
+#: wt-status.c:1481
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr "  (usa \"git bisect reset\" per tornare al branch originario)"
 
-#: wt-status.c:1665
+#: wt-status.c:1690
 msgid "On branch "
 msgstr "Sul branch "
 
-#: wt-status.c:1672
+#: wt-status.c:1697
 msgid "interactive rebase in progress; onto "
 msgstr "rebase interattivo in corso su "
 
-#: wt-status.c:1674
+#: wt-status.c:1699
 msgid "rebase in progress; onto "
 msgstr "rebase in corso su "
 
-#: wt-status.c:1679
-msgid "HEAD detached at "
-msgstr "HEAD scollegato su "
-
-#: wt-status.c:1681
-msgid "HEAD detached from "
-msgstr "HEAD scollegato da "
-
-#: wt-status.c:1684
+#: wt-status.c:1709
 msgid "Not currently on any branch."
 msgstr "Attualmente non sei su alcun branch."
 
-#: wt-status.c:1701
+#: wt-status.c:1726
 msgid "Initial commit"
 msgstr "Commit iniziale"
 
-#: wt-status.c:1702
+#: wt-status.c:1727
 msgid "No commits yet"
 msgstr "Non ci sono ancora commit"
 
-#: wt-status.c:1716
+#: wt-status.c:1741
 msgid "Untracked files"
 msgstr "File non tracciati"
 
-#: wt-status.c:1718
+#: wt-status.c:1743
 msgid "Ignored files"
 msgstr "File ignorati"
 
-#: wt-status.c:1722
+#: wt-status.c:1747
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -8324,31 +8489,31 @@ msgstr ""
 "ma devi stare attento a non dimenticarti di aggiungere\n"
 "autonomamente i file nuovi (vedi 'git help status')."
 
-#: wt-status.c:1728
+#: wt-status.c:1753
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "File non tracciati non elencati%s"
 
-#: wt-status.c:1730
+#: wt-status.c:1755
 msgid " (use -u option to show untracked files)"
 msgstr " (usa l'opzione -u per visualizzare i file non tracciati)"
 
-#: wt-status.c:1736
+#: wt-status.c:1761
 msgid "No changes"
 msgstr "Nessuna modifica"
 
-#: wt-status.c:1741
+#: wt-status.c:1766
 #, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
 msgstr ""
 "nessuna modifica aggiunta al commit (usa \"git add\" e/o \"git commit -a\")\n"
 
-#: wt-status.c:1744
+#: wt-status.c:1769
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "nessuna modifica aggiunta al commit\n"
 
-#: wt-status.c:1747
+#: wt-status.c:1772
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -8357,68 +8522,68 @@ msgstr ""
 "non è stato aggiunto nulla al commit ma sono presenti file non tracciati "
 "(usa \"git add\" per tracciarli)\n"
 
-#: wt-status.c:1750
+#: wt-status.c:1775
 #, c-format
 msgid "nothing added to commit but untracked files present\n"
 msgstr ""
 "non è stato aggiunto nulla al commit ma sono presenti file non tracciati\n"
 
-#: wt-status.c:1753
+#: wt-status.c:1778
 #, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr ""
 "non c'è nulla di cui eseguire il commit (crea/copia dei file e usa \"git add"
 "\" per tracciarli)\n"
 
-#: wt-status.c:1756 wt-status.c:1761
+#: wt-status.c:1781 wt-status.c:1786
 #, c-format
 msgid "nothing to commit\n"
 msgstr "non c'è nulla di cui eseguire il commit\n"
 
-#: wt-status.c:1759
+#: wt-status.c:1784
 #, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
 msgstr ""
 "non c'è nulla di cui eseguire il commit (usa -u per visualizzare i file non "
 "tracciati)\n"
 
-#: wt-status.c:1763
+#: wt-status.c:1788
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr "non c'è nulla di cui eseguire il commit, l'albero di lavoro è pulito\n"
 
-#: wt-status.c:1876
+#: wt-status.c:1901
 msgid "No commits yet on "
 msgstr "Non ci sono ancora commit su"
 
-#: wt-status.c:1880
+#: wt-status.c:1905
 msgid "HEAD (no branch)"
 msgstr "HEAD (nessun branch)"
 
-#: wt-status.c:1911
+#: wt-status.c:1936
 msgid "different"
 msgstr "differente"
 
-#: wt-status.c:1913 wt-status.c:1921
+#: wt-status.c:1938 wt-status.c:1946
 msgid "behind "
 msgstr "indietro "
 
-#: wt-status.c:1916 wt-status.c:1919
+#: wt-status.c:1941 wt-status.c:1944
 msgid "ahead "
 msgstr "avanti "
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2443
+#: wt-status.c:2466
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr "impossibile eseguire %s: ci sono delle modifiche non in staging."
 
-#: wt-status.c:2449
+#: wt-status.c:2472
 msgid "additionally, your index contains uncommitted changes."
 msgstr ""
 "inoltre, l'indice contiene modifiche di cui non è stato eseguito il commit."
 
-#: wt-status.c:2451
+#: wt-status.c:2474
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr ""
@@ -8434,7 +8599,7 @@ msgstr "git add [<opzioni>] [--] <specificatore percorso>..."
 msgid "unexpected diff status %c"
 msgstr "stato diff inatteso %c"
 
-#: builtin/add.c:89 builtin/commit.c:285
+#: builtin/add.c:89 builtin/commit.c:288
 msgid "updating files failed"
 msgstr "aggiornamento dei file non riuscito"
 
@@ -8482,8 +8647,8 @@ msgstr "Impossibile applicare '%s'"
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr "I seguenti percorsi sono ignorati da uno dei file .gitignore:\n"
 
-#: builtin/add.c:290 builtin/clean.c:908 builtin/fetch.c:137 builtin/mv.c:124
-#: builtin/prune-packed.c:56 builtin/pull.c:221 builtin/push.c:560
+#: builtin/add.c:290 builtin/clean.c:909 builtin/fetch.c:147 builtin/mv.c:124
+#: builtin/prune-packed.c:56 builtin/pull.c:222 builtin/push.c:560
 #: builtin/remote.c:1345 builtin/rm.c:241 builtin/send-pack.c:165
 msgid "dry run"
 msgstr "test controllato"
@@ -8492,7 +8657,7 @@ msgstr "test controllato"
 msgid "interactive picking"
 msgstr "scelta interattiva"
 
-#: builtin/add.c:294 builtin/checkout.c:1379 builtin/reset.c:306
+#: builtin/add.c:294 builtin/checkout.c:1480 builtin/reset.c:306
 msgid "select hunks interactively"
 msgstr "seleziona gli hunk in modalità interattiva"
 
@@ -8663,7 +8828,7 @@ msgstr "offset fuso orario non valido"
 msgid "Patch format detection failed."
 msgstr "Rilevamento del formato della patch non riuscito."
 
-#: builtin/am.c:949 builtin/clone.c:409
+#: builtin/am.c:949 builtin/clone.c:407
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "creazione della directory '%s' non riuscita"
@@ -8672,7 +8837,7 @@ msgstr "creazione della directory '%s' non riuscita"
 msgid "Failed to split patches."
 msgstr "Divisione delle patch non riuscita."
 
-#: builtin/am.c:1084 builtin/commit.c:371
+#: builtin/am.c:1084 builtin/commit.c:374
 msgid "unable to write index file"
 msgstr "impossibile scrivere il file indice"
 
@@ -8713,17 +8878,17 @@ msgstr "riga ident non valida: %.*s"
 msgid "unable to parse commit %s"
 msgstr "impossibile analizzare il commit %s"
 
-#: builtin/am.c:1495
+#: builtin/am.c:1496
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr ""
 "Dal repository mancano i blob necessari per ripiegare sul merge a tre vie."
 
-#: builtin/am.c:1497
+#: builtin/am.c:1498
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 "Utilizzo le informazioni dell'indice per ricostruire un albero di base..."
 
-#: builtin/am.c:1516
+#: builtin/am.c:1517
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -8731,30 +8896,24 @@ msgstr ""
 "Hai modificato manualmente la patch?\n"
 "Non può essere applicata ai blob registrati nel suo indice."
 
-#: builtin/am.c:1522
+#: builtin/am.c:1523
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Ripiego sul patching della base e sul merge a tre vie..."
 
-#: builtin/am.c:1548
+#: builtin/am.c:1549
 msgid "Failed to merge in the changes."
 msgstr "Merge delle modifiche non riuscito."
 
-#: builtin/am.c:1580
+#: builtin/am.c:1581
 msgid "applying to an empty history"
 msgstr "applicazione a una cronologia vuota"
 
-#: builtin/am.c:1627 builtin/am.c:1631
+#: builtin/am.c:1628 builtin/am.c:1632
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "impossibile riprendere l'attività: %s non esiste."
 
-#: builtin/am.c:1647
-msgid "cannot be interactive without stdin connected to a terminal."
-msgstr ""
-"impossibile eseguire l'attività in modalità interattiva con lo standard "
-"input non collegato a un terminale."
-
-#: builtin/am.c:1652
+#: builtin/am.c:1650
 msgid "Commit Body is:"
 msgstr "Il corpo del commit è:"
 
@@ -8762,36 +8921,37 @@ msgstr "Il corpo del commit è:"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1662
+#: builtin/am.c:1660
+#, c-format
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr ""
 "Applico? Sì [y]/No [n]/Modifica [e]/[V]isualizza patch/[A]ccetta tutto:"
 
-#: builtin/am.c:1712
+#: builtin/am.c:1710
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Indice sporco: impossibile applicare le patch (elemento sporco: %s)"
 
-#: builtin/am.c:1752 builtin/am.c:1820
+#: builtin/am.c:1750 builtin/am.c:1818
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Applicazione in corso: %.*s"
 
-#: builtin/am.c:1769
+#: builtin/am.c:1767
 msgid "No changes -- Patch already applied."
 msgstr "Nessuna modifica -- patch già applicata."
 
-#: builtin/am.c:1775
+#: builtin/am.c:1773
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "Patch non riuscita a %s %.*s"
 
-#: builtin/am.c:1779
+#: builtin/am.c:1777
 msgid "Use 'git am --show-current-patch' to see the failed patch"
 msgstr ""
 "Usa 'git am --show-current-patch' per visualizzare la patch non riuscita"
 
-#: builtin/am.c:1823
+#: builtin/am.c:1821
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -8801,7 +8961,7 @@ msgstr ""
 "Se non rimane nulla da aggiungere all'area di staging, forse qualcos'altro\n"
 "ha già introdotto le stesse modifiche; potresti voler saltare questa patch."
 
-#: builtin/am.c:1830
+#: builtin/am.c:1828
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -8814,17 +8974,17 @@ msgstr ""
 "Potresti eseguire `git rm` su un file per accettarne la risoluzione "
 "\"eliminato da loro\"."
 
-#: builtin/am.c:1937 builtin/am.c:1941 builtin/am.c:1953 builtin/reset.c:329
+#: builtin/am.c:1935 builtin/am.c:1939 builtin/am.c:1951 builtin/reset.c:329
 #: builtin/reset.c:337
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Impossibile analizzare l'oggetto '%s'."
 
-#: builtin/am.c:1989
+#: builtin/am.c:1987
 msgid "failed to clean index"
 msgstr "pulizia dell'indice non riuscita"
 
-#: builtin/am.c:2033
+#: builtin/am.c:2031
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -8833,148 +8993,148 @@ msgstr ""
 "'am'.\n"
 "Non ritorno indietro a ORIG_HEAD"
 
-#: builtin/am.c:2130
+#: builtin/am.c:2128
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Valore non valido per --patch-format: %s"
 
-#: builtin/am.c:2166
+#: builtin/am.c:2164
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<opzioni>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/am.c:2167
+#: builtin/am.c:2165
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<opzioni>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2173
+#: builtin/am.c:2171
 msgid "run interactively"
 msgstr "esegui in modalità interattiva"
 
-#: builtin/am.c:2175
+#: builtin/am.c:2173
 msgid "historical option -- no-op"
 msgstr "opzione storica -- non esegue nulla"
 
-#: builtin/am.c:2177
+#: builtin/am.c:2175
 msgid "allow fall back on 3way merging if needed"
 msgstr "consenti il ripiego sul merge a tre vie se necessario"
 
-#: builtin/am.c:2178 builtin/init-db.c:494 builtin/prune-packed.c:58
-#: builtin/repack.c:306 builtin/stash.c:805
+#: builtin/am.c:2176 builtin/init-db.c:494 builtin/prune-packed.c:58
+#: builtin/repack.c:307 builtin/stash.c:806
 msgid "be quiet"
 msgstr "non visualizzare messaggi"
 
-#: builtin/am.c:2180
+#: builtin/am.c:2178
 msgid "add a Signed-off-by line to the commit message"
 msgstr "aggiungi una riga Signed-off-by al messaggio di commit"
 
-#: builtin/am.c:2183
+#: builtin/am.c:2181
 msgid "recode into utf8 (default)"
 msgstr "converti codifica in UTF-8 (impostazione predefinita)"
 
-#: builtin/am.c:2185
+#: builtin/am.c:2183
 msgid "pass -k flag to git-mailinfo"
 msgstr "fornisci l'argomento -k a git-mailinfo"
 
-#: builtin/am.c:2187
+#: builtin/am.c:2185
 msgid "pass -b flag to git-mailinfo"
 msgstr "fornisci l'argomento -b a git-mailinfo"
 
-#: builtin/am.c:2189
+#: builtin/am.c:2187
 msgid "pass -m flag to git-mailinfo"
 msgstr "fornisci l'argomento -m a git-mailinfo"
 
-#: builtin/am.c:2191
+#: builtin/am.c:2189
 msgid "pass --keep-cr flag to git-mailsplit for mbox format"
 msgstr "fornisci a git-mailsplit l'argomento --keep-cr per il formato mbox"
 
-#: builtin/am.c:2194
+#: builtin/am.c:2192
 msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
 "non fornire l'argomento --keep-cr a git-mailsplit indipendentemente dal "
 "valore di am.keepcr"
 
-#: builtin/am.c:2197
+#: builtin/am.c:2195
 msgid "strip everything before a scissors line"
 msgstr "rimuovi tutte le righe prima di una riga \"taglia qui\""
 
-#: builtin/am.c:2199 builtin/am.c:2202 builtin/am.c:2205 builtin/am.c:2208
-#: builtin/am.c:2211 builtin/am.c:2214 builtin/am.c:2217 builtin/am.c:2220
-#: builtin/am.c:2226
+#: builtin/am.c:2197 builtin/am.c:2200 builtin/am.c:2203 builtin/am.c:2206
+#: builtin/am.c:2209 builtin/am.c:2212 builtin/am.c:2215 builtin/am.c:2218
+#: builtin/am.c:2224
 msgid "pass it through git-apply"
 msgstr "passa l'argomento a git-apply"
 
-#: builtin/am.c:2216 builtin/commit.c:1348 builtin/fmt-merge-msg.c:671
-#: builtin/fmt-merge-msg.c:674 builtin/grep.c:879 builtin/merge.c:247
-#: builtin/pull.c:158 builtin/pull.c:217 builtin/rebase.c:1412
-#: builtin/repack.c:317 builtin/repack.c:321 builtin/repack.c:323
-#: builtin/show-branch.c:651 builtin/show-ref.c:172 builtin/tag.c:397
-#: parse-options.h:141 parse-options.h:162 parse-options.h:311
+#: builtin/am.c:2214 builtin/commit.c:1368 builtin/fmt-merge-msg.c:671
+#: builtin/fmt-merge-msg.c:674 builtin/grep.c:881 builtin/merge.c:249
+#: builtin/pull.c:159 builtin/pull.c:218 builtin/rebase.c:1418
+#: builtin/repack.c:318 builtin/repack.c:322 builtin/repack.c:324
+#: builtin/show-branch.c:650 builtin/show-ref.c:172 builtin/tag.c:403
+#: parse-options.h:141 parse-options.h:162 parse-options.h:312
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2222 builtin/branch.c:653 builtin/for-each-ref.c:38
-#: builtin/replace.c:554 builtin/tag.c:431 builtin/verify-tag.c:39
+#: builtin/am.c:2220 builtin/branch.c:661 builtin/for-each-ref.c:38
+#: builtin/replace.c:554 builtin/tag.c:437 builtin/verify-tag.c:39
 msgid "format"
 msgstr "formato"
 
-#: builtin/am.c:2223
+#: builtin/am.c:2221
 msgid "format the patch(es) are in"
 msgstr "il formato delle patch"
 
-#: builtin/am.c:2229
+#: builtin/am.c:2227
 msgid "override error message when patch failure occurs"
 msgstr ""
 "esegui l'override del messaggio d'errore quando si verifica un errore legato "
 "alle patch"
 
-#: builtin/am.c:2231
+#: builtin/am.c:2229
 msgid "continue applying patches after resolving a conflict"
 msgstr ""
 "continua l'applicazione delle patch dopo la risoluzione di un conflitto"
 
-#: builtin/am.c:2234
+#: builtin/am.c:2232
 msgid "synonyms for --continue"
 msgstr "sinonimi di --continue"
 
-#: builtin/am.c:2237
+#: builtin/am.c:2235
 msgid "skip the current patch"
 msgstr "salta la patch corrente"
 
-#: builtin/am.c:2240
+#: builtin/am.c:2238
 msgid "restore the original branch and abort the patching operation."
 msgstr "ripristina il branch originario e interrompi l'operazione di patching."
 
-#: builtin/am.c:2243
+#: builtin/am.c:2241
 msgid "abort the patching operation but keep HEAD where it is."
 msgstr "interrompi l'operazione di patching ma mantieni HEAD dov'è."
 
-#: builtin/am.c:2246
+#: builtin/am.c:2244
 msgid "show the patch being applied."
 msgstr "visualizza la patch in fase di applicazione."
 
-#: builtin/am.c:2250
+#: builtin/am.c:2248
 msgid "lie about committer date"
 msgstr "menti sulla data del commit"
 
-#: builtin/am.c:2252
+#: builtin/am.c:2250
 msgid "use current timestamp for author date"
 msgstr "usa il timestamp corrente come data autore"
 
-#: builtin/am.c:2254 builtin/commit-tree.c:120 builtin/commit.c:1491
-#: builtin/merge.c:282 builtin/pull.c:192 builtin/rebase.c:489
-#: builtin/rebase.c:1453 builtin/revert.c:116 builtin/tag.c:412
+#: builtin/am.c:2252 builtin/commit-tree.c:120 builtin/commit.c:1511
+#: builtin/merge.c:286 builtin/pull.c:193 builtin/rebase.c:489
+#: builtin/rebase.c:1459 builtin/revert.c:117 builtin/tag.c:418
 msgid "key-id"
 msgstr "ID chiave"
 
-#: builtin/am.c:2255 builtin/rebase.c:490 builtin/rebase.c:1454
+#: builtin/am.c:2253 builtin/rebase.c:490 builtin/rebase.c:1460
 msgid "GPG-sign commits"
 msgstr "firma i commit con GPG"
 
-#: builtin/am.c:2258
+#: builtin/am.c:2256
 msgid "(internal use for git-rebase)"
 msgstr "(a uso interno per git-rebase)"
 
-#: builtin/am.c:2276
+#: builtin/am.c:2274
 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."
@@ -8982,18 +9142,18 @@ msgstr ""
 "L'opzione -b/--binary non esegue nulla da molto tempo e\n"
 "sarà rimossa. Non usarla più."
 
-#: builtin/am.c:2283
+#: builtin/am.c:2281
 msgid "failed to read the index"
 msgstr "lettura dell'indice non riuscita"
 
-#: builtin/am.c:2298
+#: builtin/am.c:2296
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr ""
 "la directory di rebase precedente %s esiste ancora ma è stata specificata "
 "un'mbox."
 
-#: builtin/am.c:2322
+#: builtin/am.c:2320
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -9002,10 +9162,16 @@ msgstr ""
 "Trovata directory smarrita %s.\n"
 "Usa \"git am --abort\" per eliminarla."
 
-#: builtin/am.c:2328
+#: builtin/am.c:2326
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr "Operazione di risoluzione non in corso, non riprendiamo."
 
+#: builtin/am.c:2336
+msgid "interactive mode requires patches on the command line"
+msgstr ""
+"la modalità interattiva richiede che le patch siano fornite sulla riga di"
+" comando"
+
 #: builtin/apply.c:8
 msgid "git apply [<options>] [<patch>...]"
 msgstr "git apply [<opzioni>] [<patch>...]"
@@ -9241,80 +9407,85 @@ msgstr "non eseguirò la bisezione su un albero sottoposto a cg-seek"
 msgid "bad HEAD - strange symbolic ref"
 msgstr "head non valida - riferimento simbolico strano"
 
-#: builtin/bisect--helper.c:627
+#: builtin/bisect--helper.c:574
+#, c-format
+msgid "invalid ref: '%s'"
+msgstr "riferimento non valido: '%s'"
+
+#: builtin/bisect--helper.c:630
 msgid "perform 'git bisect next'"
 msgstr "esegui 'git bisect next'"
 
-#: builtin/bisect--helper.c:629
+#: builtin/bisect--helper.c:632
 msgid "write the terms to .git/BISECT_TERMS"
 msgstr "scrivi i termini in .git/BISECT_TERMS"
 
-#: builtin/bisect--helper.c:631
+#: builtin/bisect--helper.c:634
 msgid "cleanup the bisection state"
 msgstr "pulisci lo stato bisezione"
 
-#: builtin/bisect--helper.c:633
+#: builtin/bisect--helper.c:636
 msgid "check for expected revs"
 msgstr "controlla se le revisioni attese sono presenti"
 
-#: builtin/bisect--helper.c:635
+#: builtin/bisect--helper.c:638
 msgid "reset the bisection state"
 msgstr "reimposta lo stato della bisezione"
 
-#: builtin/bisect--helper.c:637
+#: builtin/bisect--helper.c:640
 msgid "write out the bisection state in BISECT_LOG"
 msgstr "scrivi lo stato della bisezione in BISECT_LOG"
 
-#: builtin/bisect--helper.c:639
+#: builtin/bisect--helper.c:642
 msgid "check and set terms in a bisection state"
 msgstr "controlla e imposta i termini in uno stato bisezione"
 
-#: builtin/bisect--helper.c:641
+#: builtin/bisect--helper.c:644
 msgid "check whether bad or good terms exist"
 msgstr ""
 "controlla se esistono termini per revisioni non funzionanti o funzionanti"
 
-#: builtin/bisect--helper.c:643
+#: builtin/bisect--helper.c:646
 msgid "print out the bisect terms"
 msgstr "stampa i termini della bisezione"
 
-#: builtin/bisect--helper.c:645
+#: builtin/bisect--helper.c:648
 msgid "start the bisect session"
 msgstr "inizia la sessione di bisezione"
 
-#: builtin/bisect--helper.c:647
+#: builtin/bisect--helper.c:650
 msgid "update BISECT_HEAD instead of checking out the current commit"
 msgstr "aggiorna BISECT_HEAD anziché eseguire il checkout del commit corrente"
 
-#: builtin/bisect--helper.c:649
+#: builtin/bisect--helper.c:652
 msgid "no log for BISECT_WRITE"
 msgstr "non registrare le operazioni eseguite per BISECT_WRITE"
 
-#: builtin/bisect--helper.c:666
+#: builtin/bisect--helper.c:669
 msgid "--write-terms requires two arguments"
 msgstr "--write-terms richiede due argomenti"
 
-#: builtin/bisect--helper.c:670
+#: builtin/bisect--helper.c:673
 msgid "--bisect-clean-state requires no arguments"
 msgstr "--bisect-clean-state non richiede argomenti"
 
-#: builtin/bisect--helper.c:677
+#: builtin/bisect--helper.c:680
 msgid "--bisect-reset requires either no argument or a commit"
 msgstr "--bisect-reset richiede o nessun argomento o un commit"
 
-#: builtin/bisect--helper.c:681
+#: builtin/bisect--helper.c:684
 msgid "--bisect-write requires either 4 or 5 arguments"
 msgstr "--bisect-write richiede o quattro o cinque argomenti"
 
-#: builtin/bisect--helper.c:687
+#: builtin/bisect--helper.c:690
 msgid "--check-and-set-terms requires 3 arguments"
 msgstr "--check-and-set-terms richiede tre argomenti"
 
-#: builtin/bisect--helper.c:693
+#: builtin/bisect--helper.c:696
 msgid "--bisect-next-check requires 2 or 3 arguments"
 msgstr "--bisect-next-check richiede due o tre argomenti"
 
-#: builtin/bisect--helper.c:699
+#: builtin/bisect--helper.c:702
 msgid "--bisect-terms requires 0 or 1 argument"
 msgstr "--bisect-terms richiede zero o un argomento"
 
@@ -9326,151 +9497,168 @@ msgstr "git blame [<opzioni>] [<opzioni revisione>] [<revisione>] [--] <file>"
 msgid "<rev-opts> are documented in git-rev-list(1)"
 msgstr "le <opzioni revisione> sono documentate in git-rev-list(1)"
 
-#: builtin/blame.c:407
+#: builtin/blame.c:410
 #, c-format
 msgid "expecting a color: %s"
 msgstr "atteso colore: %s"
 
-#: builtin/blame.c:414
+#: builtin/blame.c:417
 msgid "must end with a color"
 msgstr "deve terminare con un colore"
 
-#: builtin/blame.c:701
+#: builtin/blame.c:730
 #, c-format
 msgid "invalid color '%s' in color.blame.repeatedLines"
 msgstr "colore '%s' non valido in color.blame.repeatedLines"
 
-#: builtin/blame.c:719
+#: builtin/blame.c:748
 msgid "invalid value for blame.coloring"
 msgstr "valore non valido per blame.coloring"
 
-#: builtin/blame.c:794
+#: builtin/blame.c:823
+#, c-format
+msgid "cannot find revision %s to ignore"
+msgstr "impossibile trovare la revisione %s da ignorare"
+
+#: builtin/blame.c:845
 msgid "Show blame entries as we find them, incrementally"
 msgstr ""
 "Visualizza le voci blame incrementalmente, a mano a mano che le troviamo"
 
-#: builtin/blame.c:795
+#: builtin/blame.c:846
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr ""
 "Visualizza un hash SHA-1 vuoto per i commit limite (impostazione "
 "predefinita: off)"
 
-#: builtin/blame.c:796
+#: builtin/blame.c:847
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr ""
 "Non gestire i commit radice come commit limite (impostazione predefinita: "
 "off)"
 
-#: builtin/blame.c:797
+#: builtin/blame.c:848
 msgid "Show work cost statistics"
 msgstr "Visualizza le statistiche sul costo dell'operazione"
 
-#: builtin/blame.c:798
+#: builtin/blame.c:849
 msgid "Force progress reporting"
 msgstr "Forza l'indicazione d'avanzamento dell'operazione"
 
-#: builtin/blame.c:799
+#: builtin/blame.c:850
 msgid "Show output score for blame entries"
 msgstr "Visualizza il punteggio di output per le voci blame"
 
-#: builtin/blame.c:800
+#: builtin/blame.c:851
 msgid "Show original filename (Default: auto)"
 msgstr ""
 "Visualizza il nome file originario (impostazione predefinita: automatico)"
 
-#: builtin/blame.c:801
+#: builtin/blame.c:852
 msgid "Show original linenumber (Default: off)"
 msgstr ""
 "Visualizza il numero di riga originario (impostazione predefinita: off)"
 
-#: builtin/blame.c:802
+#: builtin/blame.c:853
 msgid "Show in a format designed for machine consumption"
 msgstr ""
 "Visualizza l'output in un formato progettato per l'utilizzo da parte di una "
 "macchina"
 
-#: builtin/blame.c:803
+#: builtin/blame.c:854
 msgid "Show porcelain format with per-line commit information"
 msgstr ""
 "Visualizza il formato porcelain con le informazioni sul commit per ogni riga"
 
-#: builtin/blame.c:804
+#: builtin/blame.c:855
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr ""
 "Usa la stessa modalità di output di git-annotate (impostazione predefinita: "
 "off)"
 
-#: builtin/blame.c:805
+#: builtin/blame.c:856
 msgid "Show raw timestamp (Default: off)"
 msgstr "Visualizza il timestamp grezzo (impostazione predefinita: off)"
 
-#: builtin/blame.c:806
+#: builtin/blame.c:857
 msgid "Show long commit SHA1 (Default: off)"
 msgstr ""
 "Visualizza l'hash SHA1 del commit in forma lunga (impostazione predefinita: "
 "off)"
 
-#: builtin/blame.c:807
+#: builtin/blame.c:858
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr ""
 "Non visualizzare il nome autore e il timestamp (impostazione predefinita: "
 "off)"
 
-#: builtin/blame.c:808
+#: builtin/blame.c:859
 msgid "Show author email instead of name (Default: off)"
 msgstr ""
 "Visualizza l'indirizzo e-mail dell'autore invece del nome (impostazione "
 "predefinita: off)"
 
-#: builtin/blame.c:809
+#: builtin/blame.c:860
 msgid "Ignore whitespace differences"
 msgstr "Ignora le differenze relative agli spazi bianchi"
 
-#: builtin/blame.c:810
+#: builtin/blame.c:861 builtin/log.c:1646
+msgid "rev"
+msgstr "revisione"
+
+#: builtin/blame.c:861
+msgid "Ignore <rev> when blaming"
+msgstr "Ignora <revisione> durante l'esecuzione del blame"
+
+#: builtin/blame.c:862
+msgid "Ignore revisions from <file>"
+msgstr "Ignora le revisioni specificate in <file>"
+
+#: builtin/blame.c:863
 msgid "color redundant metadata from previous line differently"
 msgstr "colora in modo differente i metadati ridondanti della riga precedente"
 
-#: builtin/blame.c:811
+#: builtin/blame.c:864
 msgid "color lines by age"
 msgstr "colora le righe in base all'età"
 
-#: builtin/blame.c:818
+#: builtin/blame.c:871
 msgid "Use an experimental heuristic to improve diffs"
 msgstr "Usa un'euristica sperimentale per migliorare i diff"
 
-#: builtin/blame.c:820
+#: builtin/blame.c:873
 msgid "Spend extra cycles to find better match"
 msgstr "Usa cicli extra per trovare una corrispondenza migliore"
 
-#: builtin/blame.c:821
+#: builtin/blame.c:874
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr "Usa le revisioni salvate in <file> anziché richiamare git-rev-list"
 
-#: builtin/blame.c:822
+#: builtin/blame.c:875
 msgid "Use <file>'s contents as the final image"
 msgstr "Usa i contenuti di <file> come immagine finale"
 
-#: builtin/blame.c:823 builtin/blame.c:824
+#: builtin/blame.c:876 builtin/blame.c:877
 msgid "score"
 msgstr "punteggio"
 
-#: builtin/blame.c:823
+#: builtin/blame.c:876
 msgid "Find line copies within and across files"
 msgstr "Trova copie delle righe all'interno e fra file"
 
-#: builtin/blame.c:824
+#: builtin/blame.c:877
 msgid "Find line movements within and across files"
 msgstr "Trova righe spostate all'interno e fra file"
 
-#: builtin/blame.c:825
+#: builtin/blame.c:878
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:825
+#: builtin/blame.c:878
 msgid "Process only line range n,m, counting from 1"
 msgstr "Elabora solo l'intervallo righe n,m, contandole da 1"
 
-#: builtin/blame.c:876
+#: builtin/blame.c:929
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress non può essere usato con --incremental o con i formati porcelain"
@@ -9483,18 +9671,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:927
+#: builtin/blame.c:980
 msgid "4 years, 11 months ago"
 msgstr "4 anni, 11 giorni fa"
 
-#: builtin/blame.c:1031
+#: builtin/blame.c:1087
 #, c-format
 msgid "file %s has only %lu line"
 msgid_plural "file %s has only %lu lines"
 msgstr[0] "il file %s ha solo %lu riga"
 msgstr[1] "il file %s ha solo %lu righe"
 
-#: builtin/blame.c:1077
+#: builtin/blame.c:1133
 msgid "Blaming lines"
 msgstr "Eseguo il blame sulle righe"
 
@@ -9526,7 +9714,7 @@ msgstr "git branch [<opzioni>] [-r | -a] [--points-at]"
 msgid "git branch [<options>] [-r | -a] [--format]"
 msgstr "git branch [<opzioni>] [-r | -a] [--format]"
 
-#: builtin/branch.c:151
+#: builtin/branch.c:154
 #, c-format
 msgid ""
 "deleting branch '%s' that has been merged to\n"
@@ -9535,7 +9723,7 @@ msgstr ""
 "elimino il branch '%s' di cui è stato eseguito il merge in\n"
 "         '%s', ma di cui non è ancora stato eseguito il merge in HEAD."
 
-#: builtin/branch.c:155
+#: builtin/branch.c:158
 #, c-format
 msgid ""
 "not deleting branch '%s' that is not yet merged to\n"
@@ -9544,12 +9732,12 @@ msgstr ""
 "non elimino il branch '%s' di cui non è ancora stato eseguito il merge in\n"
 "         '%s', benché ne sia stato eseguito il merge in HEAD."
 
-#: builtin/branch.c:169
+#: builtin/branch.c:172
 #, c-format
 msgid "Couldn't look up commit object for '%s'"
 msgstr "Impossibile trovare l'oggetto commit per '%s'"
 
-#: builtin/branch.c:173
+#: builtin/branch.c:176
 #, c-format
 msgid ""
 "The branch '%s' is not fully merged.\n"
@@ -9558,129 +9746,129 @@ msgstr ""
 "Il branch '%s' non è stato sottoposto completamente a un merge.\n"
 "Se sei sicuro di volerlo eliminare, esegui 'git branch -D %s'."
 
-#: builtin/branch.c:186
+#: builtin/branch.c:189
 msgid "Update of config-file failed"
 msgstr "Aggiornamento del file di configurazione non riuscito"
 
-#: builtin/branch.c:217
+#: builtin/branch.c:220
 msgid "cannot use -a with -d"
 msgstr "impossibile usare -a con -d"
 
-#: builtin/branch.c:223
+#: builtin/branch.c:226
 msgid "Couldn't look up commit object for HEAD"
 msgstr "Impossibile trovare l'oggetto commit per HEAD"
 
-#: builtin/branch.c:237
+#: builtin/branch.c:240
 #, c-format
 msgid "Cannot delete branch '%s' checked out at '%s'"
 msgstr ""
 "Impossibile eliminare il branch '%s' di cui è stato eseguito il checkout in "
 "'%s'"
 
-#: builtin/branch.c:252
+#: builtin/branch.c:255
 #, c-format
 msgid "remote-tracking branch '%s' not found."
 msgstr "branch remoto tracciato '%s' non trovato."
 
-#: builtin/branch.c:253
+#: builtin/branch.c:256
 #, c-format
 msgid "branch '%s' not found."
 msgstr "branch '%s' non trovato."
 
-#: builtin/branch.c:268
+#: builtin/branch.c:271
 #, c-format
 msgid "Error deleting remote-tracking branch '%s'"
 msgstr "Errore durante l'eliminazione del branch remoto tracciato '%s'"
 
-#: builtin/branch.c:269
+#: builtin/branch.c:272
 #, c-format
 msgid "Error deleting branch '%s'"
 msgstr "Errore durante l'eliminazione del branch '%s'"
 
-#: builtin/branch.c:276
+#: builtin/branch.c:279
 #, c-format
 msgid "Deleted remote-tracking branch %s (was %s).\n"
 msgstr "Branch remoto tracciato %s eliminato (era %s).\n"
 
-#: builtin/branch.c:277
+#: builtin/branch.c:280
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr "Branch %s eliminato (era %s).\n"
 
-#: builtin/branch.c:421 builtin/tag.c:60
+#: builtin/branch.c:429 builtin/tag.c:61
 msgid "unable to parse format string"
 msgstr "impossibile analizzare la stringa di formato"
 
-#: builtin/branch.c:452
+#: builtin/branch.c:460
 msgid "could not resolve HEAD"
 msgstr "impossibile risolvere HEAD"
 
-#: builtin/branch.c:458
+#: builtin/branch.c:466
 #, c-format
 msgid "HEAD (%s) points outside of refs/heads/"
 msgstr "HEAD (%s) punta a un oggetto non in refs/heads/"
 
-#: builtin/branch.c:473
+#: builtin/branch.c:481
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr "Rebase del branch %s in corso in %s"
 
-#: builtin/branch.c:477
+#: builtin/branch.c:485
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr "Bisezione del branch %s in corso in %s"
 
-#: builtin/branch.c:494
+#: builtin/branch.c:502
 msgid "cannot copy the current branch while not on any."
 msgstr ""
 "impossibile copiare il branch corrente quando non si è su alcun branch."
 
-#: builtin/branch.c:496
+#: builtin/branch.c:504
 msgid "cannot rename the current branch while not on any."
 msgstr ""
-"impossibile rinominare il branch corrente quando non si è su alcun branch."
+"impossibile ridenominare il branch corrente quando non si è su alcun branch."
 
-#: builtin/branch.c:507
+#: builtin/branch.c:515
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Nome branch non valido: '%s'"
 
-#: builtin/branch.c:534
+#: builtin/branch.c:542
 msgid "Branch rename failed"
 msgstr "Ridenominazione del branch non riuscita"
 
-#: builtin/branch.c:536
+#: builtin/branch.c:544
 msgid "Branch copy failed"
 msgstr "Copia del branch non riuscita"
 
-#: builtin/branch.c:540
+#: builtin/branch.c:548
 #, c-format
 msgid "Created a copy of a misnamed branch '%s'"
 msgstr "Creata copia del branch mal denominato '%s'"
 
-#: builtin/branch.c:543
+#: builtin/branch.c:551
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "Branch mal denominato '%s' rinominato"
 
-#: builtin/branch.c:549
+#: builtin/branch.c:557
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "Branch rinominato in %s, ma HEAD non è aggiornato!"
 
-#: builtin/branch.c:558
+#: builtin/branch.c:566
 msgid "Branch is renamed, but update of config-file failed"
 msgstr ""
 "Il branch è stato rinominato, ma l'aggiornamento del file di configurazione "
 "non è riuscito"
 
-#: builtin/branch.c:560
+#: builtin/branch.c:568
 msgid "Branch is copied, but update of config-file failed"
 msgstr ""
 "Il branch è stato copiato, ma l'aggiornamento del file di configurazione non "
 "è riuscito"
 
-#: builtin/branch.c:576
+#: builtin/branch.c:584
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -9691,186 +9879,186 @@ msgstr ""
 "  %s\n"
 "Le righe che iniziano con '%c' saranno omesse.\n"
 
-#: builtin/branch.c:610
+#: builtin/branch.c:618
 msgid "Generic options"
 msgstr "Opzioni generiche"
 
-#: builtin/branch.c:612
+#: builtin/branch.c:620
 msgid "show hash and subject, give twice for upstream branch"
 msgstr ""
 "visualizza l'hash e l'oggetto, usa l'opzione due volte per il branch upstream"
 
-#: builtin/branch.c:613
+#: builtin/branch.c:621
 msgid "suppress informational messages"
 msgstr "non visualizzare i messaggi informativi"
 
-#: builtin/branch.c:614
+#: builtin/branch.c:622
 msgid "set up tracking mode (see git-pull(1))"
 msgstr "imposta la modalità tracking (vedi git-pull(1))"
 
-#: builtin/branch.c:616
+#: builtin/branch.c:624
 msgid "do not use"
 msgstr "non usare"
 
-#: builtin/branch.c:618 builtin/rebase.c:485
+#: builtin/branch.c:626 builtin/rebase.c:485
 msgid "upstream"
 msgstr "upstream"
 
-#: builtin/branch.c:618
+#: builtin/branch.c:626
 msgid "change the upstream info"
 msgstr "modifica le informazioni sull'upstream"
 
-#: builtin/branch.c:619
+#: builtin/branch.c:627
 msgid "Unset the upstream info"
 msgstr "Rimuovi le informazioni sull'upstream"
 
-#: builtin/branch.c:620
+#: builtin/branch.c:628
 msgid "use colored output"
 msgstr "usa l'output colorato"
 
-#: builtin/branch.c:621
+#: builtin/branch.c:629
 msgid "act on remote-tracking branches"
 msgstr "agisci sui branch remoti tracciati"
 
-#: builtin/branch.c:623 builtin/branch.c:625
+#: builtin/branch.c:631 builtin/branch.c:633
 msgid "print only branches that contain the commit"
 msgstr "stampa solo i branch che contengono i commit"
 
-#: builtin/branch.c:624 builtin/branch.c:626
+#: builtin/branch.c:632 builtin/branch.c:634
 msgid "print only branches that don't contain the commit"
 msgstr "stampa solo i branch che non contengono i commit"
 
-#: builtin/branch.c:629
+#: builtin/branch.c:637
 msgid "Specific git-branch actions:"
 msgstr "Azioni specifiche di git-branch:"
 
-#: builtin/branch.c:630
+#: builtin/branch.c:638
 msgid "list both remote-tracking and local branches"
 msgstr "elenca sia i branch remoti tracciati sia quelli locali"
 
-#: builtin/branch.c:632
+#: builtin/branch.c:640
 msgid "delete fully merged branch"
 msgstr "elimina il branch completamente sottoposto a merge"
 
-#: builtin/branch.c:633
+#: builtin/branch.c:641
 msgid "delete branch (even if not merged)"
 msgstr "elimina il branch (anche se non è stato sottoposto a merge)"
 
-#: builtin/branch.c:634
+#: builtin/branch.c:642
 msgid "move/rename a branch and its reflog"
 msgstr "sposta/rinomina un branch e il suo registro dei riferimenti"
 
-#: builtin/branch.c:635
+#: builtin/branch.c:643
 msgid "move/rename a branch, even if target exists"
 msgstr "sposta/rinomina un branch anche se la destinazione esiste"
 
-#: builtin/branch.c:636
+#: builtin/branch.c:644
 msgid "copy a branch and its reflog"
 msgstr "copia un branch e il suo registro dei riferimenti"
 
-#: builtin/branch.c:637
+#: builtin/branch.c:645
 msgid "copy a branch, even if target exists"
 msgstr "copia un branch anche se la destinazione esiste"
 
-#: builtin/branch.c:638
+#: builtin/branch.c:646
 msgid "list branch names"
 msgstr "elenca i nomi dei branch"
 
-#: builtin/branch.c:639
+#: builtin/branch.c:647
 msgid "show current branch name"
 msgstr "visualizza il nome del branch corrente"
 
-#: builtin/branch.c:640
+#: builtin/branch.c:648
 msgid "create the branch's reflog"
 msgstr "crea il registro dei riferimenti del branch"
 
-#: builtin/branch.c:642
+#: builtin/branch.c:650
 msgid "edit the description for the branch"
 msgstr "modifica la descrizione del branch"
 
-#: builtin/branch.c:643
+#: builtin/branch.c:651
 msgid "force creation, move/rename, deletion"
 msgstr "forza la creazione, spostamento/ridenominazione, eliminazione"
 
-#: builtin/branch.c:644
+#: builtin/branch.c:652
 msgid "print only branches that are merged"
 msgstr "stampa solo i branch sottoposti a merge"
 
-#: builtin/branch.c:645
+#: builtin/branch.c:653
 msgid "print only branches that are not merged"
 msgstr "stampa solo i branch non sottoposti a merge"
 
-#: builtin/branch.c:646
+#: builtin/branch.c:654
 msgid "list branches in columns"
 msgstr "elenca i branch in colonne"
 
-#: builtin/branch.c:649 builtin/for-each-ref.c:42 builtin/notes.c:415
+#: builtin/branch.c:657 builtin/for-each-ref.c:42 builtin/notes.c:415
 #: builtin/notes.c:418 builtin/notes.c:581 builtin/notes.c:584
-#: builtin/tag.c:427
+#: builtin/tag.c:433
 msgid "object"
 msgstr "oggetto"
 
-#: builtin/branch.c:650
+#: builtin/branch.c:658
 msgid "print only branches of the object"
 msgstr "stampa solo i branch dell'oggetto"
 
-#: builtin/branch.c:652 builtin/for-each-ref.c:48 builtin/tag.c:434
+#: builtin/branch.c:660 builtin/for-each-ref.c:48 builtin/tag.c:440
 msgid "sorting and filtering are case insensitive"
 msgstr ""
 "l'ordinamento e il filtraggio non fanno differenza tra maiuscole e minuscole"
 
-#: builtin/branch.c:653 builtin/for-each-ref.c:38 builtin/tag.c:432
+#: builtin/branch.c:661 builtin/for-each-ref.c:38 builtin/tag.c:438
 #: builtin/verify-tag.c:39
 msgid "format to use for the output"
 msgstr "formato da usare per l'output"
 
-#: builtin/branch.c:676 builtin/clone.c:748
+#: builtin/branch.c:684 builtin/clone.c:761
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD non trovato fra i riferimenti/head!"
 
-#: builtin/branch.c:700
+#: builtin/branch.c:708
 msgid "--column and --verbose are incompatible"
 msgstr "--column e --verbose non sono compatibili"
 
-#: builtin/branch.c:715 builtin/branch.c:769 builtin/branch.c:778
+#: builtin/branch.c:723 builtin/branch.c:777 builtin/branch.c:786
 msgid "branch name required"
 msgstr "nome branch richiesto"
 
-#: builtin/branch.c:745
+#: builtin/branch.c:753
 msgid "Cannot give description to detached HEAD"
 msgstr "Impossibile fornire una descrizione per l'HEAD scollegato"
 
-#: builtin/branch.c:750
+#: builtin/branch.c:758
 msgid "cannot edit description of more than one branch"
 msgstr "impossibile modificare la descrizione per più di un branch"
 
-#: builtin/branch.c:757
+#: builtin/branch.c:765
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr "Non esiste ancora nessun commit sul branch '%s'."
 
-#: builtin/branch.c:760
+#: builtin/branch.c:768
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Non esiste alcun branch denominato '%s'."
 
-#: builtin/branch.c:775
+#: builtin/branch.c:783
 msgid "too many branches for a copy operation"
 msgstr "sono presenti troppi branch per consentire un'operazione di copia"
 
-#: builtin/branch.c:784
+#: builtin/branch.c:792
 msgid "too many arguments for a rename operation"
 msgstr ""
 "sono presenti troppi argomenti per consentire un'operazione di "
 "ridenominazione"
 
-#: builtin/branch.c:789
+#: builtin/branch.c:797
 msgid "too many arguments to set new upstream"
 msgstr ""
 "sono presenti troppi argomenti per consentire l'impostazione del nuovo "
 "upstream"
 
-#: builtin/branch.c:793
+#: builtin/branch.c:801
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -9878,38 +10066,41 @@ msgstr ""
 "impossibile impostare l'upstream di HEAD a %s quando non punta ad alcun "
 "branch."
 
-#: builtin/branch.c:796 builtin/branch.c:819
+#: builtin/branch.c:804 builtin/branch.c:827
 #, c-format
 msgid "no such branch '%s'"
 msgstr "branch '%s' non esistente"
 
-#: builtin/branch.c:800
+#: builtin/branch.c:808
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "il branch '%s' non esiste"
 
-#: builtin/branch.c:813
+#: builtin/branch.c:821
 msgid "too many arguments to unset upstream"
 msgstr ""
 "sono presenti troppi argomenti per rimuovere le informazioni sull'upstream"
 
-#: builtin/branch.c:817
+#: builtin/branch.c:825
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr ""
 "impossibile rimuovere le informazioni sull'upstream di HEAD quando non punta "
 "ad alcun branch."
 
-#: builtin/branch.c:823
+#: builtin/branch.c:831
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "Il branch '%s' non ha informazioni sull'upstream"
 
-#: builtin/branch.c:833
-msgid "-a and -r options to 'git branch' do not make sense with a branch name"
+#: builtin/branch.c:841
+msgid ""
+"The -a, and -r, options to 'git branch' do not take a branch name.\n"
+"Did you mean to use: -a|-r --list <pattern>?"
 msgstr ""
-"le opzioni -a e -r per 'git branch' non hanno senso con il nome di un branch"
+"Le opzioni di 'git branch' -a e -r non richiedono un nome branch.\n"
+"Forse volevi usare: -a|-r --list <pattern>?"
 
-#: builtin/branch.c:836
+#: builtin/branch.c:845
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -9930,7 +10121,7 @@ msgstr "Per creare un bundle è necessario un repository."
 msgid "Need a repository to unbundle."
 msgstr "Per decomprimere un bundle è necessario un repository."
 
-#: builtin/cat-file.c:593
+#: builtin/cat-file.c:594
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
@@ -9938,7 +10129,7 @@ msgstr ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <tipo> | --textconv | --filters) [--path=<percorso>] <oggetto>"
 
-#: builtin/cat-file.c:594
+#: builtin/cat-file.c:595
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
@@ -9946,75 +10137,75 @@ msgstr ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 
-#: builtin/cat-file.c:615
+#: builtin/cat-file.c:616
 msgid "only one batch option may be specified"
 msgstr "può essere specificata solo un'opzione batch"
 
-#: builtin/cat-file.c:633
+#: builtin/cat-file.c:634
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<tipo> può essere uno fra blob, tree, commit, tag"
 
-#: builtin/cat-file.c:634
+#: builtin/cat-file.c:635
 msgid "show object type"
 msgstr "visualizza tipo oggetto"
 
-#: builtin/cat-file.c:635
+#: builtin/cat-file.c:636
 msgid "show object size"
 msgstr "visualizza dimensioni oggetto"
 
-#: builtin/cat-file.c:637
+#: builtin/cat-file.c:638
 msgid "exit with zero when there's no error"
 msgstr "esci con codice d'uscita zero se non si sono verificati errori"
 
-#: builtin/cat-file.c:638
+#: builtin/cat-file.c:639
 msgid "pretty-print object's content"
 msgstr "stampa il contenuto dell'oggetto con un formato leggibile"
 
-#: builtin/cat-file.c:640
+#: builtin/cat-file.c:641
 msgid "for blob objects, run textconv on object's content"
 msgstr "esegui textconv sul contenuto dell'oggetto (per gli oggetti blob)"
 
-#: builtin/cat-file.c:642
+#: builtin/cat-file.c:643
 msgid "for blob objects, run filters on object's content"
 msgstr "esegui i filtri sul contenuto dell'oggetto (per gli oggetti blob)"
 
-#: builtin/cat-file.c:643 git-submodule.sh:936
+#: builtin/cat-file.c:644 git-submodule.sh:936
 msgid "blob"
 msgstr "blob"
 
-#: builtin/cat-file.c:644
+#: builtin/cat-file.c:645
 msgid "use a specific path for --textconv/--filters"
 msgstr "usa un percorso specifico per --textconv/--filters"
 
-#: builtin/cat-file.c:646
+#: builtin/cat-file.c:647
 msgid "allow -s and -t to work with broken/corrupt objects"
 msgstr "consenti a -s e -t di funzionare con oggetti malformati/corrotti"
 
-#: builtin/cat-file.c:647
+#: builtin/cat-file.c:648
 msgid "buffer --batch output"
 msgstr "esegui il buffering dell'output di --batch"
 
-#: builtin/cat-file.c:649
+#: builtin/cat-file.c:650
 msgid "show info and content of objects fed from the standard input"
 msgstr ""
 "visualizza le informazioni e il contenuto degli oggetti forniti nello "
 "standard input"
 
-#: builtin/cat-file.c:653
+#: builtin/cat-file.c:654
 msgid "show info about objects fed from the standard input"
 msgstr "visualizza le informazioni degli oggetti forniti nello standard input"
 
-#: builtin/cat-file.c:657
+#: builtin/cat-file.c:658
 msgid "follow in-tree symlinks (used with --batch or --batch-check)"
 msgstr ""
 "segui i collegamenti simbolici entro l'albero (usato con --batch o --batch-"
 "check)"
 
-#: builtin/cat-file.c:659
+#: builtin/cat-file.c:660
 msgid "show all objects with --batch or --batch-check"
 msgstr "visualizza tutti gli oggetti con --batch o --batch-check"
 
-#: builtin/cat-file.c:661
+#: builtin/cat-file.c:662
 msgid "do not order --batch-all-objects output"
 msgstr "non ordinare l'output di --batch-all-objects"
 
@@ -10042,8 +10233,8 @@ msgstr "leggi i nomi dei file dallo standard input"
 msgid "terminate input and output records by a NUL character"
 msgstr "termina i record di input e output con un carattere NUL"
 
-#: builtin/check-ignore.c:21 builtin/checkout.c:1355 builtin/gc.c:538
-#: builtin/worktree.c:499
+#: builtin/check-ignore.c:21 builtin/checkout.c:1433 builtin/gc.c:538
+#: builtin/worktree.c:507
 msgid "suppress progress reporting"
 msgstr "non visualizzare l'avanzamento dell'operazione"
 
@@ -10133,9 +10324,9 @@ msgid "write the content to temporary files"
 msgstr "scrivi il contenuto in file temporanei"
 
 #: builtin/checkout-index.c:178 builtin/column.c:31
-#: builtin/submodule--helper.c:1372 builtin/submodule--helper.c:1375
-#: builtin/submodule--helper.c:1383 builtin/submodule--helper.c:1856
-#: builtin/worktree.c:672
+#: builtin/submodule--helper.c:1373 builtin/submodule--helper.c:1376
+#: builtin/submodule--helper.c:1384 builtin/submodule--helper.c:1857
+#: builtin/worktree.c:680
 msgid "string"
 msgstr "stringa"
 
@@ -10147,93 +10338,116 @@ msgstr "aggiungi il prefisso <stringa> durante la creazione dei file"
 msgid "copy out the files from named stage"
 msgstr "copia i file dalla fase specificata"
 
-#: builtin/checkout.c:32
+#: builtin/checkout.c:31
 msgid "git checkout [<options>] <branch>"
 msgstr "git checkout [<opzioni>] <branch>"
 
-#: builtin/checkout.c:33
+#: builtin/checkout.c:32
 msgid "git checkout [<options>] [<branch>] -- <file>..."
 msgstr "git checkout [<opzioni>] [<branch>] -- <file>..."
 
-#: builtin/checkout.c:151 builtin/checkout.c:190
+#: builtin/checkout.c:37
+msgid "git switch [<options>] [<branch>]"
+msgstr "git switch [<opzioni>] <branch>"
+
+#: builtin/checkout.c:42
+msgid "git restore [<options>] [--source=<branch>] <file>..."
+msgstr "git restore [<opzioni>] [--source=<branch>] <file>..."
+
+#: builtin/checkout.c:172 builtin/checkout.c:211
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "il percorso '%s' non ha la nostra versione"
 
-#: builtin/checkout.c:153 builtin/checkout.c:192
+#: builtin/checkout.c:174 builtin/checkout.c:213
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "il percorso '%s' non ha la loro versione"
 
-#: builtin/checkout.c:169
+#: builtin/checkout.c:190
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr "il percorso '%s' non ha tutte le versioni necessarie"
 
-#: builtin/checkout.c:219
+#: builtin/checkout.c:240
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr "il percorso '%s' non ha le versioni necessarie"
 
-#: builtin/checkout.c:237
+#: builtin/checkout.c:258
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "percorso '%s': impossibile eseguire il merge"
 
-#: builtin/checkout.c:253
+#: builtin/checkout.c:274
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "Impossibile aggiungere il risultato del merge per '%s'"
 
-#: builtin/checkout.c:331 builtin/checkout.c:334 builtin/checkout.c:337
-#: builtin/checkout.c:340
+#: builtin/checkout.c:374
+#, c-format
+msgid "Recreated %d merge conflict"
+msgid_plural "Recreated %d merge conflicts"
+msgstr[0] "Ricreato %d conflitto di merge"
+msgstr[1] "Ricreati %d conflitti di merge"
+
+#: builtin/checkout.c:379
+#, c-format
+msgid "Updated %d path from %s"
+msgid_plural "Updated %d paths from %s"
+msgstr[0] "Aggiornato %d percorso da %s"
+msgstr[1] "Aggiornati %d percorsi da %s"
+
+#: builtin/checkout.c:386
+#, c-format
+msgid "Updated %d path from the index"
+msgid_plural "Updated %d paths from the index"
+msgstr[0] "Aggiornato %d percorso dall'indice"
+msgstr[1] "Aggiornati %d percorsi dall'indice"
+
+#: builtin/checkout.c:409 builtin/checkout.c:412 builtin/checkout.c:415
+#: builtin/checkout.c:419
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr "'%s' non può essere usato con i percorsi in fase di aggiornamento"
 
-#: builtin/checkout.c:343 builtin/checkout.c:346
+#: builtin/checkout.c:422 builtin/checkout.c:425
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' non può essere usato con %s"
 
-#: builtin/checkout.c:349
+#: builtin/checkout.c:429
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr ""
 "Impossibile aggiornare dei percorsi e passare al branch '%s' "
 "contemporaneamente."
 
-#: builtin/checkout.c:396 builtin/checkout.c:403
+#: builtin/checkout.c:433
 #, c-format
-msgid "path '%s' is unmerged"
-msgstr "il percorso '%s' non è stato sottoposto a merge"
+msgid "neither '%s' or '%s' is specified"
+msgstr "né '%s' né '%s' sono stati specificati"
 
-#: builtin/checkout.c:442
+#: builtin/checkout.c:437
 #, c-format
-msgid "Recreated %d merge conflict"
-msgid_plural "Recreated %d merge conflicts"
-msgstr[0] "Ricreato %d conflitto di merge"
-msgstr[1] "Ricreati %d conflitti di merge"
+msgid "'%s' must be used when '%s' is not specified"
+msgstr "'%s' dev'essere usato quando '%s' non è specificato"
 
-#: builtin/checkout.c:447
+#: builtin/checkout.c:442 builtin/checkout.c:447
 #, c-format
-msgid "Updated %d path from %s"
-msgid_plural "Updated %d paths from %s"
-msgstr[0] "Aggiornato %d percorso da %s"
-msgstr[1] "Aggiornati %d percorsi da %s"
+msgid "'%s' or '%s' cannot be used with %s"
+msgstr "'%s' o '%s' non possono essere usati con %s"
 
-#: builtin/checkout.c:454
+#: builtin/checkout.c:506 builtin/checkout.c:513
 #, c-format
-msgid "Updated %d path from the index"
-msgid_plural "Updated %d paths from the index"
-msgstr[0] "Aggiornato %d percorso dall'indice"
-msgstr[1] "Aggiornati %d percorsi dall'indice"
+msgid "path '%s' is unmerged"
+msgstr "il percorso '%s' non è stato sottoposto a merge"
 
-#: builtin/checkout.c:695
+#: builtin/checkout.c:679
 msgid "you need to resolve your current index first"
 msgstr "prima devi risolvere l'indice corrente"
 
-#: builtin/checkout.c:744
+#: builtin/checkout.c:729
 #, c-format
 msgid ""
 "cannot continue with staged changes in the following files:\n"
@@ -10242,55 +10456,55 @@ msgstr ""
 "impossibile continuare con modifiche in stage nei file seguenti:\n"
 "%s"
 
-#: builtin/checkout.c:751
+#: builtin/checkout.c:736
 #, c-format
 msgid "staged changes in the following files may be lost: %s"
 msgstr "le modifiche in stage nei seguenti file potrebbero andare perdute: %s"
 
-#: builtin/checkout.c:848
+#: builtin/checkout.c:833
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Impossibile esaminare il registro dei riferimenti per '%s': %s\n"
 
-#: builtin/checkout.c:890
+#: builtin/checkout.c:875
 msgid "HEAD is now at"
 msgstr "HEAD si trova ora a"
 
-#: builtin/checkout.c:894 builtin/clone.c:701
+#: builtin/checkout.c:879 builtin/clone.c:714
 msgid "unable to update HEAD"
 msgstr "impossibile aggiornare HEAD"
 
-#: builtin/checkout.c:898
+#: builtin/checkout.c:883
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Ripristina il branch '%s'\n"
 
-#: builtin/checkout.c:901
+#: builtin/checkout.c:886
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Si è già su '%s'\n"
 
-#: builtin/checkout.c:905
+#: builtin/checkout.c:890
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Si è passati al branch '%s' e lo si è reimpostato\n"
 
-#: builtin/checkout.c:907 builtin/checkout.c:1283
+#: builtin/checkout.c:892 builtin/checkout.c:1289
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Si è passati a un nuovo branch '%s'\n"
 
-#: builtin/checkout.c:909
+#: builtin/checkout.c:894
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Si è passati al branch '%s'\n"
 
-#: builtin/checkout.c:960
+#: builtin/checkout.c:945
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ...e altri %d.\n"
 
-#: builtin/checkout.c:966
+#: builtin/checkout.c:951
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -10313,7 +10527,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:985
+#: builtin/checkout.c:970
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -10340,24 +10554,28 @@ msgstr[1] ""
 " git branch <nome del nuovo branch> %s\n"
 "\n"
 
-#: builtin/checkout.c:1017
+#: builtin/checkout.c:1005
 msgid "internal error in revision walk"
 msgstr "errore interno durante la visita delle revisioni"
 
-#: builtin/checkout.c:1021
+#: builtin/checkout.c:1009
 msgid "Previous HEAD position was"
 msgstr "La precedente posizione di HEAD era"
 
-#: builtin/checkout.c:1052 builtin/checkout.c:1278
+#: builtin/checkout.c:1049 builtin/checkout.c:1284
 msgid "You are on a branch yet to be born"
 msgstr "Sei su un branch che deve ancora essere creato"
 
-#: builtin/checkout.c:1173
+#: builtin/checkout.c:1176
+msgid "only one reference expected"
+msgstr "atteso solo un riferimento"
+
+#: builtin/checkout.c:1193
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "atteso solo un riferimento, %d specificati."
 
-#: builtin/checkout.c:1209
+#: builtin/checkout.c:1230
 #, c-format
 msgid ""
 "'%s' could be both a local file and a tracking branch.\n"
@@ -10366,156 +10584,212 @@ msgstr ""
 "'%s' potrebbe essere sia un file locale, sia un branch da tracciare.\n"
 "Usa -- (e facoltativamente --no-guess) per rimuovere l'ambiguità"
 
-#: builtin/checkout.c:1222 builtin/worktree.c:290 builtin/worktree.c:448
+#: builtin/checkout.c:1243 builtin/worktree.c:291 builtin/worktree.c:456
 #, c-format
 msgid "invalid reference: %s"
 msgstr "riferimento non valido: %s"
 
-#: builtin/checkout.c:1251
+#: builtin/checkout.c:1256 builtin/checkout.c:1618
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "il riferimento non è un albero: %s"
 
-#: builtin/checkout.c:1292
+#: builtin/checkout.c:1303
+#, c-format
+msgid "a branch is expected, got tag '%s'"
+msgstr "atteso branch, ricevuto tag '%s'"
+
+#: builtin/checkout.c:1305
+#, c-format
+msgid "a branch is expected, got remote branch '%s'"
+msgstr "atteso branch, ricevuto branch remoto '%s'"
+
+#: builtin/checkout.c:1306 builtin/checkout.c:1314
+#, c-format
+msgid "a branch is expected, got '%s'"
+msgstr "atteso branch, ricevuto '%s'"
+
+#: builtin/checkout.c:1309
+#, c-format
+msgid "a branch is expected, got commit '%s'"
+msgstr "atteso branch, ricevuto commit '%s'"
+
+#: builtin/checkout.c:1325
+msgid ""
+"cannot switch branch while merging\n"
+"Consider \"git merge --quit\" or \"git worktree add\"."
+msgstr ""
+"impossibile cambiare branch durante un merge\n"
+"Considera l'uso di \"git merge --quit\" o di \"git worktree add\"."
+
+#: builtin/checkout.c:1329
+msgid ""
+"cannot switch branch in the middle of an am session\n"
+"Consider \"git am --quit\" or \"git worktree add\"."
+msgstr ""
+"impossibile cambiare branch nel bel mezzo di una sessione am\n"
+"Considera l'uso di \"git am --quit\" o di \"git worktree add\"."
+
+#: builtin/checkout.c:1333
+msgid ""
+"cannot switch branch while rebasing\n"
+"Consider \"git rebase --quit\" or \"git worktree add\"."
+msgstr ""
+"impossibile cambiare branch durante un rebase\n"
+"Considera l'uso di \"git rebase --quit\" o di \"git worktree add\"."
+
+#: builtin/checkout.c:1337
+msgid ""
+"cannot switch branch while cherry-picking\n"
+"Consider \"git cherry-pick --quit\" or \"git worktree add\"."
+msgstr ""
+"impossibile cambiare branch durante un cherry-pick\n"
+"Considera l'uso di \"git cherry-pick --quit\" o di \"git worktree add\"."
+
+#: builtin/checkout.c:1341
+msgid ""
+"cannot switch branch while reverting\n"
+"Consider \"git revert --quit\" or \"git worktree add\"."
+msgstr ""
+"impossibile cambiare branch durante un revert\n"
+"Considera l'uso di \"git revert --quit\" o di \"git worktree add\"."
+
+#: builtin/checkout.c:1345
+msgid "you are switching branch while bisecting"
+msgstr "stai cambiando branch durante una bisezione"
+
+#: builtin/checkout.c:1352
 msgid "paths cannot be used with switching branches"
 msgstr "i percorsi non possono essere usati passando da un branch a un altro"
 
-#: builtin/checkout.c:1295 builtin/checkout.c:1299 builtin/checkout.c:1303
+#: builtin/checkout.c:1355 builtin/checkout.c:1359 builtin/checkout.c:1363
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "'%s' non può essere usato passando da un branch a un altro"
 
-#: builtin/checkout.c:1307 builtin/checkout.c:1310 builtin/checkout.c:1315
-#: builtin/checkout.c:1318
+#: builtin/checkout.c:1367 builtin/checkout.c:1370 builtin/checkout.c:1373
+#: builtin/checkout.c:1378 builtin/checkout.c:1383
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' non può essere usato con '%s'"
 
-#: builtin/checkout.c:1323
+#: builtin/checkout.c:1380
+#, c-format
+msgid "'%s' cannot take <start-point>"
+msgstr "'%s' non accetta l'argomento <punto di partenza>"
+
+#: builtin/checkout.c:1388
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr "Impossibile cambiare branch per passare a '%s' che non è un commit"
 
-#: builtin/checkout.c:1356 builtin/checkout.c:1358 builtin/clone.c:118
-#: builtin/remote.c:169 builtin/remote.c:171 builtin/worktree.c:492
-#: builtin/worktree.c:494
-msgid "branch"
-msgstr "branch"
+#: builtin/checkout.c:1395
+msgid "missing branch or commit argument"
+msgstr "argomento branch o commit mancante"
 
-#: builtin/checkout.c:1357
-msgid "create and checkout a new branch"
-msgstr "crea un nuovo branch ed eseguine il checkout"
+#: builtin/checkout.c:1437 builtin/clone.c:91 builtin/fetch.c:151
+#: builtin/merge.c:285 builtin/pull.c:137 builtin/push.c:575
+#: builtin/send-pack.c:174
+msgid "force progress reporting"
+msgstr "forza l'indicazione d'avanzamento dell'operazione"
 
-#: builtin/checkout.c:1359
-msgid "create/reset and checkout a branch"
-msgstr "crea/reimposta un branch ed eseguine il checkout"
+#: builtin/checkout.c:1438
+msgid "perform a 3-way merge with the new branch"
+msgstr "esegui un merge a tre vie con il nuovo branch"
 
-#: builtin/checkout.c:1360
-msgid "create reflog for new branch"
-msgstr "crea il registro dei riferimenti per il nuovo branch"
+#: builtin/checkout.c:1439 builtin/log.c:1634 parse-options.h:318
+msgid "style"
+msgstr "stile"
 
-#: builtin/checkout.c:1361 builtin/worktree.c:496
+#: builtin/checkout.c:1440
+msgid "conflict style (merge or diff3)"
+msgstr "stile conflitti (merge o diff3)"
+
+#: builtin/checkout.c:1452 builtin/worktree.c:504
 msgid "detach HEAD at named commit"
 msgstr "scollega l'HEAD al commit specificato"
 
-#: builtin/checkout.c:1362
+#: builtin/checkout.c:1453
 msgid "set upstream info for new branch"
 msgstr "imposta le informazioni sull'upstream per il nuovo branch"
 
-#: builtin/checkout.c:1364
+#: builtin/checkout.c:1455
+msgid "force checkout (throw away local modifications)"
+msgstr "esegui forzatamente il checkout (scarta le modifiche locali)"
+
+#: builtin/checkout.c:1457
 msgid "new-branch"
 msgstr "nuovo branch"
 
-#: builtin/checkout.c:1364
+#: builtin/checkout.c:1457
 msgid "new unparented branch"
 msgstr "nuovo branch senza genitore"
 
-#: builtin/checkout.c:1366
+#: builtin/checkout.c:1459 builtin/merge.c:288
+msgid "update ignored files (default)"
+msgstr "aggiorna i file ignorati (impostazione predefinita)"
+
+#: builtin/checkout.c:1462
+msgid "do not check if another worktree is holding the given ref"
+msgstr ""
+"non controllare se un altro albero di lavoro contiene il riferimento "
+"specificato"
+
+#: builtin/checkout.c:1475
 msgid "checkout our version for unmerged files"
 msgstr ""
 "esegui il checkout della nostra versione per i file non sottoposti a merge"
 
-#: builtin/checkout.c:1369
+#: builtin/checkout.c:1478
 msgid "checkout their version for unmerged files"
 msgstr ""
 "esegui il checkout della loro versione per i file non sottoposti a merge"
 
-#: builtin/checkout.c:1371
-msgid "force checkout (throw away local modifications)"
-msgstr "esegui forzatamente il checkout (scarta le modifiche locali)"
-
-#: builtin/checkout.c:1373
-msgid "perform a 3-way merge with the new branch"
-msgstr "esegui un merge a tre vie con il nuovo branch"
-
-#: builtin/checkout.c:1375 builtin/merge.c:284
-msgid "update ignored files (default)"
-msgstr "aggiorna i file ignorati (impostazione predefinita)"
-
-#: builtin/checkout.c:1377 builtin/log.c:1594 parse-options.h:317
-msgid "style"
-msgstr "stile"
-
-#: builtin/checkout.c:1378
-msgid "conflict style (merge or diff3)"
-msgstr "stile conflitti (merge o diff3)"
-
-#: builtin/checkout.c:1381
+#: builtin/checkout.c:1482
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "non limitare gli specificatori percorso solo alle voci sparse"
 
-#: builtin/checkout.c:1383
-msgid "do not second guess 'git checkout <no-such-branch>'"
-msgstr "non indovinare 'git checkout <branch inesistente>'"
-
-#: builtin/checkout.c:1385
-msgid "do not check if another worktree is holding the given ref"
-msgstr ""
-"non controllare se un altro albero di lavoro contiene il riferimento "
-"specificato"
-
-#: builtin/checkout.c:1389 builtin/clone.c:88 builtin/fetch.c:141
-#: builtin/merge.c:281 builtin/pull.c:136 builtin/push.c:575
-#: builtin/send-pack.c:174
-msgid "force progress reporting"
-msgstr "forza l'indicazione d'avanzamento dell'operazione"
-
-#: builtin/checkout.c:1390
-msgid "use overlay mode (default)"
-msgstr "usa modalità overlay (impostazione predefinita)"
-
-#: builtin/checkout.c:1422
+#: builtin/checkout.c:1533
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "le opzioni -b, -B e --orphan sono mutuamente esclusive"
 
-#: builtin/checkout.c:1425
+#: builtin/checkout.c:1536
 msgid "-p and --overlay are mutually exclusive"
 msgstr "le opzioni -p e --overlay sono mutualmente esclusive"
 
-#: builtin/checkout.c:1442
+#: builtin/checkout.c:1573
 msgid "--track needs a branch name"
 msgstr "--track richiede il nome di un branch"
 
-#: builtin/checkout.c:1447
+#: builtin/checkout.c:1578
 msgid "missing branch name; try -b"
 msgstr "nome del branch mancante; prova con -b"
 
-#: builtin/checkout.c:1484
+#: builtin/checkout.c:1611
+#, c-format
+msgid "could not resolve %s"
+msgstr "impossibile risolvere %s"
+
+#: builtin/checkout.c:1623
+msgid "you must specify path(s) to restore"
+msgstr "devi specificare il percorso/i percorsi da ripristinare"
+
+#: builtin/checkout.c:1631
 msgid "invalid path specification"
 msgstr "specificatore percorso non valido"
 
-#: builtin/checkout.c:1491
+#: builtin/checkout.c:1638
 #, c-format
 msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
 "'%s' non è un commit e non si può creare un branch '%s' che parta da esso"
 
-#: builtin/checkout.c:1495
+#: builtin/checkout.c:1642
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr "git checkout: --detach non accetta un percorso '%s' come argomento"
 
-#: builtin/checkout.c:1499
+#: builtin/checkout.c:1646
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -10523,7 +10797,7 @@ msgstr ""
 "git checkout: --ours/--theirs, --force e --merge sono incompatibili quando\n"
 "si esegue il checkout dell'indice."
 
-#: builtin/checkout.c:1519
+#: builtin/checkout.c:1666
 #, c-format
 msgid ""
 "'%s' matched more than one remote tracking branch.\n"
@@ -10554,6 +10828,68 @@ msgstr ""
 "rispetto a un particolare remoto, ad es. 'origin', potresti voler\n"
 "impostare checkout.defaultRemote=origin nel tuo file di configurazione."
 
+#: builtin/checkout.c:1691 builtin/checkout.c:1693 builtin/checkout.c:1733
+#: builtin/checkout.c:1735 builtin/clone.c:121 builtin/remote.c:169
+#: builtin/remote.c:171 builtin/worktree.c:500 builtin/worktree.c:502
+msgid "branch"
+msgstr "branch"
+
+#: builtin/checkout.c:1692
+msgid "create and checkout a new branch"
+msgstr "crea un nuovo branch ed eseguine il checkout"
+
+#: builtin/checkout.c:1694
+msgid "create/reset and checkout a branch"
+msgstr "crea/reimposta un branch ed eseguine il checkout"
+
+#: builtin/checkout.c:1695
+msgid "create reflog for new branch"
+msgstr "crea il registro dei riferimenti per il nuovo branch"
+
+#: builtin/checkout.c:1697
+msgid "second guess 'git checkout <no-such-branch>' (default)"
+msgstr "prevedi 'git checkout <branch inesistente>' (impostazione predefinita)"
+
+#: builtin/checkout.c:1698
+msgid "use overlay mode (default)"
+msgstr "usa modalità overlay (impostazione predefinita)"
+
+#: builtin/checkout.c:1734
+msgid "create and switch to a new branch"
+msgstr "crea un nuovo branch e passa a quest'ultimo"
+
+#: builtin/checkout.c:1736
+msgid "create/reset and switch to a branch"
+msgstr "crea/reimposta un branch e passa a quest'ultimo"
+
+#: builtin/checkout.c:1738
+msgid "second guess 'git switch <no-such-branch>'"
+msgstr "prevedi 'git switch <branch inesistente>'"
+
+#: builtin/checkout.c:1740
+msgid "throw away local modifications"
+msgstr "scarta le modifiche locali"
+
+#: builtin/checkout.c:1772
+msgid "where the checkout from"
+msgstr "sorgente del checkout"
+
+#: builtin/checkout.c:1774
+msgid "restore the index"
+msgstr "ripristina l'indice"
+
+#: builtin/checkout.c:1776
+msgid "restore the working tree (default)"
+msgstr "ripristina l'albero di lavoro (impostazione predefinita)"
+
+#: builtin/checkout.c:1778
+msgid "ignore unmerged entries"
+msgstr "ignora voci non sottoposte a merge"
+
+#: builtin/checkout.c:1779
+msgid "use overlay mode"
+msgstr "usa modalità overlay"
+
 #: builtin/clean.c:28
 msgid ""
 "git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
@@ -10586,7 +10922,12 @@ msgstr "Salterei il repository %s\n"
 msgid "failed to remove %s"
 msgstr "eliminazione di %s non riuscita"
 
-#: builtin/clean.c:299 git-add--interactive.perl:579
+#: builtin/clean.c:37
+#, c-format
+msgid "could not lstat %s\n"
+msgstr "impossibile eseguire l'lstat di %s\n"
+
+#: builtin/clean.c:300 git-add--interactive.perl:593
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -10599,7 +10940,7 @@ msgstr ""
 "pippo      - seleziona un elemento basandoti su un prefisso univoco\n"
 "           - (vuoto) non selezionare niente\n"
 
-#: builtin/clean.c:303 git-add--interactive.perl:588
+#: builtin/clean.c:304 git-add--interactive.perl:602
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -10620,38 +10961,38 @@ msgstr ""
 "*          - seleziona tutti gli elementi\n"
 "           - (vuoto) termina il processo di selezione\n"
 
-#: builtin/clean.c:519 git-add--interactive.perl:554
-#: git-add--interactive.perl:559
+#: builtin/clean.c:520 git-add--interactive.perl:568
+#: git-add--interactive.perl:573
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr "Eh (%s)?\n"
 
-#: builtin/clean.c:661
+#: builtin/clean.c:662
 #, c-format
 msgid "Input ignore patterns>> "
 msgstr "Immetti i pattern da ignorare>> "
 
-#: builtin/clean.c:698
+#: builtin/clean.c:699
 #, c-format
 msgid "WARNING: Cannot find items matched by: %s"
 msgstr "ATTENZIONE: Impossibile trovare elementi corrispondenti a %s"
 
-#: builtin/clean.c:719
+#: builtin/clean.c:720
 msgid "Select items to delete"
 msgstr "Seleziona gli elementi da eliminare"
 
 #. TRANSLATORS: Make sure to keep [y/N] as is
-#: builtin/clean.c:760
+#: builtin/clean.c:761
 #, c-format
 msgid "Remove %s [y/N]? "
 msgstr "Eliminare %s [y/N]? "
 
-#: builtin/clean.c:785 git-add--interactive.perl:1717
+#: builtin/clean.c:786 git-add--interactive.perl:1763
 #, c-format
 msgid "Bye.\n"
 msgstr "Ciao.\n"
 
-#: builtin/clean.c:793
+#: builtin/clean.c:794
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -10670,64 +11011,64 @@ msgstr ""
 "help                - visualizza questa schermata\n"
 "?                   - guida al prompt di selezione"
 
-#: builtin/clean.c:820 git-add--interactive.perl:1793
+#: builtin/clean.c:821 git-add--interactive.perl:1849
 msgid "*** Commands ***"
 msgstr "*** Comandi ***"
 
-#: builtin/clean.c:821 git-add--interactive.perl:1790
+#: builtin/clean.c:822 git-add--interactive.perl:1846
 msgid "What now"
 msgstr "Cosa faccio ora"
 
-#: builtin/clean.c:829
+#: builtin/clean.c:830
 msgid "Would remove the following item:"
 msgid_plural "Would remove the following items:"
 msgstr[0] "Eliminerei il seguente elemento:"
 msgstr[1] "Eliminerei i seguenti elementi:"
 
-#: builtin/clean.c:845
+#: builtin/clean.c:846
 msgid "No more files to clean, exiting."
 msgstr "Non ci sono più file da ripulire, esco."
 
-#: builtin/clean.c:907
+#: builtin/clean.c:908
 msgid "do not print names of files removed"
 msgstr "non stampare i nomi dei file eliminati"
 
-#: builtin/clean.c:909
+#: builtin/clean.c:910
 msgid "force"
 msgstr "forza l'operazione"
 
-#: builtin/clean.c:910
+#: builtin/clean.c:911
 msgid "interactive cleaning"
 msgstr "pulizia interattiva"
 
-#: builtin/clean.c:912
+#: builtin/clean.c:913
 msgid "remove whole directories"
 msgstr "rimuovi intere directory"
 
-#: builtin/clean.c:913 builtin/describe.c:546 builtin/describe.c:548
-#: builtin/grep.c:897 builtin/log.c:171 builtin/log.c:173
-#: builtin/ls-files.c:557 builtin/name-rev.c:417 builtin/name-rev.c:419
+#: builtin/clean.c:914 builtin/describe.c:546 builtin/describe.c:548
+#: builtin/grep.c:899 builtin/log.c:186 builtin/log.c:188
+#: builtin/ls-files.c:557 builtin/name-rev.c:413 builtin/name-rev.c:415
 #: builtin/show-ref.c:179
 msgid "pattern"
 msgstr "pattern"
 
-#: builtin/clean.c:914
+#: builtin/clean.c:915
 msgid "add <pattern> to ignore rules"
 msgstr "aggiungi <pattern> alle regole usate per ignorare i file"
 
-#: builtin/clean.c:915
+#: builtin/clean.c:916
 msgid "remove ignored files, too"
 msgstr "elimina anche i file ignorati"
 
-#: builtin/clean.c:917
+#: builtin/clean.c:918
 msgid "remove only ignored files"
 msgstr "elimina solo i file ignorati"
 
-#: builtin/clean.c:935
+#: builtin/clean.c:936
 msgid "-x and -X cannot be used together"
 msgstr "-x e -X non possono essere usati insieme"
 
-#: builtin/clean.c:939
+#: builtin/clean.c:940
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
@@ -10735,7 +11076,7 @@ msgstr ""
 "clean.requireForce è impostato a true e né -i, né -n, né -f sono stati "
 "specificati; mi rifiuto di eseguire la pulizia"
 
-#: builtin/clean.c:942
+#: builtin/clean.c:943
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -10743,158 +11084,164 @@ msgstr ""
 "clean.requireForce è true per impostazione predefinita e né -i, né -n, né -f "
 "sono stati specificati; mi rifiuto di eseguire la pulizia"
 
-#: builtin/clone.c:44
+#: builtin/clone.c:46
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<opzioni>] [--] <repository> [<directory>]"
 
-#: builtin/clone.c:90
+#: builtin/clone.c:93
 msgid "don't create a checkout"
 msgstr "non creare un checkout"
 
-#: builtin/clone.c:91 builtin/clone.c:93 builtin/init-db.c:489
+#: builtin/clone.c:94 builtin/clone.c:96 builtin/init-db.c:489
 msgid "create a bare repository"
 msgstr "crea un repository spoglio"
 
-#: builtin/clone.c:95
+#: builtin/clone.c:98
 msgid "create a mirror repository (implies bare)"
 msgstr "crea un repository mirror (implica che sia spoglio)"
 
-#: builtin/clone.c:97
+#: builtin/clone.c:100
 msgid "to clone from a local repository"
 msgstr "per clonare da un repository locale"
 
-#: builtin/clone.c:99
+#: builtin/clone.c:102
 msgid "don't use local hardlinks, always copy"
 msgstr "non usare i collegamenti reali locali, copia sempre i file"
 
-#: builtin/clone.c:101
+#: builtin/clone.c:104
 msgid "setup as shared repository"
 msgstr "imposta il repository come condiviso"
 
-#: builtin/clone.c:104
+#: builtin/clone.c:107
 msgid "pathspec"
 msgstr "specificatore percorso"
 
-#: builtin/clone.c:104
+#: builtin/clone.c:107
 msgid "initialize submodules in the clone"
 msgstr "inizializza sottomoduli durante la clonazione"
 
-#: builtin/clone.c:107
+#: builtin/clone.c:110
 msgid "number of submodules cloned in parallel"
 msgstr "numero di sottomoduli clonati in parallelo"
 
-#: builtin/clone.c:108 builtin/init-db.c:486
+#: builtin/clone.c:111 builtin/init-db.c:486
 msgid "template-directory"
 msgstr "directory modelli"
 
-#: builtin/clone.c:109 builtin/init-db.c:487
+#: builtin/clone.c:112 builtin/init-db.c:487
 msgid "directory from which templates will be used"
 msgstr "directory da cui saranno recuperati i modelli"
 
-#: builtin/clone.c:111 builtin/clone.c:113 builtin/submodule--helper.c:1379
-#: builtin/submodule--helper.c:1859
+#: builtin/clone.c:114 builtin/clone.c:116 builtin/submodule--helper.c:1380
+#: builtin/submodule--helper.c:1860
 msgid "reference repository"
 msgstr "repository di riferimento"
 
-#: builtin/clone.c:115 builtin/submodule--helper.c:1381
-#: builtin/submodule--helper.c:1861
+#: builtin/clone.c:118 builtin/submodule--helper.c:1382
+#: builtin/submodule--helper.c:1862
 msgid "use --reference only while cloning"
 msgstr "usa --reference solo durante la clonazione"
 
-#: builtin/clone.c:116 builtin/column.c:27 builtin/merge-file.c:46
-#: builtin/pack-objects.c:3306 builtin/repack.c:329
+#: builtin/clone.c:119 builtin/column.c:27 builtin/merge-file.c:46
+#: builtin/pack-objects.c:3308 builtin/repack.c:330
 msgid "name"
 msgstr "nome"
 
-#: builtin/clone.c:117
+#: builtin/clone.c:120
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "usa <nome> anziché 'origin' per tracciare l'upstream"
 
-#: builtin/clone.c:119
+#: builtin/clone.c:122
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "esegui il checkout di <branch> anziché dell'HEAD del remoto"
 
-#: builtin/clone.c:121
+#: builtin/clone.c:124
 msgid "path to git-upload-pack on the remote"
 msgstr "percorso al comando remoto git-upload-pack"
 
-#: builtin/clone.c:122 builtin/fetch.c:142 builtin/grep.c:836
-#: builtin/pull.c:225
+#: builtin/clone.c:125 builtin/fetch.c:152 builtin/grep.c:838
+#: builtin/pull.c:226
 msgid "depth"
 msgstr "profondità"
 
-#: builtin/clone.c:123
+#: builtin/clone.c:126
 msgid "create a shallow clone of that depth"
 msgstr "crea un clone shallow con questa profondità"
 
-#: builtin/clone.c:124 builtin/fetch.c:144 builtin/pack-objects.c:3295
+#: builtin/clone.c:127 builtin/fetch.c:154 builtin/pack-objects.c:3297
 msgid "time"
 msgstr "tempo"
 
-#: builtin/clone.c:125
+#: builtin/clone.c:128
 msgid "create a shallow clone since a specific time"
 msgstr "crea un clone shallow a partire dall'istante specificato"
 
-#: builtin/clone.c:126 builtin/fetch.c:146 builtin/fetch.c:169
-#: builtin/rebase.c:1389
+#: builtin/clone.c:129 builtin/fetch.c:156 builtin/fetch.c:179
+#: builtin/rebase.c:1395
 msgid "revision"
 msgstr "revisione"
 
-#: builtin/clone.c:127 builtin/fetch.c:147
+#: builtin/clone.c:130 builtin/fetch.c:157
 msgid "deepen history of shallow clone, excluding rev"
 msgstr ""
 "aumenta la profondità della cronologia del clone shallow fino alla revisione "
 "specificata esclusa"
 
-#: builtin/clone.c:129
+#: builtin/clone.c:132
 msgid "clone only one branch, HEAD or --branch"
 msgstr "clona solo un branch, HEAD o quello specificato con --branch"
 
-#: builtin/clone.c:131
+#: builtin/clone.c:134
 msgid "don't clone any tags, and make later fetches not to follow them"
 msgstr "non clonare alcun tag e fai sì che i fetch successivi non li seguano"
 
-#: builtin/clone.c:133
+#: builtin/clone.c:136
 msgid "any cloned submodules will be shallow"
 msgstr "tutti i sottomoduli clonati saranno shallow"
 
-#: builtin/clone.c:134 builtin/init-db.c:495
+#: builtin/clone.c:137 builtin/init-db.c:495
 msgid "gitdir"
 msgstr "directory Git"
 
-#: builtin/clone.c:135 builtin/init-db.c:496
+#: builtin/clone.c:138 builtin/init-db.c:496
 msgid "separate git dir from working tree"
 msgstr "separa la directory Git dall'albero di lavoro"
 
-#: builtin/clone.c:136
+#: builtin/clone.c:139
 msgid "key=value"
 msgstr "chiave=valore"
 
-#: builtin/clone.c:137
+#: builtin/clone.c:140
 msgid "set config inside the new repository"
 msgstr "imposta la configurazione nel nuovo repository"
 
-#: builtin/clone.c:139 builtin/fetch.c:164 builtin/ls-remote.c:76
+#: builtin/clone.c:142 builtin/fetch.c:174 builtin/ls-remote.c:76
 #: builtin/push.c:585 builtin/send-pack.c:172
 msgid "server-specific"
 msgstr "specifica del server"
 
-#: builtin/clone.c:139 builtin/fetch.c:164 builtin/ls-remote.c:76
+#: builtin/clone.c:142 builtin/fetch.c:174 builtin/ls-remote.c:76
 #: builtin/push.c:585 builtin/send-pack.c:173
 msgid "option to transmit"
 msgstr "opzione da trasmettere"
 
-#: builtin/clone.c:140 builtin/fetch.c:165 builtin/pull.c:238
+#: builtin/clone.c:143 builtin/fetch.c:175 builtin/pull.c:239
 #: builtin/push.c:586
 msgid "use IPv4 addresses only"
 msgstr "usa solo indirizzi IPv4"
 
-#: builtin/clone.c:142 builtin/fetch.c:167 builtin/pull.c:241
+#: builtin/clone.c:145 builtin/fetch.c:177 builtin/pull.c:242
 #: builtin/push.c:588
 msgid "use IPv6 addresses only"
 msgstr "usa solo indirizzi IPv6"
 
-#: builtin/clone.c:280
+#: builtin/clone.c:149
+msgid "any cloned submodules will use their remote-tracking branch"
+msgstr ""
+"tutti i sottomoduli clonati useranno il loro rispettivo branch remoto"
+" tracciato"
+
+#: builtin/clone.c:285
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -10902,149 +11249,149 @@ msgstr ""
 "Non è stato possibile indovinare alcun nome directory.\n"
 "Specifica una directory tramite la riga di comando"
 
-#: builtin/clone.c:333
+#: builtin/clone.c:338
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr "informazione: Impossibile aggiungere un alternato a '%s': %s\n"
 
-#: builtin/clone.c:405
-#, c-format
-msgid "failed to open '%s'"
-msgstr "apertura di '%s' non riuscita"
-
-#: builtin/clone.c:413
+#: builtin/clone.c:411
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s esiste e non è una directory"
 
-#: builtin/clone.c:427
+#: builtin/clone.c:428
 #, c-format
-msgid "failed to stat %s\n"
-msgstr "stat di %s non riuscito\n"
+msgid "failed to start iterator over '%s'"
+msgstr "impossibile avviare l'iteratore su '%s'"
 
-#: builtin/clone.c:444
+#: builtin/clone.c:453
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "unlink di '%s' non riuscito"
 
-#: builtin/clone.c:449
+#: builtin/clone.c:458
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "creazione del collegamento '%s' non riuscita"
 
-#: builtin/clone.c:453
+#: builtin/clone.c:462
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "copia del file in '%s' non riuscita"
 
-#: builtin/clone.c:479
+#: builtin/clone.c:467
+#, c-format
+msgid "failed to iterate over '%s'"
+msgstr "iterazione su '%s' non riuscita"
+
+#: builtin/clone.c:492
 #, c-format
 msgid "done.\n"
 msgstr "fatto.\n"
 
-#: builtin/clone.c:493
+#: builtin/clone.c:506
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
-"and retry the checkout with 'git checkout -f HEAD'\n"
+"and retry with 'git restore --source=HEAD :/'\n"
 msgstr ""
 "Clone completato con successo, ma il checkout non è riuscito.\n"
 "Puoi esaminare gli elementi di cui è stato eseguito il checkout\n"
 "con 'git status' e riprovare ad eseguire il checkout con\n"
-"'git checkout -f HEAD'\n"
+"'git restore --source=HEAD :/'\n"
 
-#: builtin/clone.c:570
+#: builtin/clone.c:583
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Impossibile trovare il branch remoto %s da clonare."
 
-#: builtin/clone.c:689
+#: builtin/clone.c:702
 #, c-format
 msgid "unable to update %s"
 msgstr "impossibile aggiornare %s"
 
-#: builtin/clone.c:739
+#: builtin/clone.c:752
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr ""
 "l'HEAD remoto fa riferimento a un riferimento inesistente, impossibile "
 "eseguire il checkout.\n"
 
-#: builtin/clone.c:770
+#: builtin/clone.c:783
 msgid "unable to checkout working tree"
 msgstr "impossibile eseguire il checkout dell'albero di lavoro"
 
-#: builtin/clone.c:815
+#: builtin/clone.c:833
 msgid "unable to write parameters to config file"
 msgstr "impossibile scrivere i parametri nel file di configurazione"
 
-#: builtin/clone.c:878
+#: builtin/clone.c:896
 msgid "cannot repack to clean up"
 msgstr "impossibile eseguire il repack per pulire l'area di lavoro"
 
-#: builtin/clone.c:880
+#: builtin/clone.c:898
 msgid "cannot unlink temporary alternates file"
 msgstr "impossibile eseguire l'unlink del file alternates temporaneo"
 
-#: builtin/clone.c:920 builtin/receive-pack.c:1952
+#: builtin/clone.c:938 builtin/receive-pack.c:1950
 msgid "Too many arguments."
 msgstr "Troppi argomenti."
 
-#: builtin/clone.c:924
+#: builtin/clone.c:942
 msgid "You must specify a repository to clone."
 msgstr "Devi specificare un repository da clonare."
 
-#: builtin/clone.c:937
+#: builtin/clone.c:955
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "le opzioni --bare e --origin %s non sono compatibili."
 
-#: builtin/clone.c:940
+#: builtin/clone.c:958
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "le opzioni --bare e --separate-git-dir non sono compatibili."
 
-#: builtin/clone.c:953
+#: builtin/clone.c:971
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "il repository '%s' non esiste"
 
-#: builtin/clone.c:959 builtin/fetch.c:1610
+#: builtin/clone.c:977 builtin/fetch.c:1653
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "la profondità %s non è un numero positivo"
 
-#: builtin/clone.c:969
+#: builtin/clone.c:987
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr ""
 "il percorso di destinazione '%s' esiste già e non è una directory vuota."
 
-#: builtin/clone.c:979
+#: builtin/clone.c:997
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "l'albero di lavoro '%s' esiste già."
 
-#: builtin/clone.c:994 builtin/clone.c:1015 builtin/difftool.c:264
-#: builtin/worktree.c:296 builtin/worktree.c:328
+#: builtin/clone.c:1012 builtin/clone.c:1033 builtin/difftool.c:264
+#: builtin/worktree.c:303 builtin/worktree.c:335
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "impossibile creare le prime directory di '%s'"
 
-#: builtin/clone.c:999
+#: builtin/clone.c:1017
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr "impossibile creare la directory dell'albero di lavoro '%s'"
 
-#: builtin/clone.c:1019
+#: builtin/clone.c:1037
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Clone nel repository spoglio '%s' in corso...\n"
 
-#: builtin/clone.c:1021
+#: builtin/clone.c:1039
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Clone in '%s' in corso...\n"
 
-#: builtin/clone.c:1045
+#: builtin/clone.c:1063
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -11052,36 +11399,36 @@ msgstr ""
 "il clone --recursive non è compatibile né con --reference né con --reference-"
 "if-able"
 
-#: builtin/clone.c:1106
+#: builtin/clone.c:1124
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "L'opzione --depth è ignorata nei cloni locali; usa file://."
 
-#: builtin/clone.c:1108
+#: builtin/clone.c:1126
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr "L'opzione --shallow-since è ignorata nei cloni locali; usa file://."
 
-#: builtin/clone.c:1110
+#: builtin/clone.c:1128
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr "L'opzione --shallow-exclude è ignorata nei cloni locali; usa file://."
 
-#: builtin/clone.c:1112
+#: builtin/clone.c:1130
 msgid "--filter is ignored in local clones; use file:// instead."
 msgstr "L'opzione --filter è ignorata nei cloni locali; usa file://."
 
-#: builtin/clone.c:1115
+#: builtin/clone.c:1133
 msgid "source repository is shallow, ignoring --local"
 msgstr "il repository sorgente è shallow, ignoro l'opzione --local"
 
-#: builtin/clone.c:1120
+#: builtin/clone.c:1138
 msgid "--local is ignored"
 msgstr "l'opzione --local è ignorata"
 
-#: builtin/clone.c:1197 builtin/clone.c:1205
+#: builtin/clone.c:1215 builtin/clone.c:1223
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "Il branch remoto %s non è stato trovato nell'upstream %s"
 
-#: builtin/clone.c:1208
+#: builtin/clone.c:1226
 msgid "You appear to have cloned an empty repository."
 msgstr "Sembra che tu abbia clonato un repository vuoto."
 
@@ -11130,7 +11477,7 @@ msgstr ""
 msgid "duplicate parent %s ignored"
 msgstr "genitore duplicato %s ignorato"
 
-#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:520
+#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:542
 #, c-format
 msgid "not a valid object name %s"
 msgstr "%s non è un nome oggetto valido"
@@ -11158,13 +11505,13 @@ msgstr "genitore"
 msgid "id of a parent commit object"
 msgstr "ID di un oggetto commit genitore"
 
-#: builtin/commit-tree.c:114 builtin/commit.c:1480 builtin/merge.c:268
-#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1473
-#: builtin/tag.c:406
+#: builtin/commit-tree.c:114 builtin/commit.c:1500 builtin/merge.c:270
+#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1460
+#: builtin/tag.c:412
 msgid "message"
 msgstr "messaggio"
 
-#: builtin/commit-tree.c:115 builtin/commit.c:1480
+#: builtin/commit-tree.c:115 builtin/commit.c:1500
 msgid "commit message"
 msgstr "messaggio di commit"
 
@@ -11172,8 +11519,8 @@ msgstr "messaggio di commit"
 msgid "read commit log message from file"
 msgstr "leggi il messaggio di log del commit da un file"
 
-#: builtin/commit-tree.c:121 builtin/commit.c:1492 builtin/merge.c:283
-#: builtin/pull.c:193 builtin/revert.c:117
+#: builtin/commit-tree.c:121 builtin/commit.c:1512 builtin/merge.c:287
+#: builtin/pull.c:194 builtin/revert.c:118
 msgid "GPG sign commit"
 msgstr "firma il commit con GPG"
 
@@ -11220,80 +11567,86 @@ msgstr ""
 "\n"
 
 #: builtin/commit.c:63
-msgid "Otherwise, please use 'git reset'\n"
-msgstr "Altrimenti, usa 'git reset'\n"
+msgid "Otherwise, please use 'git cherry-pick --skip'\n"
+msgstr "Altrimenti, usa 'git cherry-pick --skip'\n"
 
 #: builtin/commit.c:66
 msgid ""
+"and then use:\n"
+"\n"
+"    git cherry-pick --continue\n"
+"\n"
+"to resume cherry-picking the remaining commits.\n"
 "If you wish to skip this commit, use:\n"
 "\n"
-"    git reset\n"
+"    git cherry-pick --skip\n"
+"\n"
+msgstr ""
+"e quindi usa:\n"
+"\n"
+"    git cherry-pick --continue\n"
 "\n"
-"Then \"git cherry-pick --continue\" will resume cherry-picking\n"
-"the remaining commits.\n"
-msgstr ""
-"Se vuoi ignorare questo commit, usa:\n"
+"per riprendere l'esecuzione il cherry-pick per i commit rimanenti.\n"
+"Se vuoi saltare questo commit, usa:\n"
 "\n"
-"    git reset\n"
+"    git cherry-pick --skip\n"
 "\n"
-"Quindi il comando \"git cherry-pick --continue\" farà riprendere\n"
-"il cherry picking per i commit rimanenti.\n"
 
-#: builtin/commit.c:312
+#: builtin/commit.c:315
 msgid "failed to unpack HEAD tree object"
 msgstr "decompressione dell'oggetto HEAD dell'albero non riuscita"
 
-#: builtin/commit.c:353
+#: builtin/commit.c:356
 msgid "unable to create temporary index"
 msgstr "impossibile creare l'indice temporaneo"
 
-#: builtin/commit.c:359
+#: builtin/commit.c:362
 msgid "interactive add failed"
 msgstr "aggiunta interattiva non riuscita"
 
-#: builtin/commit.c:373
+#: builtin/commit.c:376
 msgid "unable to update temporary index"
 msgstr "impossibile aggiornare l'indice temporaneo"
 
-#: builtin/commit.c:375
+#: builtin/commit.c:378
 msgid "Failed to update main cache tree"
 msgstr "Impossibile aggiornare l'albero cache principale"
 
-#: builtin/commit.c:400 builtin/commit.c:423 builtin/commit.c:469
+#: builtin/commit.c:403 builtin/commit.c:426 builtin/commit.c:472
 msgid "unable to write new_index file"
 msgstr "impossibile scrivere il file new_index"
 
-#: builtin/commit.c:452
+#: builtin/commit.c:455
 msgid "cannot do a partial commit during a merge."
 msgstr "impossibile eseguire un commit parziale durante un merge."
 
-#: builtin/commit.c:454
+#: builtin/commit.c:457
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "impossibile eseguire un commit parziale durante un cherry-pick."
 
-#: builtin/commit.c:462
+#: builtin/commit.c:465
 msgid "cannot read the index"
 msgstr "impossibile leggere l'indice"
 
-#: builtin/commit.c:481
+#: builtin/commit.c:484
 msgid "unable to write temporary index file"
 msgstr "impossibile scrivere il file indice temporaneo"
 
-#: builtin/commit.c:579
+#: builtin/commit.c:582
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "dal commit '%s' manca l'intestazione autore"
 
-#: builtin/commit.c:581
+#: builtin/commit.c:584
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr "il commit '%s' ha una riga autore malformata"
 
-#: builtin/commit.c:600
+#: builtin/commit.c:603
 msgid "malformed --author parameter"
 msgstr "parametro --author malformato"
 
-#: builtin/commit.c:653
+#: builtin/commit.c:656
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -11301,38 +11654,38 @@ msgstr ""
 "impossibile selezionare un carattere commento non usato\n"
 "nel messaggio di commit corrente"
 
-#: builtin/commit.c:691 builtin/commit.c:724 builtin/commit.c:1069
+#: builtin/commit.c:694 builtin/commit.c:727 builtin/commit.c:1072
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "impossibile trovare il commit %s"
 
-#: builtin/commit.c:703 builtin/shortlog.c:319
+#: builtin/commit.c:706 builtin/shortlog.c:319
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(lettura del messaggio di log dallo standard input)\n"
 
-#: builtin/commit.c:705
+#: builtin/commit.c:708
 msgid "could not read log from standard input"
 msgstr "impossibile leggere il log dallo standard input"
 
-#: builtin/commit.c:709
+#: builtin/commit.c:712
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "impossibile leggere il file di log '%s'"
 
-#: builtin/commit.c:740 builtin/commit.c:756
+#: builtin/commit.c:743 builtin/commit.c:759
 msgid "could not read SQUASH_MSG"
 msgstr "impossibile leggere SQUASH_MSG"
 
-#: builtin/commit.c:747
+#: builtin/commit.c:750
 msgid "could not read MERGE_MSG"
 msgstr "impossibile leggere MERGE_MSG"
 
-#: builtin/commit.c:807
+#: builtin/commit.c:810
 msgid "could not write commit template"
 msgstr "impossibile scrivere il modello di commit"
 
-#: builtin/commit.c:826
+#: builtin/commit.c:829
 #, c-format
 msgid ""
 "\n"
@@ -11347,7 +11700,7 @@ msgstr ""
 "\t%s\n"
 "e riprova.\n"
 
-#: builtin/commit.c:831
+#: builtin/commit.c:834
 #, c-format
 msgid ""
 "\n"
@@ -11362,7 +11715,7 @@ msgstr ""
 "\t%s\n"
 "e riprova.\n"
 
-#: builtin/commit.c:844
+#: builtin/commit.c:847
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -11371,7 +11724,7 @@ msgstr ""
 "Immetti il messaggio di commit per le modifiche. Le righe che iniziano\n"
 "con '%c' saranno ignorate e un messaggio vuoto interromperà il commit.\n"
 
-#: builtin/commit.c:852
+#: builtin/commit.c:855
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -11382,149 +11735,149 @@ msgstr ""
 "con '%c' saranno mantenute; puoi rimuoverle autonomamente se lo desideri.\n"
 "Un messaggio vuoto interromperà il commit.\n"
 
-#: builtin/commit.c:869
+#: builtin/commit.c:872
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sAutore:           %.*s <%.*s>"
 
-#: builtin/commit.c:877
+#: builtin/commit.c:880
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sData:             %s"
 
-#: builtin/commit.c:884
+#: builtin/commit.c:887
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sEsecutore commit: %.*s <%.*s>"
 
-#: builtin/commit.c:902
+#: builtin/commit.c:905
 msgid "Cannot read index"
 msgstr "Impossibile leggere l'indice"
 
-#: builtin/commit.c:969
+#: builtin/commit.c:972
 msgid "Error building trees"
 msgstr "Errore durante la costruzione degli alberi"
 
-#: builtin/commit.c:983 builtin/tag.c:269
+#: builtin/commit.c:986 builtin/tag.c:275
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
 msgstr "Fornisci il messaggio usando l'opzione -m o -F.\n"
 
-#: builtin/commit.c:1027
+#: builtin/commit.c:1030
 #, c-format
 msgid "--author '%s' is not 'Name <email>' and matches no existing author"
 msgstr ""
 "--author '%s' non è nel formato 'Nome <e-mail>' e non corrisponde ad alcun "
 "autore esistente"
 
-#: builtin/commit.c:1041
+#: builtin/commit.c:1044
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr "Modo non valido ignorato: '%s'"
 
-#: builtin/commit.c:1059 builtin/commit.c:1284
+#: builtin/commit.c:1062 builtin/commit.c:1304
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Modo file non tracciati non valido: '%s'"
 
-#: builtin/commit.c:1097
+#: builtin/commit.c:1102
 msgid "--long and -z are incompatible"
 msgstr "--long e -z non sono compatibili"
 
-#: builtin/commit.c:1130
+#: builtin/commit.c:1146
 msgid "Using both --reset-author and --author does not make sense"
 msgstr "L'uso di entrambe le opzioni --reset-author e --author non ha senso"
 
-#: builtin/commit.c:1139
+#: builtin/commit.c:1155
 msgid "You have nothing to amend."
 msgstr "Non c'è nulla da modificare."
 
-#: builtin/commit.c:1142
+#: builtin/commit.c:1158
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Sei nel bel mezzo di un merge - impossibile eseguire l'amend."
 
-#: builtin/commit.c:1144
+#: builtin/commit.c:1160
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr "Sei nel bel mezzo di un cherry-pick - impossibile eseguire l'amend."
 
-#: builtin/commit.c:1147
+#: builtin/commit.c:1163
 msgid "Options --squash and --fixup cannot be used together"
 msgstr "Le opzioni --squash e --fixup non possono essere usate insieme"
 
-#: builtin/commit.c:1157
+#: builtin/commit.c:1173
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr "Solo una delle opzioni -c/-C/-F/--fixup può essere usata."
 
-#: builtin/commit.c:1159
+#: builtin/commit.c:1175
 msgid "Option -m cannot be combined with -c/-C/-F."
 msgstr "L'opzione -m non può essere combinata con -c/-C/-F."
 
-#: builtin/commit.c:1167
+#: builtin/commit.c:1183
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr "L'opzione --reset-author può essere usata solo con -C, -c o --amend."
 
-#: builtin/commit.c:1184
+#: builtin/commit.c:1200
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr ""
 "Può essere usata solo una delle opzioni --include/--only/--all/--"
 "interactive/--patch."
 
-#: builtin/commit.c:1186
+#: builtin/commit.c:1202
 msgid "No paths with --include/--only does not make sense."
 msgstr ""
 "Non specificare un percorso con le opzioni --include/--only non ha senso."
 
-#: builtin/commit.c:1192
+#: builtin/commit.c:1208
 #, c-format
 msgid "paths '%s ...' with -a does not make sense"
 msgstr "i percorsi '%s ...' non hanno senso con -a"
 
-#: builtin/commit.c:1319 builtin/commit.c:1503
+#: builtin/commit.c:1339 builtin/commit.c:1523
 msgid "show status concisely"
 msgstr "visualizza concisamente lo stato"
 
-#: builtin/commit.c:1321 builtin/commit.c:1505
+#: builtin/commit.c:1341 builtin/commit.c:1525
 msgid "show branch information"
 msgstr "visualizza le informazioni sul branch"
 
-#: builtin/commit.c:1323
+#: builtin/commit.c:1343
 msgid "show stash information"
 msgstr "visualizza le informazioni sullo stash"
 
-#: builtin/commit.c:1325 builtin/commit.c:1507
+#: builtin/commit.c:1345 builtin/commit.c:1527
 msgid "compute full ahead/behind values"
 msgstr "calcola tutti i valori dopo/prima di"
 
-#: builtin/commit.c:1327
+#: builtin/commit.c:1347
 msgid "version"
 msgstr "versione"
 
-#: builtin/commit.c:1327 builtin/commit.c:1509 builtin/push.c:561
-#: builtin/worktree.c:643
+#: builtin/commit.c:1347 builtin/commit.c:1529 builtin/push.c:561
+#: builtin/worktree.c:651
 msgid "machine-readable output"
 msgstr "output leggibile da una macchina"
 
-#: builtin/commit.c:1330 builtin/commit.c:1511
+#: builtin/commit.c:1350 builtin/commit.c:1531
 msgid "show status in long format (default)"
 msgstr "visualizza lo stato in forma lunga (impostazione predefinita)"
 
-#: builtin/commit.c:1333 builtin/commit.c:1514
+#: builtin/commit.c:1353 builtin/commit.c:1534
 msgid "terminate entries with NUL"
 msgstr "termina le voci con NUL"
 
-#: builtin/commit.c:1335 builtin/commit.c:1339 builtin/commit.c:1517
-#: builtin/fast-export.c:1085 builtin/fast-export.c:1088 builtin/rebase.c:1465
-#: parse-options.h:331
+#: builtin/commit.c:1355 builtin/commit.c:1359 builtin/commit.c:1537
+#: builtin/fast-export.c:1125 builtin/fast-export.c:1128
+#: builtin/fast-export.c:1131 builtin/rebase.c:1471 parse-options.h:332
 msgid "mode"
 msgstr "modo"
 
-#: builtin/commit.c:1336 builtin/commit.c:1517
+#: builtin/commit.c:1356 builtin/commit.c:1537
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr ""
 "visualizza file non tracciati, modalità facoltative: all, normal, no. "
 "(Impostazione predefinita: all)"
 
-#: builtin/commit.c:1340
+#: builtin/commit.c:1360
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
@@ -11532,11 +11885,11 @@ msgstr ""
 "visualizza file ignorati, modalità facoltative: traditional, matching, no. "
 "(Impostazione predefinita: traditional)"
 
-#: builtin/commit.c:1342 parse-options.h:179
+#: builtin/commit.c:1362 parse-options.h:179
 msgid "when"
 msgstr "quando"
 
-#: builtin/commit.c:1343
+#: builtin/commit.c:1363
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -11544,240 +11897,256 @@ msgstr ""
 "ignora modifiche ai sottomoduli, opzione facoltativa \"quando\": all, dirty, "
 "untracked. (Impostazione predefinita: all)"
 
-#: builtin/commit.c:1345
+#: builtin/commit.c:1365
 msgid "list untracked files in columns"
 msgstr "elenca i file non tracciati in colonne"
 
-#: builtin/commit.c:1346
+#: builtin/commit.c:1366
 msgid "do not detect renames"
 msgstr "non rilevare le ridenominazioni"
 
-#: builtin/commit.c:1348
+#: builtin/commit.c:1368
 msgid "detect renames, optionally set similarity index"
 msgstr ""
 "rileva le ridenominazioni, imposta facoltativamente l'indice di similarità"
 
-#: builtin/commit.c:1368
+#: builtin/commit.c:1388
 msgid "Unsupported combination of ignored and untracked-files arguments"
 msgstr ""
 "Combinazione di argomenti sui file ignorati e non tracciati non supportata"
 
-#: builtin/commit.c:1473
+#: builtin/commit.c:1493
 msgid "suppress summary after successful commit"
 msgstr ""
 "ometti di visualizzare il riepilogo dopo un commit completato con successo"
 
-#: builtin/commit.c:1474
+#: builtin/commit.c:1494
 msgid "show diff in commit message template"
 msgstr "visualizza il diff nel modello del messaggio di commit"
 
-#: builtin/commit.c:1476
+#: builtin/commit.c:1496
 msgid "Commit message options"
 msgstr "Opzioni messaggio di commit"
 
-#: builtin/commit.c:1477 builtin/merge.c:272 builtin/tag.c:408
+#: builtin/commit.c:1497 builtin/merge.c:274 builtin/tag.c:414
 msgid "read message from file"
 msgstr "leggi il messaggio da un file"
 
-#: builtin/commit.c:1478
+#: builtin/commit.c:1498
 msgid "author"
 msgstr "autore"
 
-#: builtin/commit.c:1478
+#: builtin/commit.c:1498
 msgid "override author for commit"
 msgstr "sovrascrivi l'autore per il commit"
 
-#: builtin/commit.c:1479 builtin/gc.c:539
+#: builtin/commit.c:1499 builtin/gc.c:539
 msgid "date"
 msgstr "data"
 
-#: builtin/commit.c:1479
+#: builtin/commit.c:1499
 msgid "override date for commit"
 msgstr "sovrascrivi la data per il commit"
 
-#: builtin/commit.c:1481 builtin/commit.c:1482 builtin/commit.c:1483
-#: builtin/commit.c:1484 parse-options.h:323 ref-filter.h:92
+#: builtin/commit.c:1501 builtin/commit.c:1502 builtin/commit.c:1503
+#: builtin/commit.c:1504 parse-options.h:324 ref-filter.h:92
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1481
+#: builtin/commit.c:1501
 msgid "reuse and edit message from specified commit"
 msgstr "riusa il messaggio del commit specificato per poi modificarlo"
 
-#: builtin/commit.c:1482
+#: builtin/commit.c:1502
 msgid "reuse message from specified commit"
 msgstr "riusa il messaggio del commit specificato"
 
-#: builtin/commit.c:1483
+#: builtin/commit.c:1503
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 "usa il messaggio in formato autosquash per correggere il commit specificato"
 
-#: builtin/commit.c:1484
+#: builtin/commit.c:1504
 msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
 "usa il messaggio in formato autosquash per eseguire lo squash del commit "
 "specificato"
 
-#: builtin/commit.c:1485
+#: builtin/commit.c:1505
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr "il commit ora ha me come autore (opzione usata con -C/-c/--amend)"
 
-#: builtin/commit.c:1486 builtin/log.c:1541 builtin/merge.c:285
-#: builtin/pull.c:162 builtin/revert.c:109
+#: builtin/commit.c:1506 builtin/log.c:1581 builtin/merge.c:289
+#: builtin/pull.c:163 builtin/revert.c:110
 msgid "add Signed-off-by:"
 msgstr "aggiungi Signed-off-by:"
 
-#: builtin/commit.c:1487
+#: builtin/commit.c:1507
 msgid "use specified template file"
 msgstr "usa il file modello specificato"
 
-#: builtin/commit.c:1488
+#: builtin/commit.c:1508
 msgid "force edit of commit"
 msgstr "forza la modifica del commit"
 
-#: builtin/commit.c:1490
+#: builtin/commit.c:1510
 msgid "include status in commit message template"
 msgstr "includi lo stato nel modello del messaggio di commit"
 
-#: builtin/commit.c:1495
+#: builtin/commit.c:1515
 msgid "Commit contents options"
 msgstr "Opzioni contenuto commit"
 
-#: builtin/commit.c:1496
+#: builtin/commit.c:1516
 msgid "commit all changed files"
 msgstr "esegui il commit di tutti i file modificati"
 
-#: builtin/commit.c:1497
+#: builtin/commit.c:1517
 msgid "add specified files to index for commit"
 msgstr "aggiungi i file specificati all'indice per il commit"
 
-#: builtin/commit.c:1498
+#: builtin/commit.c:1518
 msgid "interactively add files"
 msgstr "aggiungi i file in modalità interattiva"
 
-#: builtin/commit.c:1499
+#: builtin/commit.c:1519
 msgid "interactively add changes"
 msgstr "aggiungi le modifiche in modalità interattiva"
 
-#: builtin/commit.c:1500
+#: builtin/commit.c:1520
 msgid "commit only specified files"
 msgstr "esegui il commit solo dei file specificati"
 
-#: builtin/commit.c:1501
+#: builtin/commit.c:1521
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "ignora gli hook pre-commit e commit-msg"
 
-#: builtin/commit.c:1502
+#: builtin/commit.c:1522
 msgid "show what would be committed"
 msgstr "visualizza gli elementi di cui sarebbe eseguito il commit"
 
-#: builtin/commit.c:1515
+#: builtin/commit.c:1535
 msgid "amend previous commit"
 msgstr "modifica il commit precedente"
 
-#: builtin/commit.c:1516
+#: builtin/commit.c:1536
 msgid "bypass post-rewrite hook"
 msgstr "ignora l'hook post-rewrite"
 
-#: builtin/commit.c:1521
+#: builtin/commit.c:1541
 msgid "ok to record an empty change"
 msgstr "accetta di registrare una modifica vuota"
 
-#: builtin/commit.c:1523
+#: builtin/commit.c:1543
 msgid "ok to record a change with an empty message"
 msgstr "accetta di registrare una modifica con un messaggio vuoto"
 
-#: builtin/commit.c:1596
+#: builtin/commit.c:1616
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "File MERGE_HEAD corrotto (%s)"
 
-#: builtin/commit.c:1603
+#: builtin/commit.c:1623
 msgid "could not read MERGE_MODE"
 msgstr "impossibile leggere MERGE_MODE"
 
-#: builtin/commit.c:1622
+#: builtin/commit.c:1642
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "impossibile leggere il messaggio di commit: %s"
 
-#: builtin/commit.c:1629
+#: builtin/commit.c:1649
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "Interrompo il commit a causa di un messaggio di commit vuoto.\n"
 
-#: builtin/commit.c:1634
+#: builtin/commit.c:1654
 #, c-format
 msgid "Aborting commit; you did not edit the message.\n"
 msgstr "Interrompo il commit; non hai modificato il messaggio.\n"
 
-#: builtin/commit.c:1668
+#: builtin/commit.c:1688
 msgid ""
 "repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
-"not exceeded, and then \"git reset HEAD\" to recover."
+"not exceeded, and then \"git restore --staged :/\" to recover."
 msgstr ""
 "Il repository è stato aggiornato, ma non è stato\n"
 "possibile scrivere il file new_index. Verifica che il\n"
 "disco non sia pieno e che la quota non sia stata\n"
-"superata, quindi esegui \"git reset HEAD\" per procedere\n"
-"al ripristino."
+"superata, quindi esegui \"git restore --staged :/\" per\n"
+"procedere al ripristino."
 
-#: builtin/commit-graph.c:10
+#: builtin/commit-graph.c:11
 msgid "git commit-graph [--object-dir <objdir>]"
 msgstr "git commit-graph [--object-dir <directory oggetti>]"
 
-#: builtin/commit-graph.c:11 builtin/commit-graph.c:23
+#: builtin/commit-graph.c:12 builtin/commit-graph.c:24
 msgid "git commit-graph read [--object-dir <objdir>]"
 msgstr "git commit-graph read [--object-dir <directory oggetti>]"
 
-#: builtin/commit-graph.c:12 builtin/commit-graph.c:18
-msgid "git commit-graph verify [--object-dir <objdir>]"
-msgstr "git commit-graph verify [--object-dir <directory oggetti>]"
+#: builtin/commit-graph.c:13 builtin/commit-graph.c:19
+msgid "git commit-graph verify [--object-dir <objdir>] [--shallow]"
+msgstr "git commit-graph verify [--object-dir <directory oggetti>] [--shallow]"
 
-#: builtin/commit-graph.c:13 builtin/commit-graph.c:28
+#: builtin/commit-graph.c:14 builtin/commit-graph.c:29
 msgid ""
-"git commit-graph write [--object-dir <objdir>] [--append] [--reachable|--"
-"stdin-packs|--stdin-commits]"
+"git commit-graph write [--object-dir <objdir>] [--append|--split] [--"
+"reachable|--stdin-packs|--stdin-commits] <split options>"
 msgstr ""
-"git commit-graph write [--object-dir <directory oggetti>] [--append] [--"
-"reachable|--stdin-packs|--stdin-commits]"
+"git commit-graph write [--object-dir <directory oggetti>] [--append|--split]"
+" [--reachable|--stdin-packs|--stdin-commits] <opzioni split>"
 
-#: builtin/commit-graph.c:51 builtin/commit-graph.c:89
-#: builtin/commit-graph.c:147 builtin/commit-graph.c:205 builtin/fetch.c:153
-#: builtin/log.c:1561
+#: builtin/commit-graph.c:54 builtin/commit-graph.c:100
+#: builtin/commit-graph.c:161 builtin/commit-graph.c:237 builtin/fetch.c:163
+#: builtin/log.c:1601
 msgid "dir"
 msgstr "directory"
 
-#: builtin/commit-graph.c:52 builtin/commit-graph.c:90
-#: builtin/commit-graph.c:148 builtin/commit-graph.c:206
+#: builtin/commit-graph.c:55 builtin/commit-graph.c:101
+#: builtin/commit-graph.c:162 builtin/commit-graph.c:238
 msgid "The object directory to store the graph"
 msgstr "La directory oggetti in cui memorizzare il grafo"
 
-#: builtin/commit-graph.c:68 builtin/commit-graph.c:105
+#: builtin/commit-graph.c:57
+msgid "if the commit-graph is split, only verify the tip file"
+msgstr "se il grafo dei commit è diviso, verifica solo l'ultimo file"
+
+#: builtin/commit-graph.c:73 builtin/commit-graph.c:116
 #, c-format
 msgid "Could not open commit-graph '%s'"
 msgstr "Impossibile aprire il grafo dei commit '%s'"
 
-#: builtin/commit-graph.c:150
+#: builtin/commit-graph.c:164
 msgid "start walk at all refs"
 msgstr "inizia la visita da tutti i riferimenti"
 
-#: builtin/commit-graph.c:152
+#: builtin/commit-graph.c:166
 msgid "scan pack-indexes listed by stdin for commits"
 msgstr ""
 "esamina i pack-index elencati sullo standard input alla ricerca di commit"
 
-#: builtin/commit-graph.c:154
+#: builtin/commit-graph.c:168
 msgid "start walk at commits listed by stdin"
 msgstr "inizia la visita ai commit elencati sullo standard input"
 
-#: builtin/commit-graph.c:156
+#: builtin/commit-graph.c:170
 msgid "include all commits already in the commit-graph file"
 msgstr "includi tutti i commit già presenti nel file commit-graph"
 
-#: builtin/commit-graph.c:165
+#: builtin/commit-graph.c:172
+msgid "allow writing an incremental commit-graph file"
+msgstr "consenti la scrittura di un file grafo dei commit incrementale"
+
+#: builtin/commit-graph.c:174 builtin/commit-graph.c:178
+msgid "maximum number of commits in a non-base split commit-graph"
+msgstr "numero massimo di commit in un grafo dei commit diviso non di base"
+
+#: builtin/commit-graph.c:176
+msgid "maximum ratio between two levels of a split commit-graph"
+msgstr "rapporto massimo fra due livelli di un grafo dei commit diviso"
+
+#: builtin/commit-graph.c:191
 msgid "use at most one of --reachable, --stdin-commits, or --stdin-packs"
 msgstr "usa al più un'opzione fra --reachable, --stdin-commits o --stdin-packs"
 
@@ -11785,7 +12154,7 @@ msgstr "usa al più un'opzione fra --reachable, --stdin-commits o --stdin-packs"
 msgid "git config [<options>]"
 msgstr "git config [<opzioni>]"
 
-#: builtin/config.c:103
+#: builtin/config.c:103 builtin/env--helper.c:23
 #, c-format
 msgid "unrecognized --type argument, %s"
 msgstr "argomento --type non riconosciuto: %s"
@@ -11894,7 +12263,7 @@ msgstr "trova l'impostazione colore: slot [standard-output-è-una-tty]"
 msgid "Type"
 msgstr "Tipo"
 
-#: builtin/config.c:147
+#: builtin/config.c:147 builtin/env--helper.c:38
 msgid "value is given this type"
 msgstr "al valore è assegnato questo tipo"
 
@@ -11941,7 +12310,7 @@ msgstr ""
 "visualizza l'origine del file di configurazione (file, standard input, blob, "
 "riga di comando)"
 
-#: builtin/config.c:158
+#: builtin/config.c:158 builtin/env--helper.c:40
 msgid "value"
 msgstr "valore"
 
@@ -12238,7 +12607,7 @@ msgstr "considera solo i tag corrispondenti al <pattern>"
 msgid "do not consider tags matching <pattern>"
 msgstr "non considerare i tag corrispondenti al <pattern>"
 
-#: builtin/describe.c:551 builtin/name-rev.c:426
+#: builtin/describe.c:551 builtin/name-rev.c:422
 msgid "show abbreviated commit object as fallback"
 msgstr "visualizza l'oggetto commit abbreviato come fallback"
 
@@ -12418,160 +12787,199 @@ msgstr "nessuno <strumento> specificato per --tool=<strumento>"
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr "nessun <comando> specificato per --extcmd=<comando>"
 
+#: builtin/env--helper.c:6
+msgid "git env--helper --type=[bool|ulong] <options> <env-var>"
+msgstr "git env--helper --type=[bool|ulong] <opzioni> <variabile d'ambiente>"
+
+#: builtin/env--helper.c:37 builtin/hash-object.c:98
+msgid "type"
+msgstr "tipo"
+
+#: builtin/env--helper.c:41
+msgid "default for git_env_*(...) to fall back on"
+msgstr ""
+"impostazione predefinita su cui ripiegheranno le chiamate git_env_*(...)"
+
+#: builtin/env--helper.c:43
+msgid "be quiet only use git_env_*() value as exit code"
+msgstr ""
+"non visualizzare messaggi, usa solo il valore di git_env_*() come codice"
+" d'uscita"
+
+#: builtin/env--helper.c:62
+#, c-format
+msgid "option `--default' expects a boolean value with `--type=bool`, not `%s`"
+msgstr ""
+"l'opzione `--default' richiede un valore booleano con `--type=bool`, non `%s`"
+
+#: builtin/env--helper.c:77
+#, c-format
+msgid ""
+"option `--default' expects an unsigned long value with `--type=ulong`, not `"
+"%s`"
+msgstr ""
+"l'opzione `--default' richiede un valore unsigned long con `--type=ulong`,"
+" non `%s`"
+
 #: builtin/fast-export.c:29
 msgid "git fast-export [rev-list-opts]"
 msgstr "git fast-export [opzioni-elenco-rev]"
 
-#: builtin/fast-export.c:1084
+#: builtin/fast-export.c:1124
 msgid "show progress after <n> objects"
 msgstr "visualizza l'avanzamento dopo <n> oggetti"
 
-#: builtin/fast-export.c:1086
+#: builtin/fast-export.c:1126
 msgid "select handling of signed tags"
 msgstr "seleziona la gestione dei tag firmati"
 
-#: builtin/fast-export.c:1089
+#: builtin/fast-export.c:1129
 msgid "select handling of tags that tag filtered objects"
 msgstr "seleziona la gestione dei tag che contrassegnano oggetti filtrati"
 
-#: builtin/fast-export.c:1092
+#: builtin/fast-export.c:1132
+msgid "select handling of commit messages in an alternate encoding"
+msgstr ""
+"seleziona la gestione dei messaggi di commit in una codifica alternativa"
+
+#: builtin/fast-export.c:1135
 msgid "Dump marks to this file"
 msgstr "Esegui il dump dei contrassegni in questo file"
 
-#: builtin/fast-export.c:1094
+#: builtin/fast-export.c:1137
 msgid "Import marks from this file"
 msgstr "Importa i contrassegni da questo file"
 
-#: builtin/fast-export.c:1096
+#: builtin/fast-export.c:1139
 msgid "Fake a tagger when tags lack one"
 msgstr "Usa un tagger falso se i tag non ne hanno uno"
 
-#: builtin/fast-export.c:1098
+#: builtin/fast-export.c:1141
 msgid "Output full tree for each commit"
 msgstr "Visualizza in output l'albero completo per ogni commit"
 
-#: builtin/fast-export.c:1100
+#: builtin/fast-export.c:1143
 msgid "Use the done feature to terminate the stream"
 msgstr "Usa la funzionalità \"fatto\" per terminare il flusso"
 
-#: builtin/fast-export.c:1101
+#: builtin/fast-export.c:1144
 msgid "Skip output of blob data"
 msgstr "Ometti l'output dei dati dei blob"
 
-#: builtin/fast-export.c:1102 builtin/log.c:1609
+#: builtin/fast-export.c:1145 builtin/log.c:1649
 msgid "refspec"
 msgstr "specificatore riferimento"
 
-#: builtin/fast-export.c:1103
+#: builtin/fast-export.c:1146
 msgid "Apply refspec to exported refs"
 msgstr "Applica lo specificatore riferimento ai riferimenti esportati"
 
-#: builtin/fast-export.c:1104
+#: builtin/fast-export.c:1147
 msgid "anonymize output"
 msgstr "rendi anonimo l'output"
 
-#: builtin/fast-export.c:1106
+#: builtin/fast-export.c:1149
 msgid "Reference parents which are not in fast-export stream by object id"
 msgstr ""
 "Fai riferimento ai genitori non nel flusso fast-export tramite l'ID oggetto"
 
-#: builtin/fast-export.c:1108
+#: builtin/fast-export.c:1151
 msgid "Show original object ids of blobs/commits"
 msgstr "Visualizza gli ID oggetto originari dei blob/commit"
 
-#: builtin/fetch.c:28
+#: builtin/fetch.c:30
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr "git fetch [<opzioni>] [<repository> [<specificatore riferimento>...]]"
 
-#: builtin/fetch.c:29
+#: builtin/fetch.c:31
 msgid "git fetch [<options>] <group>"
 msgstr "git fetch [<opzioni>] <gruppo>"
 
-#: builtin/fetch.c:30
+#: builtin/fetch.c:32
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr "git fetch --multiple [<opzioni>] [(<repository> | <gruppo>)...]"
 
-#: builtin/fetch.c:31
+#: builtin/fetch.c:33
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<opzioni>]"
 
-#: builtin/fetch.c:115 builtin/pull.c:202
+#: builtin/fetch.c:125 builtin/pull.c:203
 msgid "fetch from all remotes"
 msgstr "esegui il fetch da tutti i remoti"
 
-#: builtin/fetch.c:117 builtin/pull.c:205
+#: builtin/fetch.c:127 builtin/pull.c:206
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "aggiungi i dati a .git/FETCH_HEAD anziché sovrascriverli"
 
-#: builtin/fetch.c:119 builtin/pull.c:208
+#: builtin/fetch.c:129 builtin/pull.c:209
 msgid "path to upload pack on remote end"
 msgstr "percorso in cui caricare il pack sul remoto"
 
-#: builtin/fetch.c:120
+#: builtin/fetch.c:130
 msgid "force overwrite of local reference"
 msgstr "forza la sovrascrittura del riferimento locale"
 
-#: builtin/fetch.c:122
+#: builtin/fetch.c:132
 msgid "fetch from multiple remotes"
 msgstr "esegui il fetch da più remoti"
 
-#: builtin/fetch.c:124 builtin/pull.c:212
+#: builtin/fetch.c:134 builtin/pull.c:213
 msgid "fetch all tags and associated objects"
 msgstr "esegui il fetch di tutti i tag e degli oggetti associati"
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:136
 msgid "do not fetch all tags (--no-tags)"
 msgstr "non eseguire il fetch di alcun tag (--no-tags)"
 
-#: builtin/fetch.c:128
+#: builtin/fetch.c:138
 msgid "number of submodules fetched in parallel"
 msgstr "numero di sottomoduli recuperati in parallelo"
 
-#: builtin/fetch.c:130 builtin/pull.c:215
+#: builtin/fetch.c:140 builtin/pull.c:216
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 "elimina i branch che ne tracciano uno remoto ma non più presenti sul remoto"
 
-#: builtin/fetch.c:132
+#: builtin/fetch.c:142
 msgid "prune local tags no longer on remote and clobber changed tags"
 msgstr ""
 "elimina i tag locali non più presenti sul remoto e sovrascrivi i tag "
 "modificati"
 
-#: builtin/fetch.c:133 builtin/fetch.c:156 builtin/pull.c:139
+#: builtin/fetch.c:143 builtin/fetch.c:166 builtin/pull.c:140
 msgid "on-demand"
 msgstr "a richiesta"
 
-#: builtin/fetch.c:134
+#: builtin/fetch.c:144
 msgid "control recursive fetching of submodules"
 msgstr "controlla il recupero ricorsivo dei sottomoduli"
 
-#: builtin/fetch.c:138 builtin/pull.c:223
+#: builtin/fetch.c:148 builtin/pull.c:224
 msgid "keep downloaded pack"
 msgstr "mantieni il pack scaricato"
 
-#: builtin/fetch.c:140
+#: builtin/fetch.c:150
 msgid "allow updating of HEAD ref"
 msgstr "consenti l'aggiornamento del riferimento HEAD"
 
-#: builtin/fetch.c:143 builtin/fetch.c:149 builtin/pull.c:226
+#: builtin/fetch.c:153 builtin/fetch.c:159 builtin/pull.c:227
 msgid "deepen history of shallow clone"
 msgstr "aumenta la profondità della cronologia di un clone shallow"
 
-#: builtin/fetch.c:145
+#: builtin/fetch.c:155
 msgid "deepen history of shallow repository based on time"
 msgstr ""
 "aumenta la profondità della cronologia di un clone shallow in base al tempo"
 
-#: builtin/fetch.c:151 builtin/pull.c:229
+#: builtin/fetch.c:161 builtin/pull.c:230
 msgid "convert to a complete repository"
 msgstr "converti in un repository completo"
 
-#: builtin/fetch.c:154
+#: builtin/fetch.c:164
 msgid "prepend this to submodule path output"
 msgstr "anteponi questo prefisso all'output del percorso del sottomodulo"
 
-#: builtin/fetch.c:157
+#: builtin/fetch.c:167
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
@@ -12579,97 +12987,105 @@ msgstr ""
 "impostazione predefinita per il recupero ricorsivo dei sottomoduli (a "
 "priorità minore rispetto ai file di configurazione)"
 
-#: builtin/fetch.c:161 builtin/pull.c:232
+#: builtin/fetch.c:171 builtin/pull.c:233
 msgid "accept refs that update .git/shallow"
 msgstr "accetta i riferimenti che aggiornano .git/shallow"
 
-#: builtin/fetch.c:162 builtin/pull.c:234
+#: builtin/fetch.c:172 builtin/pull.c:235
 msgid "refmap"
 msgstr "mappa riferimenti"
 
-#: builtin/fetch.c:163 builtin/pull.c:235
+#: builtin/fetch.c:173 builtin/pull.c:236
 msgid "specify fetch refmap"
 msgstr "specifica la mappa dei riferimenti per il fetch"
 
-#: builtin/fetch.c:170
+#: builtin/fetch.c:180
 msgid "report that we have only objects reachable from this object"
 msgstr "segnala che abbiamo solo oggetti raggiungibili da quest'oggetto"
 
-#: builtin/fetch.c:469
+#: builtin/fetch.c:183
+msgid "run 'gc --auto' after fetching"
+msgstr "esegui 'gc --auto' dopo il fetch"
+
+#: builtin/fetch.c:185 builtin/pull.c:245
+msgid "check for forced-updates on all updated branches"
+msgstr "controlla aggiornamenti forzati su tutti i branch aggiornati"
+
+#: builtin/fetch.c:491
 msgid "Couldn't find remote ref HEAD"
 msgstr "Impossibile trovare l'HEAD del riferimento remoto"
 
-#: builtin/fetch.c:608
+#: builtin/fetch.c:630
 #, c-format
 msgid "configuration fetch.output contains invalid value %s"
 msgstr "il valore dell'opzione fetch.output contiene il valore non valido %s"
 
-#: builtin/fetch.c:705
+#: builtin/fetch.c:728
 #, c-format
 msgid "object %s not found"
 msgstr "oggetto %s non trovato"
 
-#: builtin/fetch.c:709
+#: builtin/fetch.c:732
 msgid "[up to date]"
 msgstr "[aggiornato]"
 
-#: builtin/fetch.c:722 builtin/fetch.c:738 builtin/fetch.c:801
+#: builtin/fetch.c:745 builtin/fetch.c:761 builtin/fetch.c:833
 msgid "[rejected]"
 msgstr "[rifiutato]"
 
-#: builtin/fetch.c:723
+#: builtin/fetch.c:746
 msgid "can't fetch in current branch"
 msgstr "impossibile eseguire il fetch nel branch corrente"
 
-#: builtin/fetch.c:733
+#: builtin/fetch.c:756
 msgid "[tag update]"
 msgstr "[tag aggiornato]"
 
-#: builtin/fetch.c:734 builtin/fetch.c:771 builtin/fetch.c:784
-#: builtin/fetch.c:796
+#: builtin/fetch.c:757 builtin/fetch.c:794 builtin/fetch.c:816
+#: builtin/fetch.c:828
 msgid "unable to update local ref"
 msgstr "impossibile aggiornare il riferimento locale"
 
-#: builtin/fetch.c:738
+#: builtin/fetch.c:761
 msgid "would clobber existing tag"
 msgstr "sovrascriverebbe il tag esistente"
 
-#: builtin/fetch.c:760
+#: builtin/fetch.c:783
 msgid "[new tag]"
 msgstr "[nuovo tag]"
 
-#: builtin/fetch.c:763
+#: builtin/fetch.c:786
 msgid "[new branch]"
 msgstr "[nuovo branch]"
 
-#: builtin/fetch.c:766
+#: builtin/fetch.c:789
 msgid "[new ref]"
 msgstr "[nuovo riferimento]"
 
-#: builtin/fetch.c:796
+#: builtin/fetch.c:828
 msgid "forced update"
 msgstr "aggiornamento forzato"
 
-#: builtin/fetch.c:801
+#: builtin/fetch.c:833
 msgid "non-fast-forward"
 msgstr "non fast forward"
 
-#: builtin/fetch.c:847
+#: builtin/fetch.c:879
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr "%s non ha inviato tutti gli oggetti necessari\n"
 
-#: builtin/fetch.c:868
+#: builtin/fetch.c:900
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
 msgstr "%s rifiutato perché non è consentito aggiornare radici shallow"
 
-#: builtin/fetch.c:959 builtin/fetch.c:1081
+#: builtin/fetch.c:991 builtin/fetch.c:1124
 #, c-format
 msgid "From %.*s\n"
 msgstr "Da %.*s\n"
 
-#: builtin/fetch.c:970
+#: builtin/fetch.c:1002
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -12679,52 +13095,84 @@ msgstr ""
 "eseguire\n"
 " 'git remote prune %s' per rimuovere ogni branch vecchio in conflitto"
 
-#: builtin/fetch.c:1051
+#: builtin/fetch.c:1008
+msgid ""
+"Fetch normally indicates which branches had a forced update, but that check "
+"has been disabled."
+msgstr ""
+"Il fetch normalmente indica quali branch siano stati sottoposti ad"
+" aggiornamento forzato, ma tale controllo è stato disabilitato."
+
+#: builtin/fetch.c:1009
+msgid ""
+"To re-enable, use '--show-forced-updates' flag or run 'git config fetch."
+"showForcedUpdates true'."
+msgstr ""
+"Per riabilitarlo, usa l'opzione '--show-forced-updates' o esegui 'git config"
+" fetch.showForcedUpdates true'."
+
+#: builtin/fetch.c:1011
+#, c-format
+msgid ""
+"It took %.2f seconds to check forced updates. You can use '--no-show-forced-"
+"updates'\n"
+msgstr ""
+"Sono stati richiesti %.2f secondi per controllare la presenza di eventuali\n"
+"aggiornamenti forzati. Puoi usare '--no-show-forced-updates'\n"
+
+#: builtin/fetch.c:1013
+msgid ""
+"or run 'git config fetch.showForcedUpdates false' to avoid this check.\n"
+msgstr ""
+"o eseguire 'git config fetch.showForcedUpdates false' per omettere questo\n"
+"controllo.\n"
+
+#: builtin/fetch.c:1094
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s diventerà pendente)"
 
-#: builtin/fetch.c:1052
+#: builtin/fetch.c:1095
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s è diventato pendente)"
 
-#: builtin/fetch.c:1084
+#: builtin/fetch.c:1127
 msgid "[deleted]"
 msgstr "[eliminato]"
 
-#: builtin/fetch.c:1085 builtin/remote.c:1036
+#: builtin/fetch.c:1128 builtin/remote.c:1036
 msgid "(none)"
 msgstr "(nessuno)"
 
-#: builtin/fetch.c:1108
+#: builtin/fetch.c:1151
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr ""
 "Mi rifiuto di eseguire il fetch nel branch corrente %s di un repository non "
 "bare"
 
-#: builtin/fetch.c:1127
+#: builtin/fetch.c:1170
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
 msgstr "L'opzione \"%s\" con il valore \"%s\" non è valida per %s"
 
-#: builtin/fetch.c:1130
+#: builtin/fetch.c:1173
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "L'opzione \"%s\" è ignorata per %s\n"
 
-#: builtin/fetch.c:1434
+#: builtin/fetch.c:1477
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Recupero di %s in corso\n"
 
-#: builtin/fetch.c:1436 builtin/remote.c:100
+#: builtin/fetch.c:1479 builtin/remote.c:100
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Impossibile recuperare %s"
 
-#: builtin/fetch.c:1482
+#: builtin/fetch.c:1525
 msgid ""
 "--filter can only be used with the remote configured in extensions."
 "partialClone"
@@ -12732,7 +13180,7 @@ msgstr ""
 "--filter può essere usato solo con il remoto configurato nelle estensioni."
 "partialClone"
 
-#: builtin/fetch.c:1506
+#: builtin/fetch.c:1549
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -12740,45 +13188,45 @@ msgstr ""
 "Non è stato specificato alcun repository remoto. Specifica un URL o il\n"
 "nome di un remoto da cui dovranno essere recuperate le nuove revisioni."
 
-#: builtin/fetch.c:1543
+#: builtin/fetch.c:1586
 msgid "You need to specify a tag name."
 msgstr "Devi specificare il nome di un tag."
 
-#: builtin/fetch.c:1594
+#: builtin/fetch.c:1637
 msgid "Negative depth in --deepen is not supported"
 msgstr "Le profondità negative in --deepen non sono supportate"
 
-#: builtin/fetch.c:1596
+#: builtin/fetch.c:1639
 msgid "--deepen and --depth are mutually exclusive"
 msgstr "le opzioni --deepen e --depth sono mutualmente esclusive"
 
-#: builtin/fetch.c:1601
+#: builtin/fetch.c:1644
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth e --unshallow non possono essere usati insieme."
 
-#: builtin/fetch.c:1603
+#: builtin/fetch.c:1646
 msgid "--unshallow on a complete repository does not make sense"
 msgstr "--unshallow su un repository completo non ha senso"
 
-#: builtin/fetch.c:1619
+#: builtin/fetch.c:1662
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all non richiede un repository come argomento"
 
-#: builtin/fetch.c:1621
+#: builtin/fetch.c:1664
 msgid "fetch --all does not make sense with refspecs"
 msgstr "fetch --all non ha senso con degli specificatori riferimento"
 
-#: builtin/fetch.c:1630
+#: builtin/fetch.c:1673
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "Remoto o gruppo remoti non esistente: %s"
 
-#: builtin/fetch.c:1637
+#: builtin/fetch.c:1680
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr ""
 "Recuperare un gruppo e specificare gli specificatori riferimento non ha senso"
 
-#: builtin/fetch.c:1653
+#: builtin/fetch.c:1696
 msgid ""
 "--filter can only be used with the remote configured in extensions."
 "partialclone"
@@ -12851,7 +13299,7 @@ msgstr "racchiudi i segnaposto fra virgolette in modo da poterli usare con Tcl"
 msgid "show only <n> matched refs"
 msgstr "visualizza solo <n> riferimenti corrispondenti"
 
-#: builtin/for-each-ref.c:39 builtin/tag.c:433
+#: builtin/for-each-ref.c:39 builtin/tag.c:439
 msgid "respect format colors"
 msgstr "rispetta le stringhe di formato per i colori"
 
@@ -13019,7 +13467,7 @@ msgstr "Controllo directory oggetti in corso"
 msgid "Checking %s link"
 msgstr "Controllo collegamento %s"
 
-#: builtin/fsck.c:705 builtin/index-pack.c:841
+#: builtin/fsck.c:705 builtin/index-pack.c:842
 #, c-format
 msgid "invalid %s"
 msgstr "%s non valido"
@@ -13104,7 +13552,7 @@ msgstr "visualizza l'avanzamento"
 msgid "show verbose names for reachable objects"
 msgstr "visualizza nomi dettagliati per gli oggetti raggiungibili"
 
-#: builtin/fsck.c:859 builtin/index-pack.c:224
+#: builtin/fsck.c:859 builtin/index-pack.c:225
 msgid "Checking objects"
 msgstr "Controllo oggetti in corso"
 
@@ -13137,7 +13585,7 @@ msgstr "analisi dell'opzione '%s' con valore '%s' non riuscita"
 msgid "cannot stat '%s'"
 msgstr "impossibile eseguire lo stat di '%s'"
 
-#: builtin/gc.c:485 builtin/notes.c:240 builtin/tag.c:519
+#: builtin/gc.c:485 builtin/notes.c:240 builtin/tag.c:529
 #, c-format
 msgid "cannot read '%s'"
 msgstr "impossibile leggere '%s'"
@@ -13215,7 +13663,7 @@ msgstr ""
 "gc è già in esecuzione sul computer '%s' con PID %<PRIuMAX> (usa --force se "
 "non lo è)"
 
-#: builtin/gc.c:693
+#: builtin/gc.c:695
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
@@ -13241,263 +13689,263 @@ msgstr "specificato numero non valido di thread (%d) per %s"
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:287 builtin/index-pack.c:1514 builtin/index-pack.c:1705
-#: builtin/pack-objects.c:2720
+#: builtin/grep.c:287 builtin/index-pack.c:1534 builtin/index-pack.c:1727
+#: builtin/pack-objects.c:2722
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "non vi è supporto per i thread, ignoro %s"
 
-#: builtin/grep.c:466 builtin/grep.c:590 builtin/grep.c:631
+#: builtin/grep.c:467 builtin/grep.c:591 builtin/grep.c:633
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "impossibile leggere il tree (%s)"
 
-#: builtin/grep.c:646
+#: builtin/grep.c:648
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr "impossibile eseguire grep su un oggetto di tipo %s"
 
-#: builtin/grep.c:712
+#: builtin/grep.c:714
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "switch '%c' richiede un valore numerico"
 
-#: builtin/grep.c:811
+#: builtin/grep.c:813
 msgid "search in index instead of in the work tree"
 msgstr "cerca nell'index anziché nell'albero di lavoro"
 
-#: builtin/grep.c:813
+#: builtin/grep.c:815
 msgid "find in contents not managed by git"
 msgstr "la ricerca nei contenuti non è gestita da Git"
 
-#: builtin/grep.c:815
+#: builtin/grep.c:817
 msgid "search in both tracked and untracked files"
 msgstr "cerca sia nei file tracciati sia in quelli non tracciati"
 
-#: builtin/grep.c:817
+#: builtin/grep.c:819
 msgid "ignore files specified via '.gitignore'"
 msgstr "ignora i file specificati in '.gitignore'"
 
-#: builtin/grep.c:819
+#: builtin/grep.c:821
 msgid "recursively search in each submodule"
 msgstr "cerca ricorsivamente in ogni sottomodulo"
 
-#: builtin/grep.c:822
+#: builtin/grep.c:824
 msgid "show non-matching lines"
 msgstr "visualizza le righe non corrispondenti"
 
-#: builtin/grep.c:824
+#: builtin/grep.c:826
 msgid "case insensitive matching"
 msgstr "ricerca corrispondenze senza differenze maiuscole/minuscole"
 
-#: builtin/grep.c:826
+#: builtin/grep.c:828
 msgid "match patterns only at word boundaries"
 msgstr "cerca corrispondenze ai pattern solo a inizio/fine parola"
 
-#: builtin/grep.c:828
+#: builtin/grep.c:830
 msgid "process binary files as text"
 msgstr "elabora i file binari come testuali"
 
-#: builtin/grep.c:830
+#: builtin/grep.c:832
 msgid "don't match patterns in binary files"
 msgstr "non cercare corrispondenze ai pattern nei file binari"
 
-#: builtin/grep.c:833
+#: builtin/grep.c:835
 msgid "process binary files with textconv filters"
 msgstr "elabora i file binari con filtri di conversione in testo"
 
-#: builtin/grep.c:835
+#: builtin/grep.c:837
 msgid "search in subdirectories (default)"
 msgstr "cerca nelle sottodirectory (impostazione predefinita)"
 
-#: builtin/grep.c:837
+#: builtin/grep.c:839
 msgid "descend at most <depth> levels"
 msgstr "scendi al più di <profondità> livelli"
 
-#: builtin/grep.c:841
+#: builtin/grep.c:843
 msgid "use extended POSIX regular expressions"
 msgstr "usa espressioni regolari POSIX estese"
 
-#: builtin/grep.c:844
+#: builtin/grep.c:846
 msgid "use basic POSIX regular expressions (default)"
 msgstr "usa espressioni regolari POSIX di base (impostazione predefinita)"
 
-#: builtin/grep.c:847
+#: builtin/grep.c:849
 msgid "interpret patterns as fixed strings"
 msgstr "interpreta i pattern come stringhe fisse"
 
-#: builtin/grep.c:850
+#: builtin/grep.c:852
 msgid "use Perl-compatible regular expressions"
 msgstr "usa espressioni regolari compatibili con Perl"
 
-#: builtin/grep.c:853
+#: builtin/grep.c:855
 msgid "show line numbers"
 msgstr "visualizza numeri di riga"
 
-#: builtin/grep.c:854
+#: builtin/grep.c:856
 msgid "show column number of first match"
 msgstr "visualizza il numero di colonna della prima corrispondenza"
 
-#: builtin/grep.c:855
+#: builtin/grep.c:857
 msgid "don't show filenames"
 msgstr "non visualizzare i nomi file"
 
-#: builtin/grep.c:856
+#: builtin/grep.c:858
 msgid "show filenames"
 msgstr "visualizza i nomi file"
 
-#: builtin/grep.c:858
+#: builtin/grep.c:860
 msgid "show filenames relative to top directory"
 msgstr "visualizza i nomi file relativi alla directory di primo livello"
 
-#: builtin/grep.c:860
+#: builtin/grep.c:862
 msgid "show only filenames instead of matching lines"
 msgstr "visualizza solo i nomi file anziché le righe corrispondenti"
 
-#: builtin/grep.c:862
+#: builtin/grep.c:864
 msgid "synonym for --files-with-matches"
 msgstr "sinonimo di --files-with-matches"
 
-#: builtin/grep.c:865
+#: builtin/grep.c:867
 msgid "show only the names of files without match"
 msgstr "visualizza solo i nomi dei file non corrispondenti"
 
-#: builtin/grep.c:867
+#: builtin/grep.c:869
 msgid "print NUL after filenames"
 msgstr "stampa NUL dopo i nomi file"
 
-#: builtin/grep.c:870
+#: builtin/grep.c:872
 msgid "show only matching parts of a line"
 msgstr "visualizza solo le parti corrispondenti di una riga"
 
-#: builtin/grep.c:872
+#: builtin/grep.c:874
 msgid "show the number of matches instead of matching lines"
 msgstr "visualizza il numero di corrispondenze anziché le righe corrispondenti"
 
-#: builtin/grep.c:873
+#: builtin/grep.c:875
 msgid "highlight matches"
 msgstr "evidenzia corrispondenze"
 
-#: builtin/grep.c:875
+#: builtin/grep.c:877
 msgid "print empty line between matches from different files"
 msgstr "stampa una riga vuota fra le corrispondenze in file differenti"
 
-#: builtin/grep.c:877
+#: builtin/grep.c:879
 msgid "show filename only once above matches from same file"
 msgstr ""
 "visualizza il nome file solo una volta prima delle corrispondenze nello "
 "stesso file"
 
-#: builtin/grep.c:880
+#: builtin/grep.c:882
 msgid "show <n> context lines before and after matches"
 msgstr "visualizza <n> righe di contesto prima e dopo le corrispondenze"
 
-#: builtin/grep.c:883
+#: builtin/grep.c:885
 msgid "show <n> context lines before matches"
 msgstr "visualizza <n> righe di contesto prima delle corrispondenze"
 
-#: builtin/grep.c:885
+#: builtin/grep.c:887
 msgid "show <n> context lines after matches"
 msgstr "visualizza <n> righe di contesto dopo le corrispondenze"
 
-#: builtin/grep.c:887
+#: builtin/grep.c:889
 msgid "use <n> worker threads"
 msgstr "usa <n> thread di lavoro"
 
-#: builtin/grep.c:888
+#: builtin/grep.c:890
 msgid "shortcut for -C NUM"
 msgstr "scorciatoia per -C NUM"
 
-#: builtin/grep.c:891
+#: builtin/grep.c:893
 msgid "show a line with the function name before matches"
 msgstr "visualizza una riga con il nome funzione prima delle corrispondenze"
 
-#: builtin/grep.c:893
+#: builtin/grep.c:895
 msgid "show the surrounding function"
 msgstr "visualizza la funzione circostante"
 
-#: builtin/grep.c:896
+#: builtin/grep.c:898
 msgid "read patterns from file"
 msgstr "leggi le corrispondenze da un file"
 
-#: builtin/grep.c:898
+#: builtin/grep.c:900
 msgid "match <pattern>"
 msgstr "cerca corrispondenze con <pattern>"
 
-#: builtin/grep.c:900
+#: builtin/grep.c:902
 msgid "combine patterns specified with -e"
 msgstr "combina i pattern specificati con -e"
 
-#: builtin/grep.c:912
+#: builtin/grep.c:914
 msgid "indicate hit with exit status without output"
 msgstr ""
 "segnala una corrispondenza con il codice di uscita senza emettere output"
 
-#: builtin/grep.c:914
+#: builtin/grep.c:916
 msgid "show only matches from files that match all patterns"
 msgstr ""
 "visualizza solo le corrispondenze nei file in cui vi sono corrispondenze per "
 "tutti i pattern"
 
-#: builtin/grep.c:916
+#: builtin/grep.c:918
 msgid "show parse tree for grep expression"
 msgstr "visualizza l'albero di analisi per l'espressione grep"
 
-#: builtin/grep.c:920
+#: builtin/grep.c:922
 msgid "pager"
 msgstr "pager"
 
-#: builtin/grep.c:920
+#: builtin/grep.c:922
 msgid "show matching files in the pager"
 msgstr "visualizza i file corrispondenti nel pager"
 
-#: builtin/grep.c:924
+#: builtin/grep.c:926
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "consenti"
 
-#: builtin/grep.c:988
+#: builtin/grep.c:990
 msgid "no pattern given"
 msgstr "nessun pattern specificato"
 
-#: builtin/grep.c:1024
+#: builtin/grep.c:1026
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr "--no-index o --untracked non possono essere usate con le revisioni"
 
-#: builtin/grep.c:1032
+#: builtin/grep.c:1034
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "impossibile risolvere la revisione %s"
 
-#: builtin/grep.c:1063
+#: builtin/grep.c:1065
 msgid "invalid option combination, ignoring --threads"
 msgstr "combinazione di opzioni non valida, ignoro --threads"
 
-#: builtin/grep.c:1066 builtin/pack-objects.c:3403
+#: builtin/grep.c:1068 builtin/pack-objects.c:3405
 msgid "no threads support, ignoring --threads"
 msgstr "non vi è supporto per i thread, ignoro --threads"
 
-#: builtin/grep.c:1069 builtin/index-pack.c:1511 builtin/pack-objects.c:2717
+#: builtin/grep.c:1071 builtin/index-pack.c:1531 builtin/pack-objects.c:2719
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "specificato numero non valido di thread (%d)"
 
-#: builtin/grep.c:1092
+#: builtin/grep.c:1094
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager funziona solo sull'albero di lavoro"
 
-#: builtin/grep.c:1115
+#: builtin/grep.c:1117
 msgid "option not supported with --recurse-submodules"
 msgstr "opzione non supportata con --recurse-submodules"
 
-#: builtin/grep.c:1121
+#: builtin/grep.c:1123
 msgid "--cached or --untracked cannot be used with --no-index"
 msgstr "--cached o --untracked non possono essere usate con --no-index"
 
-#: builtin/grep.c:1127
+#: builtin/grep.c:1129
 msgid "--[no-]exclude-standard cannot be used for tracked contents"
 msgstr "--[no-]exclude-standard non può essere usata per i contenuti tracciati"
 
-#: builtin/grep.c:1135
+#: builtin/grep.c:1137
 msgid "both --cached and trees are given"
 msgstr "sono specificati sia --cached sia degli alberi"
 
@@ -13513,10 +13961,6 @@ msgstr ""
 msgid "git hash-object  --stdin-paths"
 msgstr "git hash-object  --stdin-paths"
 
-#: builtin/hash-object.c:98
-msgid "type"
-msgstr "tipo"
-
 #: builtin/hash-object.c:98
 msgid "object type"
 msgstr "tipo oggetto"
@@ -13634,12 +14078,12 @@ msgstr "nessun visualizzatore man ha gestito la richiesta"
 msgid "no info viewer handled the request"
 msgstr "nessun visualizzatore info ha gestito la richiesta"
 
-#: builtin/help.c:434 builtin/help.c:445 git.c:335
+#: builtin/help.c:434 builtin/help.c:445 git.c:336
 #, c-format
 msgid "'%s' is aliased to '%s'"
 msgstr "'%s' è un alias di '%s'"
 
-#: builtin/help.c:448 git.c:364
+#: builtin/help.c:448 git.c:365
 #, c-format
 msgid "bad alias.%s string: %s"
 msgstr "stringa alias.%s non valida: %s"
@@ -13653,290 +14097,285 @@ msgstr "uso: %s%s"
 msgid "'git help config' for more information"
 msgstr "Vedi 'git help config' per maggiori informazioni"
 
-#: builtin/index-pack.c:184
+#: builtin/index-pack.c:185
 #, c-format
 msgid "object type mismatch at %s"
 msgstr "tipo oggetto non corrispondente in %s"
 
-#: builtin/index-pack.c:204
+#: builtin/index-pack.c:205
 #, c-format
 msgid "did not receive expected object %s"
 msgstr "non si è ricevuto l'oggetto atteso %s"
 
-#: builtin/index-pack.c:207
+#: builtin/index-pack.c:208
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr "oggetto %s: atteso tipo %s, trovato %s"
 
-#: builtin/index-pack.c:257
+#: builtin/index-pack.c:258
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] "impossibile riempire %d byte"
 msgstr[1] "impossibile riempire %d byte"
 
-#: builtin/index-pack.c:267
+#: builtin/index-pack.c:268
 msgid "early EOF"
 msgstr "EOF prematuro"
 
-#: builtin/index-pack.c:268
+#: builtin/index-pack.c:269
 msgid "read error on input"
 msgstr "errore di lettura in input"
 
-#: builtin/index-pack.c:280
+#: builtin/index-pack.c:281
 msgid "used more bytes than were available"
 msgstr "usati più byte di quelli disponibili"
 
-#: builtin/index-pack.c:287 builtin/pack-objects.c:600
+#: builtin/index-pack.c:288 builtin/pack-objects.c:600
 msgid "pack too large for current definition of off_t"
 msgstr "pack troppo largo per la definizione corrente di off_t"
 
-#: builtin/index-pack.c:290 builtin/unpack-objects.c:94
+#: builtin/index-pack.c:291 builtin/unpack-objects.c:94
 msgid "pack exceeds maximum allowed size"
 msgstr "il pack supera la dimensione massima consentita"
 
-#: builtin/index-pack.c:305 builtin/repack.c:250
-#, c-format
-msgid "unable to create '%s'"
-msgstr "impossibile creare '%s'"
-
-#: builtin/index-pack.c:311
+#: builtin/index-pack.c:312
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "impossibile aprire il file pack '%s'"
 
-#: builtin/index-pack.c:325
+#: builtin/index-pack.c:326
 msgid "pack signature mismatch"
 msgstr "la firma del pack non coincide"
 
-#: builtin/index-pack.c:327
+#: builtin/index-pack.c:328
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "versione pack %<PRIu32> non supportata"
 
-#: builtin/index-pack.c:345
+#: builtin/index-pack.c:346
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
 msgstr "il pack ha un oggetto danneggiato all'offset %<PRIuMAX>: %s"
 
-#: builtin/index-pack.c:465
+#: builtin/index-pack.c:466
 #, c-format
 msgid "inflate returned %d"
 msgstr "inflate ha restituito il codice %d"
 
-#: builtin/index-pack.c:514
+#: builtin/index-pack.c:515
 msgid "offset value overflow for delta base object"
 msgstr "overflow del valore dell'offset base del delta"
 
-#: builtin/index-pack.c:522
+#: builtin/index-pack.c:523
 msgid "delta base offset is out of bound"
 msgstr "l'offset base del delta è fuori dall'intervallo consentito"
 
-#: builtin/index-pack.c:530
+#: builtin/index-pack.c:531
 #, c-format
 msgid "unknown object type %d"
 msgstr "tipo oggetto %d sconosciuto"
 
-#: builtin/index-pack.c:561
+#: builtin/index-pack.c:562
 msgid "cannot pread pack file"
 msgstr "impossibile eseguire pread sul file pack"
 
-#: builtin/index-pack.c:563
+#: builtin/index-pack.c:564
 #, c-format
 msgid "premature end of pack file, %<PRIuMAX> byte missing"
 msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
 msgstr[0] "fine del file pack prematura, %<PRIuMAX> byte mancante"
 msgstr[1] "fine del file pack prematura, %<PRIuMAX> byte mancanti"
 
-#: builtin/index-pack.c:589
+#: builtin/index-pack.c:590
 msgid "serious inflate inconsistency"
 msgstr "inconsistenza grave di inflate"
 
-#: builtin/index-pack.c:734 builtin/index-pack.c:740 builtin/index-pack.c:763
-#: builtin/index-pack.c:802 builtin/index-pack.c:811
+#: builtin/index-pack.c:735 builtin/index-pack.c:741 builtin/index-pack.c:764
+#: builtin/index-pack.c:803 builtin/index-pack.c:812
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "TROVATA COLLISIONE SHA1 CON %s !"
 
-#: builtin/index-pack.c:737 builtin/pack-objects.c:153
+#: builtin/index-pack.c:738 builtin/pack-objects.c:153
 #: builtin/pack-objects.c:213 builtin/pack-objects.c:307
 #, c-format
 msgid "unable to read %s"
 msgstr "impossibile leggere %s"
 
-#: builtin/index-pack.c:800
+#: builtin/index-pack.c:801
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr "impossibile leggere le informazioni sull'oggetto esistente: %s"
 
-#: builtin/index-pack.c:808
+#: builtin/index-pack.c:809
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "non è possibile leggere l'oggetto %s esistente"
 
-#: builtin/index-pack.c:822
+#: builtin/index-pack.c:823
 #, c-format
 msgid "invalid blob object %s"
 msgstr "oggetto blob %s non valido"
 
-#: builtin/index-pack.c:825 builtin/index-pack.c:844
+#: builtin/index-pack.c:826 builtin/index-pack.c:845
 msgid "fsck error in packed object"
 msgstr "errore fsck nell'oggetto sottoposto a pack"
 
-#: builtin/index-pack.c:846
+#: builtin/index-pack.c:847
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr "Non tutti gli oggetti figlio di %s sono raggiungibili"
 
-#: builtin/index-pack.c:918 builtin/index-pack.c:949
+#: builtin/index-pack.c:919 builtin/index-pack.c:950
 msgid "failed to apply delta"
 msgstr "applicazione del delta non riuscita"
 
-#: builtin/index-pack.c:1117
+#: builtin/index-pack.c:1118
 msgid "Receiving objects"
 msgstr "Ricezione degli oggetti"
 
-#: builtin/index-pack.c:1117
+#: builtin/index-pack.c:1118
 msgid "Indexing objects"
 msgstr "Indicizzazione degli oggetti"
 
-#: builtin/index-pack.c:1151
+#: builtin/index-pack.c:1152
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "il pack è corrotto (SHA1 non corrisponde)"
 
-#: builtin/index-pack.c:1156
+#: builtin/index-pack.c:1157
 msgid "cannot fstat packfile"
 msgstr "impossibile eseguire fstat