]> git.ipfire.org Git - thirdparty/git.git/blobdiff - po/it.po
Merge branch 'es/bugreport-with-hooks'
[thirdparty/git.git] / po / it.po
index 2df9eb3233c354bf5f7e020da2002b07843ae7a4..e9f596b8fdc7f3e1d9133feb835b32e6420f9dd4 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -6,12 +6,13 @@
 # Thanks to the former translators, Marco Paolone <marcopaolone AT gmail.com>
 # and Stefano Lattarini <stefano.lattarini AT gmail.com>, for their
 # contributions.
+# Alessandro Menti <alessandro.menti@alessandromenti.it>, 2019, 2020.
 msgid ""
 msgstr ""
 "Project-Id-Version: Git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2019-02-15 10:09+0800\n"
-"PO-Revision-Date: 2019-02-16 14:52+0100\n"
+"POT-Creation-Date: 2020-03-11 15:26+0800\n"
+"PO-Revision-Date: 2020-03-12 07:52+0100\n"
 "Last-Translator: Alessandro Menti <alessandro.menti@alessandromenti.it>\n"
 "Language-Team: Italian <>\n"
 "Language: it\n"
@@ -19,51 +20,758 @@ 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 18.12.2\n"
+"X-Generator: Lokalize 19.12.3\n"
 
-#: advice.c:101
+#: add-interactive.c:368
+#, c-format
+msgid "Huh (%s)?"
+msgstr "Eh (%s)?"
+
+#: add-interactive.c:521 add-interactive.c:822 sequencer.c:3124
+#: sequencer.c:3562 builtin/rebase.c:875 builtin/rebase.c:1687
+#: builtin/rebase.c:2086 builtin/rebase.c:2130
+msgid "could not read index"
+msgstr "impossibile leggere l'indice"
+
+#: add-interactive.c:576 git-add--interactive.perl:269
+#: git-add--interactive.perl:294
+msgid "binary"
+msgstr "binario"
+
+#: add-interactive.c:634 git-add--interactive.perl:278
+#: git-add--interactive.perl:332
+msgid "nothing"
+msgstr "non fare nulla"
+
+#: add-interactive.c:635 git-add--interactive.perl:314
+#: git-add--interactive.perl:329
+msgid "unchanged"
+msgstr "non modificato"
+
+#: add-interactive.c:672 git-add--interactive.perl:643
+msgid "Update"
+msgstr "Aggiorna"
+
+#: add-interactive.c:689 add-interactive.c:877
+#, c-format
+msgid "could not stage '%s'"
+msgstr "impossibile aggiungere '%s' all'area di staging"
+
+#: add-interactive.c:695 add-interactive.c:884 sequencer.c:3317
+#: builtin/rebase.c:899
+msgid "could not write index"
+msgstr "impossibile scrivere l'indice"
+
+#: add-interactive.c:698 git-add--interactive.perl:628
+#, c-format, perl-format
+msgid "updated %d path\n"
+msgid_plural "updated %d paths\n"
+msgstr[0] "aggiornato %d percorso\n"
+msgstr[1] "aggiornati %d percorsi\n"
+
+#: add-interactive.c:716 git-add--interactive.perl:678
+#, c-format, perl-format
+msgid "note: %s is untracked now.\n"
+msgstr "nota: %s ora non è tracciato.\n"
+
+#: add-interactive.c:721 apply.c:4110 builtin/checkout.c:281
+#: builtin/reset.c:144
+#, c-format
+msgid "make_cache_entry failed for path '%s'"
+msgstr "make_cache_entry non riuscito per il percorso '%s'"
+
+#: add-interactive.c:751 git-add--interactive.perl:655
+msgid "Revert"
+msgstr "Esegui il revert"
+
+#: add-interactive.c:767
+msgid "Could not parse HEAD^{tree}"
+msgstr "Impossibile analizzare HEAD^{tree}"
+
+#: add-interactive.c:805 git-add--interactive.perl:631
+#, c-format, perl-format
+msgid "reverted %d path\n"
+msgid_plural "reverted %d paths\n"
+msgstr[0] "ripristinato %d percorso\n"
+msgstr[1] "ripristinati %d percorsi\n"
+
+#: add-interactive.c:856 git-add--interactive.perl:695
+#, c-format
+msgid "No untracked files.\n"
+msgstr "Nessun file non tracciato.\n"
+
+#: add-interactive.c:860 git-add--interactive.perl:689
+msgid "Add untracked"
+msgstr "Aggiungi file non tracciati"
+
+#: add-interactive.c:887 git-add--interactive.perl:625
+#, c-format, perl-format
+msgid "added %d path\n"
+msgid_plural "added %d paths\n"
+msgstr[0] "aggiunto %d percorso\n"
+msgstr[1] "aggiunti %d percorsi\n"
+
+#: add-interactive.c:917
+#, c-format
+msgid "ignoring unmerged: %s"
+msgstr "ignoro ciò che non è stato sottoposto a merge: %s"
+
+#: add-interactive.c:929 add-patch.c:1675 git-add--interactive.perl:1366
+#, c-format
+msgid "Only binary files changed.\n"
+msgstr "Sono stati modificati solo file binari.\n"
+
+#: add-interactive.c:931 add-patch.c:1673 git-add--interactive.perl:1368
+#, c-format
+msgid "No changes.\n"
+msgstr "Nessuna modifica.\n"
+
+#: add-interactive.c:935 git-add--interactive.perl:1376
+msgid "Patch update"
+msgstr "Aggiornamento patch"
+
+#: add-interactive.c:974 git-add--interactive.perl:1754
+msgid "Review diff"
+msgstr "Rivedi diff"
+
+#: add-interactive.c:1002
+msgid "show paths with changes"
+msgstr "visualizza i percorsi modificati"
+
+#: add-interactive.c:1004
+msgid "add working tree state to the staged set of changes"
+msgstr ""
+"aggiungi lo stato dall'albero di lavoro all'insieme delle modifiche "
+"nell'area di staging"
+
+#: add-interactive.c:1006
+msgid "revert staged set of changes back to the HEAD version"
+msgstr ""
+"ripristina l'insieme delle modifiche nell'area di staging alla versione HEAD"
+
+#: add-interactive.c:1008
+msgid "pick hunks and update selectively"
+msgstr ""
+"seleziona gli hunk in modalità interattiva ed esegui l'aggiornamento in modo "
+"selettivo"
+
+#: add-interactive.c:1010
+msgid "view diff between HEAD and index"
+msgstr "visualizza il diff fra HEAD e l'indice"
+
+#: add-interactive.c:1012
+msgid "add contents of untracked files to the staged set of changes"
+msgstr ""
+"aggiungi i contenuti dei file non tracciati all'insieme delle modifiche "
+"nell'area di staging"
+
+#: add-interactive.c:1020 add-interactive.c:1069
+msgid "Prompt help:"
+msgstr "Guida prompt:"
+
+#: add-interactive.c:1022
+msgid "select a single item"
+msgstr "seleziona un singolo elemento"
+
+#: add-interactive.c:1024
+msgid "select a range of items"
+msgstr "seleziona un intervallo di elementi"
+
+#: add-interactive.c:1026
+msgid "select multiple ranges"
+msgstr "seleziona più intervalli"
+
+#: add-interactive.c:1028 add-interactive.c:1073
+msgid "select item based on unique prefix"
+msgstr "seleziona un elemento basandoti su un prefisso univoco"
+
+#: add-interactive.c:1030
+msgid "unselect specified items"
+msgstr "deseleziona gli elementi specificati"
+
+#: add-interactive.c:1032
+msgid "choose all items"
+msgstr "seleziona tutti gli elementi"
+
+#: add-interactive.c:1034
+msgid "(empty) finish selecting"
+msgstr "(vuoto) termina la selezione"
+
+#: add-interactive.c:1071
+msgid "select a numbered item"
+msgstr "seleziona un elemento numerato"
+
+#: add-interactive.c:1075
+msgid "(empty) select nothing"
+msgstr "(vuoto) non selezionare nulla"
+
+#: add-interactive.c:1083 builtin/clean.c:822 git-add--interactive.perl:1851
+msgid "*** Commands ***"
+msgstr "*** Comandi ***"
+
+#: add-interactive.c:1084 builtin/clean.c:823 git-add--interactive.perl:1848
+msgid "What now"
+msgstr "Cosa faccio ora"
+
+#: add-interactive.c:1136 git-add--interactive.perl:213
+msgid "staged"
+msgstr "nell'area di staging"
+
+#: add-interactive.c:1136 git-add--interactive.perl:213
+msgid "unstaged"
+msgstr "rimosso dall'area di staging"
+
+#: add-interactive.c:1136 apply.c:4967 apply.c:4970 builtin/am.c:2251
+#: builtin/am.c:2254 builtin/clone.c:123 builtin/fetch.c:144
+#: builtin/merge.c:274 builtin/pull.c:189 builtin/submodule--helper.c:409
+#: builtin/submodule--helper.c:1394 builtin/submodule--helper.c:1397
+#: builtin/submodule--helper.c:1902 builtin/submodule--helper.c:1905
+#: builtin/submodule--helper.c:2148 git-add--interactive.perl:213
+msgid "path"
+msgstr "percorso"
+
+#: add-interactive.c:1143
+msgid "could not refresh index"
+msgstr "impossibile aggiornare l'indice"
+
+#: add-interactive.c:1157 builtin/clean.c:787 git-add--interactive.perl:1765
+#, c-format
+msgid "Bye.\n"
+msgstr "Ciao.\n"
+
+#: add-patch.c:33 git-add--interactive.perl:1428
+#, c-format, perl-format
+msgid "Stage mode change [y,n,q,a,d%s,?]? "
+msgstr "Modifica modo stage [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:34 git-add--interactive.perl:1429
+#, c-format, perl-format
+msgid "Stage deletion [y,n,q,a,d%s,?]? "
+msgstr "Eliminazione stage [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:35 git-add--interactive.perl:1430
+#, c-format, perl-format
+msgid "Stage this hunk [y,n,q,a,d%s,?]? "
+msgstr "Eseguire lo stage di quest'hunk [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:37
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"staging."
+msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà "
+"contrassegnato immediatamente per l'aggiunta all'area di staging."
+
+#: add-patch.c:40
+msgid ""
+"y - stage this hunk\n"
+"n - do not stage this hunk\n"
+"q - quit; do not stage this hunk or any of the remaining ones\n"
+"a - stage this hunk and all later hunks in the file\n"
+"d - do not stage this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - aggiungi quest'hunk all'area di staging\n"
+"n - non aggiungere quest'hunk all'area di staging\n"
+"q - esci; non aggiungere né quest'hunk né quelli rimanenti all'area di "
+"staging\n"
+"a - aggiungi quest'hunk e tutti quelli successivi nel file all'area di "
+"staging\n"
+"d - non aggiungere né quest'hunk né quelli successivi nel file all'area di "
+"staging\n"
+
+#: add-patch.c:54 git-add--interactive.perl:1433
+#, c-format, perl-format
+msgid "Stash mode change [y,n,q,a,d%s,?]? "
+msgstr "Modifica modo stash [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:55 git-add--interactive.perl:1434
+#, c-format, perl-format
+msgid "Stash deletion [y,n,q,a,d%s,?]? "
+msgstr "Eliminazione stash [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:56 git-add--interactive.perl:1435
+#, c-format, perl-format
+msgid "Stash this hunk [y,n,q,a,d%s,?]? "
+msgstr "Eseguire lo stash di quest'hunk [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:58
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"stashing."
+msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà "
+"contrassegnato immediatamente per lo stash."
+
+#: add-patch.c:61
+msgid ""
+"y - stash this hunk\n"
+"n - do not stash this hunk\n"
+"q - quit; do not stash this hunk or any of the remaining ones\n"
+"a - stash this hunk and all later hunks in the file\n"
+"d - do not stash this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - esegui lo stash di quest'hunk\n"
+"n - non eseguire lo stash di quest'hunk\n"
+"q - esci; non eseguire lo stash di quest'hunk né di quelli rimanenti\n"
+"a - esegui lo stash di quest'hunk e di tutti quelli successivi nel file\n"
+"d - non eseguire lo stash né di quest'hunk né di quelli successivi nel file\n"
+
+#: add-patch.c:77 git-add--interactive.perl:1438
+#, c-format, perl-format
+msgid "Unstage mode change [y,n,q,a,d%s,?]? "
+msgstr "Rimozione modifica modo dall'area di staging [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:78 git-add--interactive.perl:1439
+#, c-format, perl-format
+msgid "Unstage deletion [y,n,q,a,d%s,?]? "
+msgstr "Rimozione eliminazione dall'area di staging [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:79 git-add--interactive.perl:1440
+#, c-format, perl-format
+msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
+msgstr "Rimuovere quest'hunk dall'area di staging [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:81
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"unstaging."
+msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà "
+"contrassegnato immediatamente per la rimozione dall'area di staging."
+
+#: add-patch.c:84
+msgid ""
+"y - unstage this hunk\n"
+"n - do not unstage this hunk\n"
+"q - quit; do not unstage this hunk or any of the remaining ones\n"
+"a - unstage this hunk and all later hunks in the file\n"
+"d - do not unstage this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - rimuovi quest'hunk dall'area di staging\n"
+"n - non rimuovere quest'hunk dall'area di staging\n"
+"q - esci; non rimuovere né quest'hunk né quelli rimanenti dall'area di "
+"staging\n"
+"a - rimuovi quest'hunk e tutti quelli successivi nel file dall'area di "
+"staging\n"
+"d - non rimuovere né quest'hunk né quelli successivi nel file dall'area di "
+"staging\n"
+
+#: add-patch.c:99 git-add--interactive.perl:1443
+#, c-format, perl-format
+msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
+msgstr "Applicare la modifica modo all'indice [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:100 git-add--interactive.perl:1444
+#, c-format, perl-format
+msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
+msgstr "Applicare l'eliminazione all'indice [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:101 git-add--interactive.perl:1445
+#, c-format, perl-format
+msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
+msgstr "Applicare quest'hunk all'indice [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:103 add-patch.c:168 add-patch.c:211
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"applying."
+msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà "
+"contrassegnato immediatamente per l'applicazione."
+
+#: add-patch.c:106
+msgid ""
+"y - apply this hunk to index\n"
+"n - do not apply this hunk to index\n"
+"q - quit; do not apply this hunk or any of the remaining ones\n"
+"a - apply this hunk and all later hunks in the file\n"
+"d - do not apply this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - applica quest'hunk all'indice\n"
+"n - non applicare quest'hunk all'indice\n"
+"q - esci; non applicare né quest'hunk né quelli rimanenti\n"
+"a - applica quest'hunk e tutti quelli successivi nel file\n"
+"d - non applicare né quest'hunk né quelli successivi nel file\n"
+
+#: add-patch.c:121 git-add--interactive.perl:1448
+#: git-add--interactive.perl:1463
+#, c-format, perl-format
+msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
+msgstr "Scartare le modifiche modo dall'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:122 git-add--interactive.perl:1449
+#: git-add--interactive.perl:1464
+#, c-format, perl-format
+msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
+msgstr "Scartare l'eliminazione dall'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:123 git-add--interactive.perl:1450
+#: git-add--interactive.perl:1465
+#, c-format, perl-format
+msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
+msgstr "Scartare quest'hunk dall'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:125 add-patch.c:147 add-patch.c:190
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"discarding."
+msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà "
+"contrassegnato immediatamente per la rimozione."
+
+#: add-patch.c:128 add-patch.c:193
+msgid ""
+"y - discard this hunk from worktree\n"
+"n - do not discard this hunk from worktree\n"
+"q - quit; do not discard this hunk or any of the remaining ones\n"
+"a - discard this hunk and all later hunks in the file\n"
+"d - do not discard this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - rimuovi quest'hunk dall'albero di lavoro\n"
+"n - non rimuovere quest'hunk dall'albero di lavoro\n"
+"q - esci; non rimuovere né quest'hunk né quelli rimanenti\n"
+"a - rimuovi quest'hunk e tutti quelli successivi nel file\n"
+"d - non rimuovere né quest'hunk né quelli successivi nel file\n"
+
+#: add-patch.c:143 add-patch.c:186 git-add--interactive.perl:1453
+#, c-format, perl-format
+msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Scartare la modifica modo dall'indice e dall'albero di lavoro [y,n,q,a,d"
+"%s,?]? "
+
+#: add-patch.c:144 add-patch.c:187 git-add--interactive.perl:1454
+#, c-format, perl-format
+msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Scartare l'eliminazione dall'indice e dall'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:145 add-patch.c:188 git-add--interactive.perl:1455
+#, c-format, perl-format
+msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Scartare quest'hunk dall'indice e dall'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:150
+msgid ""
+"y - discard this hunk from index and worktree\n"
+"n - do not discard this hunk from index and worktree\n"
+"q - quit; do not discard this hunk or any of the remaining ones\n"
+"a - discard this hunk and all later hunks in the file\n"
+"d - do not discard this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - rimuovi quest'hunk dall'indice e dall'albero di lavoro\n"
+"n - non rimuovere quest'hunk dall'indice e dall'albero di lavoro\n"
+"q - esci; non rimuovere né quest'hunk né quelli rimanenti\n"
+"a - rimuovi quest'hunk e tutti quelli successivi nel file\n"
+"d - non rimuovere né quest'hunk né quelli successivi nel file\n"
+
+#: add-patch.c:164 add-patch.c:207 git-add--interactive.perl:1458
+#, c-format, perl-format
+msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Applicare la modifica modo all'indice e all'albero di lavoro [y,n,q,a,d"
+"%s,?]? "
+
+#: add-patch.c:165 add-patch.c:208 git-add--interactive.perl:1459
+#, c-format, perl-format
+msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Applicare l'eliminazione all'indice e all'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:166 add-patch.c:209 git-add--interactive.perl:1460
+#, c-format, perl-format
+msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Applicare quest'hunk all'indice e all'albero di lavoro [y,n,q,a,d%s,?]? "
+
+#: add-patch.c:171
+msgid ""
+"y - apply this hunk to index and worktree\n"
+"n - do not apply this hunk to index and worktree\n"
+"q - quit; do not apply this hunk or any of the remaining ones\n"
+"a - apply this hunk and all later hunks in the file\n"
+"d - do not apply this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - applica quest'hunk all'indice e all'albero di lavoro\n"
+"n - non applicare quest'hunk all'indice e all'albero di lavoro\n"
+"q - esci; non applicare né quest'hunk né quelli rimanenti\n"
+"a - applica quest'hunk e tutti quelli successivi nel file\n"
+"d - non applicare né quest'hunk né quelli successivi nel file\n"
+
+#: add-patch.c:214
+msgid ""
+"y - apply this hunk to worktree\n"
+"n - do not apply this hunk to worktree\n"
+"q - quit; do not apply this hunk or any of the remaining ones\n"
+"a - apply this hunk and all later hunks in the file\n"
+"d - do not apply this hunk or any of the later hunks in the file\n"
+msgstr ""
+"y - applica quest'hunk all'albero di lavoro\n"
+"n - non applicare quest'hunk all'albero di lavoro\n"
+"q - esci; non applicare né quest'hunk né quelli rimanenti\n"
+"a - applica quest'hunk e tutti quelli successivi nel file\n"
+"d - non applicare né quest'hunk né quelli successivi nel file\n"
+
+#: add-patch.c:318
+#, c-format
+msgid "could not parse hunk header '%.*s'"
+msgstr "impossibile analizzare l'header hunk '%.*s'"
+
+#: add-patch.c:337 add-patch.c:341
+#, c-format
+msgid "could not parse colored hunk header '%.*s'"
+msgstr "impossibile analizzare l'header hunk colorato '%.*s'"
+
+#: add-patch.c:395
+msgid "could not parse diff"
+msgstr "impossibile analizzare il diff"
+
+#: add-patch.c:414
+msgid "could not parse colored diff"
+msgstr "impossibile analizzare il diff colorato"
+
+#: add-patch.c:428
+#, c-format
+msgid "failed to run '%s'"
+msgstr "esecuzione di '%s' non riuscita"
+
+#: add-patch.c:587
+msgid "mismatched output from interactive.diffFilter"
+msgstr "output di interactive.diffFilter non corrispondente"
+
+#: add-patch.c:588
+msgid ""
+"Your filter must maintain a one-to-one correspondence\n"
+"between its input and output lines."
+msgstr ""
+"Il filtro deve mantenere una corrispondenza uno a uno\n"
+"fra le righe di input e di output."
+
+#: add-patch.c:761
+#, c-format
+msgid ""
+"expected context line #%d in\n"
+"%.*s"
+msgstr ""
+"attesa riga contesto %d in\n"
+"%.*s"
+
+#: add-patch.c:776
+#, c-format
+msgid ""
+"hunks do not overlap:\n"
+"%.*s\n"
+"\tdoes not end with:\n"
+"%.*s"
+msgstr ""
+"gli hunk non si sovrappongono:\n"
+"%.*s\n"
+"\tnon termina con:\n"
+"%.*s"
+
+#: add-patch.c:1052 git-add--interactive.perl:1112
+msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
+msgstr ""
+"Modalità manuale modifica hunt - vedi la fine del file per una guida "
+"veloce.\n"
+
+#: add-patch.c:1056
+#, c-format
+msgid ""
+"---\n"
+"To remove '%c' lines, make them ' ' lines (context).\n"
+"To remove '%c' lines, delete them.\n"
+"Lines starting with %c will be removed.\n"
+msgstr ""
+"---\n"
+"Per rimuovere '%c' righe, rendile righe ' ' (contesto).\n"
+"Per rimuovere '%c' righe, eliminale.\n"
+"Le righe che iniziano con %c saranno rimosse.\n"
+
+#. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
+#: add-patch.c:1070 git-add--interactive.perl:1126
+msgid ""
+"If it does not apply cleanly, you will be given an opportunity to\n"
+"edit again.  If all lines of the hunk are removed, then the edit is\n"
+"aborted and the hunk is left unchanged.\n"
+msgstr ""
+"Se non può essere applicata senza problemi, ti sarà data la possibilità\n"
+"di modificarla di nuovo. Se tutte le righe dell'hunk saranno state\n"
+"rimosse, la modifica sarà interrotta e l'hunk non sarà modificato.\n"
+
+#: add-patch.c:1103
+msgid "could not parse hunk header"
+msgstr "impossibile analizzare l'header hunk"
+
+#: add-patch.c:1148
+msgid "'git apply --cached' failed"
+msgstr "'git apply --cached' non riuscito"
+
+#. TRANSLATORS: do not translate [y/n]
+#. The program will only accept that input at this point.
+#. Consider translating (saying "no" discards!) as
+#. (saying "n" for "no" discards!) if the translation
+#. of the word "no" does not start with n.
+#.
+#. TRANSLATORS: do not translate [y/n]
+#. The program will only accept that input
+#. at this point.
+#. Consider translating (saying "no" discards!) as
+#. (saying "n" for "no" discards!) if the translation
+#. of the word "no" does not start with n.
+#: add-patch.c:1218 git-add--interactive.perl:1239
+msgid ""
+"Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
+msgstr ""
+"L'hunk modificato non può essere applicato senza problemi. Modificarlo di "
+"nuovo (se rispondi \"no\", sarà eliminato!) [y/n]? "
+
+#: add-patch.c:1261
+msgid "The selected hunks do not apply to the index!"
+msgstr "Gli hunk selezionati non si applicano senza problemi all'indice!"
+
+#: add-patch.c:1262 git-add--interactive.perl:1343
+msgid "Apply them to the worktree anyway? "
+msgstr "Vuoi comunque applicarli all'albero di lavoro? "
+
+#: add-patch.c:1269 git-add--interactive.perl:1346
+msgid "Nothing was applied.\n"
+msgstr "Non è stato applicato nulla.\n"
+
+#: add-patch.c:1326
+msgid ""
+"j - leave this hunk undecided, see next undecided hunk\n"
+"J - leave this hunk undecided, see next hunk\n"
+"k - leave this hunk undecided, see previous undecided hunk\n"
+"K - leave this hunk undecided, see previous hunk\n"
+"g - select a hunk to go to\n"
+"/ - search for a hunk matching the given regex\n"
+"s - split the current hunk into smaller hunks\n"
+"e - manually edit the current hunk\n"
+"? - print help\n"
+msgstr ""
+"j - non decidere in merito a quest'hunk, vai al successivo hunk per cui non "
+"è stata presa una decisione\n"
+"J - non decidere in merito a quest'hunk, vai all'hunk successivo\n"
+"k - non decidere in merito a quest'hunk, vai al precedente hunk per cui non "
+"è stata presa una decisione\n"
+"K - non decidere in merito a quest'hunk, vai all'hunk precedente\n"
+"g - seleziona un hunk a cui andare\n"
+"/ - cerca un hunk corrispondente all'espressione regolare data\n"
+"s - suddividi l'hunk corrente in hunk più piccoli\n"
+"e - modifica manualmente l'hunk corrente\n"
+"? - stampa una guida\n"
+
+#: add-patch.c:1447 add-patch.c:1457
+msgid "No previous hunk"
+msgstr "Nessun hunk precedente"
+
+#: add-patch.c:1452 add-patch.c:1462
+msgid "No next hunk"
+msgstr "Nessun hunk successivo"
+
+#: add-patch.c:1468
+msgid "No other hunks to goto"
+msgstr "Nessun altro hunk a cui andare"
+
+#: add-patch.c:1479 git-add--interactive.perl:1577
+msgid "go to which hunk (<ret> to see more)? "
+msgstr "a quale hunk desideri andare (premi <Invio> per vederne altri)? "
+
+#: add-patch.c:1480 git-add--interactive.perl:1579
+msgid "go to which hunk? "
+msgstr "a quale hunk desideri andare? "
+
+#: add-patch.c:1491
+#, c-format
+msgid "Invalid number: '%s'"
+msgstr "Numero non valido: '%s'"
+
+#: add-patch.c:1496
+#, c-format
+msgid "Sorry, only %d hunk available."
+msgid_plural "Sorry, only %d hunks available."
+msgstr[0] "Mi dispiace, è disponibile solo %d hunk."
+msgstr[1] "Mi dispiace, sono disponibili solo %d hunk."
+
+#: add-patch.c:1505
+msgid "No other hunks to search"
+msgstr "Nessun altro hunk in cui eseguire la ricerca"
+
+#: add-patch.c:1511 git-add--interactive.perl:1623
+msgid "search for regex? "
+msgstr "cercare un'espressione regolare? "
+
+#: add-patch.c:1526
+#, c-format
+msgid "Malformed search regexp %s: %s"
+msgstr "Espressione regolare di ricerca %s malformata: %s"
+
+#: add-patch.c:1543
+msgid "No hunk matches the given pattern"
+msgstr "Nessun hunk corrisponde al pattern fornito"
+
+#: add-patch.c:1550
+msgid "Sorry, cannot split this hunk"
+msgstr "Mi dispiace, non posso suddividere quest'hunk"
+
+#: add-patch.c:1554
+#, c-format
+msgid "Split into %d hunks."
+msgstr "Suddiviso in %d hunk."
+
+#: add-patch.c:1558
+msgid "Sorry, cannot edit this hunk"
+msgstr "Mi dispiace, non posso modificare quest'hunk"
+
+#: add-patch.c:1609
+msgid "'git apply' failed"
+msgstr "'git apply' non riuscito"
+
+#: advice.c:115
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr "%ssuggerimento: %.*s%s\n"
 
-#: advice.c:154
+#: advice.c:168
 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:156
+#: advice.c:170
 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:158
+#: advice.c:172
 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:160
+#: advice.c:174
 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:162
+#: advice.c:176
 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:164
+#: advice.c:178
 #, 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:172
+#: advice.c:186
 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."
@@ -71,35 +779,42 @@ msgstr ""
 "Correggili nell'albero di lavoro, quindi usa 'git add/rm <file>...' come "
 "appropriato per risolverli ed esegui un commit."
 
-#: advice.c:180
+#: advice.c:194
 msgid "Exiting because of an unresolved conflict."
 msgstr "Esco a causa di un conflitto non risolto."
 
-#: advice.c:185 builtin/merge.c:1290
+#: advice.c:199 builtin/merge.c:1335
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Il merge non è stato concluso (esiste MERGE_HEAD)."
 
-#: advice.c:187
+#: advice.c:201
 msgid "Please, commit your changes before merging."
 msgstr "Esegui il commit delle modifiche prima di eseguire il merge."
 
-#: advice.c:188
+#: advice.c:202
 msgid "Exiting because of unfinished merge."
 msgstr "Esco a causa di un merge non terminato."
 
-#: advice.c:194
+#: advice.c:208
 #, 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 switch -c <new-branch-name>\n"
 "\n"
-"  git checkout -b <new-branch-name>\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"
@@ -109,113 +824,109 @@ msgstr ""
 "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"
+"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"
+"Oppure puoi annullare quest'operazione con:\n"
 "\n"
-"  git checkout -b <nome-nuovo-branch>\n"
+"  git switch -\n"
+"\n"
+"Disattiva questo consiglio impostando la variabile di configurazione\n"
+"advice.detachedHead a false\n"
 "\n"
 
 #: alias.c:50
-#, fuzzy
 msgid "cmdline ends with \\"
-msgstr "termina le voci con NUL"
+msgstr "la riga di comando termina con \\"
 
 #: alias.c:51
 msgid "unclosed quote"
-msgstr ""
+msgstr "virgolette non chiuse"
 
-#: apply.c:59
+#: apply.c:69
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr "opzione spazi bianchi '%s' non riconosciuta"
 
-#: apply.c:75
+#: apply.c:85
 #, c-format
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "opzione ignora spazi bianchi '%s' non riconosciuta"
 
-#: apply.c:125
+#: apply.c:135
 msgid "--reject and --3way cannot be used together."
 msgstr "--reject e --3way non possono essere usati insieme."
 
-#: apply.c:127
+#: apply.c:137
 msgid "--cached and --3way cannot be used together."
 msgstr "--cached e --3way non possono essere usati insieme."
 
-#: apply.c:130
+#: apply.c:140
 msgid "--3way outside a repository"
 msgstr "--3way al di fuori di un repository"
 
-#: apply.c:141
+#: apply.c:151
 msgid "--index outside a repository"
 msgstr "--index al di fuori di un repository"
 
-#: apply.c:144
+#: apply.c:154
 msgid "--cached outside a repository"
 msgstr "--cached al di fuori di un repository"
 
-#: apply.c:825
+#: apply.c:801
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "Impossibile preparare l'espressione regolare timestamp %s"
 
-#: apply.c:834
+#: apply.c:810
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec ha restituito %d per l'input: %s"
 
-#: apply.c:908
+#: 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:946
+#: 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:952
+#: 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:953
+#: 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:958
+#: 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:987
+#: 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:1306
+#: apply.c:1282
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr "righe di intestazione %d e %d inconsistenti"
 
-#: apply.c:1478
-#, c-format
-msgid "recount: unexpected line: %.*s"
-msgstr "recount: riga inattesa: %.*s"
-
-#: apply.c:1547
-#, c-format
-msgid "patch fragment without header at line %d: %.*s"
-msgstr "frammento di patch senza intestazione alla riga %d: %.*s"
-
-#: apply.c:1567
+#: apply.c:1372
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -230,546 +941,541 @@ msgstr[1] ""
 "l'intestazione git diff non riporta le informazioni sul file una volta "
 "rimossi %d componenti iniziali del percorso (riga %d)"
 
-#: apply.c:1580
+#: apply.c:1385
 #, 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:1768
+#: apply.c:1481
+#, c-format
+msgid "recount: unexpected line: %.*s"
+msgstr "recount: riga inattesa: %.*s"
+
+#: apply.c:1550
+#, c-format
+msgid "patch fragment without header at line %d: %.*s"
+msgstr "frammento di patch senza intestazione alla riga %d: %.*s"
+
+#: apply.c:1753
 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:1770
+#: apply.c:1755
 msgid "deleted file still has contents"
 msgstr "il file eliminato ha ancora dei contenuti"
 
-#: apply.c:1804
+#: apply.c:1789
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "patch corrotta alla riga %d"
 
-#: apply.c:1841
+#: apply.c:1826
 #, 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:1843
+#: apply.c:1828
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "il file eliminato %s ha ancora dei contenuti"
 
-#: apply.c:1846
+#: apply.c:1831
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** attenzione: il file %s diventa vuoto ma non è eliminato"
 
-#: apply.c:1993
+#: apply.c:1978
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "patch binaria corrotta alla riga %d: %.*s"
 
-#: apply.c:2030
+#: apply.c:2015
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "patch binaria non riconosciuta alla riga %d"
 
-#: apply.c:2192
+#: apply.c:2177
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "patch con soli contenuti garbage alla riga %d"
 
-#: apply.c:2278
+#: apply.c:2263
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "impossibile leggere il collegamento simbolico %s"
 
-#: apply.c:2282
+#: apply.c:2267
 #, c-format
 msgid "unable to open or read %s"
 msgstr "impossibile aprire o leggere %s"
 
-#: apply.c:2941
+#: apply.c:2936
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "inizio della riga non valido: '%c'"
 
-#: apply.c:3062
+#: apply.c:3057
 #, 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:3074
+#: apply.c:3069
 #, 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:3080
+#: apply.c:3075
 #, c-format
 msgid ""
 "while searching for:\n"
 "%.*s"
 msgstr ""
-"durante la ricerca per:\n"
+"durante la ricerca di:\n"
 "%.*s"
 
-#: apply.c:3102
+#: apply.c:3097
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "dati della patch binaria mancanti per '%s'"
 
-#: apply.c:3110
+#: apply.c:3105
 #, 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:3157
+#: apply.c:3152
 #, 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:3167
+#: apply.c:3163
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
-"la patch si applica a '%s' (%s), che non corrisponde ai contenuti attuali "
+"la patch si applica a '%s' (%s), che non corrisponde ai contenuti correnti "
 "del file."
 
-#: apply.c:3175
+#: apply.c:3171
 #, 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:3193
+#: apply.c:3189
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "impossibile leggere la postimmagine %s necessaria per '%s'"
 
-#: apply.c:3206
+#: apply.c:3202
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "la patch binaria non si applica correttamente a '%s'"
 
-#: apply.c:3212
+#: apply.c:3209
 #, 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:3233
+#: apply.c:3230
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "patch non riuscita: %s:%ld"
 
-#: apply.c:3356
+#: apply.c:3353
 #, c-format
 msgid "cannot checkout %s"
 msgstr "impossibile eseguire il checkout di '%s'"
 
-#: apply.c:3408 apply.c:3419 apply.c:3465 midx.c:58 setup.c:278
+#: apply.c:3405 apply.c:3416 apply.c:3462 midx.c:61 setup.c:298
 #, c-format
 msgid "failed to read %s"
 msgstr "lettura di %s non riuscita"
 
-#: apply.c:3416
+#: apply.c:3413
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "lettura di '%s' oltre un collegamento simbolico"
 
-#: apply.c:3445 apply.c:3688
+#: apply.c:3442 apply.c:3685
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "il percorso %s è stato rinominato/eliminato"
 
-#: apply.c:3531 apply.c:3703
+#: apply.c:3528 apply.c:3700
 #, c-format
 msgid "%s: does not exist in index"
-msgstr "%s: non esiste in index"
+msgstr "%s: non esiste nell'indice"
 
-#: apply.c:3540 apply.c:3711
+#: apply.c:3537 apply.c:3708
 #, c-format
 msgid "%s: does not match index"
-msgstr "%s: non corrisponde a index"
+msgstr "%s: non corrisponde all'indice"
 
-#: apply.c:3575
+#: apply.c:3572
 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:3578
+#: apply.c:3575
 #, c-format
 msgid "Falling back to three-way merge...\n"
 msgstr "Ripiego sul merge a tre vie...\n"
 
-#: apply.c:3594 apply.c:3598
+#: apply.c:3591 apply.c:3595
 #, c-format
 msgid "cannot read the current contents of '%s'"
-msgstr "impossibile leggere i contenuti attuali di '%s'"
+msgstr "impossibile leggere i contenuti correnti di '%s'"
 
-#: apply.c:3610
+#: apply.c:3607
 #, c-format
 msgid "Failed to fall back on three-way merge...\n"
 msgstr "Ripiego sul merge a tre vie non riuscito...\n"
 
-#: apply.c:3624
+#: apply.c:3621
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr "Patch applicata a '%s' con conflitti.\n"
 
-#: apply.c:3629
+#: apply.c:3626
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr "Patch '%s' applicata correttamente.\n"
 
-#: apply.c:3655
+#: apply.c:3652
 msgid "removal patch leaves file contents"
 msgstr "la rimozione della patch lascia contenuti del file"
 
-#: apply.c:3728
+#: apply.c:3725
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s: tipo errato"
 
-#: apply.c:3730
+#: apply.c:3727
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s ha il tipo %o, atteso %o"
 
-#: apply.c:3881 apply.c:3883 read-cache.c:820 read-cache.c:846
-#: read-cache.c:1299
+#: apply.c:3878 apply.c:3880 read-cache.c:830 read-cache.c:856
+#: read-cache.c:1325
 #, c-format
 msgid "invalid path '%s'"
-msgstr "percorso non valido: %s"
+msgstr "percorso '%s' non valido"
 
-#: apply.c:3939
+#: apply.c:3936
 #, c-format
 msgid "%s: already exists in index"
-msgstr "%s: esiste già in index"
+msgstr "%s: esiste già nell'indice"
 
-#: apply.c:3942
+#: apply.c:3939
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s: esiste già nella directory di lavoro"
 
-#: apply.c:3962
+#: apply.c:3959
 #, 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:3967
+#: apply.c:3964
 #, 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:3987
+#: apply.c:3984
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "il file interessato '%s' si trova oltre un collegamento simbolico"
 
-#: apply.c:3991
+#: apply.c:3988
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: la patch non si applica correttamente"
 
-#: apply.c:4006
+#: apply.c:4003
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Controllo della patch %s in corso..."
 
-#: apply.c:4098
+#: apply.c:4095
 #, 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:4105
+#: apply.c:4102
 #, 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:4108
+#: apply.c:4105
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "le informazioni SHA1 sono mancanti o inutili (%s)."
 
-#: apply.c:4113 builtin/checkout.c:248 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:4117
+#: apply.c:4114
 #, c-format
 msgid "could not add %s to temporary index"
-msgstr "impossibile aggiungere %s all'index temporaneo"
+msgstr "impossibile aggiungere %s all'indice temporaneo"
 
-#: apply.c:4127
+#: apply.c:4124
 #, c-format
 msgid "could not write temporary index to %s"
-msgstr "impossibile scrivere l'index temporaneo in %s"
+msgstr "impossibile scrivere l'indice temporaneo in %s"
 
-#: apply.c:4265
+#: apply.c:4262
 #, c-format
 msgid "unable to remove %s from index"
-msgstr "impossibile rimuovere %s da index"
+msgstr "impossibile rimuovere %s dall'indice"
 
-#: apply.c:4299
+#: apply.c:4296
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "patch corrotta per il sottomodulo %s"
 
-#: apply.c:4305
+#: apply.c:4302
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "impossibile eseguire lo stat del file appena creato '%s'"
 
-#: apply.c:4313
+#: apply.c:4310
 #, 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:4319 apply.c:4464
+#: apply.c:4316 apply.c:4461
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "impossibile aggiungere la voce della cache per %s"
 
-#: apply.c:4362
+#: apply.c:4359
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "scrittura in '%s' non riuscita"
 
-#: apply.c:4366
+#: apply.c:4363
 #, c-format
 msgid "closing file '%s'"
 msgstr "chiusura del file '%s' in corso"
 
-#: apply.c:4436
+#: apply.c:4433
 #, 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:4534
+#: apply.c:4531
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Patch %s applicata correttamente."
 
-#: apply.c:4542
+#: apply.c:4539
 msgid "internal error"
 msgstr "errore interno"
 
-#: apply.c:4545
+#: apply.c:4542
 #, 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:4556
+#: apply.c:4553
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "nome file .rej troncato a %.*s.rej"
 
-#: apply.c:4564 builtin/fetch.c:837 builtin/fetch.c:1118
+#: apply.c:4561 builtin/fetch.c:901 builtin/fetch.c:1201
 #, c-format
 msgid "cannot open %s"
 msgstr "impossibile aprire %s"
 
-#: apply.c:4578
+#: apply.c:4575
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Frammento %d applicato correttamente."
 
-#: apply.c:4582
+#: apply.c:4579
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Frammento %d respinto."
 
-#: apply.c:4692
+#: apply.c:4698
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "Patch '%s' ignorata."
 
-#: apply.c:4700
+#: apply.c:4706
 msgid "unrecognized input"
 msgstr "input non riconosciuto"
 
-#: apply.c:4720
+#: apply.c:4726
 msgid "unable to read index file"
 msgstr "impossibile leggere il file index"
 
-#: apply.c:4875
+#: apply.c:4883
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "impossibile aprire la patch '%s': %s"
 
-#: apply.c:4902
+#: apply.c:4910
 #, 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:4908 apply.c:4923
+#: apply.c:4916 apply.c:4931
 #, 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:4916
+#: apply.c:4924
 #, 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:4932 builtin/add.c:539 builtin/mv.c:301 builtin/rm.c:390
+#: apply.c:4940 builtin/add.c:612 builtin/mv.c:301 builtin/rm.c:406
 msgid "Unable to write new index file"
 msgstr "Impossibile scrivere il nuovo file index"
 
-#: apply.c:4959 apply.c:4962 builtin/am.c:2203 builtin/am.c:2206
-#: builtin/clone.c:122 builtin/fetch.c:118 builtin/merge.c:263
-#: builtin/pull.c:200 builtin/submodule--helper.c:407
-#: builtin/submodule--helper.c:1366 builtin/submodule--helper.c:1369
-#: builtin/submodule--helper.c:1850 builtin/submodule--helper.c:1853
-#: builtin/submodule--helper.c:2092 git-add--interactive.perl:197
-msgid "path"
-msgstr "percorso"
-
-#: apply.c:4960
+#: apply.c:4968
 msgid "don't apply changes matching the given path"
 msgstr "non applicare le modifiche corrispondenti al percorso specificato"
 
-#: apply.c:4963
+#: apply.c:4971
 msgid "apply changes matching the given path"
 msgstr "applica le modifiche corrispondenti al percorso specificato"
 
-#: apply.c:4965 builtin/am.c:2212
+#: apply.c:4973 builtin/am.c:2260
 msgid "num"
 msgstr "num"
 
-#: apply.c:4966
+#: apply.c:4974
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "rimuovi <num> barre iniziali dai percorsi diff tradizionali"
 
-#: apply.c:4969
+#: apply.c:4977
 msgid "ignore additions made by the patch"
 msgstr "ignora le aggiunte create dalla patch"
 
-#: apply.c:4971
+#: apply.c:4979
 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:4975
+#: apply.c:4983
 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:4977
+#: apply.c:4985
 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:4979
+#: apply.c:4987
 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:4981
+#: apply.c:4989
 msgid "make sure the patch is applicable to the current index"
-msgstr "assicura che la patch sia applicabile all'index attuale"
+msgstr "assicura che la patch sia applicabile all'indice corrente"
 
-#: apply.c:4983
+#: apply.c:4991
 msgid "mark new files with `git add --intent-to-add`"
 msgstr "contrassegna i nuovi file con `git add --intent-to-add`"
 
-#: apply.c:4985
+#: apply.c:4993
 msgid "apply a patch without touching the working tree"
 msgstr "applica una patch senza modificare l'albero di lavoro"
 
-#: apply.c:4987
+#: apply.c:4995
 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:4990
+#: apply.c:4998
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "applica anche la patch (da usare con --stat/--summary/--check)"
 
-#: apply.c:4992
+#: apply.c:5000
 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:4994
+#: apply.c:5002
 msgid "build a temporary index based on embedded index information"
-msgstr "compila un index temporaneo basato sulle informazioni index incluse"
+msgstr "compila un index temporaneo basato sulle informazioni indice incluse"
 
-#: apply.c:4997 builtin/checkout-index.c:173 builtin/ls-files.c:524
+#: apply.c:5005 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:4999
+#: apply.c:5007
 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:5000 builtin/am.c:2191 builtin/interpret-trailers.c:97
-#: builtin/interpret-trailers.c:99 builtin/interpret-trailers.c:101
-#: builtin/pack-objects.c:3314 builtin/rebase.c:1065
+#: apply.c:5008 builtin/am.c:2239 builtin/interpret-trailers.c:98
+#: builtin/interpret-trailers.c:100 builtin/interpret-trailers.c:102
+#: builtin/pack-objects.c:3457 builtin/rebase.c:1508
 msgid "action"
 msgstr "azione"
 
-#: apply.c:5001
+#: apply.c:5009
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "rileva righe nuove o modificate che hanno errori di spazi bianchi"
 
-#: apply.c:5004 apply.c:5007
+#: apply.c:5012 apply.c:5015
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignora modifiche agli spazi bianchi durante la ricerca dei contesti"
 
-#: apply.c:5010
+#: apply.c:5018
 msgid "apply the patch in reverse"
 msgstr "applica la patch in maniera inversa"
 
-#: apply.c:5012
+#: apply.c:5020
 msgid "don't expect at least one line of context"
 msgstr "non aspettare almeno una riga di contesto"
 
-#: apply.c:5014
+#: apply.c:5022
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "lascia i frammenti respinti nei file *.rej corrispondenti"
 
-#: apply.c:5016
+#: apply.c:5024
 msgid "allow overlapping hunks"
 msgstr "consenti la sovrapposizione dei frammenti"
 
-#: apply.c:5017 builtin/add.c:291 builtin/check-ignore.c:22
-#: builtin/commit.c:1312 builtin/count-objects.c:98 builtin/fsck.c:724
-#: builtin/log.c:2037 builtin/mv.c:123 builtin/read-tree.c:128
-#: builtin/rebase--interactive.c:159
+#: apply.c:5025 builtin/add.c:323 builtin/check-ignore.c:22
+#: builtin/commit.c:1360 builtin/count-objects.c:98 builtin/fsck.c:774
+#: builtin/log.c:2166 builtin/mv.c:123 builtin/read-tree.c:128
 msgid "be verbose"
 msgstr "visualizza ulteriori dettagli"
 
-#: apply.c:5019
+#: apply.c:5027
 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:5022
+#: apply.c:5030
 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:5024 builtin/am.c:2200
+#: apply.c:5032 builtin/am.c:2248
 msgid "root"
 msgstr "radice"
 
-#: apply.c:5025
+#: apply.c:5033
 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>...]"
@@ -790,189 +1496,189 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <repository> [--exec <comando>] --list"
 
-#: archive.c:372 builtin/add.c:177 builtin/add.c:515 builtin/rm.c:299
+#: archive.c:372 builtin/add.c:181 builtin/add.c:588 builtin/rm.c:315
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "lo specificatore percorso '%s' non corrisponde ad alcun file"
 
 #: archive.c:396
-#, fuzzy, c-format
+#, c-format
 msgid "no such ref: %.*s"
-msgstr "Remote non esistente: %s"
+msgstr "riferimento non esistente: %.*s"
 
 #: archive.c:401
-#, fuzzy, c-format
+#, c-format
 msgid "not a valid object name: %s"
-msgstr "Non è il nome di un oggetto valido %s"
+msgstr "%s non è un nome oggetto valido"
 
 #: archive.c:414
-#, fuzzy, c-format
+#, c-format
 msgid "not a tree object: %s"
-msgstr "oggetto albero %s non valido"
+msgstr "%s non è un oggetto albero valido"
 
-#: archive.c:424
-#, fuzzy
+#: archive.c:426
 msgid "current working directory is untracked"
-msgstr "impossibile ottenere la directory di lavoro corrente"
+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:1549
+#: archive.c:458 builtin/log.c:1653
 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:820 builtin/blame.c:821 builtin/config.c:129
-#: builtin/fast-export.c:1091 builtin/fast-export.c:1093 builtin/grep.c:895
+#: archive.c:460 builtin/blame.c:861 builtin/blame.c:865 builtin/blame.c:866
+#: builtin/commit-tree.c:117 builtin/config.c:130 builtin/fast-export.c:1162
+#: builtin/fast-export.c:1164 builtin/fast-export.c:1168 builtin/grep.c:887
 #: builtin/hash-object.c:105 builtin/ls-files.c:560 builtin/ls-files.c:563
 #: builtin/notes.c:412 builtin/notes.c:578 builtin/read-tree.c:123
-#: parse-options.h:162
+#: parse-options.h:190
 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:112 builtin/clone.c:115
-#: builtin/submodule--helper.c:1378 builtin/submodule--helper.c:1859
+#: archive.c:479 builtin/archive.c:91 builtin/clone.c:113 builtin/clone.c:116
+#: builtin/submodule--helper.c:1406 builtin/submodule--helper.c:1911
 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:715
+#: archive.c:481 builtin/archive.c:93 builtin/difftool.c:715
 #: 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"
 
-#: archive-tar.c:125 archive-zip.c:345
+#: archive-tar.c:125 archive-zip.c:351
 #, c-format
 msgid "cannot stream blob %s"
 msgstr "impossibile eseguire lo streaming del blob %s"
 
-#: archive-tar.c:260 archive-zip.c:363
+#: archive-tar.c:266 archive-zip.c:369
 #, 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
+#: archive-tar.c:293 archive-zip.c:359
 #, c-format
 msgid "cannot read %s"
 msgstr "impossibile leggere %s"
 
-#: archive-tar.c:458
+#: archive-tar.c:465
 #, c-format
 msgid "unable to start '%s' filter"
 msgstr "impossibile avviare il filtro '%s'"
 
-#: archive-tar.c:461
+#: archive-tar.c:468
 msgid "unable to redirect descriptor"
 msgstr "impossibile ridirezionare il descrittore"
 
-#: archive-tar.c:468
+#: archive-tar.c:475
 #, c-format
 msgid "'%s' filter reported error"
 msgstr "il filtro '%s' ha segnalato un errore"
 
-#: archive-zip.c:314
+#: archive-zip.c:319
 #, c-format
 msgid "path is not valid UTF-8: %s"
 msgstr "il percorso non è codificato validamente in UTF-8: %s"
 
-#: archive-zip.c:318
+#: archive-zip.c:323
 #, c-format
 msgid "path too long (%d chars, SHA1: %s): %s"
 msgstr "percorso troppo lungo (%d caratteri, SHA1: %s): %s"
 
-#: archive-zip.c:474 builtin/pack-objects.c:225 builtin/pack-objects.c:228
+#: archive-zip.c:480 builtin/pack-objects.c:231 builtin/pack-objects.c:234
 #, c-format
 msgid "deflate error (%d)"
 msgstr "errore deflate (%d)"
 
-#: archive-zip.c:609
+#: archive-zip.c:615
 #, c-format
 msgid "timestamp too large for this system: %<PRIuMAX>"
 msgstr "timestamp troppo grande per questo sistema: %<PRIuMAX>"
 
-#: attr.c:211
+#: attr.c:212
 #, c-format
 msgid "%.*s is not a valid attribute name"
 msgstr "%.*s non è un nome attributo valido"
 
-#: attr.c:368
-#, fuzzy, c-format
+#: attr.c:369
+#, c-format
 msgid "%s not allowed: %s:%d"
-msgstr "patch non riuscita: %s:%ld"
+msgstr "%s non consentito: %s:%d"
 
-#: attr.c:408
+#: attr.c:409
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
 msgstr ""
 "I pattern negativi sono ignorati negli attributi git\n"
-"Utilizzare '\\!' per specificare un punto esclamativo iniziale letteralmente."
+"Usa '\\!' per specificare letteralmente un punto esclamativo iniziale."
 
 #: bisect.c:468
 #, c-format
@@ -984,12 +1690,12 @@ msgstr "Contenuto mal racchiuso fra virgolette nel file '%s': %s"
 msgid "We cannot bisect more!\n"
 msgstr "Impossibile eseguire un'ulteriore bisezione!\n"
 
-#: bisect.c:733
+#: bisect.c:745
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr "%s non è un nome commit valido"
 
-#: bisect.c:758
+#: bisect.c:770
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -998,7 +1704,7 @@ msgstr ""
 "La base del merge %s non funziona.\n"
 "Ciò significa che il bug è stato corretto fra %s e [%s].\n"
 
-#: bisect.c:763
+#: bisect.c:775
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -1007,7 +1713,7 @@ msgstr ""
 "La base del merge %s è nuova.\n"
 "La proprietà è stata modificata fra %s e [%s].\n"
 
-#: bisect.c:768
+#: bisect.c:780
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -1016,7 +1722,7 @@ msgstr ""
 "La base del merge %s è %s.\n"
 "Ciò significa che il primo commit '%s' è fra %s e [%s].\n"
 
-#: bisect.c:776
+#: bisect.c:788
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -1027,7 +1733,7 @@ msgstr ""
 "git bisect non può funzionare correttamente in questo caso.\n"
 "Forse hai confuso le revisioni %s con quelle %s?\n"
 
-#: bisect.c:789
+#: bisect.c:801
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -1038,36 +1744,36 @@ msgstr ""
 "Non è possibile essere sicuri che il primo commit %s sia fra %s e %s.\n"
 "Continuo comunque."
 
-#: bisect.c:822
+#: bisect.c:840
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "Bisezione: dev'essere testata una base del merge\n"
 
-#: bisect.c:865
+#: bisect.c:890
 #, c-format
 msgid "a %s revision is needed"
 msgstr "è richiesta una revisione %s"
 
-#: bisect.c:884 builtin/notes.c:177 builtin/tag.c:237
+#: bisect.c:920 builtin/notes.c:177 builtin/tag.c:254
 #, c-format
 msgid "could not create file '%s'"
 msgstr "impossibile creare il file '%s'"
 
-#: bisect.c:937 builtin/merge.c:139
+#: bisect.c:966 builtin/merge.c:149
 #, c-format
 msgid "could not read file '%s'"
 msgstr "impossibile leggere il file '%s'"
 
-#: bisect.c:967
+#: bisect.c:997
 msgid "reading bisect refs failed"
 msgstr "lettura riferimenti della bisezione non riuscita"
 
-#: bisect.c:986
+#: bisect.c:1019
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s era sia %s sia %s\n"
 
-#: bisect.c:994
+#: bisect.c:1028
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -1076,7 +1782,7 @@ msgstr ""
 "Nessun commit testabile trovato.\n"
 "Forse hai iniziato il procedimento specificando parametri percorso errati?\n"
 
-#: bisect.c:1013
+#: bisect.c:1057
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -1086,7 +1792,7 @@ msgstr[1] "(circa %d passi)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1019
+#: bisect.c:1063
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
@@ -1095,46 +1801,46 @@ msgstr[0] ""
 msgstr[1] ""
 "Bisezione in corso: %d revisioni rimanenti da testare dopo questa %s\n"
 
-#: blame.c:1792
+#: blame.c:2700
 msgid "--contents and --reverse do not blend well."
 msgstr "--contents e --reverse non sono compatibili."
 
-#: blame.c:1806
+#: blame.c:2714
 msgid "cannot use --contents with final commit object name"
 msgstr "impossibile usare --contents con il nome oggetto del commit finale"
 
-#: blame.c:1827
+#: blame.c:2735
 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:1836 bundle.c:164 ref-filter.c:2071 remote.c:1948 sequencer.c:1993
-#: sequencer.c:4064 builtin/commit.c:1004 builtin/log.c:378 builtin/log.c:936
-#: builtin/log.c:1420 builtin/log.c:1796 builtin/log.c:2086 builtin/merge.c:407
-#: builtin/pack-objects.c:3137 builtin/pack-objects.c:3152
+#: blame.c:2744 bundle.c:167 ref-filter.c:2203 remote.c:1942 sequencer.c:2006
+#: sequencer.c:4358 submodule.c:847 builtin/commit.c:1045 builtin/log.c:388
+#: builtin/log.c:991 builtin/log.c:1520 builtin/log.c:1925 builtin/log.c:2215
+#: builtin/merge.c:412 builtin/pack-objects.c:3275 builtin/pack-objects.c:3290
 #: builtin/shortlog.c:192
 msgid "revision walk setup failed"
 msgstr "impostazione percorso revisioni non riuscita"
 
-#: blame.c:1854
+#: blame.c:2762
 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:1865
+#: blame.c:2773
 #, c-format
 msgid "no such path %s in %s"
 msgstr "il percorso %s in %s non esiste"
 
-#: blame.c:1876
+#: blame.c:2784
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "impossibile leggere il blob %s per il percorso %s"
 
-#: branch.c:52
+#: branch.c:53
 #, c-format
 msgid ""
 "\n"
@@ -1147,95 +1853,95 @@ msgstr ""
 "le informazioni di tracciamento remoto eseguendo\n"
 "\"git branch --set-upstream-to=%s%s%s\"."
 
-#: branch.c:66
+#: branch.c:67
 #, c-format
 msgid "Not setting branch %s as its own upstream."
 msgstr "Non imposto il branch %s come upstream di sé stesso."
 
-#: branch.c:92
+#: branch.c:93
 #, c-format
 msgid "Branch '%s' set up to track remote branch '%s' from '%s' by rebasing."
 msgstr ""
 "Branch '%s' impostato per tracciare il branch remoto '%s' da '%s' tramite "
 "rebase."
 
-#: branch.c:93
+#: branch.c:94
 #, c-format
 msgid "Branch '%s' set up to track remote branch '%s' from '%s'."
 msgstr "Branch '%s' impostato per tracciare il branch remoto '%s' da '%s'."
 
-#: branch.c:97
+#: branch.c:98
 #, c-format
 msgid "Branch '%s' set up to track local branch '%s' by rebasing."
 msgstr ""
 "Branch '%s' impostato per tracciare il branch locale '%s' tramite rebase."
 
-#: branch.c:98
+#: branch.c:99
 #, c-format
 msgid "Branch '%s' set up to track local branch '%s'."
 msgstr "Branch '%s' impostato per tracciare il branch locale '%s'."
 
-#: branch.c:103
+#: branch.c:104
 #, c-format
 msgid "Branch '%s' set up to track remote ref '%s' by rebasing."
 msgstr ""
 "Branch '%s' impostato per tracciare il riferimento remoto '%s' tramite "
 "rebase."
 
-#: branch.c:104
+#: branch.c:105
 #, c-format
 msgid "Branch '%s' set up to track remote ref '%s'."
 msgstr "Branch '%s' impostato per tracciare il riferimento remoto '%s'."
 
-#: branch.c:108
+#: branch.c:109
 #, c-format
 msgid "Branch '%s' set up to track local ref '%s' by rebasing."
 msgstr ""
 "Branch '%s' impostato per tracciare il riferimento locale '%s' tramite "
 "rebase."
 
-#: branch.c:109
+#: branch.c:110
 #, c-format
 msgid "Branch '%s' set up to track local ref '%s'."
 msgstr "Branch '%s' impostato per tracciare il riferimento locale '%s'."
 
-#: branch.c:118
+#: branch.c:119
 msgid "Unable to write upstream branch configuration"
 msgstr "Impossibile scrivere la configurazione relativa al branch upstream"
 
-#: branch.c:155
+#: branch.c:156
 #, c-format
 msgid "Not tracking: ambiguous information for ref %s"
 msgstr ""
 "Il tracciamento non avverrà: informazioni ambigue per il riferimento %s"
 
-#: branch.c:188
+#: branch.c:189
 #, c-format
 msgid "'%s' is not a valid branch name."
 msgstr "'%s' non è un nome branch valido."
 
-#: branch.c:207
+#: branch.c:208
 #, c-format
 msgid "A branch named '%s' already exists."
 msgstr "Un branch denominato '%s' esiste già."
 
-#: branch.c:212
+#: branch.c:213
 msgid "Cannot force update the current branch."
 msgstr "Impossibile eseguire un aggiornamento forzato del branch corrente."
 
-#: branch.c:232
+#: branch.c:233
 #, c-format
 msgid "Cannot setup tracking information; starting point '%s' is not a branch."
 msgstr ""
 "Impossibile impostare le informazioni di tracciamento: il punto di partenza "
 "'%s' non è un branch."
 
-#: branch.c:234
+#: branch.c:235
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr "il branch upstream richiesto '%s' non esiste"
 
-#: branch.c:236
+#: branch.c:237
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -1253,30 +1959,30 @@ msgstr ""
 "\n"
 "Se prevedi di eseguire il push di un nuovo branch locale\n"
 "che traccerà la sua controparte remota, potresti voler\n"
-"utilizzare \"git push -u\" per impostare la configurazione del\n"
+"usare \"git push -u\" per impostare la configurazione del\n"
 "branch upstream durante il push."
 
-#: branch.c:280
+#: branch.c:281
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr "Nome oggetto non valido: '%s'."
 
-#: branch.c:300
+#: branch.c:301
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr "Nome oggetto ambiguo: '%s'."
 
-#: branch.c:305
+#: branch.c:306
 #, c-format
 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"
@@ -1291,8 +1997,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:2215 sequencer.c:2763
-#: builtin/commit.c:776
+#: bundle.c:90 rerere.c:480 rerere.c:690 sequencer.c:2258 sequencer.c:3016
+#: builtin/commit.c:815
 #, c-format
 msgid "could not open '%s'"
 msgstr "impossibile aprire '%s'"
@@ -1301,76 +2007,79 @@ 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:273
 msgid "unable to dup bundle descriptor"
 msgstr "impossibile duplicare il descrittore bundle"
 
-#: bundle.c:276
+#: bundle.c:280
 msgid "Could not spawn pack-objects"
 msgstr "Impossibile avviare pack-objects"
 
-#: bundle.c:287
+#: bundle.c:291
 msgid "pack-objects died"
 msgstr "comando pack-objects morto"
 
-#: bundle.c:329
+#: bundle.c:333
 msgid "rev-list died"
 msgstr "comando rev-list morto"
 
-#: bundle.c:378
+#: bundle.c:382
 #, 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:193 builtin/log.c:1701 builtin/shortlog.c:306
+#: bundle.c:461 builtin/log.c:203 builtin/log.c:1814 builtin/shortlog.c:306
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "argomento non riconosciuto: %s"
 
-#: bundle.c:465
+#: bundle.c:469
 msgid "Refusing to create empty bundle."
 msgstr "Mi rifiuto di creare un bundle vuoto."
 
-#: bundle.c:475
+#: bundle.c:479
 #, c-format
 msgid "cannot create '%s'"
 msgstr "impossibile creare '%s'"
 
-#: bundle.c:500
+#: bundle.c:504
 msgid "index-pack died"
 msgstr "comando index-pack morto"
 
-#: color.c:296
+#: color.c:329
 #, c-format
 msgid "invalid color value: %.*s"
 msgstr "valore colore non valido: %.*s"
 
-#: commit.c:50 sequencer.c:2567 builtin/am.c:355 builtin/am.c:399
-#: builtin/am.c:1375 builtin/am.c:2019 builtin/replace.c:376
-#: builtin/replace.c:448
+#: commit.c:51 sequencer.c:2719 builtin/am.c:359 builtin/am.c:403
+#: builtin/am.c:1371 builtin/am.c:2014 builtin/replace.c:457
 #, c-format
 msgid "could not parse %s"
 msgstr "impossibile analizzare %s"
 
-#: commit.c:52
+#: commit.c:53
 #, c-format
 msgid "%s %s is not a commit!"
 msgstr "%s %s non è un commit!"
@@ -1389,33 +2098,33 @@ msgstr ""
 "Il supporto per <GIT_DIR>/info/graft è deprecato\n"
 "e sarà rimosso in una versione futura di Git.\n"
 "\n"
-"Utilizzare \"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:1122
+#: commit.c:1153
 #, 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:1125
+#: commit.c:1157
 #, 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:1128
+#: commit.c:1160
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "Il commit %s non ha una firma GPG."
 
-#: commit.c:1131
+#: commit.c:1163
 #, 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:1385
+#: commit.c:1417
 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"
@@ -1426,146 +2135,283 @@ msgstr ""
 "la variabile di configurazione i18n.commitencoding alla codifica usata\n"
 "dal tuo progetto.\n"
 
-#: commit-graph.c:101
-#, c-format
-msgid "graph file %s is too small"
-msgstr "il file grafo %s è troppo piccolo"
+#: commit-graph.c:122
+msgid "commit-graph file is too small"
+msgstr "il file grafo dei commit %s è troppo piccolo"
 
-#: commit-graph.c:136
+#: commit-graph.c:189
 #, c-format
-msgid "graph signature %X does not match signature %X"
-msgstr "la firma del grafo %X non corrisponde alla firma %X"
+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:143
+#: commit-graph.c:196
 #, c-format
-msgid "graph version %X does not match version %X"
-msgstr "la versione del grafo %X non corrisponde alla versione %X"
+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:150
+#: commit-graph.c:203
 #, c-format
-msgid "hash version %X does not match version %X"
-msgstr "la versione dell'hash %X non corrisponde alla versione %X"
+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:173
-msgid "chunk lookup table entry missing; graph file may be incomplete"
+#: commit-graph.c:226
+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:184
+#: commit-graph.c:237
 #, c-format
-msgid "improper chunk offset %08x%08x"
-msgstr "offset blocco improprio %08x%08x"
+msgid "commit-graph improper chunk offset %08x%08x"
+msgstr "offset blocco grafo dei commit improprio %08x%08x"
 
-#: commit-graph.c:221
+#: commit-graph.c:280
 #, c-format
-msgid "chunk id %08x appears multiple times"
-msgstr "l'ID del blocco %08x compare più volte"
+msgid "commit-graph chunk id %08x appears multiple times"
+msgstr "l'ID del blocco grafo dei commit %08x compare più volte"
+
+#: commit-graph.c:343
+msgid "commit-graph has no base graphs chunk"
+msgstr "il grafo dei commit non ha un blocco grafi di base"
 
-#: commit-graph.c:334
+#: commit-graph.c:353
+msgid "commit-graph chain does not match"
+msgstr "la catena del grafo dei commit non corrisponde"
+
+#: commit-graph.c:401
+#, 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:425
+msgid "unable to find all commit-graph files"
+msgstr "impossibile trovare tutti i file grafo dei commit"
+
+#: commit-graph.c:558 commit-graph.c:618
+msgid "invalid commit position. commit-graph is likely corrupt"
+msgstr ""
+"posizione commit non valida. Il grafo dei commit è probabilmente corrotto"
+
+#: commit-graph.c:579
 #, c-format
 msgid "could not find commit %s"
 msgstr "impossibile trovare il commit %s"
 
-#: commit-graph.c:671 builtin/pack-objects.c:2646
+#: commit-graph.c:852 builtin/am.c:1292
+#, c-format
+msgid "unable to parse commit %s"
+msgstr "impossibile analizzare il commit %s"
+
+#: commit-graph.c:1011 builtin/pack-objects.c:2782
 #, c-format
 msgid "unable to get type of object %s"
 msgstr "impossibile recuperare il tipo dell'oggetto %s"
 
-#: commit-graph.c:704
-#, fuzzy
+#: commit-graph.c:1043
 msgid "Loading known commits in commit graph"
-msgstr "Annotazione commit nel grafo dei commit in corso"
+msgstr "Caricamento commit noti nel grafo dei commit in corso"
 
-#: commit-graph.c:720
-#, fuzzy
+#: commit-graph.c:1060
 msgid "Expanding reachable commits in commit graph"
-msgstr "Annotazione commit nel grafo dei commit in corso"
+msgstr "Espansione dei commit raggiungibili nel grafo dei commit in corso"
 
-#: commit-graph.c:732
-#, fuzzy
+#: commit-graph.c:1079
 msgid "Clearing commit marks in commit graph"
-msgstr "Verifica dei commit nel grafo dei commit in corso"
+msgstr "Rimozione dei contrassegni commit nel grafo dei commit in corso"
 
-#: commit-graph.c:752
+#: commit-graph.c:1098
 msgid "Computing commit graph generation numbers"
 msgstr "Calcolo numeri generazione del grafo dei commit in corso"
 
-#: commit-graph.c:869
-#, fuzzy, c-format
+#: commit-graph.c:1173
+#, 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 corso"
-msgstr[1] "Ricerca dei commit per il grafo dei commit in corso"
+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:882
+#: commit-graph.c:1186
 #, c-format
 msgid "error adding pack %s"
 msgstr "errore durante l'aggiunta del pack %s"
 
-#: commit-graph.c:884
+#: commit-graph.c:1190
 #, c-format
 msgid "error opening index for %s"
-msgstr "errore durante l'apertura dell'index per %s"
+msgstr "errore durante l'apertura dell'indice per %s"
 
-#: commit-graph.c:898
-#, fuzzy, c-format
+#: commit-graph.c:1214
+#, c-format
 msgid "Finding commits for commit graph from %d ref"
 msgid_plural "Finding commits for commit graph from %d refs"
-msgstr[0] "Ricerca dei commit per il grafo dei commit in corso"
-msgstr[1] "Ricerca dei commit per il grafo dei commit in corso"
+msgstr[0] ""
+"Ricerca dei commit per il grafo dei commit da %d riferimento in corso"
+msgstr[1] ""
+"Ricerca dei commit per il grafo dei commit da %d riferimenti in corso"
 
-#: commit-graph.c:930
-#, fuzzy
+#: commit-graph.c:1234
+#, c-format
+msgid "invalid commit object id: %s"
+msgstr "ID oggetto commit non valido: %s"
+
+#: commit-graph.c:1249
 msgid "Finding commits for commit graph among packed objects"
-msgstr "Ricerca dei commit per il grafo dei commit in corso"
+msgstr ""
+"Ricerca dei commit per il grafo dei commit fra gli oggetti nei pack in corso"
 
-#: commit-graph.c:943
-#, fuzzy
+#: commit-graph.c:1264
 msgid "Counting distinct commits in commit graph"
-msgstr "Annotazione commit nel grafo dei commit in corso"
+msgstr "Conteggio commit distinti nel grafo dei commit in corso"
+
+#: commit-graph.c:1294
+msgid "Finding extra edges in commit graph"
+msgstr "Ricerca degli archi aggiuntivi nel grafo dei commit in corso"
+
+#: commit-graph.c:1340
+msgid "failed to write correct number of base graph ids"
+msgstr "impossibile scrivere il numero esatto degli ID grafo di base"
+
+#: commit-graph.c:1373 midx.c:814
+#, c-format
+msgid "unable to create leading directories of %s"
+msgstr "impossibile creare le prime directory di %s"
+
+#: commit-graph.c:1385 builtin/index-pack.c:306 builtin/repack.c:248
+#, c-format
+msgid "unable to create '%s'"
+msgstr "impossibile creare '%s'"
+
+#: commit-graph.c:1445
+#, 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:1486
+msgid "unable to open commit-graph chain file"
+msgstr "impossibile aprire il file catena grafo dei commit"
+
+#: commit-graph.c:1498
+msgid "failed to rename base commit-graph file"
+msgstr "impossibile ridenominare il file di base grafo dei commit"
+
+#: commit-graph.c:1518
+msgid "failed to rename temporary commit-graph file"
+msgstr "impossibile ridenominare il file temporaneo grafo dei commit"
+
+#: commit-graph.c:1631
+msgid "Scanning merged commits"
+msgstr "Scansione dei commit sottoposti a merge in corso"
+
+#: commit-graph.c:1642
+#, c-format
+msgid "unexpected duplicate commit id %s"
+msgstr "ID commit duplicato inatteso: %s"
+
+#: commit-graph.c:1665
+msgid "Merging commit-graph"
+msgstr "Merge del grafo dei commit in corso"
+
+#: commit-graph.c:1844
+#, 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:1855
+msgid "too many commits to write graph"
+msgstr "troppi commit da scrivere nel grafo"
+
+#: commit-graph.c:1944
+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:1954
+#, 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:1964 commit-graph.c:1979
+#, 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:1971
+#, c-format
+msgid "failed to parse commit %s from commit-graph"
+msgstr "impossibile analizzare il commit %s nel grafo dei commit"
+
+#: commit-graph.c:1989
+msgid "Verifying commits in commit graph"
+msgstr "Verifica dei commit nel grafo dei commit in corso"
+
+#: commit-graph.c:2003
+#, 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:2010
+#, 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:2020
+#, 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:2029
+#, 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:2042
+#, 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:956
+#: commit-graph.c:2047
 #, c-format
-msgid "the commit graph format cannot write %d commits"
+msgid ""
+"commit-graph has generation number zero for commit %s, but non-zero elsewhere"
 msgstr ""
-"il formato del grafo dei commit non può essere utilizzato per scrivere %d "
-"commit"
-
-#: commit-graph.c:965
-#, fuzzy
-msgid "Finding extra edges in commit graph"
-msgstr "Ricerca dei commit per il grafo dei commit in corso"
-
-#: commit-graph.c:989
-msgid "too many commits to write graph"
-msgstr "troppi commit da scrivere nel grafo"
+"il grafo dei commit ha un numero generazione zero per il commit %s ma non "
+"pari a zero per gli altri"
 
-#: commit-graph.c:996 midx.c:769
+#: commit-graph.c:2051
 #, c-format
-msgid "unable to create leading directories of %s"
-msgstr "impossibile creare le prime directory di %s"
+msgid ""
+"commit-graph has non-zero generation number for commit %s, but zero elsewhere"
+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:1036
-#, fuzzy, c-format
-msgid "Writing out commit graph in %d pass"
-msgid_plural "Writing out commit graph in %d passes"
-msgstr[0] "Verifica dei commit nel grafo dei commit in corso"
-msgstr[1] "Verifica dei commit nel grafo dei commit in corso"
+#: commit-graph.c:2066
+#, 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:1109
-msgid "the commit-graph file has incorrect checksum and is likely corrupt"
+#: commit-graph.c:2072
+#, c-format
+msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
 msgstr ""
-"il file del grafo dei commit ha un checksum non corretto e probabilmente è "
-"corrotto"
-
-#: commit-graph.c:1153
-msgid "Verifying commits in commit graph"
-msgstr "Verifica dei commit nel grafo dei commit in corso"
+"la data per il commit %s nel grafo dei commit è %<PRIuMAX> != %<PRIuMAX>"
 
 #: compat/obstack.c:406 compat/obstack.c:408
 msgid "memory exhausted"
 msgstr "memoria esaurita"
 
-#: config.c:123
+#: config.c:124
 #, c-format
 msgid ""
 "exceeded maximum include depth (%d) while including\n"
@@ -1580,309 +2426,302 @@ 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:376
 #, c-format
 msgid "key does not contain a section: %s"
 msgstr "la chiave non contiene una sezione: %s"
 
-#: config.c:354
+#: config.c:382
 #, c-format
 msgid "key does not contain variable name: %s"
 msgstr "la chiave non contiene un nome variabile: %s"
 
-#: config.c:378 sequencer.c:2330
+#: config.c:406 sequencer.c:2444
 #, c-format
 msgid "invalid key: %s"
 msgstr "chiave non valida: %s"
 
-#: config.c:384
+#: config.c:412
 #, c-format
 msgid "invalid key (newline): %s"
 msgstr "chiave non valida (nuova riga): %s"
 
-#: config.c:420 config.c:432
+#: config.c:448 config.c:460
 #, c-format
 msgid "bogus config parameter: %s"
 msgstr "parametro configurazione fittizio: %s"
 
-#: config.c:467
+#: config.c:495
 #, c-format
 msgid "bogus format in %s"
 msgstr "formato fittizio in %s"
 
-#: config.c:793
+#: config.c:821
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr "riga configurazione %d errata nel blob %s"
 
-#: config.c:797
+#: config.c:825
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr "riga configurazione %d errata nel file %s"
 
-#: config.c:801
+#: config.c:829
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr "riga configurazione %d errata nello standard input"
 
-#: config.c:805
+#: config.c:833
 #, 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:837
 #, 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:841
 #, c-format
 msgid "bad config line %d in %s"
 msgstr "riga configurazione %d errata in %s"
 
-#: config.c:952
+#: config.c:978
 msgid "out of range"
 msgstr "fuori intervallo"
 
-#: config.c:952
+#: config.c:978
 msgid "invalid unit"
 msgstr "unità non valida"
 
-#: config.c:958
+#: config.c:979
 #, 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:998
 #, 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:1001
 #, 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:1004
 #, 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:1007
 #, 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:1010
 #, 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:1013
 #, 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:1108
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr "espansione directory utente in '%s' non riuscita"
 
-#: config.c:1082
+#: config.c:1117
 #, c-format
 msgid "'%s' for '%s' is not a valid timestamp"
 msgstr "'%s' per '%s' non è un timestamp valido"
 
-#: config.c:1173
+#: config.c:1208
 #, c-format
 msgid "abbrev length out of range: %d"
 msgstr "lunghezza abbreviazione fuori intervallo: %d"
 
-#: config.c:1187 config.c:1198
+#: config.c:1222 config.c:1233
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "livello compressione zlib %d non valido"
 
-#: config.c:1290
+#: config.c:1325
 msgid "core.commentChar should only be one character"
 msgstr "core.commentChar dovrebbe essere composto da un solo carattere"
 
-#: config.c:1323
+#: config.c:1358
 #, 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:1430
 #, c-format
 msgid "malformed value for %s"
 msgstr "valore malformato per %s"
 
-#: config.c:1421
+#: config.c:1456
 #, c-format
 msgid "malformed value for %s: %s"
 msgstr "valore malformato per %s: %s"
 
-#: config.c:1422
+#: config.c:1457
 msgid "must be one of nothing, matching, simple, upstream or current"
 msgstr "dev'essere nothing, matching, simple, upstream o current"
 
-#: config.c:1481 builtin/pack-objects.c:3394
+#: config.c:1518 builtin/pack-objects.c:3541
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "livello compressione pack %d non valido"
 
-#: config.c:1602
+#: config.c:1639
 #, c-format
 msgid "unable to load config blob object '%s'"
 msgstr "impossibile caricare l'oggetto blob configurazione '%s'"
 
-#: config.c:1605
+#: config.c:1642
 #, c-format
 msgid "reference '%s' does not point to a blob"
 msgstr "il riferimento '%s' non punta ad un blob"
 
-#: config.c:1622
+#: config.c:1659
 #, c-format
 msgid "unable to resolve config blob '%s'"
 msgstr "impossibile risolvere il blob configurazione '%s'"
 
-#: config.c:1652
+#: config.c:1689
 #, c-format
 msgid "failed to parse %s"
 msgstr "analisi di %s non riuscita"
 
-#: config.c:1705
+#: config.c:1743
 msgid "unable to parse command-line config"
 msgstr "impossibile analizzare la configurazione a riga di comando"
 
-#: config.c:2037
+#: config.c:2097
 msgid "unknown error occurred while reading the configuration files"
 msgstr ""
 "si è verificato un errore imprevisto durante la lettura dei file di "
 "configurazione"
 
-#: config.c:2207
+#: config.c:2267
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s non valido: '%s'"
 
-#: config.c:2250
-#, 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:2276
+#: config.c:2312
 #, 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:2322
+#: config.c:2358
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr "impossibile analizzare '%s' dalla configurazione a riga di comando"
 
-#: config.c:2324
+#: config.c:2360
 #, 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:2405
+#: config.c:2441
 #, c-format
 msgid "invalid section name '%s'"
 msgstr "nome sezione '%s' non valido"
 
-#: config.c:2437
+#: config.c:2473
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s ha più valori"
 
-#: config.c:2466
+#: config.c:2502
 #, c-format
 msgid "failed to write new configuration file %s"
 msgstr "scrittura del nuovo file di configurazione %s non riuscita"
 
-#: config.c:2716 config.c:3040
+#: config.c:2754 config.c:3078
 #, c-format
 msgid "could not lock config file %s"
 msgstr "impossibile bloccare il file di configurazione %s"
 
-#: config.c:2727
+#: config.c:2765
 #, c-format
 msgid "opening %s"
 msgstr "apertura di %s in corso"
 
-#: config.c:2762 builtin/config.c:328
+#: config.c:2800 builtin/config.c:344
 #, c-format
 msgid "invalid pattern: %s"
 msgstr "pattern non valido: %s"
 
-#: config.c:2787
+#: config.c:2825
 #, c-format
 msgid "invalid config file %s"
 msgstr "file di configurazione %s non valido"
 
-#: config.c:2800 config.c:3053
+#: config.c:2838 config.c:3091
 #, c-format
 msgid "fstat on %s failed"
 msgstr "fstat di %s non riuscita"
 
-#: config.c:2811
+#: config.c:2849
 #, c-format
 msgid "unable to mmap '%s'"
 msgstr "impossibile eseguire mmap su '%s'"
 
-#: config.c:2820 config.c:3058
+#: config.c:2858 config.c:3096
 #, c-format
 msgid "chmod on %s failed"
 msgstr "esecuzione chmod su %s non riuscita"
 
-#: config.c:2905 config.c:3155
+#: config.c:2943 config.c:3193
 #, c-format
 msgid "could not write config file %s"
 msgstr "impossibile scrivere il file di configurazione %s"
 
-#: config.c:2939
+#: config.c:2977
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "impossibile impostare '%s' a '%s'"
 
-#: config.c:2941 builtin/remote.c:782
+#: config.c:2979 builtin/remote.c:655 builtin/remote.c:849 builtin/remote.c:857
 #, c-format
 msgid "could not unset '%s'"
 msgstr "impossibile eliminare l'impostazione di '%s'"
 
-#: config.c:3031
+#: config.c:3069
 #, c-format
 msgid "invalid section name: %s"
 msgstr "nome sezione non valido: %s"
 
-#: config.c:3198
+#: config.c:3236
 #, 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"
@@ -1945,7 +2784,7 @@ msgstr "errore protocollo: '%s' non atteso"
 #: connect.c:441
 #, c-format
 msgid "invalid ls-refs response: %s"
-msgstr "responso ls-refs non valido: %s"
+msgstr "risposta ls-refs non valida: %s"
 
 #: connect.c:445
 msgid "expected flush after ref listing"
@@ -1963,7 +2802,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
@@ -1978,7 +2817,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
@@ -2004,7 +2843,7 @@ msgstr "impossibile risolvere %s (%s)"
 msgid "unknown port %s"
 msgstr "porta %s sconosciuta"
 
-#: connect.c:845 connect.c:1171
+#: connect.c:845 connect.c:1175
 #, c-format
 msgid "strange hostname '%s' blocked"
 msgstr "nome host strano '%s' bloccato"
@@ -2019,60 +2858,60 @@ msgstr "porta strana '%s' bloccata"
 msgid "cannot start proxy %s"
 msgstr "impossibile avviare il proxy %s"
 
-#: connect.c:924
+#: connect.c:928
 msgid "no path specified; see 'git help pull' for valid url syntax"
 msgstr ""
 "nessun percorso specificato; vedere 'git help pull' per le sintassi URL "
 "valide"
 
-#: connect.c:1119
+#: connect.c:1123
 msgid "ssh variant 'simple' does not support -4"
 msgstr "la variante SSH 'simple' non supporta -4"
 
-#: connect.c:1131
+#: connect.c:1135
 msgid "ssh variant 'simple' does not support -6"
 msgstr "la variante SSH 'simple' non supporta -6"
 
-#: connect.c:1148
+#: connect.c:1152
 msgid "ssh variant 'simple' does not support setting port"
 msgstr "la variante SSH 'simple' non supporta l'impostazione della porta"
 
-#: connect.c:1259
+#: connect.c:1264
 #, c-format
 msgid "strange pathname '%s' blocked"
 msgstr "percorso strano '%s' bloccato"
 
-#: connect.c:1304
+#: connect.c:1311
 msgid "unable to fork"
 msgstr "impossibile eseguire fork"
 
-#: connected.c:68 builtin/fsck.c:221 builtin/prune.c:146
+#: connected.c:98 builtin/fsck.c:208 builtin/prune.c:43
 msgid "Checking connectivity"
-msgstr "Controllo connettività in corso"
+msgstr "Controllo connessione in corso"
 
-#: connected.c:80
+#: connected.c:110
 msgid "Could not run 'git rev-list'"
-msgstr "Non è stato possibile eseguire 'git-rev-list'"
+msgstr "Impossibile eseguire 'git-rev-list'"
 
-#: connected.c:100
+#: connected.c:130
 msgid "failed write to rev-list"
 msgstr "scrittura nella rev-list non riuscita"
 
-#: connected.c:107
+#: connected.c:137
 msgid "failed to close rev-list's stdin"
 msgstr "chiusura standard input della rev-list non riuscita"
 
-#: convert.c:193
+#: convert.c:194
 #, c-format
 msgid "illegal crlf_action %d"
 msgstr "crlf_action %d illecita"
 
-#: convert.c:206
+#: convert.c:207
 #, c-format
 msgid "CRLF would be replaced by LF in %s"
 msgstr "CRLF sarebbe sostituito da LF in %s"
 
-#: convert.c:208
+#: convert.c:209
 #, c-format
 msgid ""
 "CRLF will be replaced by LF in %s.\n"
@@ -2081,12 +2920,12 @@ msgstr ""
 "CRLF sarà sostituito da LF in %s.\n"
 "Il file avrà i suoi fine riga originari nella propria directory di lavoro"
 
-#: convert.c:216
+#: convert.c:217
 #, c-format
 msgid "LF would be replaced by CRLF in %s"
 msgstr "LF sarebbe sostituito da CRLF in %s"
 
-#: convert.c:218
+#: convert.c:219
 #, c-format
 msgid ""
 "LF will be replaced by CRLF in %s.\n"
@@ -2095,19 +2934,19 @@ msgstr ""
 "LF sarà sostituito da CRLF in %s.\n"
 "Il file avrà i suoi fine riga originari nella propria directory di lavoro"
 
-#: convert.c:279
+#: convert.c:284
 #, c-format
 msgid "BOM is prohibited in '%s' if encoded as %s"
 msgstr "Il BOM è vietato in '%s' se il file è codificato come %s"
 
-#: convert.c:286
+#: convert.c:291
 #, c-format
 msgid ""
-"The file '%s' contains a byte order mark (BOM). Please use UTF-%s as working-"
-"tree-encoding."
+"The file '%s' contains a byte order mark (BOM). Please use UTF-%.*s as "
+"working-tree-encoding."
 msgstr ""
-"Il file '%s' contiene un indicatore dell'ordine dei byte (BOM). Utilizzare "
-"UTF-%s come codifica dell'albero di lavoro."
+"Il file '%s' contiene un indicatore dell'ordine dei byte (BOM). Usare UTF-"
+"%.*s come codifica dell'albero di lavoro."
 
 #: convert.c:304
 #, c-format
@@ -2120,55 +2959,55 @@ msgid ""
 "The file '%s' is missing a byte order mark (BOM). Please use UTF-%sBE or UTF-"
 "%sLE (depending on the byte order) as working-tree-encoding."
 msgstr ""
-"Nel file '%s' manca un indicatore dell'ordine dei byte (BOM). Utilizzare UTF-"
-"%sBE o UTF-%sLE (a seconda dell'ordine dei byte) come codifica dell'albero "
-"di lavoro."
+"Nel file '%s' manca un indicatore dell'ordine dei byte (BOM). Usare UTF-%sBE "
+"o UTF-%sLE (a seconda dell'ordine dei byte) come codifica dell'albero di "
+"lavoro."
 
-#: convert.c:424 convert.c:495
+#: convert.c:419 convert.c:490
 #, c-format
 msgid "failed to encode '%s' from %s to %s"
 msgstr "conversione della codifica '%s' da %s a %s non riuscita"
 
-#: convert.c:467
+#: convert.c:462
 #, c-format
 msgid "encoding '%s' from %s to %s and back is not the same"
 msgstr ""
 "il risultato della codifica di '%s' da %s a %s e viceversa non è lo stesso"
 
-#: convert.c:673
+#: convert.c:668
 #, c-format
 msgid "cannot fork to run external filter '%s'"
 msgstr "impossibile eseguire fork per eseguire il filtro esterno '%s'"
 
-#: convert.c:693
+#: convert.c:688
 #, c-format
 msgid "cannot feed the input to external filter '%s'"
 msgstr "impossibile fornire l'input al filtro esterno '%s'"
 
-#: convert.c:700
+#: convert.c:695
 #, c-format
 msgid "external filter '%s' failed %d"
 msgstr "esecuzione del filtro esterno '%s' non riuscita: %d"
 
-#: convert.c:735 convert.c:738
+#: convert.c:730 convert.c:733
 #, c-format
 msgid "read from external filter '%s' failed"
 msgstr "lettura dal filtro esterno '%s' non riuscita"
 
-#: convert.c:741 convert.c:796
+#: convert.c:736 convert.c:791
 #, c-format
 msgid "external filter '%s' failed"
 msgstr "esecuzione del filtro esterno '%s' non riuscita"
 
-#: convert.c:844
+#: convert.c:839
 msgid "unexpected filter type"
 msgstr "tipo filtro inatteso"
 
-#: convert.c:855
+#: convert.c:850
 msgid "path name too long for external filter"
 msgstr "nome percorso troppo lungo per il filtro esterno"
 
-#: convert.c:929
+#: convert.c:924
 #, c-format
 msgid ""
 "external filter '%s' is not available anymore although not all paths have "
@@ -2177,224 +3016,743 @@ msgstr ""
 "il filtro esterno '%s' non è più disponibile nonostante non tutti i percorsi "
 "siano stati filtrati"
 
-#: convert.c:1228
+#: convert.c:1223
 msgid "true/false are no valid working-tree-encodings"
 msgstr "true/false non sono codifiche dell'albero di lavoro valide"
 
-#: convert.c:1398 convert.c:1432
+#: convert.c:1411 convert.c:1445
 #, c-format
 msgid "%s: clean filter '%s' failed"
 msgstr "%s: esecuzione del filtro clean '%s' non riuscita"
 
-#: convert.c:1476
+#: convert.c:1489
 #, c-format
 msgid "%s: smudge filter %s failed"
 msgstr "%s: esecuzione del filtro smudge '%s' non riuscita"
 
-#: date.c:137
+#: date.c:138
 msgid "in the future"
 msgstr "in futuro"
 
-#: date.c:143
+#: date.c:144
 #, c-format
 msgid "%<PRIuMAX> second ago"
 msgid_plural "%<PRIuMAX> seconds ago"
 msgstr[0] "%<PRIuMAX> secondo fa"
 msgstr[1] "%<PRIuMAX> secondi fa"
 
-#: date.c:150
+#: date.c:151
 #, c-format
 msgid "%<PRIuMAX> minute ago"
 msgid_plural "%<PRIuMAX> minutes ago"
 msgstr[0] "%<PRIuMAX> minuto fa"
 msgstr[1] "%<PRIuMAX> minuti fa"
 
-#: date.c:157
+#: date.c:158
 #, c-format
 msgid "%<PRIuMAX> hour ago"
 msgid_plural "%<PRIuMAX> hours ago"
 msgstr[0] "%<PRIuMAX> ora fa"
 msgstr[1] "%<PRIuMAX> ore fa"
 
-#: date.c:164
+#: date.c:165
 #, c-format
 msgid "%<PRIuMAX> day ago"
 msgid_plural "%<PRIuMAX> days ago"
 msgstr[0] "%<PRIuMAX> giorno fa"
 msgstr[1] "%<PRIuMAX> giorni fa"
 
-#: date.c:170
+#: date.c:171
 #, c-format
 msgid "%<PRIuMAX> week ago"
 msgid_plural "%<PRIuMAX> weeks ago"
 msgstr[0] "%<PRIuMAX> settimana fa"
 msgstr[1] "%<PRIuMAX> settimane fa"
 
-#: date.c:177
-#, c-format
-msgid "%<PRIuMAX> month ago"
-msgid_plural "%<PRIuMAX> months ago"
-msgstr[0] "%<PRIuMAX> mese fa"
-msgstr[1] "%<PRIuMAX> mesi fa"
+#: date.c:178
+#, c-format
+msgid "%<PRIuMAX> month ago"
+msgid_plural "%<PRIuMAX> months ago"
+msgstr[0] "%<PRIuMAX> mese fa"
+msgstr[1] "%<PRIuMAX> mesi fa"
+
+#: date.c:189
+#, c-format
+msgid "%<PRIuMAX> year"
+msgid_plural "%<PRIuMAX> years"
+msgstr[0] "%<PRIuMAX> anno"
+msgstr[1] "%<PRIuMAX> anni"
+
+#. TRANSLATORS: "%s" is "<n> years"
+#: date.c:192
+#, c-format
+msgid "%s, %<PRIuMAX> month ago"
+msgid_plural "%s, %<PRIuMAX> months ago"
+msgstr[0] "%s, %<PRIuMAX> mese fa"
+msgstr[1] "%s, %<PRIuMAX> mesi fa"
+
+#: date.c:197 date.c:202
+#, c-format
+msgid "%<PRIuMAX> year ago"
+msgid_plural "%<PRIuMAX> years ago"
+msgstr[0] "%<PRIuMAX> anno fa"
+msgstr[1] "%<PRIuMAX> anni fa"
+
+#: delta-islands.c:272
+msgid "Propagating island marks"
+msgstr "Propagazione contrassegni isole in corso"
+
+#: delta-islands.c:290
+#, c-format
+msgid "bad tree object %s"
+msgstr "oggetto albero %s non valido"
+
+#: delta-islands.c:334
+#, c-format
+msgid "failed to load island regex for '%s': %s"
+msgstr ""
+"caricamento dell'espressione regolare dell'isola per '%s' non riuscito: %s"
+
+#: delta-islands.c:390
+#, c-format
+msgid "island regex from config has too many capture groups (max=%d)"
+msgstr ""
+"l'espressione regolare dell'isola tratta dalla configurazione ha troppi "
+"gruppi cattura (massimo=%d)"
+
+#: delta-islands.c:467
+#, c-format
+msgid "Marked %d islands, done.\n"
+msgstr "Contrassegnate %d isole, fatto.\n"
+
+#: diffcore-order.c:24
+#, c-format
+msgid "failed to read orderfile '%s'"
+msgstr "lettura dell'orderfile '%s' non riuscita"
+
+#: diffcore-rename.c:543
+msgid "Performing inexact rename detection"
+msgstr "Rilevamento ridenominazione non esatta in corso"
+
+#: diff-no-index.c:238
+msgid "git diff --no-index [<options>] <path> <path>"
+msgstr "git diff --no-index [<opzioni>] <percorso> <percorso>"
+
+#: diff-no-index.c:263
+msgid ""
+"Not a git repository. Use --no-index to compare two paths outside a working "
+"tree"
+msgstr ""
+"Non è un repository Git. Usa --no-index per confrontare due percorsi al di "
+"fuori di un albero di lavoro"
+
+#: diff.c:155
+#, c-format
+msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
+msgstr ""
+"  Analisi della percentuale di cutoff statistiche directory '%s' non "
+"riuscita\n"
+
+#: diff.c:160
+#, c-format
+msgid "  Unknown dirstat parameter '%s'\n"
+msgstr "  Parametro statistiche directory '%s' sconosciuto\n"
+
+#: diff.c:296
+msgid ""
+"color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
+"'dimmed-zebra', 'plain'"
+msgstr ""
+"l'impostazione colore per file spostati deve essere 'no', 'default', "
+"'blocks', 'zebra', 'dimmed-zebra', 'plain'"
+
+#: diff.c:324
+#, c-format
+msgid ""
+"unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
+"'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-change'"
+msgstr ""
+"modalità color-moved-ws '%s' sconosciuta, i valori possibili sono 'ignore-"
+"space-change', 'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-"
+"change'"
+
+#: diff.c:332
+msgid ""
+"color-moved-ws: allow-indentation-change cannot be combined with other "
+"whitespace modes"
+msgstr ""
+"color-moved-ws: allow-indentation-change non può essere combinata con altre "
+"modalità spazi bianchi"
+
+#: diff.c:405
+#, c-format
+msgid "Unknown value for 'diff.submodule' config variable: '%s'"
+msgstr ""
+"Valore sconosciuto per la variabile di configurazione 'diff.submodule': '%s'"
+
+#: diff.c:465
+#, c-format
+msgid ""
+"Found errors in 'diff.dirstat' config variable:\n"
+"%s"
+msgstr ""
+"Trovati errori nella variabile di configurazione 'diff.dirstat':\n"
+"%s"
+
+#: diff.c:4202
+#, c-format
+msgid "external diff died, stopping at %s"
+msgstr "processo esterno diff morto, mi fermo a %s"
+
+#: diff.c:4547
+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:4550
+msgid "-G, -S and --find-object are mutually exclusive"
+msgstr "le opzioni -G, -S e --find-object sono mutuamente esclusive"
+
+#: diff.c:4628
+msgid "--follow requires exactly one pathspec"
+msgstr "--follow richiede esattamente uno specificatore percorso"
+
+#: diff.c:4676
+#, c-format
+msgid "invalid --stat value: %s"
+msgstr "valore non valido per --stat: %s"
+
+#: diff.c:4681 diff.c:4686 diff.c:4691 diff.c:4696 diff.c:5209
+#: parse-options.c:197 parse-options.c:201
+#, c-format
+msgid "%s expects a numerical value"
+msgstr "%s richiede un valore numerico"
+
+#: diff.c:4713
+#, c-format
+msgid ""
+"Failed to parse --dirstat/-X option parameter:\n"
+"%s"
+msgstr ""
+"Analisi del parametro dell'opzione --dirstat/-X non riuscita:\n"
+"%s"
+
+#: diff.c:4798
+#, c-format
+msgid "unknown change class '%c' in --diff-filter=%s"
+msgstr "classe modifica '%c' sconosciuta in --diff-filter=%s"
+
+#: diff.c:4822
+#, c-format
+msgid "unknown value after ws-error-highlight=%.*s"
+msgstr "valore sconosciuto dopo ws-error-highlight=%.*s"
+
+#: diff.c:4836
+#, c-format
+msgid "unable to resolve '%s'"
+msgstr "impossibile risolvere '%s'"
+
+#: diff.c:4886 diff.c:4892
+#, c-format
+msgid "%s expects <n>/<m> form"
+msgstr "%s richiede il formato <n>/<m>"
+
+#: diff.c:4904
+#, c-format
+msgid "%s expects a character, got '%s'"
+msgstr "%s richiede un carattere, ricevuto '%s'"
+
+#: diff.c:4925
+#, c-format
+msgid "bad --color-moved argument: %s"
+msgstr "argomento --color-moved errato: %s"
+
+#: diff.c:4944
+#, c-format
+msgid "invalid mode '%s' in --color-moved-ws"
+msgstr "modo non valido '%s' in --color-moved-ws"
+
+#: diff.c:4984
+msgid ""
+"option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
+"\"histogram\""
+msgstr ""
+"l'opzione diff-algorithm accetta i valori \"myers\", \"minimal\", \"patience"
+"\" e \"histogram\""
+
+#: diff.c:5020 diff.c:5040
+#, c-format
+msgid "invalid argument to %s"
+msgstr "argomento non valido per %s"
+
+#: diff.c:5178
+#, c-format
+msgid "failed to parse --submodule option parameter: '%s'"
+msgstr "analisi del parametro dell'opzione --submodule non riuscita: '%s'"
+
+#: diff.c:5234
+#, c-format
+msgid "bad --word-diff argument: %s"
+msgstr "argomento --word-diff errato: %s"
+
+#: diff.c:5257
+msgid "Diff output format options"
+msgstr "Opzioni formato output diff"
+
+#: diff.c:5259 diff.c:5265
+msgid "generate patch"
+msgstr "genera patch"
+
+#: diff.c:5262 builtin/log.c:173
+msgid "suppress diff output"
+msgstr "non visualizzare l'output del diff"
+
+#: diff.c:5267 diff.c:5381 diff.c:5388
+msgid "<n>"
+msgstr "<n>"
+
+#: diff.c:5268 diff.c:5271
+msgid "generate diffs with <n> lines context"
+msgstr "genera diff con <n> righe di contesto"
+
+#: diff.c:5273
+msgid "generate the diff in raw format"
+msgstr "genera il diff in formato grezzo"
+
+#: diff.c:5276
+msgid "synonym for '-p --raw'"
+msgstr "sinonimo di '-p --raw'"
+
+#: diff.c:5280
+msgid "synonym for '-p --stat'"
+msgstr "sinonimo di '-p --stat'"
+
+#: diff.c:5284
+msgid "machine friendly --stat"
+msgstr "--stat leggibile da una macchina"
+
+#: diff.c:5287
+msgid "output only the last line of --stat"
+msgstr "emetti in output solo l'ultima riga di --stat"
+
+#: diff.c:5289 diff.c:5297
+msgid "<param1,param2>..."
+msgstr "<parametro1,parametro2>..."
+
+#: diff.c:5290
+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:5294
+msgid "synonym for --dirstat=cumulative"
+msgstr "sinonimo di --dirstat=cumulative"
+
+#: diff.c:5298
+msgid "synonym for --dirstat=files,param1,param2..."
+msgstr "sinonimo di --dirstat=files,parametro1,parametro2..."
+
+#: diff.c:5302
+msgid "warn if changes introduce conflict markers or whitespace errors"
+msgstr ""
+"avvisa se le modifiche introducono marcatori conflitto o errori spazi bianchi"
+
+#: diff.c:5305
+msgid "condensed summary such as creations, renames and mode changes"
+msgstr ""
+"riassunto conciso (ad es. elementi creati, ridenominati e modifiche modi)"
+
+#: diff.c:5308
+msgid "show only names of changed files"
+msgstr "visualizza solo i nomi dei file modificati"
+
+#: diff.c:5311
+msgid "show only names and status of changed files"
+msgstr "visualizza solo i nomi e lo stato dei file modificati"
+
+#: diff.c:5313
+msgid "<width>[,<name-width>[,<count>]]"
+msgstr "<ampiezza>[,<ampiezza nome>[,<numero>]]"
+
+#: diff.c:5314
+msgid "generate diffstat"
+msgstr "genera diffstat"
+
+#: diff.c:5316 diff.c:5319 diff.c:5322
+msgid "<width>"
+msgstr "<ampiezza>"
+
+#: diff.c:5317
+msgid "generate diffstat with a given width"
+msgstr "genera il diffstat con un'ampiezza specificata"
+
+#: diff.c:5320
+msgid "generate diffstat with a given name width"
+msgstr "genera il diffstat con un'ampiezza nomi specificata"
+
+#: diff.c:5323
+msgid "generate diffstat with a given graph width"
+msgstr "genera il diffstat con un'ampiezza grafo specificata"
+
+#: diff.c:5325
+msgid "<count>"
+msgstr "<numero>"
+
+#: diff.c:5326
+msgid "generate diffstat with limited lines"
+msgstr "genera il diffstat con righe limitate"
+
+#: diff.c:5329
+msgid "generate compact summary in diffstat"
+msgstr "genera riassunto conciso nel diffstat"
+
+#: diff.c:5332
+msgid "output a binary diff that can be applied"
+msgstr "stampa in output un diff binario che può essere applicato"
+
+#: diff.c:5335
+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:5337
+msgid "show colored diff"
+msgstr "visualizza diff colorato"
+
+#: diff.c:5338
+msgid "<kind>"
+msgstr "<tipo>"
+
+#: diff.c:5339
+msgid ""
+"highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
+"diff"
+msgstr ""
+"evidenzia gli errori di spazi bianchi nelle righe 'contesto', 'vecchie' o "
+"'nuove' nel diff"
+
+#: diff.c:5342
+msgid ""
+"do not munge pathnames and use NULs as output field terminators in --raw or "
+"--numstat"
+msgstr ""
+"non rimuovere i nomi percorso e usare caratteri NUL come terminatori campo "
+"in --raw o --numstat"
+
+#: diff.c:5345 diff.c:5348 diff.c:5351 diff.c:5457
+msgid "<prefix>"
+msgstr "<prefisso>"
+
+#: diff.c:5346
+msgid "show the given source prefix instead of \"a/\""
+msgstr "visualizza il prefisso sorgente specificato invece di \"a/\""
+
+#: diff.c:5349
+msgid "show the given destination prefix instead of \"b/\""
+msgstr "visualizza il prefisso destinazione specificato invece di \"b/\""
+
+#: diff.c:5352
+msgid "prepend an additional prefix to every line of output"
+msgstr "anteponi un prefisso aggiuntivo ad ogni riga dell'output"
+
+#: diff.c:5355
+msgid "do not show any source or destination prefix"
+msgstr "non visualizzare alcun prefisso sorgente o destinazione"
+
+#: diff.c:5358
+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:5362 diff.c:5367 diff.c:5372
+msgid "<char>"
+msgstr "<carattere>"
+
+#: diff.c:5363
+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:5368
+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:5373
+msgid "specify the character to indicate a context instead of ' '"
+msgstr "specifica il carattere che indica un contesto al posto di ' '"
+
+#: diff.c:5376
+msgid "Diff rename options"
+msgstr "Opzioni rinominazione diff"
+
+#: diff.c:5377
+msgid "<n>[/<m>]"
+msgstr "<n>[/<m>]"
+
+#: diff.c:5378
+msgid "break complete rewrite changes into pairs of delete and create"
+msgstr ""
+"spezza modifiche di riscrittura completa in coppie eliminazione/creazione"
+
+#: diff.c:5382
+msgid "detect renames"
+msgstr "rileva le ridenominazioni"
+
+#: diff.c:5386
+msgid "omit the preimage for deletes"
+msgstr "ometti la preimmagine per le eliminazioni"
+
+#: diff.c:5389
+msgid "detect copies"
+msgstr "rileva le copie"
+
+#: diff.c:5393
+msgid "use unmodified files as source to find copies"
+msgstr "usa file non modificati come sorgente per trovare copie"
+
+#: diff.c:5395
+msgid "disable rename detection"
+msgstr "disabilita rilevamento ridenominazione"
+
+#: diff.c:5398
+msgid "use empty blobs as rename source"
+msgstr "usa blob vuoti come sorgente ridenominazione"
+
+#: diff.c:5400
+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:5403
+msgid ""
+"prevent rename/copy detection if the number of rename/copy targets exceeds "
+"given limit"
+msgstr ""
+"impedisci il rilevamento ridenominazione/copia se il numero delle "
+"destinazioni ridenominazione/copia eccede il limite specificato"
+
+#: diff.c:5405
+msgid "Diff algorithm options"
+msgstr "Opzioni algoritmo diff"
 
-#: date.c:188
-#, c-format
-msgid "%<PRIuMAX> year"
-msgid_plural "%<PRIuMAX> years"
-msgstr[0] "%<PRIuMAX> anno"
-msgstr[1] "%<PRIuMAX> anni"
+#: diff.c:5407
+msgid "produce the smallest possible diff"
+msgstr "produci il diff più piccolo possibile"
 
-#. TRANSLATORS: "%s" is "<n> years"
-#: date.c:191
-#, c-format
-msgid "%s, %<PRIuMAX> month ago"
-msgid_plural "%s, %<PRIuMAX> months ago"
-msgstr[0] "%s, %<PRIuMAX> mese fa"
-msgstr[1] "%s, %<PRIuMAX> mesi fa"
+#: diff.c:5410
+msgid "ignore whitespace when comparing lines"
+msgstr "ignora gli spazi bianchi durante il confronto delle righe"
 
-#: date.c:196 date.c:201
-#, c-format
-msgid "%<PRIuMAX> year ago"
-msgid_plural "%<PRIuMAX> years ago"
-msgstr[0] "%<PRIuMAX> anno fa"
-msgstr[1] "%<PRIuMAX> anni fa"
+#: diff.c:5413
+msgid "ignore changes in amount of whitespace"
+msgstr "ignora le modifiche al numero degli spazi bianchi"
 
-#: delta-islands.c:272
-msgid "Propagating island marks"
-msgstr "Propagazione contrassegni isole in corso"
+#: diff.c:5416
+msgid "ignore changes in whitespace at EOL"
+msgstr "ignora modifiche agli spazi bianchi a fine riga"
 
-#: delta-islands.c:290
-#, c-format
-msgid "bad tree object %s"
-msgstr "oggetto albero %s non valido"
+#: diff.c:5419
+msgid "ignore carrier-return at the end of line"
+msgstr "ignora carattere ritorno a capo a fine riga"
 
-#: delta-islands.c:334
-#, c-format
-msgid "failed to load island regex for '%s': %s"
-msgstr ""
-"caricamento dell'espressione regolare dell'isola per '%s' non riuscito: %s"
+#: diff.c:5422
+msgid "ignore changes whose lines are all blank"
+msgstr "ignora modifiche che riguardano solo righe vuote"
 
-#: delta-islands.c:390
-#, c-format
-msgid "island regex from config has too many capture groups (max=%d)"
+#: diff.c:5425
+msgid "heuristic to shift diff hunk boundaries for easy reading"
 msgstr ""
-"l'espressione regolare dell'isola tratta dalla configurazione ha troppi "
-"gruppi cattura (massimo=%d)"
+"euristica per spostare i limiti degli hunk nel diff per una lettura agevole"
 
-#: delta-islands.c:466
-#, c-format
-msgid "Marked %d islands, done.\n"
-msgstr "Contrassegnate %d isole, fatto.\n"
+#: diff.c:5428
+msgid "generate diff using the \"patience diff\" algorithm"
+msgstr "genera il diff usando l'algoritmo \"patience diff\""
 
-#: diffcore-order.c:24
-#, c-format
-msgid "failed to read orderfile '%s'"
-msgstr "lettura dell'orderfile '%s' non riuscita"
+#: diff.c:5432
+msgid "generate diff using the \"histogram diff\" algorithm"
+msgstr "genera il diff usando l'algoritmo \"histogram diff\""
 
-#: diffcore-rename.c:544
-msgid "Performing inexact rename detection"
-msgstr "Rilevamento ridenominazione non esatta in corso"
+#: diff.c:5434
+msgid "<algorithm>"
+msgstr "<algoritmo>"
 
-#: diff.c:108
-#, c-format
-msgid "option '%s' requires a value"
-msgstr "l'opzione '%s' richiede un valore"
+#: diff.c:5435
+msgid "choose a diff algorithm"
+msgstr "seleziona un algoritmo diff"
 
-#: diff.c:158
-#, c-format
-msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
+#: diff.c:5437
+msgid "<text>"
+msgstr "<testo>"
+
+#: diff.c:5438
+msgid "generate diff using the \"anchored diff\" algorithm"
+msgstr "genera il diff usando l'algoritmo \"anchored diff\""
+
+#: diff.c:5440 diff.c:5449 diff.c:5452
+msgid "<mode>"
+msgstr "<modalità>"
+
+#: diff.c:5441
+msgid "show word diff, using <mode> to delimit changed words"
 msgstr ""
-"  Analisi della percentuale di cutoff statistiche directory '%s' non "
-"riuscita\n"
+"visualizza il diff parola per parola usando <modalità> per delimitare le "
+"parole modificate"
 
-#: diff.c:163
-#, c-format
-msgid "  Unknown dirstat parameter '%s'\n"
-msgstr "  Parametro statistiche directory '%s' sconosciuto\n"
+#: diff.c:5443 diff.c:5446 diff.c:5491
+msgid "<regex>"
+msgstr "<espressione regolare>"
 
-#: diff.c:291
-msgid ""
-"color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
-"'dimmed-zebra', 'plain'"
+#: diff.c:5444
+msgid "use <regex> to decide what a word is"
+msgstr "usa <espressione regolare> per decidere cosa costituisce una parola"
+
+#: diff.c:5447
+msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
 msgstr ""
-"l'impostazione colore per file spostati deve essere 'no', 'default', "
-"'blocks', 'zebra', 'dimmed-zebra', 'plain'"
+"equivalente di --word-diff=color --word-diff-regex=<espressione regolare>"
 
-#: diff.c:319
-#, c-format
-msgid ""
-"unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
-"'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-change'"
+#: diff.c:5450
+msgid "moved lines of code are colored differently"
+msgstr "le righe di codice spostate sono colorate in modo diverso"
+
+#: diff.c:5453
+msgid "how white spaces are ignored in --color-moved"
+msgstr "modo in cui sono ignorati gli spazi bianchi in --color-moved"
+
+#: diff.c:5456
+msgid "Other diff options"
+msgstr "Altre opzioni diff"
+
+#: diff.c:5458
+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:327
-#, fuzzy
-msgid ""
-"color-moved-ws: allow-indentation-change cannot be combined with other "
-"whitespace modes"
+#: diff.c:5462
+msgid "treat all files as text"
+msgstr "tratta tutti i file come se fossero di testo"
+
+#: diff.c:5464
+msgid "swap two inputs, reverse the diff"
+msgstr "scambia i due input, genera un diff al contrario"
+
+#: diff.c:5466
+msgid "exit with 1 if there were differences, 0 otherwise"
+msgstr "esci con codice 1 se ci sono differenze, con 0 altrimenti"
+
+#: diff.c:5468
+msgid "disable all output of the program"
+msgstr "disabilita l'intero output del programma"
+
+#: diff.c:5470
+msgid "allow an external diff helper to be executed"
+msgstr "consenti l'esecuzione di un helper diff esterno"
+
+#: diff.c:5472
+msgid "run external text conversion filters when comparing binary files"
 msgstr ""
-"color-moved-ws: allow-indentation-change non può essere combinata con altre "
-"modalità spazi bianchi"
+"esegui filtri di conversione in testo esterni quando si confrontano file "
+"binari"
 
-#: diff.c:400
-#, c-format
-msgid "Unknown value for 'diff.submodule' config variable: '%s'"
+#: diff.c:5474
+msgid "<when>"
+msgstr "<quando>"
+
+#: diff.c:5475
+msgid "ignore changes to submodules in the diff generation"
+msgstr "ignora le modifiche ai sottomoduli durante la generazione del diff"
+
+#: diff.c:5478
+msgid "<format>"
+msgstr "<formato>"
+
+#: diff.c:5479
+msgid "specify how differences in submodules are shown"
+msgstr "specifica come verranno visualizzate le differenze nei sottomoduli"
+
+#: diff.c:5483
+msgid "hide 'git add -N' entries from the index"
+msgstr "nascondi le voci 'git add -N' nell'indice"
+
+#: diff.c:5486
+msgid "treat 'git add -N' entries as real in the index"
+msgstr "tratta le voci 'git add -N' come reali nell'indice"
+
+#: diff.c:5488
+msgid "<string>"
+msgstr "<stringa>"
+
+#: diff.c:5489
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"string"
 msgstr ""
-"Valore sconosciuto per la variabile di configurazione 'diff.submodule': '%s'"
+"cerca differenze che modificano il numero di occorrenze della stringa "
+"specificata"
 
-#: diff.c:460
-#, c-format
+#: diff.c:5492
 msgid ""
-"Found errors in 'diff.dirstat' config variable:\n"
-"%s"
+"look for differences that change the number of occurrences of the specified "
+"regex"
 msgstr ""
-"Trovati errori nella variabile di configurazione 'diff.dirstat':\n"
-"%s"
+"cerca differenze che modificano il numero di occorrenze dell'espressione "
+"regolare specificata"
 
-#: diff.c:4211
-#, c-format
-msgid "external diff died, stopping at %s"
-msgstr "processo esterno diff morto, mi fermo a %s"
+#: diff.c:5495
+msgid "show all changes in the changeset with -S or -G"
+msgstr "visualizza tutte le modifiche nel changeset con -S o -G"
 
-#: diff.c:4553
-msgid "--name-only, --name-status, --check and -s are mutually exclusive"
+#: diff.c:5498
+msgid "treat <string> in -S as extended POSIX regular expression"
 msgstr ""
-"le opzioni --name-only, --name-status, --check e -s sono mutuamente esclusive"
+"tratta la <stringa> nell'opzione -S come un'espressione regolare POSIX estesa"
 
-#: diff.c:4556
-msgid "-G, -S and --find-object are mutually exclusive"
-msgstr "le opzioni -G, -S e --find-object sono mutuamente esclusive"
+#: diff.c:5501
+msgid "control the order in which files appear in the output"
+msgstr "controlla l'ordine con cui i file appariranno nell'output"
 
-#: diff.c:4634
-msgid "--follow requires exactly one pathspec"
-msgstr "--follow richiede esattamente uno specificatore percorso"
+#: diff.c:5502
+msgid "<object-id>"
+msgstr "<ID oggetto>"
 
-#: diff.c:4800
-#, c-format
+#: diff.c:5503
 msgid ""
-"Failed to parse --dirstat/-X option parameter:\n"
-"%s"
+"look for differences that change the number of occurrences of the specified "
+"object"
 msgstr ""
-"Analisi del parametro dell'opzione --dirstat/-X non riuscita:\n"
-"%s"
+"cerca differenze che modificano il numero di occorrenze dell'oggetto "
+"specificato"
 
-#: diff.c:4814
-#, c-format
-msgid "Failed to parse --submodule option parameter: '%s'"
-msgstr "Analisi del parametro dell'opzione --submodule non riuscita: '%s'"
+#: diff.c:5505
+msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
+msgstr "[(A|C|D|M|R|T|U|X|B)...[*]]"
+
+#: diff.c:5506
+msgid "select files by diff type"
+msgstr "seleziona file in base al tipo diff"
+
+#: diff.c:5508
+msgid "<file>"
+msgstr "<file>"
 
-#: diff.c:5900
+#: diff.c:5509
+msgid "Output to a specific file"
+msgstr "Salva l'output in un file specifico"
+
+#: diff.c:6164
 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:5903
+#: diff.c:6167
 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:5906
+#: diff.c:6170
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -2402,41 +3760,62 @@ msgstr ""
 "potresti voler impostare la variabile %s ad almeno %d e riprovare ad "
 "eseguire il comando."
 
-#: dir.c:538
+#: dir.c:555
 #, c-format
 msgid "pathspec '%s' did not match any file(s) known to git"
 msgstr ""
 "lo specificatore percorso '%s' non corrisponde ad alcun file noto a git"
 
-#: dir.c:927
+#: dir.c:695 dir.c:724 dir.c:737
+#, c-format
+msgid "unrecognized pattern: '%s'"
+msgstr "pattern non riconosciuto: '%s'"
+
+#: dir.c:754 dir.c:768
+#, c-format
+msgid "unrecognized negative pattern: '%s'"
+msgstr "pattern negativo non riconosciuto: '%s'"
+
+#: dir.c:786
+#, c-format
+msgid "your sparse-checkout file may have issues: pattern '%s' is repeated"
+msgstr ""
+"il file sparse-checkout potrebbe avere dei problemi: il pattern '%s' è "
+"ripetuto"
+
+#: dir.c:796
+msgid "disabling cone pattern matching"
+msgstr "disabilito il pattern matching di tipo cone"
+
+#: dir.c:1173
 #, c-format
 msgid "cannot use %s as an exclude file"
 msgstr "impossibile usare %s come file di esclusione"
 
-#: dir.c:1842
+#: dir.c:2144
 #, c-format
 msgid "could not open directory '%s'"
 msgstr "impossibile aprire la directory '%s'"
 
-#: dir.c:2084
+#: dir.c:2479
 msgid "failed to get kernel name and information"
 msgstr "impossibile ottenere il nome e le informazioni sul kernel"
 
-#: dir.c:2208
+#: dir.c:2603
 msgid "untracked cache is disabled on this system or location"
 msgstr "la cache non tracciata è disabilitata su questo sistema o percorso"
 
-#: dir.c:3009
+#: dir.c:3407
 #, c-format
 msgid "index file corrupt in repo %s"
-msgstr "index file corrotto nel repository %s"
+msgstr "file index corrotto nel repository %s"
 
-#: dir.c:3054 dir.c:3059
+#: dir.c:3452 dir.c:3457
 #, c-format
 msgid "could not create directories for %s"
 msgstr "impossibile creare le directory per %s"
 
-#: dir.c:3088
+#: dir.c:3486
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr "impossibile migrare la directory git da '%s' a '%s'"
@@ -2451,97 +3830,96 @@ msgstr ""
 msgid "Filtering content"
 msgstr "Filtraggio contenuto in corso"
 
-#: entry.c:465
+#: entry.c:476
 #, c-format
 msgid "could not stat file '%s'"
 msgstr "impossibile eseguire stat sul file '%s'"
 
-#: environment.c:150
+#: environment.c:149
 #, c-format
 msgid "bad git namespace path \"%s\""
 msgstr "percorso spazio dei nomi git \"%s\" non valido"
 
-#: environment.c:332
+#: environment.c:331
 #, c-format
 msgid "could not set GIT_DIR to '%s'"
 msgstr "impossibile impostare GIT_DIR a '%s'"
 
-#: exec-cmd.c:361
+#: exec-cmd.c:363
 #, c-format
 msgid "too many args to run %s"
 msgstr "troppi argomenti per eseguire %s"
 
-#: fetch-object.c:17
-msgid "Remote with no URL"
-msgstr "Remoto senza URL"
-
-#: fetch-pack.c:151
+#: fetch-pack.c:150
 msgid "git fetch-pack: expected shallow list"
 msgstr "git fetch-pack: attesa lista shallow"
 
-#: fetch-pack.c:154
-#, fuzzy
+#: fetch-pack.c:153
 msgid "git fetch-pack: expected a flush packet after shallow list"
-msgstr "git fetch-pack: attesa lista shallow"
+msgstr "git fetch-pack: atteso pacchetto flush dopo lista shallow"
 
-#: fetch-pack.c:165
+#: fetch-pack.c:164
 msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
 msgstr "git fetch-pack: attesi ACK/NAK, ricevuto pacchetto flush"
 
-#: fetch-pack.c:185
+#: fetch-pack.c:184
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr "git fetch-pack: attesi ACK/NAK, ricevuto '%s'"
 
-#: fetch-pack.c:256
+#: fetch-pack.c:195
+msgid "unable to write to remote"
+msgstr "impossibile scrivere sul remoto"
+
+#: fetch-pack.c:257
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc richiede multi_ack_detailed"
 
-#: fetch-pack.c:358 fetch-pack.c:1264
+#: fetch-pack.c:356 fetch-pack.c:1340
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "riga shallow non valida: '%s'"
 
-#: fetch-pack.c:364 fetch-pack.c:1271
+#: fetch-pack.c:362 fetch-pack.c:1346
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "riga unshallow non valida: '%s'"
 
-#: fetch-pack.c:366 fetch-pack.c:1273
+#: fetch-pack.c:364 fetch-pack.c:1348
 #, c-format
 msgid "object not found: %s"
 msgstr "oggetto non trovato: %s"
 
-#: fetch-pack.c:369 fetch-pack.c:1276
+#: fetch-pack.c:367 fetch-pack.c:1351
 #, c-format
 msgid "error in object: %s"
 msgstr "errore nell'oggetto: %s"
 
-#: fetch-pack.c:371 fetch-pack.c:1278
+#: fetch-pack.c:369 fetch-pack.c:1353
 #, c-format
 msgid "no shallow found: %s"
 msgstr "nessuno shallow trovato: %s"
 
-#: fetch-pack.c:374 fetch-pack.c:1282
+#: fetch-pack.c:372 fetch-pack.c:1357
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "attesi shallow/unshallow, ricevuto %s"
 
-#: fetch-pack.c:415
+#: fetch-pack.c:414
 #, c-format
 msgid "got %s %d %s"
 msgstr "ricevuto %s %d %s"
 
-#: fetch-pack.c:432
+#: fetch-pack.c:431
 #, c-format
 msgid "invalid commit %s"
 msgstr "commit non valido: %s"
 
-#: fetch-pack.c:463
+#: fetch-pack.c:462
 msgid "giving up"
 msgstr "smetto di provare"
 
-#: fetch-pack.c:475 progress.c:229
+#: fetch-pack.c:475 progress.c:323
 msgid "done"
 msgstr "fatto"
 
@@ -2555,201 +3933,189 @@ msgstr "ricevuto %s (%d) %s"
 msgid "Marking %s as complete"
 msgstr "Contrassegno %s come completo"
 
-#: fetch-pack.c:740
+#: fetch-pack.c:754
 #, c-format
 msgid "already have %s (%s)"
 msgstr "ho già %s (%s)"
 
-#: fetch-pack.c:779
+#: fetch-pack.c:818
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr ""
 "fetch-pack: impossibile eseguire il fork del demultiplexer della banda "
 "laterlae"
 
-#: fetch-pack.c:787
+#: fetch-pack.c:826
 msgid "protocol error: bad pack header"
 msgstr "errore protocollo: intestazione pack non valida"
 
-#: fetch-pack.c:855
+#: fetch-pack.c:900
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack: impossibile eseguire il fork di %s"
 
-#: fetch-pack.c:871
+#: fetch-pack.c:916
 #, c-format
 msgid "%s failed"
 msgstr "%s non riuscito"
 
-#: fetch-pack.c:873
+#: fetch-pack.c:918
 msgid "error in sideband demultiplexer"
 msgstr "errore nel demultiplexer della banda laterale"
 
-#: fetch-pack.c:902
-msgid "Server does not support shallow clients"
-msgstr "Il server non supporta client shallow"
-
-#: fetch-pack.c:906
-msgid "Server supports multi_ack_detailed"
-msgstr "Il server supporta multi_ack_detailes"
-
-#: fetch-pack.c:909
-msgid "Server supports no-done"
-msgstr "Il server supporta no-done"
-
-#: fetch-pack.c:915
-msgid "Server supports multi_ack"
-msgstr "Il server supporta multi_ack"
-
-#: fetch-pack.c:919
-msgid "Server supports side-band-64k"
-msgstr "Il server supporta side-band-64k"
-
-#: fetch-pack.c:923
-msgid "Server supports side-band"
-msgstr "Il server supporta side-band"
-
-#: fetch-pack.c:927
-msgid "Server supports allow-tip-sha1-in-want"
-msgstr "Il server supporta allow-tip-sha1-in-want"
-
-#: fetch-pack.c:931
-msgid "Server supports allow-reachable-sha1-in-want"
-msgstr "Il server supporta allow-reachable-sha1-in-want"
-
-#: fetch-pack.c:941
-msgid "Server supports ofs-delta"
-msgstr "Il server supporta ofs-delta"
-
-#: fetch-pack.c:947 fetch-pack.c:1140
-msgid "Server supports filter"
-msgstr "Il server supporta filter"
-
-#: fetch-pack.c:955
+#: fetch-pack.c:965
 #, c-format
 msgid "Server version is %.*s"
 msgstr "La versione del server è %.*s"
 
-#: fetch-pack.c:961
+#: fetch-pack.c:970 fetch-pack.c:976 fetch-pack.c:979 fetch-pack.c:985
+#: fetch-pack.c:989 fetch-pack.c:993 fetch-pack.c:997 fetch-pack.c:1001
+#: fetch-pack.c:1005 fetch-pack.c:1009 fetch-pack.c:1013 fetch-pack.c:1017
+#: fetch-pack.c:1023 fetch-pack.c:1029 fetch-pack.c:1034 fetch-pack.c:1039
+#, c-format
+msgid "Server supports %s"
+msgstr "Il server supporta %s"
+
+#: fetch-pack.c:972
+msgid "Server does not support shallow clients"
+msgstr "Il server non supporta client shallow"
+
+#: fetch-pack.c:1032
 msgid "Server does not support --shallow-since"
 msgstr "Il server non supporta --shallow-since"
 
-#: fetch-pack.c:965
+#: fetch-pack.c:1037
 msgid "Server does not support --shallow-exclude"
 msgstr "Il server non supporta --shallow-exclude"
 
-#: fetch-pack.c:967
+#: fetch-pack.c:1041
 msgid "Server does not support --deepen"
 msgstr "Il server non supporta --deepen"
 
-#: fetch-pack.c:984
+#: fetch-pack.c:1058
 msgid "no common commits"
 msgstr "nessun commit in comune"
 
-#: fetch-pack.c:996 fetch-pack.c:1419
+#: fetch-pack.c:1070 fetch-pack.c:1536
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack: recupero non riuscito."
 
-#: fetch-pack.c:1134
+#: fetch-pack.c:1209
 msgid "Server does not support shallow requests"
 msgstr "Il server non supporta le richieste shallow"
 
-#: fetch-pack.c:1184
+#: fetch-pack.c:1216
+msgid "Server supports filter"
+msgstr "Il server supporta filter"
+
+#: fetch-pack.c:1239
+msgid "unable to write request to remote"
+msgstr "impossibile scrivere la richiesta sul remoto"
+
+#: fetch-pack.c:1257
 #, c-format
 msgid "error reading section header '%s'"
 msgstr "errore durante la lettura dell'intestazione di sezione '%s'"
 
-#: fetch-pack.c:1190
+#: fetch-pack.c:1263
 #, c-format
 msgid "expected '%s', received '%s'"
 msgstr "atteso '%s', ricevuto '%s'"
 
-#: fetch-pack.c:1229
+#: fetch-pack.c:1303
 #, c-format
 msgid "unexpected acknowledgment line: '%s'"
 msgstr "riga di conferma inattesa: '%s'"
 
-#: fetch-pack.c:1234
+#: fetch-pack.c:1308
 #, c-format
 msgid "error processing acks: %d"
 msgstr "errore durante l'elaborazione degli ack: %d"
 
-#: fetch-pack.c:1244
+#: fetch-pack.c:1318
 msgid "expected packfile to be sent after 'ready'"
 msgstr "ci si attendeva che il packfile fosse inviato dopo 'ready'"
 
-#: fetch-pack.c:1246
+#: fetch-pack.c:1320
 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:1287
+#: fetch-pack.c:1362
 #, c-format
 msgid "error processing shallow info: %d"
 msgstr "errore durante l'elaborazione delle informazioni shallow: %d"
 
-#: fetch-pack.c:1308
+#: fetch-pack.c:1409
 #, c-format
 msgid "expected wanted-ref, got '%s'"
 msgstr "atteso wanted-ref, ricevuto '%s'"
 
-#: fetch-pack.c:1318
+#: fetch-pack.c:1414
 #, c-format
 msgid "unexpected wanted-ref: '%s'"
 msgstr "wanted-ref inatteso: '%s'"
 
-#: fetch-pack.c:1322
+#: fetch-pack.c:1419
 #, c-format
 msgid "error processing wanted refs: %d"
 msgstr "errore durante l'elaborazione dei riferimenti desiderati: %d"
 
-#: fetch-pack.c:1646
+#: fetch-pack.c:1762
 msgid "no matching remote head"
 msgstr "nessun head remoto corrispondente"
 
-#: fetch-pack.c:1664 builtin/clone.c:671
+#: fetch-pack.c:1785 builtin/clone.c:689
 msgid "remote did not send all necessary objects"
 msgstr "il remoto non ha inviato tutti gli oggetti necessari"
 
-#: fetch-pack.c:1690
+#: fetch-pack.c:1812
 #, c-format
 msgid "no such remote ref %s"
 msgstr "riferimento remoto non esistente: %s"
 
-#: fetch-pack.c:1693
+#: fetch-pack.c:1815
 #, 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:408
 msgid "gpg failed to sign the data"
 msgstr "gpg non è riuscito a firmare i dati"
 
-#: gpg-interface.c:344
+#: gpg-interface.c:434
 msgid "could not create temporary file"
 msgstr "impossibile creare il file temporaneo"
 
-#: gpg-interface.c:347
+#: gpg-interface.c:437
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr "scrittura della firma separata in '%s' non riuscita"
 
-#: graph.c:97
+#: graph.c:98
 #, c-format
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr "ignoro il colore non valido '%.*s' in log.graphColors"
 
-#: grep.c:2113
+#: grep.c:668
+msgid ""
+"given pattern contains NULL byte (via -f <file>). This is only supported "
+"with -P under PCRE v2"
+msgstr ""
+"il pattern fornito (con -f <file>) contiene un byte NULL. Ciò è supportato "
+"solo con -P usando PCRE v2"
+
+#: grep.c:2128
 #, 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:2145 setup.c:166 builtin/clone.c:411 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:2156
 #, c-format
 msgid "'%s': short read"
 msgstr "'%s': lettura troppo breve"
@@ -2799,7 +4165,7 @@ msgid "Low-level Commands / Interrogators"
 msgstr "Comandi / operazioni di interrogazione di basso livello"
 
 #: help.c:37
-msgid "Low-level Commands / Synching Repositories"
+msgid "Low-level Commands / Syncing Repositories"
 msgstr "Comandi di basso livello / Sincronizzazione repository"
 
 #: help.c:38
@@ -2819,29 +4185,29 @@ 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:90
+#: help.c:363 git.c:98
 #, c-format
 msgid "unsupported command listing type '%s'"
 msgstr "tipo elenco comandi non supportato: '%s'"
 
-#: help.c:410
+#: help.c:403
 msgid "The common Git guides are:"
 msgstr "Le guide Git comuni sono:"
 
-#: help.c:519
+#: help.c:512
 msgid "See 'git help <command>' to read about a specific subcommand"
 msgstr ""
 "Vedi 'git help <comando>' per saperne di più su un sottocomando specifico"
 
-#: help.c:524
+#: help.c:517
 msgid "External commands"
 msgstr "Comandi esterni"
 
-#: help.c:539
+#: help.c:532
 msgid "Command aliases"
 msgstr "Alias comandi"
 
-#: help.c:603
+#: help.c:596
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -2850,31 +4216,31 @@ msgstr ""
 "'%s' sembra essere un comando git, ma non è stato\n"
 "possibile eseguirlo. Forse git-%s è corrotto?"
 
-#: help.c:662
+#: help.c:655
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "Oh oh. Il tuo sistema non riporta alcun comando Git."
 
-#: help.c:684
+#: help.c:677
 #, c-format
 msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr "ATTENZIONE: hai chiamato un comando Git '%s' inesistente."
 
-#: help.c:689
+#: help.c:682
 #, c-format
 msgid "Continuing under the assumption that you meant '%s'."
 msgstr "Continuo assumendo che intendessi '%s'."
 
-#: help.c:694
+#: help.c:687
 #, c-format
 msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
 msgstr "Continuo fra %0.1f secondi assumendo che intendessi '%s'."
 
-#: help.c:702
+#: help.c:695
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr "git: '%s' non è un comando git. Vedi 'git --help'."
 
-#: help.c:706
+#: help.c:699
 msgid ""
 "\n"
 "The most similar command is"
@@ -2888,16 +4254,16 @@ msgstr[1] ""
 "\n"
 "I comandi maggiormente simili sono"
 
-#: help.c:721
+#: help.c:714
 msgid "git version [<options>]"
 msgstr "git version [<opzioni>]"
 
-#: help.c:789
+#: help.c:783
 #, c-format
 msgid "%s: %s - %s"
 msgstr "%s: %s - %s"
 
-#: help.c:793
+#: help.c:787
 msgid ""
 "\n"
 "Did you mean this?"
@@ -2911,7 +4277,7 @@ msgstr[1] ""
 "\n"
 "Intendevi uno di questi?"
 
-#: ident.c:345
+#: ident.c:349
 msgid ""
 "\n"
 "*** Please tell me who you are.\n"
@@ -2937,51 +4303,93 @@ msgstr ""
 "Ometti --global per impostare l'identità solo in questo repository.\n"
 "\n"
 
-#: ident.c:369
+#: ident.c:379
 msgid "no email was given and auto-detection is disabled"
-msgstr "nessun indirizzo email fornito e rilevamento automatico disabilitato"
+msgstr ""
+"nessun indirizzo e-mail specificato e rilevamento automatico disabilitato"
 
-#: ident.c:374
+#: ident.c:384
 #, c-format
 msgid "unable to auto-detect email address (got '%s')"
 msgstr ""
-"impossibile rilevare automaticamente l'indirizzo email (ho ricavato '%s')"
+"impossibile rilevare automaticamente l'indirizzo e-mail (ho ricavato '%s')"
 
-#: ident.c:384
+#: ident.c:401
 msgid "no name was given and auto-detection is disabled"
-msgstr "nessun nome fornito e rilevamento automatico disabilitato"
+msgstr "nessun nome specificato e rilevamento automatico disabilitato"
 
-#: ident.c:390
+#: ident.c:407
 #, c-format
 msgid "unable to auto-detect name (got '%s')"
 msgstr "impossibile rilevare automaticamente il nome (ho ricavato '%s')"
 
-#: ident.c:398
+#: ident.c:415
 #, c-format
 msgid "empty ident name (for <%s>) not allowed"
 msgstr "nome ident vuoto (per <%s>) non consentito"
 
-#: ident.c:404
+#: ident.c:421
 #, c-format
 msgid "name consists only of disallowed characters: %s"
 msgstr "il nome è composto solo da caratteri non consentiti: %s"
 
-#: ident.c:419 builtin/commit.c:608
+#: ident.c:436 builtin/commit.c:635
 #, c-format
 msgid "invalid date format: %s"
 msgstr "formato data non valido: %s"
 
-#: list-objects-filter-options.c:36
-msgid "multiple filter-specs cannot be combined"
-msgstr "non è possibile combinare più specificatori filtro"
+#: list-objects.c:127
+#, c-format
+msgid "entry '%s' in tree %s has tree mode, but is not a tree"
+msgstr "la voce '%s' nell'albero %s ha la modalità albero, ma non è un albero"
+
+#: list-objects.c:140
+#, c-format
+msgid "entry '%s' in tree %s has blob mode, but is not a blob"
+msgstr "la voce '%s' nell'albero %s ha la modalità blob, ma non è un blob"
+
+#: list-objects.c:375
+#, c-format
+msgid "unable to load root tree for commit %s"
+msgstr "impossibile caricare l'albero radice per il commit %s"
+
+#: list-objects-filter.c:492
+#, c-format
+msgid "unable to access sparse blob in '%s'"
+msgstr "impossibile accedere al blob sparse in '%s'"
+
+#: list-objects-filter.c:495
+#, c-format
+msgid "unable to parse sparse filter data in %s"
+msgstr "impossibile analizzare i dati filtro sparse in %s"
 
 #: list-objects-filter-options.c:58
 msgid "expected 'tree:<depth>'"
+msgstr "atteso 'tree:<profondità>'"
+
+#: list-objects-filter-options.c:73
+msgid "sparse:path filters support has been dropped"
+msgstr "il supporto per i filtri sparse:percorso è stato rimosso"
+
+#: list-objects-filter-options.c:86
+#, c-format
+msgid "invalid filter-spec '%s'"
+msgstr "specificatore filtro '%s' non valido"
+
+#: list-objects-filter-options.c:102
+#, c-format
+msgid "must escape char in sub-filter-spec: '%c'"
 msgstr ""
+"è necessario eseguire l'escape del carattere nello specificatore del "
+"sottofiltro: '%c'"
 
-#: list-objects-filter-options.c:152
-msgid "cannot change partial clone promisor remote"
-msgstr "impossibile modificare il remoto promettente del clone parziale"
+#: list-objects-filter-options.c:144
+msgid "expected something after combine:"
+msgstr "atteso qualcosa dopo la ricombinazione:"
+
+#: list-objects-filter-options.c:226
+msgid "multiple filter-specs cannot be combined"
+msgstr "non è possibile combinare più specificatori filtro"
 
 #: lockfile.c:151
 #, c-format
@@ -3012,118 +4420,115 @@ 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:1884 builtin/am.c:1918
-#: builtin/checkout.c:416 builtin/checkout.c:745 builtin/clone.c:771
+#: merge.c:107 rerere.c:720 builtin/am.c:1879 builtin/am.c:1913
+#: builtin/checkout.c:541 builtin/checkout.c:800 builtin/clone.c:810
+#: builtin/stash.c:265
 msgid "unable to write new index file"
 msgstr "impossibile scrivere il nuovo file index"
 
-#: merge-recursive.c:332
+#: merge-recursive.c:356
 msgid "(bad commit)\n"
 msgstr "(commit non valido)\n"
 
-#: merge-recursive.c:355
+#: merge-recursive.c:379
 #, c-format
 msgid "add_cacheinfo failed for path '%s'; merge aborting."
 msgstr "add_cacheinfo non riuscito per il percorso '%s'; interrompo il merge."
 
-#: merge-recursive.c:364
+#: merge-recursive.c:388
 #, c-format
 msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
 msgstr ""
 "aggiornamento add_cacheinfo non riuscito per il percorso '%s'; interrompo il "
 "merge."
 
-#: merge-recursive.c:447
-msgid "error building trees"
-msgstr "errore durante la costruzione degli alberi"
-
-#: merge-recursive.c:902
+#: merge-recursive.c:874
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "creazione del percorso '%s' non riuscita%s"
 
-#: merge-recursive.c:913
+#: merge-recursive.c:885
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr "Rimuovo %s per fare spazio alla sottodirectory\n"
 
-#: merge-recursive.c:927 merge-recursive.c:946
+#: merge-recursive.c:899 merge-recursive.c:918
 msgid ": perhaps a D/F conflict?"
 msgstr ": forse si tratta di un conflitto D/F?"
 
-#: merge-recursive.c:936
+#: merge-recursive.c:908
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "mi rifiuto di perdere un file non tracciato in '%s'"
 
-#: merge-recursive.c:978 builtin/cat-file.c:40
+#: merge-recursive.c:949 builtin/cat-file.c:41
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "impossibile leggere l'oggetto %s '%s'"
 
-#: merge-recursive.c:980
+#: merge-recursive.c:954
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "atteso blob per %s '%s'"
 
-#: merge-recursive.c:1004
+#: merge-recursive.c:979
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr "apertura di '%s' non riuscita: %s"
 
-#: merge-recursive.c:1015
+#: merge-recursive.c:990
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr "creazione del collegamento simbolico '%s' non riuscita: %s"
 
-#: merge-recursive.c:1020
+#: merge-recursive.c:995
 #, 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:1211
+#: merge-recursive.c:1191
 #, c-format
 msgid "Failed to merge submodule %s (not checked out)"
 msgstr "Merge del sottomodulo %s non riuscito (checkout non eseguito)"
 
-#: merge-recursive.c:1218
+#: merge-recursive.c:1198
 #, c-format
 msgid "Failed to merge submodule %s (commits not present)"
 msgstr "Merge del sottomodulo %s non riuscito (commit non presenti)"
 
-#: merge-recursive.c:1225
+#: merge-recursive.c:1205
 #, 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:1233 merge-recursive.c:1245
+#: merge-recursive.c:1213 merge-recursive.c:1225
 #, 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:1236 merge-recursive.c:1248
+#: merge-recursive.c:1216 merge-recursive.c:1228
 #, c-format
 msgid "Fast-forwarding submodule %s"
 msgstr "Eseguo il fast forward del sottomodulo %s"
 
-#: merge-recursive.c:1271
+#: merge-recursive.c:1251
 #, 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:1275
+#: merge-recursive.c:1255
 #, c-format
 msgid "Failed to merge submodule %s (not fast-forward)"
 msgstr "Merge del sottomodulo %s non riuscito (non fast forward)"
 
-#: merge-recursive.c:1276
+#: merge-recursive.c:1256
 msgid "Found a possible merge resolution for the submodule:\n"
 msgstr "Trovata possibile risoluzione merge per il sottomodulo:\n"
 
-#: merge-recursive.c:1279
+#: merge-recursive.c:1259
 #, c-format
 msgid ""
 "If this is correct simply add it to the index for example\n"
@@ -3140,32 +4545,32 @@ msgstr ""
 "\n"
 "per accettare questo suggerimento.\n"
 
-#: merge-recursive.c:1288
+#: merge-recursive.c:1268
 #, c-format
 msgid "Failed to merge submodule %s (multiple merges found)"
 msgstr "Merge del sottomodulo %s non riuscito (più merge trovati)"
 
-#: merge-recursive.c:1361
+#: merge-recursive.c:1341
 msgid "Failed to execute internal merge"
 msgstr "Esecuzione del merge interno non riuscita"
 
-#: merge-recursive.c:1366
+#: merge-recursive.c:1346
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Impossibile aggiungere %s al database"
 
-#: merge-recursive.c:1398
+#: merge-recursive.c:1378
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Merge automatico di %s in corso"
 
-#: merge-recursive.c:1419
+#: merge-recursive.c:1402
 #, 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:1486
+#: merge-recursive.c:1474
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -3174,7 +4579,7 @@ msgstr ""
 "CONFLITTO (%s/eliminazione): %s eliminato in %s e %s in %s. Versione %s di "
 "%s lasciata nell'albero."
 
-#: merge-recursive.c:1491
+#: merge-recursive.c:1479
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -3183,7 +4588,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:1498
+#: merge-recursive.c:1486
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -3192,7 +4597,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:1503
+#: merge-recursive.c:1491
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -3201,43 +4606,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:1537
+#: merge-recursive.c:1526
 msgid "rename"
 msgstr "ridenominazione"
 
-#: merge-recursive.c:1537
+#: merge-recursive.c:1526
 msgid "renamed"
 msgstr "rinominato"
 
-#: merge-recursive.c:1633 merge-recursive.c:2481 merge-recursive.c:3213
+#: merge-recursive.c:1577 merge-recursive.c:2472 merge-recursive.c:3117
 #, c-format
 msgid "Refusing to lose dirty file at %s"
 msgstr "Mi rifiuto di perdere un file sporco in %s"
 
-#: merge-recursive.c:1643
+#: merge-recursive.c:1587
 #, 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:1706
-#, fuzzy, c-format
+#: merge-recursive.c:1645
+#, 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:1734
+#: merge-recursive.c:1676
 #, 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:1739
+#: merge-recursive.c:1681
 #, 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:1759
+#: merge-recursive.c:1708
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -3246,18 +4651,18 @@ msgstr ""
 "CONFLITTO (ridenominazione/ridenominazione): file ridenominato \"%s\"->\"%s"
 "\" nel branch \"%s\", ridenominato \"%s\"->\"%s\" in \"%s\"%s"
 
-#: merge-recursive.c:1764
+#: merge-recursive.c:1713
 msgid " (left unresolved)"
 msgstr " (lasciato irrisolto)"
 
-#: merge-recursive.c:1868
+#: merge-recursive.c:1793
 #, 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:2064
+#: merge-recursive.c:2056
 #, c-format
 msgid ""
 "CONFLICT (directory rename split): Unclear where to place %s because "
@@ -3268,7 +4673,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:2096
+#: merge-recursive.c:2088
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
@@ -3278,7 +4683,7 @@ msgstr ""
 "%s è d'ostacolo alle seguenti ridenominazioni directory che spostano in tale "
 "posizione i seguenti percorsi: %s."
 
-#: merge-recursive.c:2106
+#: merge-recursive.c:2098
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
@@ -3288,7 +4693,7 @@ msgstr ""
 "un percorso in %s; delle ridenominazioni directory implicite hanno tentato "
 "di spostare in tale posizione i seguenti percorsi: %s"
 
-#: merge-recursive.c:2198
+#: merge-recursive.c:2190
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
@@ -3297,7 +4702,7 @@ msgstr ""
 "CONFLITTO (ridenominazione/ridenominazione): directory ridenominata %s->%s "
 "in %s. Directory ridenominata %s->%s in %s"
 
-#: merge-recursive.c:2443
+#: merge-recursive.c:2435
 #, c-format
 msgid ""
 "WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
@@ -3306,248 +4711,326 @@ msgstr ""
 "ATTENZIONE: evito di applicare la ridenominazione %s -> %s a %s perché %s "
 "stesso è stato ridenominato."
 
-#: merge-recursive.c:3022
+#: merge-recursive.c:2961
 #, c-format
 msgid "cannot read object %s"
 msgstr "impossibile leggere l'oggetto %s"
 
-#: merge-recursive.c:3025
+#: merge-recursive.c:2964
 #, c-format
 msgid "object %s is not a blob"
 msgstr "l'oggetto %s non è un blob"
 
-#: merge-recursive.c:3094
+#: merge-recursive.c:3028
 msgid "modify"
 msgstr "modifica"
 
-#: merge-recursive.c:3094
+#: merge-recursive.c:3028
 msgid "modified"
 msgstr "modificato"
 
-#: merge-recursive.c:3105
+#: merge-recursive.c:3040
 msgid "content"
 msgstr "contenuto"
 
-#: merge-recursive.c:3112
+#: merge-recursive.c:3044
 msgid "add/add"
 msgstr "aggiunta/aggiunta"
 
-#: merge-recursive.c:3160
+#: merge-recursive.c:3067
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "Omesso %s (elemento sottoposto a merge uguale a quello esistente)"
 
-#: merge-recursive.c:3182 git-submodule.sh:861
+#: merge-recursive.c:3089 git-submodule.sh:1003
 msgid "submodule"
 msgstr "sottomodulo"
 
-#: merge-recursive.c:3183
+#: merge-recursive.c:3090
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLITTO (%s): conflitto di merge in %s"
 
-#: merge-recursive.c:3216
+#: merge-recursive.c:3120
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Lo aggiungo come %s"
 
-#: merge-recursive.c:3319
+#: merge-recursive.c:3203
+#, c-format
+msgid ""
+"Path updated: %s added in %s inside a directory that was renamed in %s; "
+"moving it to %s."
+msgstr ""
+"Percorso aggiornato: %s aggiunto in %s in una directory ridenominata in %s; "
+"lo sposto in %s."
+
+#: merge-recursive.c:3206
+#, c-format
+msgid ""
+"CONFLICT (file location): %s added in %s inside a directory that was renamed "
+"in %s, suggesting it should perhaps be moved to %s."
+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:3210
+#, c-format
+msgid ""
+"Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
+"%s; moving it to %s."
+msgstr ""
+"Percorso aggiornato: %s ridenominato in %s in %s in una directory "
+"ridenominata in %s; lo sposto in %s."
+
+#: merge-recursive.c:3213
+#, c-format
+msgid ""
+"CONFLICT (file location): %s renamed to %s in %s, inside a directory that "
+"was renamed in %s, suggesting it should perhaps be moved to %s."
+msgstr ""
+"CONFLITTO (posizione file): %s ridenominato in %s in %s in una directory "
+"ridenominata in %s, il che suggerisce che forse dovrebbe essere spostato in "
+"%s."
+
+#: merge-recursive.c:3327
 #, c-format
 msgid "Removing %s"
 msgstr "Rimozione di %s"
 
-#: merge-recursive.c:3345
+#: merge-recursive.c:3350
 msgid "file/directory"
 msgstr "file/directory"
 
-#: merge-recursive.c:3351
+#: merge-recursive.c:3355
 msgid "directory/file"
 msgstr "directory/file"
 
-#: merge-recursive.c:3358
+#: merge-recursive.c:3362
 #, 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:3367
+#: merge-recursive.c:3371
 #, c-format
 msgid "Adding %s"
 msgstr "Aggiunta %s"
 
-#: merge-recursive.c:3376
-#, fuzzy, c-format
-msgid "CONFLICT (add/add): Merge conflict in %s"
-msgstr "CONFLITTO (%s): conflitto di merge in %s"
-
-#: merge-recursive.c:3417
+#: merge-recursive.c:3380
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by merge:\n"
-"  %s"
-msgstr ""
-"Le tue modifiche locali ai seguenti file sarebbero sovrascritte dal merge:\n"
-"  %s"
+msgid "CONFLICT (add/add): Merge conflict in %s"
+msgstr "CONFLITTO (aggiungi/aggiungi): conflitto di merge in %s"
 
-#: merge-recursive.c:3428
+#: merge-recursive.c:3424
 msgid "Already up to date!"
 msgstr "Già aggiornato!"
 
-#: merge-recursive.c:3437
+#: merge-recursive.c:3433
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "merge degli alberi %s e %s non riuscito"
 
-#: merge-recursive.c:3536
+#: merge-recursive.c:3537
 msgid "Merging:"
 msgstr "Merge in corso:"
 
-#: merge-recursive.c:3549
+#: merge-recursive.c:3550
 #, 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:3588
+#: merge-recursive.c:3600
 msgid "merge returned no commit"
 msgstr "il merge non ha restituito alcun commit"
 
-#: merge-recursive.c:3654
+#: merge-recursive.c:3659
+#, c-format
+msgid ""
+"Your local changes to the following files would be overwritten by merge:\n"
+"  %s"
+msgstr ""
+"Le tue modifiche locali ai seguenti file sarebbero sovrascritte dal merge:\n"
+"  %s"
+
+#: merge-recursive.c:3756
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Impossibile analizzare l'oggetto '%s'"
 
-#: merge-recursive.c:3670 builtin/merge.c:692 builtin/merge.c:850
+#: merge-recursive.c:3774 builtin/merge.c:697 builtin/merge.c:877
 msgid "Unable to write index."
-msgstr "Impossibile scrivere index."
+msgstr "Impossibile scrivere l'indice."
 
-#: midx.c:65
+#: midx.c:68
 #, c-format
 msgid "multi-pack-index file %s is too small"
 msgstr "il file multi-pack-index %s è troppo piccolo"
 
-#: midx.c:81
+#: midx.c:84
 #, 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:86
+#: midx.c:89
 #, c-format
 msgid "multi-pack-index version %d not recognized"
 msgstr "versione %d multi-pack-index non riconosciuta"
 
-#: midx.c:91
+#: midx.c:94
 #, c-format
 msgid "hash version %u does not match"
 msgstr "la versione dell'hash %u non corrisponde"
 
-#: midx.c:105
+#: midx.c:108
 msgid "invalid chunk offset (too large)"
 msgstr "offset blocco non valido (troppo grande)"
 
-#: midx.c:129
+#: midx.c:132
 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:142
+#: midx.c:145
 msgid "multi-pack-index missing required pack-name chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto pack-name"
 
-#: midx.c:144
+#: midx.c:147
 msgid "multi-pack-index missing required OID fanout chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto fanout OID"
 
-#: midx.c:146
+#: midx.c:149
 msgid "multi-pack-index missing required OID lookup chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto lookup OID"
 
-#: midx.c:148
+#: midx.c:151
 msgid "multi-pack-index missing required object offsets chunk"
 msgstr "dal multi-pack-index manca il blocco richiesto offset oggetti"
 
-#: midx.c:162
+#: midx.c:165
 #, 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:205
-#, fuzzy, c-format
+#: midx.c:210
+#, c-format
 msgid "bad pack-int-id: %u (%u total packs)"
-msgstr "pack-int-id non valido: %u (%u pack totali"
+msgstr "pack-int-id non valido: %u (%u pack totali)"
 
-#: midx.c:246
+#: midx.c:260
 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:271
+#: midx.c:288
 msgid "error preparing packfile from multi-pack-index"
 msgstr "errore durante la preparazione del packfile dal multi-pack-index"
 
-#: midx.c:407
+#: midx.c:472
 #, c-format
 msgid "failed to add packfile '%s'"
 msgstr "aggiunta del packfile '%s' non riuscita"
 
-#: midx.c:413
+#: midx.c:478
 #, c-format
 msgid "failed to open pack-index '%s'"
 msgstr "apertura del pack-index '%s' non riuscita"
 
-#: midx.c:507
+#: midx.c:538
 #, c-format
 msgid "failed to locate object %d in packfile"
 msgstr "ricerca dell'oggetto %d nel packfile non riuscita"
 
-#: midx.c:943
+#: midx.c:842
+msgid "Adding packfiles to multi-pack-index"
+msgstr "Aggiunta dei file pack al multi-pack-index in corso"
+
+#: midx.c:875
+#, c-format
+msgid "did not see pack-file %s to drop"
+msgstr "non ho visto il file pack %s da scartare"
+
+#: midx.c:973
+msgid "Writing chunks to multi-pack-index"
+msgstr "Scrittura dei chunk nel multi-pack-index in corso"
+
+#: midx.c:1052
 #, c-format
 msgid "failed to clear multi-pack-index at %s"
 msgstr "pulizia del multi-pack-index %s non riuscita"
 
-#: midx.c:981
+#: midx.c:1108
+msgid "Looking for referenced packfiles"
+msgstr "Ricerca di file pack referenziati in corso"
+
+#: midx.c:1123
 #, 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:992
+#: midx.c:1128
+msgid "Verifying OID order in multi-pack-index"
+msgstr "Verifica ordine OID nel multi-pack-index in corso"
+
+#: midx.c:1137
 #, 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:996
+#: midx.c:1157
+msgid "Sorting objects by packfile"
+msgstr "Ordinamento degli oggetti nel packfile in corso"
+
+#: midx.c:1164
 msgid "Verifying object offsets"
 msgstr "Verifica offset oggetti in corso"
 
-#: midx.c:1004
+#: midx.c:1180
 #, c-format
 msgid "failed to load pack entry for oid[%d] = %s"
 msgstr "caricamento voce pack per oid[%d] = %s non riuscito"
 
-#: midx.c:1010
+#: midx.c:1186
 #, c-format
 msgid "failed to load pack-index for packfile %s"
 msgstr "caricamento pack-index per il packfile %s non riuscito"
 
-#: midx.c:1019
+#: midx.c:1195
 #, 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:1220
+msgid "Counting referenced objects"
+msgstr "Conteggio degli oggetti referenziati in corso"
+
+#: midx.c:1230
+msgid "Finding and deleting unreferenced packfiles"
+msgstr "Ricerca ed eliminazione dei file pack non referenziati in corso"
+
+#: midx.c:1388
+msgid "could not start pack-objects"
+msgstr "impossibile avviare pack-objects"
+
+#: midx.c:1407
+msgid "could not finish pack-objects"
+msgstr "impossibile finire pack-objects"
+
+#: name-hash.c:537
 #, 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:559
 #, 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:565
 #, c-format
 msgid "unable to join lazy_name thread: %s"
 msgstr "impossibile bloccare il thread lazy_name: %s"
@@ -3594,112 +5077,113 @@ msgstr "Mi rifiuto di riscrivere le note in %s (al di fuori di refs/notes/)"
 msgid "Bad %s value: '%s'"
 msgstr "Valore di %s errato: '%s'"
 
-#: object.c:54
+#: object.c:53
 #, c-format
 msgid "invalid object type \"%s\""
 msgstr "tipo oggetto \"%s\" non valido"
 
-#: object.c:174
+#: object.c:173
 #, c-format
 msgid "object %s is a %s, not a %s"
 msgstr "l'oggetto %s è un %s, non un %s"
 
-#: object.c:234
+#: object.c:233
 #, c-format
 msgid "object %s has unknown type id %d"
 msgstr "l'oggetto %s ha l'ID tipo sconosciuto %d"
 
-#: object.c:247
+#: object.c:246
 #, c-format
 msgid "unable to parse object: %s"
 msgstr "impossibile analizzare l'oggetto: %s"
 
-#: object.c:267 object.c:278
-#, fuzzy, c-format
+#: object.c:266 object.c:278
+#, c-format
 msgid "hash mismatch %s"
-msgstr "l'hash SHA1 non corrisponde: %s"
+msgstr "hash non corrispondente: %s"
 
-#: packfile.c:607
+#: packfile.c:629
 msgid "offset before end of packfile (broken .idx?)"
 msgstr "offset collocato prima della fine del packfile (.idx corrotto?)"
 
-#: packfile.c:1870
+#: 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:1874
+#: packfile.c:1903
 #, c-format
 msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
 "offset collocato dopo la fine dell'indice pack per %s (indice troncato?)"
 
-#: parse-options.c:35
-#, fuzzy, c-format
+#: pack-bitmap.c:800 pack-bitmap.c:806 builtin/pack-objects.c:2134
+#, c-format
+msgid "unable to get size of %s"
+msgstr "impossibile recuperare le dimensioni di %s"
+
+#: parse-options.c:38
+#, c-format
 msgid "%s requires a value"
-msgstr "l'opzione '%s' richiede un valore"
+msgstr "%s richiede un valore"
 
-#: parse-options.c:69
-#, fuzzy, c-format
+#: parse-options.c:73
+#, c-format
 msgid "%s is incompatible with %s"
-msgstr "--long non è compatibile con --abbrev=0"
+msgstr "%s non è compatibile con %s"
 
-#: parse-options.c:74
-#, fuzzy, c-format
+#: parse-options.c:78
+#, c-format
 msgid "%s : incompatible with something else"
-msgstr "--dirty non è compatibile con le espressioni commit"
+msgstr "%s non è compatibile con qualcos'altro"
 
-#: parse-options.c:88 parse-options.c:92 parse-options.c:260
-#, fuzzy, c-format
+#: parse-options.c:92 parse-options.c:96 parse-options.c:317
+#, c-format
 msgid "%s takes no value"
-msgstr "%s ha più valori"
+msgstr "%s non richiede un valore"
 
-#: parse-options.c:90
-#, fuzzy, c-format
+#: parse-options.c:94
+#, c-format
 msgid "%s isn't available"
-msgstr "%s non è un oggetto valido"
+msgstr "%s non è disponibile"
 
-#: parse-options.c:178
-#, fuzzy, c-format
-msgid "%s expects a numerical value"
-msgstr "switch '%c' richiede un valore numerico"
-
-#: parse-options.c:194
+#: parse-options.c:217
 #, c-format
 msgid "%s expects a non-negative integer value with an optional k/m/g suffix"
 msgstr ""
+"%s richiede un valore intero non negativo con un suffisso k/m/g facoltativo"
 
-#: parse-options.c:322
+#: parse-options.c:386
 #, c-format
 msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
-msgstr ""
+msgstr "opzione ambigua: %s (potrebbe essere --%s%s o --%s%s)"
 
-#: parse-options.c:356 parse-options.c:364
+#: parse-options.c:420 parse-options.c:428
 #, c-format
-msgid "did you mean `--%s` (with two dashes ?)"
-msgstr ""
+msgid "did you mean `--%s` (with two dashes)?"
+msgstr "forse intendevi `--%s` (con due trattini)?"
 
-#: parse-options.c:649
-#, fuzzy, c-format
+#: parse-options.c:857
+#, c-format
 msgid "unknown option `%s'"
-msgstr "sconosciuto:    %s"
+msgstr "opzione sconosciuta `%s'"
 
-#: parse-options.c:651
-#, fuzzy, c-format
+#: parse-options.c:859
+#, c-format
 msgid "unknown switch `%c'"
-msgstr "porta %s sconosciuta"
+msgstr "opzione `%c` sconosciuta"
 
-#: parse-options.c:653
-#, fuzzy, c-format
+#: parse-options.c:861
+#, c-format
 msgid "unknown non-ascii option in string: `%s'"
-msgstr "Commit %s sconosciuto"
+msgstr "opzione non ASCII sconosciuta presente nella stringa: `%s'"
 
-#: parse-options.c:675
+#: parse-options.c:885
 msgid "..."
 msgstr "..."
 
-#: parse-options.c:694
+#: parse-options.c:904
 #, c-format
 msgid "usage: %s"
 msgstr "uso: %s"
@@ -3707,71 +5191,76 @@ msgstr "uso: %s"
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation.
 #.
-#: parse-options.c:700
+#: parse-options.c:910
 #, c-format
 msgid "   or: %s"
 msgstr "  oppure: %s"
 
-#: parse-options.c:703
+#: parse-options.c:913
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: parse-options.c:742
+#: parse-options.c:952
 msgid "-NUM"
 msgstr "-NUM"
 
-#: parse-options-cb.c:21
-#, fuzzy, c-format
+#: parse-options.c:966
+#, c-format
+msgid "alias of --%s"
+msgstr "alias di --%s"
+
+#: parse-options-cb.c:20 parse-options-cb.c:24
+#, c-format
 msgid "option `%s' expects a numerical value"
-msgstr "switch '%c' richiede un valore numerico"
+msgstr "l'opzione `%s' richiede un valore numerico"
 
-#: parse-options-cb.c:38
+#: parse-options-cb.c:41
 #, c-format
 msgid "malformed expiration date '%s'"
 msgstr "data scadenza '%s' malformata"
 
-#: parse-options-cb.c:51
+#: parse-options-cb.c:54
 #, c-format
 msgid "option `%s' expects \"always\", \"auto\", or \"never\""
-msgstr ""
+msgstr "l'opzione `%s' richiede \"always\", \"auto\" o \"never\""
 
-#: parse-options-cb.c:110
+#: parse-options-cb.c:130 parse-options-cb.c:147
 #, c-format
 msgid "malformed object name '%s'"
 msgstr "nome oggetto '%s' malformato"
 
-#: path.c:894
+#: path.c:915
 #, c-format
 msgid "Could not make %s writable by group"
 msgstr "Impossibile rendere %s scrivibile dal gruppo"
 
-#: pathspec.c:128
+#: pathspec.c:130
 msgid "Escape character '\\' not allowed as last character in attr value"
 msgstr ""
 "Carattere di escape '\\' non consentito come ultimo carattere del valore "
 "attributo"
 
-#: pathspec.c:146
+#: pathspec.c:148
 msgid "Only one 'attr:' specification is allowed."
 msgstr "È consentita solo una specifica 'attr:'."
 
-#: pathspec.c:149
+#: pathspec.c:151
 msgid "attr spec must not be empty"
 msgstr "la specifica attr non deve essere vuota"
 
-#: pathspec.c:192
+#: pathspec.c:194
 #, c-format
 msgid "invalid attribute name %s"
 msgstr "nome attributo %s non valido"
 
-#: pathspec.c:257
+#: pathspec.c:259
 msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
 msgstr ""
 "le impostazioni globali specificatore percorso 'glob' e 'noglob' non sono "
 "compatibili"
 
-#: pathspec.c:264
+#: pathspec.c:266
 msgid ""
 "global 'literal' pathspec setting is incompatible with all other global "
 "pathspec settings"
@@ -3779,171 +5268,204 @@ msgstr ""
 "l'impostazione globale specificatore percorso 'literal' è incompatibile con "
 "tutte le altre impostazioni globali specificatore percorso"
 
-#: pathspec.c:304
+#: pathspec.c:306
 msgid "invalid parameter for pathspec magic 'prefix'"
 msgstr "parametro per il magic specificatore percorso 'prefix' non valido"
 
-#: pathspec.c:325
+#: pathspec.c:327
 #, c-format
 msgid "Invalid pathspec magic '%.*s' in '%s'"
 msgstr "Magic specificatore percorso '%.*s' in '%s' non valido"
 
-#: pathspec.c:330
+#: pathspec.c:332
 #, c-format
 msgid "Missing ')' at the end of pathspec magic in '%s'"
 msgstr "')' mancante alla fine del magic specificatore percorso in '%s'"
 
-#: pathspec.c:368
+#: pathspec.c:370
 #, c-format
 msgid "Unimplemented pathspec magic '%c' in '%s'"
 msgstr "Magic specificatore percorso '%c' in '%s' non implementato"
 
-#: pathspec.c:427
+#: pathspec.c:429
 #, c-format
 msgid "%s: 'literal' and 'glob' are incompatible"
 msgstr "%s: 'literal' e 'glob' non sono compatibili"
 
-#: pathspec.c:440
+#: pathspec.c:442
 #, c-format
-msgid "%s: '%s' is outside repository"
-msgstr "%s: '%s' è al di fuori del repository"
+msgid "%s: '%s' is outside repository at '%s'"
+msgstr "%s: '%s' è al di fuori del repository in '%s'"
 
-#: pathspec.c:514
+#: pathspec.c:517
 #, c-format
 msgid "'%s' (mnemonic: '%c')"
 msgstr "'%s' (opzione mnemonica: '%c')"
 
-#: pathspec.c:524
+#: pathspec.c:527
 #, c-format
 msgid "%s: pathspec magic not supported by this command: %s"
 msgstr "%s: magic specificatore percorso non supportato da questo comando: %s"
 
-#: pathspec.c:591
+#: pathspec.c:594
 #, c-format
 msgid "pathspec '%s' is beyond a symbolic link"
 msgstr ""
 "lo specificatore percorso '%s' si trova oltre un collegamento simbolico"
 
-#: pkt-line.c:104
+#: pathspec.c:639
+#, c-format
+msgid "line is badly quoted: %s"
+msgstr "la riga non è ben racchiusa tra virgolette: %s"
+
+#: pkt-line.c:92
+msgid "unable to write flush packet"
+msgstr "impossibile scrivere il pacchetto flush"
+
+#: pkt-line.c:99
+msgid "unable to write delim packet"
+msgstr "impossibile scrivere il pacchetto delim"
+
+#: pkt-line.c:106
 msgid "flush packet write failed"
 msgstr "scrittura con flush pacchetto non riuscita"
 
-#: pkt-line.c:144 pkt-line.c:230
+#: pkt-line.c:146 pkt-line.c:232
 msgid "protocol error: impossibly long line"
 msgstr "errore protocollo: riga impossibilmente lunga"
 
-#: pkt-line.c:160 pkt-line.c:162
+#: pkt-line.c:162 pkt-line.c:164
 msgid "packet write with format failed"
 msgstr "scrittura pacchetto con formato non riuscita"
 
-#: pkt-line.c:194
+#: pkt-line.c:196
 msgid "packet write failed - data exceeds max packet size"
 msgstr ""
 "scrittura pacchetto non riuscita - i dati sono più della dimensione massima "
 "pacchetto"
 
-#: pkt-line.c:201 pkt-line.c:208
+#: pkt-line.c:203 pkt-line.c:210
 msgid "packet write failed"
 msgstr "scrittura pacchetto non riuscita"
 
-#: pkt-line.c:293
+#: pkt-line.c:295
 msgid "read error"
 msgstr "errore di lettura"
 
-#: pkt-line.c:301
+#: pkt-line.c:303
 msgid "the remote end hung up unexpectedly"
 msgstr "l'interlocutore remoto ha chiuso inaspettatamente la connessione"
 
-#: pkt-line.c:329
+#: pkt-line.c:331
 #, c-format
 msgid "protocol error: bad line length character: %.4s"
 msgstr "errore protocollo: carattere lunghezza riga non valido: %.4s"
 
-#: pkt-line.c:339 pkt-line.c:344
+#: pkt-line.c:341 pkt-line.c:346
 #, c-format
 msgid "protocol error: bad line length %d"
 msgstr "errore protocollo: lunghezza riga non valida: %d"
 
-#: pkt-line.c:353
+#: pkt-line.c:362
 #, c-format
 msgid "remote error: %s"
 msgstr "errore remoto: %s"
 
 #: preload-index.c:119
 msgid "Refreshing index"
-msgstr "Aggiornamento index in corso"
+msgstr "Aggiornamento indice in corso"
 
 #: preload-index.c:138
 #, c-format
 msgid "unable to create threaded lstat: %s"
 msgstr "impossibile creare lstat in versione threaded: %s"
 
-#: pretty.c:963
+#: pretty.c:981
 msgid "unable to parse --pretty format"
 msgstr "impossibile analizzare il formato --pretty"
 
-#: range-diff.c:56
+#: promisor-remote.c:23
+msgid "Remote with no URL"
+msgstr "Remoto senza URL"
+
+#: promisor-remote.c:58
+#, c-format
+msgid "promisor remote name cannot begin with '/': %s"
+msgstr "il nome del remoto promettente non può iniziare con '/': %s"
+
+#: range-diff.c:75
 msgid "could not start `log`"
 msgstr "impossibile avviare `log`"
 
-#: range-diff.c:59
+#: range-diff.c:77
 msgid "could not read `log` output"
 msgstr "impossibile leggere l'output di `log`"
 
-#: range-diff.c:74 sequencer.c:4828
+#: range-diff.c:96 sequencer.c:5020
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr "impossibile analizzare il commit '%s'"
 
-#: range-diff.c:224
+#: range-diff.c:122
+#, c-format
+msgid "could not parse git header '%.*s'"
+msgstr "impossibile analizzare l'header Git '%.*s'"
+
+#: range-diff.c:285
 msgid "failed to generate diff"
 msgstr "generazione del diff non riuscita"
 
-#: range-diff.c:455 range-diff.c:457
+#: range-diff.c:518 range-diff.c:520
 #, c-format
 msgid "could not parse log for '%s'"
-msgstr "impossibile analizzare il log di '%s'"
+msgstr "impossibile analizzare il registro di '%s'"
 
-#: read-cache.c:673
-#, fuzzy, c-format
+#: read-cache.c:680
+#, c-format
 msgid "will not add file alias '%s' ('%s' already exists in index)"
-msgstr "%s: esiste già in index"
+msgstr "non aggiungerò l'alias file '%s' ('%s' esiste già nell'indice)"
 
-#: read-cache.c:689
-#, fuzzy
+#: read-cache.c:696
 msgid "cannot create an empty blob in the object database"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "impossibile creare un blob vuoto nel database oggetti"
 
-#: read-cache.c:710
+#: read-cache.c:718
 #, c-format
 msgid "%s: can only add regular files, symbolic links or git-directories"
 msgstr ""
+"%s: è possibile aggiungere solo file regolari, collegamenti simbolici o "
+"directory Git"
 
-#: read-cache.c:765
-#, fuzzy, c-format
+#: read-cache.c:723
+#, c-format
+msgid "'%s' does not have a commit checked out"
+msgstr "'%s' non ha un commit di cui è stato eseguito il checkout"
+
+#: read-cache.c:775
+#, c-format
 msgid "unable to index file '%s'"
-msgstr "impossibile leggere il file index"
+msgstr "impossibile indicizzare il file '%s'"
 
-#: read-cache.c:784
-#, fuzzy, c-format
+#: read-cache.c:794
+#, c-format
 msgid "unable to add '%s' to index"
-msgstr "Impossibile aggiungere %s al database"
+msgstr "impossibile aggiungere '%s' all'indice"
 
-#: read-cache.c:795
-#, fuzzy, c-format
+#: read-cache.c:805
+#, c-format
 msgid "unable to stat '%s'"
-msgstr "non è possibile scrivere %s"
+msgstr "impossibile eseguire stat su '%s'"
 
-#: read-cache.c:1304
-#, fuzzy, c-format
+#: read-cache.c:1330
+#, c-format
 msgid "'%s' appears as both a file and as a directory"
-msgstr "%s esiste e non è una directory"
+msgstr "'%s' compare sia come file sia come directory"
 
-#: read-cache.c:1489
+#: read-cache.c:1536
 msgid "Refresh index"
 msgstr "Aggiornamento indice"
 
-#: read-cache.c:1603
+#: read-cache.c:1651
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -3952,7 +5474,7 @@ msgstr ""
 "index.version impostato, ma il valore non è valido.\n"
 "Uso la versione %i"
 
-#: read-cache.c:1613
+#: read-cache.c:1661
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -3961,144 +5483,162 @@ msgstr ""
 "GIT_INDEX_VERSION impostato, ma il valore non è valido.\n"
 "Uso la versione %i"
 
-#: read-cache.c:1684
+#: read-cache.c:1717
 #, c-format
 msgid "bad signature 0x%08x"
-msgstr ""
+msgstr "firma non valida: 0x%08x"
 
-#: read-cache.c:1687
-#, fuzzy, c-format
+#: read-cache.c:1720
+#, c-format
 msgid "bad index version %d"
-msgstr "versione '%s' di index errata"
+msgstr "versione indice non valida: %d"
 
-#: read-cache.c:1696
+#: read-cache.c:1729
 msgid "bad index file sha1 signature"
-msgstr ""
+msgstr "firma SHA1 file indice non valida"
 
-#: read-cache.c:1726
+#: read-cache.c:1759
 #, c-format
 msgid "index uses %.4s extension, which we do not understand"
-msgstr ""
+msgstr "l'indice usa l'estensione %.4s che non comprendiamo"
 
-#: read-cache.c:1728
+#: read-cache.c:1761
 #, c-format
 msgid "ignoring %.4s extension"
-msgstr ""
+msgstr "estensione %.4s ignorata"
 
-#: read-cache.c:1765
-#, fuzzy, c-format
+#: read-cache.c:1798
+#, c-format
 msgid "unknown index entry format 0x%08x"
-msgstr "Formato archivio '%s' sconosciuto"
+msgstr "formato voce indice sconosciuto: 0x%08x"
 
-#: read-cache.c:1781
+#: read-cache.c:1814
 #, c-format
 msgid "malformed name field in the index, near path '%s'"
 msgstr "campo nome malformato nell'indice, vicino al percorso '%s'"
 
-#: read-cache.c:1836
+#: read-cache.c:1871
 msgid "unordered stage entries in index"
-msgstr ""
+msgstr "voci stage non ordinate nell'indice"
 
-#: read-cache.c:1839
-#, fuzzy, c-format
+#: read-cache.c:1874
+#, c-format
 msgid "multiple stage entries for merged file '%s'"
-msgstr "aggiornamenti multipli per il riferimento '%s' non consentiti"
+msgstr "voci stage multiple per il file sottoposto a merge '%s'"
 
-#: read-cache.c:1842
-#, fuzzy, c-format
+#: read-cache.c:1877
+#, c-format
 msgid "unordered stage entries for '%s'"
-msgstr "impossibile creare le directory per %s"
-
-#: read-cache.c:1949 read-cache.c:2227 rerere.c:565 rerere.c:599 rerere.c:1111
-#: builtin/add.c:459 builtin/check-ignore.c:178 builtin/checkout.c:294
-#: builtin/checkout.c:622 builtin/checkout.c:991 builtin/clean.c:955
-#: builtin/commit.c:344 builtin/diff-tree.c:116 builtin/grep.c:498
-#: builtin/mv.c:145 builtin/reset.c:245 builtin/rm.c:271
-#: builtin/submodule--helper.c:330
+msgstr "voci stage non ordinate per '%s'"
+
+#: read-cache.c:1983 read-cache.c:2271 rerere.c:565 rerere.c:599 rerere.c:1111
+#: submodule.c:1619 builtin/add.c:532 builtin/check-ignore.c:181
+#: builtin/checkout.c:470 builtin/checkout.c:656 builtin/clean.c:967
+#: builtin/commit.c:367 builtin/diff-tree.c:120 builtin/grep.c:485
+#: builtin/mv.c:145 builtin/reset.c:246 builtin/rm.c:290
+#: builtin/submodule--helper.c:332
 msgid "index file corrupt"
-msgstr "file index corrotto"
+msgstr "file indice corrotto"
 
-#: read-cache.c:2090
+#: read-cache.c:2124
 #, c-format
 msgid "unable to create load_cache_entries thread: %s"
 msgstr "impossibile creare il thread load_cache_entries: %s"
 
-#: read-cache.c:2103
+#: read-cache.c:2137
 #, c-format
 msgid "unable to join load_cache_entries thread: %s"
 msgstr "impossibile bloccare il thread load_cache_entries: %s"
 
-#: read-cache.c:2136
-#, fuzzy, c-format
+#: read-cache.c:2170
+#, c-format
 msgid "%s: index file open failed"
-msgstr "%s: esecuzione del filtro smudge '%s' non riuscita"
+msgstr "%s: apertura del file indice non riuscita"
 
-#: read-cache.c:2140
-#, fuzzy, c-format
+#: read-cache.c:2174
+#, c-format
 msgid "%s: cannot stat the open index"
-msgstr "impossibile leggere l'index"
+msgstr "%s: impossibile eseguire stat sull'indice aperto"
 
-#: read-cache.c:2144
+#: read-cache.c:2178
 #, c-format
 msgid "%s: index file smaller than expected"
-msgstr ""
+msgstr "%s: file indice più piccolo della dimensione attesa"
 
-#: read-cache.c:2148
-#, fuzzy, c-format
+#: read-cache.c:2182
+#, c-format
 msgid "%s: unable to map index file"
-msgstr "impossibile leggere il file index"
+msgstr "%s: impossibile mappare il file indice"
 
-#: read-cache.c:2190
+#: read-cache.c:2224
 #, c-format
 msgid "unable to create load_index_extensions thread: %s"
 msgstr "impossibile creare il thread load_index_extensions: %s"
 
-#: read-cache.c:2217
+#: read-cache.c:2251
 #, c-format
 msgid "unable to join load_index_extensions thread: %s"
 msgstr "impossibile bloccare il thread load_index_extensions: %s"
 
-#: read-cache.c:2239
-#, fuzzy, c-format
+#: read-cache.c:2283
+#, c-format
 msgid "could not freshen shared index '%s'"
-msgstr "impossibile leggere il bundle '%s'"
+msgstr "impossibile aggiornare l'indice condiviso '%s'"
 
-#: read-cache.c:2274
+#: read-cache.c:2330
 #, c-format
 msgid "broken index, expect %s in %s, got %s"
-msgstr ""
+msgstr "indice corrotto, atteso %s in %s, presente %s"
 
-#: read-cache.c:2971 sequencer.c:4791 wrapper.c:658 builtin/merge.c:1087
+#: read-cache.c:3026 strbuf.c:1160 wrapper.c:622 builtin/merge.c:1122
 #, c-format
 msgid "could not close '%s'"
 msgstr "impossibile chiudere '%s'"
 
-#: read-cache.c:3044 sequencer.c:2237 sequencer.c:3647
+#: read-cache.c:3129 sequencer.c:2343 sequencer.c:3959
 #, c-format
 msgid "could not stat '%s'"
 msgstr "impossibile eseguire lo stat di '%s'"
 
-#: read-cache.c:3057
+#: read-cache.c:3142
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr "impossibile aprire la directory git: %s"
 
-#: read-cache.c:3069
+#: read-cache.c:3154
 #, c-format
 msgid "unable to unlink: %s"
 msgstr "impossibile eseguire unlink: %s"
 
-#: read-cache.c:3088
-#, fuzzy, c-format
+#: read-cache.c:3179
+#, c-format
 msgid "cannot fix permission bits on '%s'"
-msgstr "impossibile impostare i permessi a '%s'"
+msgstr "impossibile correggere i permessi di '%s'"
 
-#: read-cache.c:3237
-#, fuzzy, c-format
+#: read-cache.c:3328
+#, c-format
 msgid "%s: cannot drop to stage #0"
-msgstr "%s: impossibile aggiornare il ref"
+msgstr "%s: impossibile ripiegare sullo stadio 0"
+
+#: rebase-interactive.c:11
+msgid ""
+"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
+"continue'.\n"
+"Or you can abort the rebase with 'git rebase --abort'.\n"
+msgstr ""
+"Puoi correggere questa situazione con 'git rebase --edit-todo' e quindi "
+"eseguire 'git rebase --continue'.\n"
+"Oppure puoi interrompere il rebase con 'git rebase --abort'.\n"
+
+#: rebase-interactive.c:33
+#, c-format
+msgid ""
+"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
+msgstr ""
+"impostazione %s non riconosciuta per l'opzione rebase.missingCommitsCheck. "
+"La ignoro."
 
-#: rebase-interactive.c:10
+#: rebase-interactive.c:42
 msgid ""
 "\n"
 "Commands:\n"
@@ -4143,7 +5683,14 @@ msgstr ""
 "Queste righe possono essere riordinate; saranno eseguite dalla prima "
 "all'ultima.\n"
 
-#: rebase-interactive.c:31 git-rebase--preserve-merges.sh:173
+#: rebase-interactive.c:63
+#, c-format
+msgid "Rebase %s onto %s (%d command)"
+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:72 git-rebase--preserve-merges.sh:228
 msgid ""
 "\n"
 "Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
@@ -4152,7 +5699,7 @@ msgstr ""
 "Non eliminare alcuna riga. Usa esplicitamente 'drop' per rimuovere un "
 "commit.\n"
 
-#: rebase-interactive.c:34 git-rebase--preserve-merges.sh:177
+#: rebase-interactive.c:75 git-rebase--preserve-merges.sh:232
 msgid ""
 "\n"
 "If you remove a line here THAT COMMIT WILL BE LOST.\n"
@@ -4160,7 +5707,7 @@ msgstr ""
 "\n"
 "Rimuovendo una riga da qui IL COMMIT CORRISPONDENTE ANDRÀ PERDUTO.\n"
 
-#: rebase-interactive.c:40 git-rebase--preserve-merges.sh:816
+#: rebase-interactive.c:81 git-rebase--preserve-merges.sh:871
 msgid ""
 "\n"
 "You are editing the todo file of an ongoing interactive rebase.\n"
@@ -4174,7 +5721,7 @@ msgstr ""
 "    git rebase --continue\n"
 "\n"
 
-#: rebase-interactive.c:45 git-rebase--preserve-merges.sh:893
+#: rebase-interactive.c:86 git-rebase--preserve-merges.sh:948
 msgid ""
 "\n"
 "However, if you remove everything, the rebase will be aborted.\n"
@@ -4184,125 +5731,162 @@ msgstr ""
 "Ciò nonostante, se rimuovi tutto, il rebase sarà annullato.\n"
 "\n"
 
-#: rebase-interactive.c:51 git-rebase--preserve-merges.sh:900
-msgid "Note that empty commits are commented out"
-msgstr "Nota che i commit vuoti sono commentati"
+#: rebase-interactive.c:110 rerere.c:485 rerere.c:692 sequencer.c:3444
+#: sequencer.c:3470 sequencer.c:5125 builtin/fsck.c:346 builtin/rebase.c:252
+#, c-format
+msgid "could not write '%s'"
+msgstr "impossibile scrivere '%s'"
+
+#: rebase-interactive.c:116 builtin/rebase.c:184 builtin/rebase.c:210
+#: builtin/rebase.c:234
+#, c-format
+msgid "could not write '%s'."
+msgstr "impossibile scrivere '%s'."
+
+#: rebase-interactive.c:193
+#, c-format
+msgid ""
+"Warning: some commits may have been dropped accidentally.\n"
+"Dropped commits (newer to older):\n"
+msgstr ""
+"Attenzione: è possibile che alcuni commit siano stati scartati "
+"accidentalmente.\n"
+"Commit scartati (dal più al meno recente):\n"
+
+#: rebase-interactive.c:200
+#, c-format
+msgid ""
+"To avoid this message, use \"drop\" to explicitly remove a commit.\n"
+"\n"
+"Use 'git config rebase.missingCommitsCheck' to change the level of "
+"warnings.\n"
+"The possible behaviours are: ignore, warn, error.\n"
+"\n"
+msgstr ""
+"Per evitare questo messaggio, usa \"drop\" per rimuovere un commit\n"
+"esplicitamente.\n"
+"\n"
+"Usa 'git config rebase.missingCommitsCheck' per modificare il livello\n"
+"degli avvisi.\n"
+"I comportamenti possibili sono ignore, warn, error.\n"
+"\n"
 
-#: rebase-interactive.c:62 rebase-interactive.c:75 sequencer.c:2219
-#: sequencer.c:4569 sequencer.c:4625 sequencer.c:4900
+#: rebase-interactive.c:233 rebase-interactive.c:238 sequencer.c:2262
+#: builtin/rebase.c:170 builtin/rebase.c:195 builtin/rebase.c:221
+#: builtin/rebase.c:246
 #, c-format
 msgid "could not read '%s'."
 msgstr "impossibile leggere '%s'."
 
-#: 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:583
+#: refs.c:667
 #, c-format
 msgid "ignoring dangling symref %s"
 msgstr "ignoro il riferimento simbolico pendente %s"
 
-#: refs.c:585 ref-filter.c:1976
+#: refs.c:669 ref-filter.c:2098
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "ignoro il riferimento rotto %s"
 
-#: refs.c:711
+#: refs.c:804
 #, c-format
 msgid "could not open '%s' for writing: %s"
 msgstr "impossibile aprire '%s' in scrittura: %s"
 
-#: refs.c:721 refs.c:772
+#: refs.c:814 refs.c:865
 #, c-format
 msgid "could not read ref '%s'"
 msgstr "impossibile leggere il riferimento '%s'"
 
-#: refs.c:727
+#: refs.c:820
 #, c-format
 msgid "ref '%s' already exists"
 msgstr "il riferimento '%s' esiste già"
 
-#: refs.c:732
+#: refs.c:825
 #, c-format
 msgid "unexpected object ID when writing '%s'"
 msgstr "ID oggetto inatteso durante la scrittura di '%s'"
 
-#: refs.c:740 sequencer.c:396 sequencer.c:2549 sequencer.c:2675
-#: sequencer.c:2689 sequencer.c:2923 sequencer.c:4789 sequencer.c:4852
-#: wrapper.c:656
+#: refs.c:833 sequencer.c:407 sequencer.c:2701 sequencer.c:2905
+#: sequencer.c:2919 sequencer.c:3177 sequencer.c:5036 strbuf.c:1157
+#: wrapper.c:620
 #, c-format
 msgid "could not write to '%s'"
 msgstr "impossibile scrivere su '%s'"
 
-#: refs.c:767 sequencer.c:4787 sequencer.c:4846 wrapper.c:225 wrapper.c:395
-#: builtin/am.c:713 builtin/rebase.c:575
+#: refs.c:860 strbuf.c:1155 wrapper.c:188 wrapper.c:358 builtin/am.c:719
+#: builtin/rebase.c:1029
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "impossibile aprire '%s' in scrittura"
 
-#: refs.c:774
+#: refs.c:867
 #, c-format
 msgid "unexpected object ID when deleting '%s'"
 msgstr "ID oggetto inatteso durante l'eliminazione di '%s'"
 
-#: refs.c:905
+#: refs.c:998
 #, c-format
 msgid "log for ref %s has gap after %s"
-msgstr "il log per il riferimento %s ha delle voci mancanti dopo %s"
+msgstr "il registro per il riferimento %s ha delle voci mancanti dopo %s"
 
-#: refs.c:911
+#: refs.c:1004
 #, c-format
 msgid "log for ref %s unexpectedly ended on %s"
-msgstr "il log per il riferimento %s è terminato inaspettatamente a %s"
+msgstr "il registro per il riferimento %s è terminato inaspettatamente a %s"
 
-#: refs.c:969
+#: refs.c:1063
 #, c-format
 msgid "log for %s is empty"
-msgstr "il log per %s è vuoto"
+msgstr "il registro per %s è vuoto"
 
-#: refs.c:1061
+#: 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:1137
+#: 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:1911
+#: refs.c:2023
 #, c-format
 msgid "multiple updates for ref '%s' not allowed"
 msgstr "aggiornamenti multipli per il riferimento '%s' non consentiti"
 
-#: refs.c:1943
+#: refs.c:2055
 msgid "ref updates forbidden inside quarantine environment"
 msgstr "aggiornamenti riferimento vietati nell'ambiente quarantena"
 
-#: refs.c:2039 refs.c:2069
+#: refs.c:2151 refs.c:2181
 #, c-format
 msgid "'%s' exists; cannot create '%s'"
 msgstr "'%s' esiste già; impossibile creare '%s'"
 
-#: refs.c:2045 refs.c:2080
+#: refs.c:2157 refs.c:2192
 #, c-format
 msgid "cannot process '%s' and '%s' at the same time"
 msgstr "impossibile gestire '%s' e '%s' contemporaneamente"
 
-#: refs/files-backend.c:1228
+#: refs/files-backend.c:1233
 #, c-format
 msgid "could not remove reference %s"
 msgstr "impossibile rimuovere il riferimento %s"
 
-#: refs/files-backend.c:1242 refs/packed-backend.c:1532
-#: refs/packed-backend.c:1542
+#: refs/files-backend.c:1247 refs/packed-backend.c:1541
+#: refs/packed-backend.c:1551
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr "impossibile eliminare il riferimento %s: %s"
 
-#: refs/files-backend.c:1245 refs/packed-backend.c:1545
+#: refs/files-backend.c:1250 refs/packed-backend.c:1554
 #, c-format
 msgid "could not delete references: %s"
 msgstr "impossibile eliminare i riferimenti: %s"
@@ -4312,141 +5896,141 @@ msgstr "impossibile eliminare i riferimenti: %s"
 msgid "invalid refspec '%s'"
 msgstr "specificatore riferimento '%s' non valido"
 
-#: ref-filter.c:39 wt-status.c:1861
+#: ref-filter.c:42 wt-status.c:1938
 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:165
 #, c-format
 msgid "expected format: %%(color:<color>)"
 msgstr "formato atteso: %%(color:<colore>)"
 
-#: ref-filter.c:140
+#: ref-filter.c:167
 #, c-format
 msgid "unrecognized color: %%(color:%s)"
 msgstr "colore non riconosciuto: %%(color:%s)"
 
-#: ref-filter.c:162
+#: ref-filter.c:189
 #, c-format
 msgid "Integer value expected refname:lstrip=%s"
 msgstr "Atteso valore intero: refname:lstrip=%s"
 
-#: ref-filter.c:166
+#: ref-filter.c:193
 #, c-format
 msgid "Integer value expected refname:rstrip=%s"
 msgstr "Atteso valore intero: refname:rstrip=%s"
 
-#: ref-filter.c:168
+#: ref-filter.c:195
 #, c-format
 msgid "unrecognized %%(%s) argument: %s"
 msgstr "argomento %%(%s) non riconosciuto: %s"
 
-#: ref-filter.c:223
+#: ref-filter.c:250
 #, c-format
 msgid "%%(objecttype) does not take arguments"
 msgstr "%%(objecttype) non accetta argomenti"
 
-#: ref-filter.c:245
-#, fuzzy, c-format
+#: ref-filter.c:272
+#, c-format
 msgid "unrecognized %%(objectsize) argument: %s"
-msgstr "argomento %%(objectname) non riconosciuto: %s"
+msgstr "argomento %%(objectsize) non riconosciuto: %s"
 
-#: ref-filter.c:253
-#, fuzzy, c-format
+#: ref-filter.c:280
+#, c-format
 msgid "%%(deltabase) does not take arguments"
-msgstr "%%(objectsize) non accetta argomenti"
+msgstr "%%(deltabase) non accetta argomenti"
 
-#: ref-filter.c:265
+#: ref-filter.c:292
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr "%%(body) non accetta argomenti"
 
-#: ref-filter.c:274
+#: ref-filter.c:301
 #, c-format
 msgid "%%(subject) does not take arguments"
 msgstr "%%(subject) non accetta argomenti"
 
-#: ref-filter.c:296
+#: ref-filter.c:323
 #, c-format
 msgid "unknown %%(trailers) argument: %s"
 msgstr "argomento %%(trailers) sconosciuto: %s"
 
-#: ref-filter.c:325
+#: ref-filter.c:352
 #, c-format
 msgid "positive value expected contents:lines=%s"
 msgstr "atteso valore positivo in contents:lines=%s"
 
-#: ref-filter.c:327
+#: ref-filter.c:354
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr "argomento %%(contents) non riconosciuto: %s"
 
-#: ref-filter.c:342
+#: ref-filter.c:369
 #, c-format
 msgid "positive value expected objectname:short=%s"
 msgstr "atteso valore positivo in objectname:short=%s"
 
-#: ref-filter.c:346
+#: ref-filter.c:373
 #, c-format
 msgid "unrecognized %%(objectname) argument: %s"
 msgstr "argomento %%(objectname) non riconosciuto: %s"
 
-#: ref-filter.c:376
+#: ref-filter.c:403
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr "formato atteso: %%(align:<ampiezza>,<posizione>)"
 
-#: ref-filter.c:388
+#: ref-filter.c:415
 #, c-format
 msgid "unrecognized position:%s"
 msgstr "valore non riconosciuto: position:%s"
 
-#: ref-filter.c:395
+#: ref-filter.c:422
 #, c-format
 msgid "unrecognized width:%s"
 msgstr "valore non riconosciuto: width:%s"
 
-#: ref-filter.c:404
+#: ref-filter.c:431
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr "argomento %%(align) non riconosciuto: %s"
 
-#: ref-filter.c:412
+#: ref-filter.c:439
 #, 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:457
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr "argomento %%(if) non riconosciuto: %s"
 
-#: ref-filter.c:527
+#: ref-filter.c:559
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr "nome campo malformato: %.*s"
 
-#: ref-filter.c:554
+#: ref-filter.c:586
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr "nome campo sconosciuto: %.*s"
 
-#: ref-filter.c:558
+#: ref-filter.c:590
 #, c-format
 msgid ""
 "not a git repository, but the field '%.*s' requires access to object data"
@@ -4454,184 +6038,171 @@ msgstr ""
 "non è un repository git, ma il campo '%.*s' richiede l'accesso ai dati "
 "oggetto"
 
-#: ref-filter.c:682
+#: ref-filter.c:714
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr "formato: atomo %%(if) usato senza un atomo %%(then)"
 
-#: ref-filter.c:745
+#: ref-filter.c:777
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr "formato: atomo %%(then) usato senza un atomo %%(if)"
 
-#: ref-filter.c:747
+#: ref-filter.c:779
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr "formato: atomo %%(then) usato più di una volta"
 
-#: ref-filter.c:749
+#: ref-filter.c:781
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr "formato: atomo %%(then) usato dopo %%(else)"
 
-#: ref-filter.c:777
+#: ref-filter.c:809
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr "formato: atomo %%(else) usato senza un atomo %%(if)"
 
-#: ref-filter.c:779
+#: ref-filter.c:811
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr "formato: atomo %%(else) usato senza un atomo %%(then)"
 
-#: ref-filter.c:781
+#: ref-filter.c:813
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr "formato: atomo %%(else) usato più di una volta"
 
-#: ref-filter.c:796
+#: ref-filter.c:828
 #, c-format
 msgid "format: %%(end) atom used without corresponding atom"
 msgstr "formato: atomo %%(end) usato senza l'atomo corrispondente"
 
-#: ref-filter.c:853
+#: ref-filter.c:885
 #, c-format
 msgid "malformed format string %s"
 msgstr "stringa di formato %s malformata"
 
-#: ref-filter.c:1447
-#, c-format
-msgid "(no branch, rebasing %s)"
-msgstr "(nessun branch, eseguo il rebase di %s)"
-
-#: ref-filter.c:1450
-#, c-format
-msgid "(no branch, rebasing detached HEAD %s)"
-msgstr "(nessun branch, eseguo il rebase dell'HEAD scollegato %s)"
-
-#: ref-filter.c:1453
+#: ref-filter.c:1488
 #, 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:1461
+#: ref-filter.c:1491
 #, 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:1468
+#: ref-filter.c:1494
 #, 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:1472
-msgid "(no branch)"
-msgstr "(nessun branch)"
+#: ref-filter.c:1504
+msgid "no branch"
+msgstr "nessun branch"
 
-#: ref-filter.c:1506 ref-filter.c:1663
+#: ref-filter.c:1540 ref-filter.c:1749
 #, c-format
 msgid "missing object %s for %s"
 msgstr "oggetto %s mancante per %s"
 
-#: ref-filter.c:1516
+#: ref-filter.c:1550
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "parse_object_buffer non riuscito su %s per %s"
 
-#: ref-filter.c:1882
+#: ref-filter.c:2004
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "oggetto malformato in '%s'"
 
-#: ref-filter.c:1971
+#: ref-filter.c:2093
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "ignoro il riferimento con il nome malformato %s"
 
-#: ref-filter.c:2257
+#: ref-filter.c:2389
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "formato: atomo %%(end) mancante"
 
-#: ref-filter.c:2352
-#, fuzzy, c-format
+#: ref-filter.c:2489
+#, c-format
 msgid "option `%s' is incompatible with --merged"
-msgstr "--long non è compatibile con --abbrev=0"
+msgstr "l'opzione `%s' non è compatibile con --merged"
 
-#: ref-filter.c:2355
-#, fuzzy, c-format
+#: ref-filter.c:2492
+#, c-format
 msgid "option `%s' is incompatible with --no-merged"
-msgstr "--long non è compatibile con --abbrev=0"
+msgstr "l'opzione `%s' non è compatibile con --no-merged"
 
-#: ref-filter.c:2365
+#: ref-filter.c:2502
 #, c-format
 msgid "malformed object name %s"
 msgstr "nome dell'oggetto %s malformato"
 
-#: ref-filter.c:2370
-#, fuzzy, c-format
+#: ref-filter.c:2507
+#, c-format
 msgid "option `%s' must point to a commit"
-msgstr "'%s' non punta ad un commit"
+msgstr "l'opzione `%s' deve puntare ad un commit"
 
-#: remote.c:363
+#: remote.c:366
 #, c-format
 msgid "config remote shorthand cannot begin with '/': %s"
 msgstr ""
+"la forma breve della configurazione del remoto non può iniziare con '/': %s"
 
-#: remote.c:410
+#: remote.c:414
 msgid "more than one receivepack given, using the first"
-msgstr ""
+msgstr "è stata specificata più di una direttiva receivepack, uso la prima"
 
-#: remote.c:418
+#: remote.c:422
 msgid "more than one uploadpack given, using the first"
-msgstr ""
+msgstr "è stata specificata più di una direttiva uploadpack, uso la prima"
 
-#: remote.c:608
+#: remote.c:612
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
 msgstr "Impossibile recuperare sia %s sia %s in %s"
 
-#: remote.c:612
+#: remote.c:616
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s solitamente traccia %s, non %s"
 
-#: remote.c:616
+#: remote.c:620
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s traccia sia %s sia %s"
 
-#: remote.c:684
+#: remote.c:688
 #, c-format
 msgid "key '%s' of pattern had no '*'"
-msgstr ""
+msgstr "la chiave '%s' del pattern non aveva un '*'"
 
-#: remote.c:694
+#: remote.c:698
 #, c-format
 msgid "value '%s' of pattern has no '*'"
-msgstr ""
+msgstr "il valore '%s' del pattern non ha un '*'"
 
-#: remote.c:1000
-#, fuzzy, c-format
+#: remote.c:1004
+#, c-format
 msgid "src refspec %s does not match any"
-msgstr "%s: non corrisponde a index"
+msgstr "nessuna corrispondenza per lo specificatore riferimento sorgente %s"
 
-#: remote.c:1005
+#: remote.c:1009
 #, c-format
 msgid "src refspec %s matches more than one"
 msgstr ""
+"sono state trovate più corrispondenze per lo specificatore riferimento "
+"sorgente %s"
 
 #. TRANSLATORS: "matches '%s'%" is the <dst> part of "git push
 #. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
 #. the <src>.
 #.
-#: remote.c:1020
+#: remote.c:1024
 #, c-format
 msgid ""
 "The destination you provided is not a full refname (i.e.,\n"
@@ -4644,166 +6215,196 @@ msgid ""
 "\n"
 "Neither worked, so we gave up. You must fully qualify the ref."
 msgstr ""
+"La destinazione che hai fornito non è un nome riferimento\n"
+"completo (ossia che inizia con \"refs/\"). Abbiamo provato a\n"
+"indovinare ciò che intendevi dire:\n"
+"\n"
+"- cercando un riferimento corrispondente a '%s' nel remoto;\n"
+"- controllando se la <sorgente> sottoposta a push ('%s') fosse un\n"
+"  riferimento compreso fra quelli in \"refs/{heads,tags}/\". In tal\n"
+"  caso avremmo aggiunto il prefisso corrispondente\n"
+"  refs/{heads,tags}/ al remoto.\n"
+"\n"
+"Nessuna delle due opzioni ha funzionato, quindi ci siamo arresi.\n"
+"Devi specificare un riferimento completamente qualificato."
 
-#: remote.c:1040
+#: remote.c:1044
 #, c-format
 msgid ""
 "The <src> part of the refspec is a commit object.\n"
 "Did you mean to create a new branch by pushing to\n"
 "'%s:refs/heads/%s'?"
 msgstr ""
+"La parte <sorgente> dello specificatore riferimento\n"
+"è un oggetto tag. Forse intendevi creare un nuovo\n"
+"branch eseguendo il push a '%s:refs/heads/%s'?"
 
-#: remote.c:1045
+#: remote.c:1049
 #, c-format
 msgid ""
 "The <src> part of the refspec is a tag object.\n"
 "Did you mean to create a new tag by pushing to\n"
 "'%s:refs/tags/%s'?"
 msgstr ""
+"La parte <sorgente> dello specificatore riferimento\n"
+"è un oggetto tag. Forse intendevi creare un nuovo\n"
+"branch eseguendo il push a '%s:refs/tags/%s'?"
 
-#: remote.c:1050
+#: remote.c:1054
 #, c-format
 msgid ""
 "The <src> part of the refspec is a tree object.\n"
 "Did you mean to tag a new tree by pushing to\n"
 "'%s:refs/tags/%s'?"
 msgstr ""
+"La parte <sorgente> dello specificatore riferimento\n"
+"è un oggetto albero. Forse intendevi aggiungere un\n"
+"tag a un nuovo albero eseguendo il push a\n"
+"'%s:refs/tags/%s'?"
 
-#: remote.c:1055
+#: remote.c:1059
 #, c-format
 msgid ""
 "The <src> part of the refspec is a blob object.\n"
 "Did you mean to tag a new blob by pushing to\n"
 "'%s:refs/tags/%s'?"
 msgstr ""
+"La parte <sorgente> dello specificatore riferimento\n"
+"è un oggetto blob. Forse intendevi aggiungere un\n"
+"tag a un nuovo blob eseguendo il push a\n"
+"'%s:refs/tags/%s'?"
 
-#: remote.c:1091
-#, fuzzy, c-format
+#: remote.c:1095
+#, c-format
 msgid "%s cannot be resolved to branch"
-msgstr "'%s' non può essere usato passando da un branch a un altro"
+msgstr "%s non può essere risolto in un branch"
 
-#: remote.c:1102
-#, fuzzy, c-format
+#: remote.c:1106
+#, c-format
 msgid "unable to delete '%s': remote ref does not exist"
-msgstr "impossibile scrivere il file '%s' in modalità %o"
+msgstr "impossibile eliminare '%s': il riferimento remoto non esiste"
 
-#: remote.c:1114
+#: remote.c:1118
 #, c-format
 msgid "dst refspec %s matches more than one"
 msgstr ""
+"sono state trovate più corrispondenze per lo specificatore riferimento "
+"destinazione %s"
 
-#: remote.c:1121
+#: remote.c:1125
 #, c-format
 msgid "dst ref %s receives from more than one src"
 msgstr ""
+"lo specificatore riferimento destinazione %s riceve dati da più di una "
+"sorgente"
 
-#: remote.c:1624 remote.c:1725
+#: remote.c:1628 remote.c:1729
 msgid "HEAD does not point to a branch"
 msgstr "HEAD non punta ad un branch"
 
-#: remote.c:1633
+#: remote.c:1637
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "branch '%s' non esistente"
 
-#: remote.c:1636
+#: remote.c:1640
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "nessun upstream configurato per il branch '%s'"
 
-#: remote.c:1642
+#: remote.c:1646
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
 "branch upstream '%s' non memorizzato come branch che ne traccia uno remoto"
 
-#: remote.c:1657
+#: remote.c:1661
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr ""
 "la destinazione del push '%s' sul remoto '%s' non ha un branch locale che la "
 "traccia"
 
-#: remote.c:1669
+#: remote.c:1673
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "il branch '%s' non ha un remoto per il push"
 
-#: remote.c:1679
+#: remote.c:1683
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr "gli specificatori riferimento per '%s' non includono '%s'"
 
-#: remote.c:1692
+#: remote.c:1696
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "il push non ha una destinazione (push.default è 'nothing')"
 
-#: remote.c:1714
+#: remote.c:1718
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr "impossibile risolvere il push 'simple' a una singola destinazione"
 
-#: remote.c:1840
-#, fuzzy, c-format
+#: remote.c:1844
+#, c-format
 msgid "couldn't find remote ref %s"
-msgstr "non è stato possibile creare il file '%s'"
+msgstr "impossibile trovare il riferimento remoto %s"
 
-#: remote.c:1853
+#: remote.c:1857
 #, c-format
 msgid "* Ignoring funny ref '%s' locally"
-msgstr ""
+msgstr "* Ignoro localmente il riferimento strano '%s'"
 
-#: remote.c:1990
+#: remote.c:2020
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr "Il tuo branch è basato su '%s', ma l'upstream è scomparso.\n"
 
-#: remote.c:1994
+#: remote.c:2024
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (usa \"git branch --unset-upstream\" per correggere la situazione)\n"
 
-#: remote.c:1997
+#: remote.c:2027
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr "Il tuo branch è aggiornato rispetto a '%s'.\n"
 
-#: remote.c:2001
+#: remote.c:2031
 #, c-format
 msgid "Your branch and '%s' refer to different commits.\n"
 msgstr "Il tuo branch e '%s' fanno riferimento a commit differenti.\n"
 
-#: remote.c:2004
+#: remote.c:2034
 #, c-format
 msgid "  (use \"%s\" for details)\n"
 msgstr "  (usa \"%s\" per visualizzare i dettagli)\n"
 
-#: remote.c:2008
+#: remote.c:2038
 #, c-format
 msgid "Your branch is ahead of '%s' by %d commit.\n"
 msgid_plural "Your branch is ahead of '%s' by %d commits.\n"
 msgstr[0] "Il tuo branch è avanti rispetto a '%s' di %d commit.\n"
 msgstr[1] "Il tuo branch è avanti rispetto a '%s' di %d commit.\n"
 
-#: remote.c:2014
+#: remote.c:2044
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (usa \"git push\" per pubblicare i tuoi commit locali)\n"
 
-#: remote.c:2017
+#: remote.c:2047
 #, c-format
 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 è indietro rispetto a '%s' 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 è indietro rispetto a '%s' 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:2025
+#: remote.c:2055
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (usa \"git pull\" per aggiornare il tuo branch locale)\n"
 
-#: remote.c:2028
+#: remote.c:2058
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -4818,14 +6419,14 @@ msgstr[1] ""
 "Il tuo branch e '%s' sono diventati divergenti\n"
 "e hanno rispettivamente %d e %d commit differenti.\n"
 
-#: remote.c:2038
+#: remote.c:2068
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr "  (usa \"git pull\" per eseguire il merge del branch remoto nel tuo)\n"
 
-#: remote.c:2221
-#, fuzzy, c-format
+#: remote.c:2251
+#, c-format
 msgid "cannot parse expected object name '%s'"
-msgstr "impossibile leggere l'oggetto %s '%s'"
+msgstr "impossibile analizzare il nome oggetto atteso '%s'"
 
 #: replace-object.c:21
 #, c-format
@@ -4837,7 +6438,7 @@ msgstr "nome riferimento sostitutivo non valido: %s"
 msgid "duplicate replace ref: %s"
 msgstr "riferimento sostitutivo duplicato: %s"
 
-#: replace-object.c:73
+#: replace-object.c:82
 #, c-format
 msgid "replace depth too high for object %s"
 msgstr "profondità sostituzione troppo elevata per l'oggetto %s"
@@ -4850,12 +6451,6 @@ msgstr "MERGE_RR corrotta"
 msgid "unable to write rerere record"
 msgstr "impossibile scrivere il record rerere"
 
-#: rerere.c:485 rerere.c:692 sequencer.c:3186 sequencer.c:3212
-#: builtin/fsck.c:314
-#, c-format
-msgid "could not write '%s'"
-msgstr "impossibile scrivere '%s'"
-
 #: rerere.c:495
 #, c-format
 msgid "there were errors while writing '%s' (%s)"
@@ -4884,8 +6479,7 @@ msgstr "scrittura di '%s' non riuscita"
 #: rerere.c:714
 #, c-format
 msgid "Staged '%s' using previous resolution."
-msgstr ""
-"'%s' aggiunto all'area di staging utilizzando la risoluzione precedente."
+msgstr "'%s' aggiunto all'area di staging usando la risoluzione precedente."
 
 #: rerere.c:753
 #, c-format
@@ -4895,7 +6489,7 @@ msgstr "Risoluzione per '%s' registrata."
 #: rerere.c:788
 #, c-format
 msgid "Resolved '%s' using previous resolution."
-msgstr "Risolto conflitto in '%s' utilizzando la risoluzione precedente."
+msgstr "Risolto conflitto in '%s' usando la risoluzione precedente."
 
 #: rerere.c:803
 #, c-format
@@ -4907,8 +6501,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:2012 builtin/submodule--helper.c:1417
-#: builtin/submodule--helper.c:1427
+#: rerere.c:881 submodule.c:2078 builtin/log.c:1871
+#: builtin/submodule--helper.c:1454 builtin/submodule--helper.c:1466
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "impossibile creare la directory '%s'"
@@ -4942,29 +6536,33 @@ msgstr "Risoluzione per '%s' dimenticata\n"
 msgid "unable to open rr-cache directory"
 msgstr "impossibile aprire la directory cache rr"
 
-#: revision.c:2484
+#: revision.c:2497
 msgid "your current branch appears to be broken"
-msgstr "sembra che il tuo branch attuale sia rotto"
+msgstr "sembra che il tuo branch corrente sia rotto"
 
-#: revision.c:2487
+#: revision.c:2500
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
-msgstr "il tuo branch attuale '%s' non ha ancora commit"
+msgstr "il tuo branch corrente '%s' non ha ancora commit"
 
-#: revision.c:2684
+#: revision.c:2708
 msgid "--first-parent is incompatible with --bisect"
 msgstr "--first-parent non è compatibile con --bisect"
 
-#: run-command.c:742
+#: revision.c:2712
+msgid "-L does not yet support diff formats besides -p and -s"
+msgstr "-L non supporta ancora formati diff oltre a -p e -s"
+
+#: run-command.c:763
 msgid "open /dev/null failed"
 msgstr "apertura di /dev/null non riuscita"
 
-#: run-command.c:1231
+#: run-command.c:1269
 #, c-format
 msgid "cannot create async thread: %s"
 msgstr "impossibile creare il thread async: %s"
 
-#: run-command.c:1295
+#: run-command.c:1333
 #, c-format
 msgid ""
 "The '%s' hook was ignored because it's not set as executable.\n"
@@ -4973,31 +6571,31 @@ msgstr ""
 "L'hook '%s' è stato ignorato perché non è impostato come eseguibile.\n"
 "Puoi disabilitare quest'avviso con `git config advice.ignoredHook false`."
 
-#: send-pack.c:141
+#: send-pack.c:144
 msgid "unexpected flush packet while reading remote unpack status"
 msgstr ""
 "pacchetto flush inatteso durante la lettura dello stato decompressione del "
 "remoto"
 
-#: send-pack.c:143
+#: send-pack.c:146
 #, c-format
 msgid "unable to parse remote unpack status: %s"
 msgstr "impossibile analizzare lo stato decompressione del remoto: %s"
 
-#: send-pack.c:145
+#: send-pack.c:148
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr "decompressione sul remoto non riuscita: %s"
 
-#: send-pack.c:306
+#: send-pack.c:309
 msgid "failed to sign the push certificate"
 msgstr "firma del certificato per il push non riuscita"
 
-#: send-pack.c:420
+#: send-pack.c:423
 msgid "the receiving end does not support --signed push"
 msgstr "il ricevente non supporta i push --signed"
 
-#: send-pack.c:422
+#: send-pack.c:425
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
@@ -5005,42 +6603,47 @@ msgstr ""
 "non invio un certificato push perché il ricevente non supporta i push --"
 "signed"
 
-#: send-pack.c:434
+#: send-pack.c:437
 msgid "the receiving end does not support --atomic push"
 msgstr "il ricevente non supporta i push --atomic"
 
-#: send-pack.c:439
+#: send-pack.c:442
 msgid "the receiving end does not support push options"
 msgstr "il ricevente non supporta le opzioni push"
 
-#: sequencer.c:184
+#: sequencer.c:191
 #, c-format
 msgid "invalid commit message cleanup mode '%s'"
 msgstr "modalità pulizia messaggio commit non valida: '%s'"
 
-#: sequencer.c:288
+#: sequencer.c:296
 #, c-format
 msgid "could not delete '%s'"
 msgstr "impossibile eliminare '%s'"
 
-#: sequencer.c:314
+#: sequencer.c:315 builtin/rebase.c:785 builtin/rebase.c:1750 builtin/rm.c:385
+#, c-format
+msgid "could not remove '%s'"
+msgstr "impossibile rimuovere '%s'"
+
+#: sequencer.c:325
 msgid "revert"
 msgstr "revert"
 
-#: sequencer.c:316
+#: sequencer.c:327
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:318
-msgid "rebase -i"
-msgstr "rebase -i"
+#: sequencer.c:329
+msgid "rebase"
+msgstr "rebase"
 
-#: sequencer.c:320
+#: sequencer.c:331
 #, c-format
 msgid "unknown action: %d"
 msgstr "azione sconosciuta: %d"
 
-#: sequencer.c:378
+#: sequencer.c:389
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -5048,7 +6651,7 @@ msgstr ""
 "dopo aver risolto i conflitti, contrassegna i percorsi corretti\n"
 "con 'git add <path>' o 'git rm <path>'"
 
-#: sequencer.c:381
+#: sequencer.c:392
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -5058,110 +6661,110 @@ msgstr ""
 "con 'git add <path>' o 'git rm <path>' ed esegui\n"
 "il commit del risultato con 'git commit'"
 
-#: sequencer.c:394 sequencer.c:2671
+#: sequencer.c:405 sequencer.c:2901
 #, c-format
 msgid "could not lock '%s'"
 msgstr "impossibile bloccare '%s'"
 
-#: sequencer.c:401
+#: sequencer.c:412
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "impossibile scrivere il carattere di fine riga in '%s'"
 
-#: sequencer.c:406 sequencer.c:2554 sequencer.c:2677 sequencer.c:2691
-#: sequencer.c:2931
+#: sequencer.c:417 sequencer.c:2706 sequencer.c:2907 sequencer.c:2921
+#: sequencer.c:3185
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr "finalizzazione di '%s' non riuscita"
 
-#: sequencer.c:429 sequencer.c:931 sequencer.c:1615 sequencer.c:2574
-#: sequencer.c:2913 sequencer.c:3022 builtin/am.c:245 builtin/commit.c:748
-#: builtin/merge.c:1085 builtin/rebase.c:154
+#: sequencer.c:440 sequencer.c:1613 sequencer.c:2726 sequencer.c:3167
+#: sequencer.c:3276 builtin/am.c:249 builtin/commit.c:787 builtin/merge.c:1120
+#: builtin/rebase.c:593
 #, c-format
 msgid "could not read '%s'"
 msgstr "impossibile leggere '%s'"
 
-#: sequencer.c:455
+#: sequencer.c:466
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "le tue modifiche locali sarebbero sovrascritte da %s."
 
-#: sequencer.c:459
+#: sequencer.c:470
 msgid "commit your changes or stash them to proceed."
 msgstr "esegui il commit delle modifiche o lo stash per procedere."
 
-#: sequencer.c:491
+#: sequencer.c:502
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s: fast forward"
 
+#: sequencer.c:541 builtin/tag.c:565
+#, c-format
+msgid "Invalid cleanup mode %s"
+msgstr "Modalità pulizia non valida: %s"
+
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
-#. "rebase -i".
+#. "rebase".
 #.
-#: sequencer.c:582
+#: sequencer.c:635
 #, c-format
 msgid "%s: Unable to write new index file"
-msgstr "%s: impossibile scrivere il nuovo file index"
+msgstr "%s: impossibile scrivere il nuovo file indice"
 
-#: sequencer.c:598
+#: sequencer.c:652
 msgid "unable to update cache tree"
 msgstr "impossibile aggiornare l'albero cache"
 
-#: sequencer.c:612
+#: sequencer.c:666
 msgid "could not resolve HEAD commit"
 msgstr "impossibile risolvere il commit HEAD"
 
-#: sequencer.c:692
+#: sequencer.c:746
 #, c-format
 msgid "no key present in '%.*s'"
 msgstr "nessuna chiave presente in '%.*s'"
 
-#: sequencer.c:703
+#: sequencer.c:757
 #, c-format
 msgid "unable to dequote value of '%s'"
 msgstr "impossibile rimuovere gli apici dal valore di '%s'"
 
-#: sequencer.c:740 wrapper.c:227 wrapper.c:397 builtin/am.c:704
-#: builtin/am.c:796 builtin/merge.c:1082 builtin/rebase.c:617
+#: sequencer.c:794 wrapper.c:190 wrapper.c:360 builtin/am.c:710
+#: builtin/am.c:802 builtin/merge.c:1117 builtin/rebase.c:1072
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "impossibile aprire '%s' in lettura"
 
-#: sequencer.c:750
+#: sequencer.c:804
 msgid "'GIT_AUTHOR_NAME' already given"
-msgstr "'GIT_AUTHOR_NAME' già fornito"
+msgstr "'GIT_AUTHOR_NAME' già specificato"
 
-#: sequencer.c:755
+#: sequencer.c:809
 msgid "'GIT_AUTHOR_EMAIL' already given"
-msgstr "'GIT_AUTHOR_EMAIL' già fornito"
+msgstr "'GIT_AUTHOR_EMAIL' già specificato"
 
-#: sequencer.c:760
+#: sequencer.c:814
 msgid "'GIT_AUTHOR_DATE' already given"
-msgstr "'GIT_AUTHOR_DATE' già fornito"
+msgstr "'GIT_AUTHOR_DATE' già specificato"
 
-#: sequencer.c:764
+#: sequencer.c:818
 #, c-format
 msgid "unknown variable '%s'"
 msgstr "variabile '%s' sconosciuta"
 
-#: sequencer.c:769
+#: sequencer.c:823
 msgid "missing 'GIT_AUTHOR_NAME'"
 msgstr "'GIT_AUTHOR_NAME' mancante"
 
-#: sequencer.c:771
+#: sequencer.c:825
 msgid "missing 'GIT_AUTHOR_EMAIL'"
 msgstr "'GIT_AUTHOR_EMAIL' mancante"
 
-#: sequencer.c:773
+#: sequencer.c:827
 msgid "missing 'GIT_AUTHOR_DATE'"
 msgstr "'GIT_AUTHOR_DATE' mancante"
 
-#: sequencer.c:833
-#, c-format
-msgid "invalid date format '%s' in '%s'"
-msgstr "formato data '%s' non valido in '%s'"
-
-#: sequencer.c:850
+#: sequencer.c:876
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -5191,15 +6794,11 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:945
-msgid "writing root commit"
-msgstr "scrittura commit radice in corso"
-
-#: sequencer.c:1155
+#: sequencer.c:1148
 msgid "'prepare-commit-msg' hook failed"
 msgstr "hook 'prepare-commit-msg' non riuscito"
 
-#: sequencer.c:1162
+#: sequencer.c:1154
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -5213,20 +6812,20 @@ msgid ""
 "\n"
 "    git commit --amend --reset-author\n"
 msgstr ""
-"Il tuo nome e l'indirizzo email sono stati configurati "
-"automaticamenteusando\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 "
-"commitcon:\n"
+"Dopo questa operazione, puoi ripristinare l'identità usata in questo commit "
+"con:\n"
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1175
+#: sequencer.c:1167
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -5239,311 +6838,364 @@ msgid ""
 "\n"
 "    git commit --amend --reset-author\n"
 msgstr ""
-"Il tuo nome e l'indirizzo email sono stati configurati "
-"automaticamenteusando\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 "
-"commitcon:\n"
+"Dopo questa operazione, puoi ripristinare l'identità usata in questo commit "
+"con:\n"
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1217
+#: sequencer.c:1209
 msgid "couldn't look up newly created commit"
 msgstr "impossibile trovare il commit appena creato"
 
-#: sequencer.c:1219
+#: sequencer.c:1211
 msgid "could not parse newly created commit"
 msgstr "impossibile analizzare il commit appena creato"
 
-#: sequencer.c:1265
+#: sequencer.c:1257
 msgid "unable to resolve HEAD after creating commit"
 msgstr "impossibile risolvere HEAD dopo la creazione del commit"
 
-#: sequencer.c:1267
+#: sequencer.c:1259
 msgid "detached HEAD"
 msgstr "HEAD scollegato"
 
-#: sequencer.c:1271
+#: sequencer.c:1263
 msgid " (root-commit)"
 msgstr " (commit radice)"
 
-#: sequencer.c:1292
+#: sequencer.c:1284
 msgid "could not parse HEAD"
 msgstr "impossibile analizzare HEAD"
 
-#: sequencer.c:1294
+#: sequencer.c:1286
 #, c-format
 msgid "HEAD %s is not a commit!"
 msgstr "L'HEAD %s non è un commit!"
 
-#: sequencer.c:1298 builtin/commit.c:1546
+#: sequencer.c:1290 sequencer.c:1364 builtin/commit.c:1574
 msgid "could not parse HEAD commit"
 msgstr "impossibile analizzare il commit HEAD"
 
-#: sequencer.c:1350 sequencer.c:1964
+#: sequencer.c:1342 sequencer.c:1968
 msgid "unable to parse commit author"
 msgstr "impossibile analizzare l'autore del commit"
 
-#: sequencer.c:1360 builtin/am.c:1570 builtin/merge.c:678
+#: sequencer.c:1353 builtin/am.c:1566 builtin/merge.c:687
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree non è riuscito a scrivere un albero"
 
-#: sequencer.c:1377 sequencer.c:1433
+#: sequencer.c:1386 sequencer.c:1447
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr "impossibile leggere il messaggio di commit da '%s'"
 
-#: sequencer.c:1399 builtin/am.c:1591 builtin/commit.c:1649 builtin/merge.c:859
-#: builtin/merge.c:884
+#: sequencer.c:1413 builtin/am.c:1588 builtin/commit.c:1673 builtin/merge.c:886
+#: builtin/merge.c:911
 msgid "failed to write commit object"
 msgstr "scrittura dell'oggetto del commit non riuscita"
 
-#: sequencer.c:1460
+#: sequencer.c:1474
 #, c-format
 msgid "could not parse commit %s"
 msgstr "impossibile analizzare il commit %s"
 
-#: sequencer.c:1465
+#: sequencer.c:1479
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr "impossibile analizzare il commit genitore %s"
 
-#: sequencer.c:1565 sequencer.c:1675
+#: sequencer.c:1562 sequencer.c:1673
 #, c-format
 msgid "unknown command: %d"
 msgstr "comando sconosciuto: %d"
 
-#: sequencer.c:1622 sequencer.c:1647
+#: sequencer.c:1620 sequencer.c:1645
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Questa è una combinazione di %d commit."
 
-#: sequencer.c:1632 sequencer.c:4808
+#: sequencer.c:1630
 msgid "need a HEAD to fixup"
 msgstr "è necessaria un'HEAD per il fixup"
 
-#: sequencer.c:1634 sequencer.c:2958
+#: sequencer.c:1632 sequencer.c:3212
 msgid "could not read HEAD"
 msgstr "impossibile leggere l'HEAD"
 
-#: sequencer.c:1636
+#: sequencer.c:1634
 msgid "could not read HEAD's commit message"
 msgstr "impossibile leggere il messaggio di commit dell'HEAD"
 
-#: sequencer.c:1642
+#: sequencer.c:1640
 #, c-format
 msgid "cannot write '%s'"
 msgstr "impossibile scrivere '%s'"
 
-#: sequencer.c:1649 git-rebase--preserve-merges.sh:441
+#: sequencer.c:1647 git-rebase--preserve-merges.sh:496
 msgid "This is the 1st commit message:"
 msgstr "Questo è il primo messaggio di commit:"
 
-#: sequencer.c:1657
+#: sequencer.c:1655
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "impossibile leggere il messaggio di commit di %s"
 
-#: sequencer.c:1664
+#: sequencer.c:1662
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Questo è il messaggio di commit numero %d:"
 
-#: sequencer.c:1670
+#: sequencer.c:1668
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Il messaggio di commit numero %d sarà saltato:"
 
-#: sequencer.c:1758
+#: sequencer.c:1756
 msgid "your index file is unmerged."
-msgstr "il file index non è stato sottoposto a merge."
+msgstr "il file indice non è stato sottoposto a merge."
 
-#: sequencer.c:1765
+#: sequencer.c:1763
 msgid "cannot fixup root commit"
 msgstr "impossibile eseguire il fixup sul commit radice"
 
-#: sequencer.c:1784
+#: sequencer.c:1782
 #, 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:1792 sequencer.c:1800
+#: sequencer.c:1790 sequencer.c:1798
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "il commit %s non ha il genitore %d"
 
-#: sequencer.c:1806
+#: sequencer.c:1804
 #, 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:1825
+#: sequencer.c:1823
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s: impossibile analizzare il commit genitore %s"
 
-#: sequencer.c:1890
+#: sequencer.c:1888
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "impossibile ridenominare '%s' in '%s'"
 
-#: sequencer.c:1945
+#: sequencer.c:1943
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "non è stato possibile eseguire il revert di %s... %s"
 
-#: sequencer.c:1946
+#: sequencer.c:1944
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "non è stato possibile applicare %s... %s"
 
-#: sequencer.c:2005
+#: sequencer.c:1961
+#, c-format
+msgid "dropping %s %s -- patch contents already upstream\n"
+msgstr "scarto %s %s - i contenuti della patch sono già upstream\n"
+
+#: sequencer.c:2018
 #, c-format
 msgid "git %s: failed to read the index"
-msgstr "git %s: lettura di index non riuscita"
+msgstr "git %s: lettura dell'indice non riuscita"
 
-#: sequencer.c:2012
+#: sequencer.c:2025
 #, c-format
 msgid "git %s: failed to refresh the index"
-msgstr "git %s: aggiornamento di index non riuscito"
+msgstr "git %s: aggiornamento dell'indice non riuscito"
 
-#: sequencer.c:2094
+#: sequencer.c:2102
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s non accetta argomenti: '%s'"
 
-#: sequencer.c:2103
+#: sequencer.c:2111
 #, c-format
 msgid "missing arguments for %s"
 msgstr "argomenti mancanti per %s"
 
-#: sequencer.c:2163
+#: sequencer.c:2142
+#, c-format
+msgid "could not parse '%s'"
+msgstr "impossibile analizzare '%s'"
+
+#: sequencer.c:2203
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "riga %d non valida: %.*s"
 
-#: sequencer.c:2171
+#: sequencer.c:2214
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "impossibile eseguire '%s' senza un commit precedente"
 
-#: sequencer.c:2243
+#: sequencer.c:2298
+msgid "cancelling a cherry picking in progress"
+msgstr "annullo un'operazione di cherry-pick in corso"
+
+#: sequencer.c:2305
+msgid "cancelling a revert in progress"
+msgstr "annullo un'operazione di revert in corso"
+
+#: sequencer.c:2349
 msgid "please fix this using 'git rebase --edit-todo'."
-msgstr "correggi la situazione utilizzando 'git rebase --edit-todo'."
+msgstr "correggi la situazione usando 'git rebase --edit-todo'."
 
-#: sequencer.c:2245
+#: sequencer.c:2351
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "foglio istruzioni inutilizzabile: '%s'"
 
-#: sequencer.c:2250
+#: sequencer.c:2356
 msgid "no commits parsed."
 msgstr "nessun commit analizzato."
 
-#: sequencer.c:2261
+#: sequencer.c:2367
 msgid "cannot cherry-pick during a revert."
 msgstr "impossibile eseguire un cherry-pick durante un revert."
 
-#: sequencer.c:2263
+#: sequencer.c:2369
 msgid "cannot revert during a cherry-pick."
 msgstr "impossibile eseguire un revert durante un cherry-pick."
 
-#: sequencer.c:2333
+#: sequencer.c:2447
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "valore non valido per %s: %s"
 
-#: sequencer.c:2420
+#: sequencer.c:2540
 msgid "unusable squash-onto"
 msgstr "squash-onto inutilizzabile"
 
-#: sequencer.c:2436
+#: sequencer.c:2556
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "foglio opzioni malformati: '%s'"
 
-#: sequencer.c:2518 sequencer.c:4067
+#: sequencer.c:2644 sequencer.c:4361
 msgid "empty commit set passed"
 msgstr "è stato passato un insieme di commit vuoto"
 
-#: sequencer.c:2526
-msgid "a cherry-pick or revert is already in progress"
-msgstr "è già in corso un'operazione di cherry-pick o di revert"
+#: sequencer.c:2660
+msgid "revert is already in progress"
+msgstr "un'operazione di revert è già in corso"
+
+#: sequencer.c:2662
+#, c-format
+msgid "try \"git revert (--continue | %s--abort | --quit)\""
+msgstr "prova \"git revert (--continue | %s--abort | --quit)\""
+
+#: sequencer.c:2665
+msgid "cherry-pick is already in progress"
+msgstr "un'operazione di cherry-pick è già in corso"
 
-#: sequencer.c:2527
-msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
-msgstr "prova \"git cherry-pick (--continue | --quit | -- abort)\""
+#: sequencer.c:2667
+#, c-format
+msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
+msgstr "prova \"git cherry-pick (--continue | %s--abort | --quit)\""
 
-#: sequencer.c:2530
+#: sequencer.c:2681
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "impossibile creare la directory sequencer '%s'"
 
-#: sequencer.c:2544
+#: sequencer.c:2696
 msgid "could not lock HEAD"
 msgstr "impossibile bloccare HEAD"
 
-#: sequencer.c:2599 sequencer.c:3819
+#: sequencer.c:2756 sequencer.c:4099
 msgid "no cherry-pick or revert in progress"
 msgstr "nessuna operazione di cherry-pick o revert in corso"
 
-#: sequencer.c:2601
+#: sequencer.c:2758 sequencer.c:2769
 msgid "cannot resolve HEAD"
 msgstr "impossibile risolvere HEAD"
 
-#: sequencer.c:2603 sequencer.c:2638
+#: sequencer.c:2760 sequencer.c:2804
 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:2624 builtin/grep.c:732
+#: sequencer.c:2790 builtin/grep.c:724
 #, c-format
 msgid "cannot open '%s'"
 msgstr "impossibile aprire '%s'"
 
-#: sequencer.c:2626
+#: sequencer.c:2792
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "impossibile leggere '%s': %s"
 
-#: sequencer.c:2627
+#: sequencer.c:2793
 msgid "unexpected end of file"
 msgstr "fine del file inattesa"
 
-#: sequencer.c:2633
+#: sequencer.c:2799
 #, 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:2644
+#: sequencer.c:2810
 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:2750 sequencer.c:3735
+#: sequencer.c:2851
+msgid "no revert in progress"
+msgstr "nessun revert in corso"
+
+#: sequencer.c:2859
+msgid "no cherry-pick in progress"
+msgstr "nessun cherry-pick in corso"
+
+#: sequencer.c:2869
+msgid "failed to skip the commit"
+msgstr "salto del commit non riuscito"
+
+#: sequencer.c:2876
+msgid "there is nothing to skip"
+msgstr "non c'è nulla da saltare"
+
+#: sequencer.c:2879
+#, 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:3003 sequencer.c:4011
 #, c-format
 msgid "could not update %s"
 msgstr "impossibile aggiornare %s"
 
-#: sequencer.c:2788 sequencer.c:3715
+#: sequencer.c:3042 sequencer.c:3991
 msgid "cannot read HEAD"
 msgstr "impossibile leggere l'HEAD"
 
-#: sequencer.c:2805
+#: sequencer.c:3059
 #, c-format
 msgid "unable to copy '%s' to '%s'"
 msgstr "impossibile copiare '%s' in '%s'"
 
-#: sequencer.c:2813
+#: sequencer.c:3067
 #, c-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -5562,27 +7214,22 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:2823
+#: sequencer.c:3077
 #, c-format
 msgid "Could not apply %s... %.*s"
 msgstr "Impossibile applicare %s... %.*s"
 
-#: sequencer.c:2830
+#: sequencer.c:3084
 #, c-format
 msgid "Could not merge %.*s"
 msgstr "Impossibile eseguire il merge di %.*s"
 
-#: sequencer.c:2844 sequencer.c:2848 builtin/difftool.c:641
+#: sequencer.c:3098 sequencer.c:3102 builtin/difftool.c:641
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "impossibile copiare '%s' in '%s'"
 
-#: sequencer.c:2870 sequencer.c:3293 builtin/rebase.c:424 builtin/rebase.c:1230
-#: builtin/rebase.c:1591 builtin/rebase.c:1646
-msgid "could not read index"
-msgstr "impossibile leggere l'indice"
-
-#: sequencer.c:2875
+#: sequencer.c:3129
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -5597,11 +7244,11 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:2881
+#: sequencer.c:3135
 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:2887
+#: sequencer.c:3141
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -5618,76 +7265,72 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:2948
+#: sequencer.c:3202
 #, c-format
 msgid "illegal label name: '%.*s'"
 msgstr "nome etichetta illecito: '%.*s'"
 
-#: sequencer.c:3002
+#: sequencer.c:3256
 msgid "writing fake root commit"
 msgstr "scrittura commit radice falso in corso"
 
-#: sequencer.c:3007
+#: sequencer.c:3261
 msgid "writing squash-onto"
 msgstr "scrittura squash-onto in corso"
 
-#: sequencer.c:3045 builtin/rebase.c:429 builtin/rebase.c:435
+#: sequencer.c:3299 builtin/rebase.c:880 builtin/rebase.c:886
 #, c-format
 msgid "failed to find tree of %s"
 msgstr "impossibile trovare l'albero di %s"
 
-#: sequencer.c:3063 builtin/rebase.c:448
-msgid "could not write index"
-msgstr "impossibile scrivere l'indice"
-
-#: sequencer.c:3090
+#: sequencer.c:3344
 #, c-format
 msgid "could not resolve '%s'"
 msgstr "impossibile risolvere '%s'"
 
-#: sequencer.c:3118
+#: sequencer.c:3375
 msgid "cannot merge without a current revision"
-msgstr "impossibile eseguire il merge senza una revisione attuale"
+msgstr "impossibile eseguire il merge senza una revisione corrente"
 
-#: sequencer.c:3140
+#: sequencer.c:3397
 #, c-format
 msgid "unable to parse '%.*s'"
 msgstr "impossibile analizzare '%.*s'"
 
-#: sequencer.c:3149
+#: sequencer.c:3406
 #, c-format
 msgid "nothing to merge: '%.*s'"
 msgstr "non c'è nulla di cui eseguire il merge: '%.*s'"
 
-#: sequencer.c:3161
+#: sequencer.c:3418
 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:3176
+#: sequencer.c:3434
 #, c-format
 msgid "could not get commit message of '%s'"
 msgstr "impossibile ottenere il messaggio di commit per '%s'"
 
-#: sequencer.c:3325
+#: sequencer.c:3594
 #, c-format
 msgid "could not even attempt to merge '%.*s'"
-msgstr "non è stato nemmeno possibile tentare di eseguire il mege di '%.*s'"
+msgstr "non è stato nemmeno possibile tentare di eseguire il merge di '%.*s'"
 
-#: sequencer.c:3341
+#: sequencer.c:3610
 msgid "merge: Unable to write new index file"
-msgstr "merge: impossibile scrivere il nuovo file index"
+msgstr "merge: impossibile scrivere il nuovo file indice"
 
-#: sequencer.c:3409 builtin/rebase.c:298
+#: sequencer.c:3679 builtin/rebase.c:737
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Stash automatico applicato.\n"
 
-#: sequencer.c:3421
+#: sequencer.c:3691
 #, c-format
 msgid "cannot store %s"
 msgstr "impossibile memorizzare %s"
 
-#: sequencer.c:3424 builtin/rebase.c:314
+#: sequencer.c:3694 builtin/rebase.c:753 git-rebase--preserve-merges.sh:113
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -5698,31 +7341,26 @@ 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:3478
-#, c-format
-msgid "could not checkout %s"
-msgstr "impossibile eseguire il checkout di %s"
-
-#: sequencer.c:3492
+#: sequencer.c:3755
 #, c-format
 msgid "%s: not a valid OID"
 msgstr "%s: non è un OID valido"
 
-#: sequencer.c:3497 git-rebase--preserve-merges.sh:724
+#: sequencer.c:3760 git-rebase--preserve-merges.sh:779
 msgid "could not detach HEAD"
 msgstr "impossibile scollegare l'HEAD"
 
-#: sequencer.c:3512
+#: sequencer.c:3775
 #, c-format
 msgid "Stopped at HEAD\n"
 msgstr "Fermato a HEAD\n"
 
-#: sequencer.c:3514
+#: sequencer.c:3777
 #, c-format
 msgid "Stopped at %s\n"
 msgstr "Fermato a %s\n"
 
-#: sequencer.c:3522
+#: sequencer.c:3785
 #, c-format
 msgid ""
 "Could not execute the todo command\n"
@@ -5744,49 +7382,49 @@ msgstr ""
 "    git rebase --edit-todo\n"
 "    git rebase --continue\n"
 
-#: sequencer.c:3597
+#: sequencer.c:3869
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "Fermato a %s... %.*s\n"
 
-#: sequencer.c:3677
+#: sequencer.c:3940
 #, c-format
 msgid "unknown command %d"
 msgstr "comando %d sconosciuto"
 
-#: sequencer.c:3723
+#: sequencer.c:3999
 msgid "could not read orig-head"
 msgstr "impossibile leggere orig-head"
 
-#: sequencer.c:3728 sequencer.c:4805
+#: sequencer.c:4004
 msgid "could not read 'onto'"
 msgstr "impossibile leggere 'onto'"
 
-#: sequencer.c:3742
+#: sequencer.c:4018
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "impossibile aggiornare l'HEAD a %s"
 
-#: sequencer.c:3831
+#: sequencer.c:4111
 msgid "cannot rebase: You have unstaged changes."
 msgstr ""
 "impossibile eseguire il rebase: ci sono delle modifiche non in staging."
 
-#: sequencer.c:3840
+#: sequencer.c:4120
 msgid "cannot amend non-existing commit"
 msgstr "impossibile modificare un commit inesistente"
 
-#: sequencer.c:3842
+#: sequencer.c:4122
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "file non valido: '%s'"
 
-#: sequencer.c:3844
+#: sequencer.c:4124
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "contenuti non validi: '%s'"
 
-#: sequencer.c:3847
+#: sequencer.c:4127
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -5797,137 +7435,69 @@ msgstr ""
 "di lavoro. Eseguine prima il commit e quindi esegui nuovamente 'git rebase\n"
 "--continue'."
 
-#: sequencer.c:3883 sequencer.c:3921
+#: sequencer.c:4163 sequencer.c:4202
 #, c-format
 msgid "could not write file: '%s'"
 msgstr "impossibile scrivere il file: '%s'"
 
-#: sequencer.c:3936
+#: sequencer.c:4217
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "impossibile rimuovere CHERRY_PICK_HEAD"
 
-#: sequencer.c:3943
+#: sequencer.c:4224
 msgid "could not commit staged changes."
 msgstr "impossibile eseguire il commit delle modifiche in staging."
 
-#: sequencer.c:4044
+#: sequencer.c:4338
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s: impossibile eseguire il cherry pick di un %s"
 
-#: sequencer.c:4048
+#: sequencer.c:4342
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s: revisione non valida"
 
-#: sequencer.c:4083
+#: sequencer.c:4377
 msgid "can't revert as initial commit"
 msgstr "impossibile eseguire il revert come commit iniziale"
 
-#: sequencer.c:4529
+#: sequencer.c:4846
 msgid "make_script: unhandled options"
 msgstr "make_script: opzioni non gestite"
 
-#: sequencer.c:4532
-msgid "make_script: error preparing revisions"
-msgstr "make_script: errore durante la preparazione delle revisioni"
-
-#: sequencer.c:4573 sequencer.c:4629 sequencer.c:4904
-#, c-format
-msgid "unusable todo list: '%s'"
-msgstr "elenco todo inutilizzabile: '%s'"
-
-#: sequencer.c:4684
-#, c-format
-msgid ""
-"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
-msgstr ""
-"impostazione %s non riconosciuta per l'opzione rebase.missingCommitsCheck. "
-"La ignoro."
-
-#: sequencer.c:4754
-#, c-format
-msgid ""
-"Warning: some commits may have been dropped accidentally.\n"
-"Dropped commits (newer to older):\n"
-msgstr ""
-"Attenzione: è possibile che alcuni commit siano stati scartati "
-"accidentalmente.\n"
-"Commit scartati (dal più al meno recente):\n"
-
-#: sequencer.c:4761
-#, c-format
-msgid ""
-"To avoid this message, use \"drop\" to explicitly remove a commit.\n"
-"\n"
-"Use 'git config rebase.missingCommitsCheck' to change the level of "
-"warnings.\n"
-"The possible behaviours are: ignore, warn, error.\n"
-"\n"
-msgstr ""
-"Per evitare questo messaggio, utilizza \"drop\" per rimuovere un commit\n"
-"esplicitamente.\n"
-"\n"
-"Utilizza 'git config rebase.missingCommitsCheck' per modificare il livello\n"
-"degli avvisi.\n"
-"I comportamenti possibili sono ignore, warn, error.\n"
-"\n"
-
-#: sequencer.c:4774
-#, c-format
-msgid ""
-"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
-"continue'.\n"
-"Or you can abort the rebase with 'git rebase --abort'.\n"
-msgstr ""
-"Puoi correggere questa situazione con 'git rebase --edit-todo' e quindi "
-"eseguire 'git rebase --continue'.\n"
-"Oppure puoi interrompere il rebase con 'git rebase --abort'.\n"
-
-#: sequencer.c:4912 sequencer.c:4950
-msgid "nothing to do"
-msgstr "nulla da fare"
-
-#: sequencer.c:4916
-#, c-format
-msgid "Rebase %s onto %s (%d command)"
-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)"
-
-#: sequencer.c:4928
-#, c-format
-msgid "could not copy '%s' to '%s'."
-msgstr "impossibile copiare '%s' in '%s'."
+#: sequencer.c:4849
+msgid "make_script: error preparing revisions"
+msgstr "make_script: errore durante la preparazione delle revisioni"
 
-#: sequencer.c:4932 sequencer.c:4961
-msgid "could not transform the todo list"
-msgstr "impossibile trasformare l'elenco todo"
+#: sequencer.c:5083 sequencer.c:5100
+msgid "nothing to do"
+msgstr "nulla da fare"
 
-#: sequencer.c:4964
+#: sequencer.c:5119
 msgid "could not skip unnecessary pick commands"
 msgstr "impossibile saltare i comandi pick non necessari"
 
-#: sequencer.c:5047
+#: sequencer.c:5213
 msgid "the script was already rearranged."
 msgstr "lo script è già stato riordinato."
 
-#: setup.c:123
+#: setup.c:124
 #, c-format
-msgid "'%s' is outside repository"
-msgstr "'%s' è al di fuori del repository"
+msgid "'%s' is outside repository at '%s'"
+msgstr "'%s' è al di fuori del repository in '%s'"
 
-#: setup.c:172
+#: setup.c:175
 #, c-format
 msgid ""
 "%s: no such path in the working tree.\n"
 "Use 'git <command> -- <path>...' to specify paths that do not exist locally."
 msgstr ""
 "%s: percorso non esistente nell'albero di lavoro.\n"
-"Utilizza 'git <comando> -- <percorso>...' per specificare percorsi non "
-"esistenti localmente."
+"Usa 'git <comando> -- <percorso>...' per specificare percorsi non esistenti "
+"localmente."
 
-#: setup.c:185
+#: setup.c:188
 #, c-format
 msgid ""
 "ambiguous argument '%s': unknown revision or path not in the working tree.\n"
@@ -5936,17 +7506,17 @@ msgid ""
 msgstr ""
 "argomento '%s' ambiguo: revisione sconosciuta o percorso non nell'albero di "
 "lavoro.\n"
-"Utilizza '--' per separare i percorsi dalle revisioni, come segue:\n"
+"Usa '--' per separare i percorsi dalle revisioni, come segue:\n"
 "'git <comando> [<revisione>...] -- [<file>...]'"
 
-#: setup.c:234
+#: setup.c:254
 #, c-format
 msgid "option '%s' must come before non-option arguments"
 msgstr ""
 "l'opzione '%s' deve essere specificata prima degli argomenti che non "
 "costituiscono un'opzione"
 
-#: setup.c:253
+#: setup.c:273
 #, c-format
 msgid ""
 "ambiguous argument '%s': both revision and filename\n"
@@ -5954,97 +7524,96 @@ msgid ""
 "'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
 "argomento '%s' ambiguo: è sia una revisione sia un nome file\n"
-"Utilizza '--' per separare i percorsi dalle revisioni, come segue:\n"
+"Usa '--' per separare i percorsi dalle revisioni, come segue:\n"
 "'git <comando> [<revisione>...] -- [<file>...]'"
 
-#: setup.c:389
+#: setup.c:409
 msgid "unable to set up work tree using invalid config"
 msgstr ""
-"impossibile preparare l'albero di lavoro utilizzando una configurazione non "
-"valida"
+"impossibile preparare l'albero di lavoro usando una configurazione non valida"
 
-#: setup.c:393
+#: setup.c:413
 msgid "this operation must be run in a work tree"
 msgstr "quest'operazione deve essere eseguita in un albero di lavoro"
 
-#: setup.c:527
+#: setup.c:559
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr "Attesa versione repository Git <= %d, trovata %d"
 
-#: setup.c:535
+#: setup.c:567
 msgid "unknown repository extensions found:"
 msgstr "trovate estensioni repository sconosciute:"
 
-#: setup.c:554
+#: setup.c:586
 #, c-format
 msgid "error opening '%s'"
 msgstr "errore durante l'apertura di '%s'"
 
-#: setup.c:556
+#: setup.c:588
 #, c-format
 msgid "too large to be a .git file: '%s'"
 msgstr "'%s' troppo grande per essere un file .git"
 
-#: setup.c:558
+#: setup.c:590
 #, c-format
 msgid "error reading %s"
 msgstr "errore durante la lettura di %s"
 
-#: setup.c:560
+#: setup.c:592
 #, c-format
 msgid "invalid gitfile format: %s"
 msgstr "formato file Git non valido: %s"
 
-#: setup.c:562
+#: setup.c:594
 #, c-format
 msgid "no path in gitfile: %s"
 msgstr "nessun percorso presente nel file Git: %s"
 
-#: setup.c:564
+#: setup.c:596
 #, c-format
 msgid "not a git repository: %s"
 msgstr "%s non è un repository Git"
 
-#: setup.c:663
+#: setup.c:695
 #, c-format
 msgid "'$%s' too big"
 msgstr "'$%s' è troppo grande"
 
-#: setup.c:677
+#: setup.c:709
 #, c-format
 msgid "not a git repository: '%s'"
 msgstr "'%s' non è un repository Git"
 
-#: setup.c:706 setup.c:708 setup.c:739
+#: setup.c:738 setup.c:740 setup.c:771
 #, c-format
 msgid "cannot chdir to '%s'"
 msgstr "impossibile modificare la directory corrente in '%s'"
 
-#: setup.c:711 setup.c:767 setup.c:777 setup.c:816 setup.c:824
+#: setup.c:743 setup.c:799 setup.c:809 setup.c:848 setup.c:856
 msgid "cannot come back to cwd"
 msgstr "impossibile tornare alla directory di lavoro corrente"
 
-#: setup.c:838
+#: setup.c:870
 #, c-format
 msgid "failed to stat '%*s%s%s'"
 msgstr "stat di '%*s%s%s' non riuscito"
 
-#: setup.c:1068
+#: setup.c:1108
 msgid "Unable to read current working directory"
 msgstr "Impossibile leggere la directory di lavoro corrente"
 
-#: setup.c:1077 setup.c:1083
+#: setup.c:1117 setup.c:1123
 #, c-format
 msgid "cannot change to '%s'"
 msgstr "impossibile entrare in '%s'"
 
-#: setup.c:1088
+#: setup.c:1128
 #, c-format
 msgid "not a git repository (or any of the parent directories): %s"
 msgstr "%s non è un repository Git (né lo è alcuna delle directory genitrici)"
 
-#: setup.c:1094
+#: setup.c:1134
 #, c-format
 msgid ""
 "not a git repository (or any parent up to mount point %s)\n"
@@ -6054,7 +7623,7 @@ msgstr ""
 "Mi fermo al limite del filesystem (l'opzione GIT_DISCOVERY_ACROSS_FILESYSTEM "
 "non è impostata)."
 
-#: setup.c:1204
+#: setup.c:1245
 #, c-format
 msgid ""
 "problem with core.sharedRepository filemode value (0%.3o).\n"
@@ -6064,292 +7633,295 @@ msgstr ""
 "(0%.3o).\n"
 "Il proprietario dei file deve avere sempre i permessi di lettura e scrittura."
 
-#: setup.c:1247
+#: setup.c:1289
 msgid "open /dev/null or dup failed"
 msgstr "apertura di /dev/null o dup non riuscita"
 
-#: setup.c:1262
+#: setup.c:1304
 msgid "fork failed"
 msgstr "fork non riuscita"
 
-#: setup.c:1267
+#: setup.c:1309
 msgid "setsid failed"
 msgstr "setsid non riuscita"
 
-#: sha1-file.c:445
+#: sha1-file.c:452
 #, c-format
 msgid "object directory %s does not exist; check .git/objects/info/alternates"
 msgstr ""
 "la directory oggetti %s non esiste; controlla .git/objects/info/alternates"
 
-#: sha1-file.c:496
+#: sha1-file.c:503
 #, c-format
 msgid "unable to normalize alternate object path: %s"
 msgstr "impossibile normalizzare il percorso alternativo oggetto: %s"
 
-#: sha1-file.c:568
+#: sha1-file.c:575
 #, c-format
 msgid "%s: ignoring alternate object stores, nesting too deep"
 msgstr ""
 "%s: ignoro gli archivi oggetto alternativi, la nidificazione è troppo "
 "profonda"
 
-#: sha1-file.c:575
+#: sha1-file.c:582
 #, c-format
 msgid "unable to normalize object directory: %s"
 msgstr "impossibile normalizzare la directory oggetti: %s"
 
-#: sha1-file.c:618
+#: sha1-file.c:625
 msgid "unable to fdopen alternates lockfile"
 msgstr "impossibile eseguire fdopen sul file di lock alternates"
 
-#: sha1-file.c:636
+#: sha1-file.c:643
 msgid "unable to read alternates file"
 msgstr "impossibile leggere il file alternates"
 
-#: sha1-file.c:643
+#: sha1-file.c:650
 msgid "unable to move new alternates file into place"
 msgstr "impossibile spostare il nuovo file alternates nella posizione corretta"
 
-#: sha1-file.c:678
+#: sha1-file.c:685
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "il percorso '%s' non esiste"
 
-#: sha1-file.c:704
+#: sha1-file.c:711
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr ""
 "l'aggiunta del repository di riferimento '%s' come checkout collegato non è "
 "ancora supportata."
 
-#: sha1-file.c:710
+#: sha1-file.c:717
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr "il repository di riferimento '%s' non è un repository locale."
 
-#: sha1-file.c:716
+#: sha1-file.c:723
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "il repository di riferimento '%s' è shallow"
 
-#: sha1-file.c:724
+#: sha1-file.c:731
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "il repository di riferimento '%s' è un graft"
 
-#: sha1-file.c:838
+#: sha1-file.c:791
+#, 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:863
+#: sha1-file.c:964
 msgid "mmap failed"
 msgstr "mmap non riuscita"
 
-#: sha1-file.c:1027
+#: sha1-file.c:1128
 #, c-format
 msgid "object file %s is empty"
 msgstr "l'oggetto %s è vuoto"
 
-#: sha1-file.c:1151 sha1-file.c:2288
+#: sha1-file.c:1263 sha1-file.c:2443
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr "oggetto sciolto '%s' corrotto"
 
-#: sha1-file.c:1153 sha1-file.c:2292
+#: sha1-file.c:1265 sha1-file.c:2447
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr "dati inutilizzabili presenti alla fine dell'oggetto sciolto '%s'"
 
-#: sha1-file.c:1195
+#: sha1-file.c:1307
 msgid "invalid object type"
 msgstr "tipo oggetto non valido"
 
-#: sha1-file.c:1279
+#: sha1-file.c:1391
 #, 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:1282
+#: sha1-file.c:1394
 #, c-format
 msgid "unable to unpack %s header"
 msgstr "impossibile decomprimere l'intestazione %s"
 
-#: sha1-file.c:1288
+#: sha1-file.c:1400
 #, 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:1291
+#: sha1-file.c:1403
 #, c-format
 msgid "unable to parse %s header"
 msgstr "impossibile analizzare l'intestazione %s"
 
-#: sha1-file.c:1481
+#: sha1-file.c:1629
 #, c-format
 msgid "failed to read object %s"
 msgstr "lettura dell'oggetto %s non riuscita"
 
-#: sha1-file.c:1485
+#: sha1-file.c:1633
 #, c-format
 msgid "replacement %s not found for %s"
 msgstr "%s sostitutivo non trovato per %s"
 
-#: sha1-file.c:1489
+#: sha1-file.c:1637
 #, c-format
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr "l'oggetto sciolto %s (salvato in %s) è corrotto"
 
-#: sha1-file.c:1493
+#: sha1-file.c:1641
 #, c-format
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr "l'oggetto archiviato %s (salvato in %s) è corrotto"
 
-#: sha1-file.c:1595
-#, fuzzy, c-format
+#: sha1-file.c:1746
+#, c-format
 msgid "unable to write file %s"
-msgstr "non è possibile scrivere %s"
+msgstr "impossibile scrivere il file %s"
 
-#: sha1-file.c:1602
+#: sha1-file.c:1753
 #, c-format
 msgid "unable to set permission to '%s'"
 msgstr "impossibile impostare i permessi a '%s'"
 
-#: sha1-file.c:1609
+#: sha1-file.c:1760
 msgid "file write error"
 msgstr "errore di scrittura del file"
 
-#: sha1-file.c:1628
-#, fuzzy
+#: sha1-file.c:1780
 msgid "error when closing loose object file"
-msgstr "errore durante la chiusura del file sha1"
+msgstr "errore durante la chiusura del file oggetto sciolto"
 
-#: sha1-file.c:1693
+#: sha1-file.c:1845
 #, 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:1695
+#: sha1-file.c:1847
 msgid "unable to create temporary file"
 msgstr "impossibile creare il file temporaneo"
 
-#: sha1-file.c:1719
-#, fuzzy
+#: sha1-file.c:1871
 msgid "unable to write loose object file"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "impossibile scrivere il file oggetto sciolto"
 
-#: sha1-file.c:1725
+#: sha1-file.c:1877
 #, c-format
 msgid "unable to deflate new object %s (%d)"
 msgstr "impossibile comprimere con deflate il nuovo oggetto %s (%d)"
 
-#: sha1-file.c:1729
+#: sha1-file.c:1881
 #, c-format
 msgid "deflateEnd on object %s failed (%d)"
 msgstr "deflateEnd non riuscita sull'oggetto %s (%d)"
 
-#: sha1-file.c:1733
+#: sha1-file.c:1885
 #, 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:1743 builtin/pack-objects.c:919
+#: sha1-file.c:1895 builtin/pack-objects.c:1054
 #, c-format
 msgid "failed utime() on %s"
 msgstr "utime() di %s non riuscita"
 
-#: sha1-file.c:1818
-#, fuzzy, c-format
+#: sha1-file.c:1972
+#, c-format
 msgid "cannot read object for %s"
-msgstr "impossibile leggere l'oggetto %s"
+msgstr "impossibile leggere l'oggetto per %s"
 
-#: sha1-file.c:1858
+#: sha1-file.c:2011
 msgid "corrupt commit"
 msgstr "commit corrotto"
 
-#: sha1-file.c:1866
+#: sha1-file.c:2019
 msgid "corrupt tag"
 msgstr "tag corrotto"
 
-#: sha1-file.c:1965
+#: sha1-file.c:2119
 #, c-format
 msgid "read error while indexing %s"
 msgstr "errore di lettura durante l'indicizzazione di %s"
 
-#: sha1-file.c:1968
+#: sha1-file.c:2122
 #, c-format
 msgid "short read while indexing %s"
 msgstr "lettura troppo breve durante l'indicizzazione di %s"
 
-#: sha1-file.c:2041 sha1-file.c:2050
+#: sha1-file.c:2195 sha1-file.c:2205
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr "%s: inserimento del record nel database non riuscito"
 
-#: sha1-file.c:2056
+#: sha1-file.c:2211
 #, c-format
 msgid "%s: unsupported file type"
 msgstr "%s: tipo di file non supportato"
 
-#: sha1-file.c:2080
+#: sha1-file.c:2235
 #, c-format
 msgid "%s is not a valid object"
 msgstr "%s non è un oggetto valido"
 
-#: sha1-file.c:2082
+#: sha1-file.c:2237
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s non è un oggetto '%s' valido"
 
-#: sha1-file.c:2109 builtin/index-pack.c:154
+#: sha1-file.c:2264 builtin/index-pack.c:155
 #, c-format
 msgid "unable to open %s"
 msgstr "impossibile aprire %s"
 
-#: sha1-file.c:2299 sha1-file.c:2351
-#, fuzzy, c-format
+#: sha1-file.c:2454 sha1-file.c:2507
+#, c-format
 msgid "hash mismatch for %s (expected %s)"
-msgstr "mancata corrispondenza sha1 per %s (atteso %s)"
+msgstr "mancata corrispondenza per %s (atteso %s)"
 
-#: sha1-file.c:2323
+#: sha1-file.c:2478
 #, c-format
 msgid "unable to mmap %s"
 msgstr "impossibile eseguire mmap su %s"
 
-#: sha1-file.c:2328
+#: sha1-file.c:2483
 #, c-format
 msgid "unable to unpack header of %s"
 msgstr "impossibile decomprimere l'intestazione di %s"
 
-#: sha1-file.c:2334
+#: sha1-file.c:2489
 #, c-format
 msgid "unable to parse header of %s"
 msgstr "impossibile analizzare l'intestazione di %s"
 
-#: sha1-file.c:2345
+#: sha1-file.c:2500
 #, c-format
 msgid "unable to unpack contents of %s"
 msgstr "impossibile decomprimere i contenuti di %s"
 
-#: sha1-name.c:448
+#: sha1-name.c:486
 #, c-format
 msgid "short SHA1 %s is ambiguous"
 msgstr "lo SHA1 breve %s è ambiguo"
 
-#: sha1-name.c:459
+#: sha1-name.c:497
 msgid "The candidates are:"
 msgstr "I candidati sono:"
 
-#: sha1-name.c:742
+#: sha1-name.c:796
 msgid ""
 "Git normally never creates a ref that ends with 40 hex characters\n"
 "because it will be ignored when you just specify 40-hex. These refs\n"
 "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"
@@ -6360,13 +7932,138 @@ 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\""
 
+#: sha1-name.c:916
+#, c-format
+msgid "log for '%.*s' only goes back to %s"
+msgstr "il log per '%.*s' è disponibile solo fino al %s"
+
+#: sha1-name.c:924
+#, c-format
+msgid "log for '%.*s' only has %d entries"
+msgstr "il log per '%.*s' ha solo %d voci"
+
+#: sha1-name.c:1689
+#, c-format
+msgid "path '%s' exists on disk, but not in '%.*s'"
+msgstr "il percorso '%s' esiste su disco, ma non in '%.*s'"
+
+#: sha1-name.c:1695
+#, c-format
+msgid ""
+"path '%s' exists, but not '%s'\n"
+"hint: Did you mean '%.*s:%s' aka '%.*s:./%s'?"
+msgstr ""
+"il percorso '%s' esiste, ma non '%s'\n"
+"suggerimento: forse intendevi '%.*s:%s' ossia '%.*s:./%s'?"
+
+#: sha1-name.c:1704
+#, c-format
+msgid "path '%s' does not exist in '%.*s'"
+msgstr "il percorso '%s' non esiste in '%.*s'"
+
+#: sha1-name.c:1732
+#, c-format
+msgid ""
+"path '%s' is in the index, but not at stage %d\n"
+"hint: Did you mean ':%d:%s'?"
+msgstr ""
+"il percorso '%s' è nell'indice, ma non nel passo %d\n"
+"suggerimento: Forse intendevi ':%d:%s'?"
+
+#: sha1-name.c:1748
+#, c-format
+msgid ""
+"path '%s' is in the index, but not '%s'\n"
+"hint: Did you mean ':%d:%s' aka ':%d:./%s'?"
+msgstr ""
+"il percorso '%s' è nell'indice, ma non '%s'\n"
+"suggerimento: Forse intendevi ':%d:%s' ossia ':%d:./%s'?"
+
+#: sha1-name.c:1756
+#, c-format
+msgid "path '%s' exists on disk, but not in the index"
+msgstr "il percorso '%s' esiste su disco, ma non nell'indice"
+
+#: sha1-name.c:1758
+#, c-format
+msgid "path '%s' does not exist (neither on disk nor in the index)"
+msgstr "il percorso '%s' non esiste (né su disco né nell'indice)"
+
+#: sha1-name.c:1771
+msgid "relative path syntax can't be used outside working tree"
+msgstr ""
+"la sintassi per i percorsi relativi non può essere usata al di fuori "
+"dell'albero di lavoro"
+
+#: sha1-name.c:1909
+#, c-format
+msgid "invalid object name '%.*s'."
+msgstr "nome oggetto non valido: '%.*s'."
+
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte
+#: strbuf.c:837
+#, c-format
+msgid "%u.%2.2u GiB"
+msgstr "%u.%2.2u GiB"
+
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
+#: strbuf.c:839
+#, c-format
+msgid "%u.%2.2u GiB/s"
+msgstr "%u.%2.2u GiB/s"
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte
+#: strbuf.c:847
+#, c-format
+msgid "%u.%2.2u MiB"
+msgstr "%u.%2.2u MiB"
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
+#: strbuf.c:849
+#, c-format
+msgid "%u.%2.2u MiB/s"
+msgstr "%u.%2.2u MiB/s"
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte
+#: strbuf.c:856
+#, c-format
+msgid "%u.%2.2u KiB"
+msgstr "%u.%2.2u KiB"
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
+#: strbuf.c:858
+#, c-format
+msgid "%u.%2.2u KiB/s"
+msgstr "%u.%2.2u KiB/s"
+
+#. TRANSLATORS: IEC 80000-13:2008 byte
+#: strbuf.c:864
+#, 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:866
+#, c-format
+msgid "%u byte/s"
+msgid_plural "%u bytes/s"
+msgstr[0] "%u byte/s"
+msgstr[1] "%u byte/s"
+
+#: strbuf.c:1164
+#, c-format
+msgid "could not edit '%s'"
+msgstr "impossibile modificare '%s'"
+
 #: submodule.c:114 submodule.c:143
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
@@ -6397,51 +8094,132 @@ msgstr "nel sottomodulo non popolato '%s'"
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr "Lo specificatore percorso '%s' è nel sottomodulo '%.*s'"
 
-#: submodule.c:906
+#: submodule.c:434
+#, c-format
+msgid "bad --ignore-submodules argument: %s"
+msgstr "argomento --ignore-submodules errato: %s"
+
+#: submodule.c:815
+#, c-format
+msgid ""
+"Submodule in commit %s at path: '%s' collides with a submodule named the "
+"same. Skipping it."
+msgstr ""
+"Il sottomodulo nel commit %s e nel percorso '%s' collide con un sottomodulo "
+"con lo stesso nome. Lo salto."
+
+#: submodule.c:910
 #, c-format
 msgid "submodule entry '%s' (%s) is a %s, not a commit"
 msgstr "la voce sottomodulo '%s' (%s) è un %s, non un commit"
 
-#: submodule.c:1143 builtin/branch.c:656 builtin/submodule--helper.c:1989
+#: submodule.c:995
+#, c-format
+msgid ""
+"Could not run 'git rev-list <commits> --not --remotes -n 1' command in "
+"submodule %s"
+msgstr ""
+"Impossibile eseguire il comando 'git rev-list <commit> --not --remotes -n 1' "
+"nel sottomodulo %s"
+
+#: submodule.c:1118
+#, c-format
+msgid "process for submodule '%s' failed"
+msgstr "il processo per il sottomodulo '%s' non è uscito con successo"
+
+#: submodule.c:1147 builtin/branch.c:680 builtin/submodule--helper.c:2045
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Impossibile risolvere HEAD come riferimento valido."
 
-#: submodule.c:1477
-#, fuzzy, c-format
-msgid "Could not access submodule '%s'"
-msgstr "impossibile eseguire l'azione ricorsivamente nel sottomodulo '%s'"
+#: submodule.c:1158
+#, c-format
+msgid "Pushing submodule '%s'\n"
+msgstr "Push del sottomodulo '%s' in corso\n"
+
+#: submodule.c:1161
+#, c-format
+msgid "Unable to push submodule '%s'\n"
+msgstr "Impossibile eseguire il push del sottomodulo '%s'\n"
+
+#: submodule.c:1453
+#, c-format
+msgid "Fetching submodule %s%s\n"
+msgstr "Recupero del sottomodulo %s%s in corso\n"
+
+#: submodule.c:1483
+#, c-format
+msgid "Could not access submodule '%s'\n"
+msgstr "Impossibile accedere al sottomodulo '%s'\n"
+
+#: submodule.c:1637
+#, c-format
+msgid ""
+"Errors during submodule fetch:\n"
+"%s"
+msgstr ""
+"Errore durante il recupero del sottomodulo:\n"
+"%s"
 
-#: submodule.c:1639
+#: submodule.c:1662
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr "'%s' non riconosciuto come repository Git"
 
-#: submodule.c:1777
+#: submodule.c:1679
+#, c-format
+msgid "Could not run 'git status --porcelain=2' in submodule %s"
+msgstr "Impossibile eseguire 'git status --porcelain=2' nel sottomodulo %s"
+
+#: submodule.c:1720
+#, c-format
+msgid "'git status --porcelain=2' failed in submodule %s"
+msgstr ""
+"Esecuzione di 'git status --porcelain=2' non riuscita nel sottomodulo %s"
+
+#: submodule.c:1800
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr "impossibile avviare 'git status' nel sottomodulo '%s'"
 
-#: submodule.c:1790
+#: submodule.c:1813
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr "impossibile eseguire 'git status' nel sottomodulo '%s'"
 
-#: submodule.c:1805
-#, fuzzy, c-format
+#: submodule.c:1828
+#, c-format
 msgid "Could not unset core.worktree setting in submodule '%s'"
-msgstr "impossibile eseguire 'git status' nel sottomodulo '%s'"
+msgstr ""
+"Impossibile annullare l'impostazione dell'opzione core.worktree nel "
+"sottomodulo '%s'"
+
+#: submodule.c:1855 submodule.c:2165
+#, c-format
+msgid "could not recurse into submodule '%s'"
+msgstr "impossibile eseguire l'azione ricorsivamente nel sottomodulo '%s'"
+
+#: submodule.c:1876
+msgid "could not reset submodule index"
+msgstr "impossibile ripristinare l'indice del sottomodulo"
 
-#: submodule.c:1895
+#: submodule.c:1918
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr "il sottomodulo '%s' ha l'indice sporco"
 
-#: submodule.c:1947
+#: submodule.c:1970
 #, c-format
 msgid "Submodule '%s' could not be updated."
 msgstr "Impossibile aggiornare il sottomodulo '%s'."
 
-#: submodule.c:1996
+#: submodule.c:2038
+#, c-format
+msgid "submodule git dir '%s' is inside git dir '%.*s'"
+msgstr ""
+"la directory Git del sottomodulo '%s' è all'interno della directory Git "
+"'%.*s'"
+
+#: submodule.c:2059
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -6449,12 +8227,17 @@ msgstr ""
 "relocate_gitdir non è supportata per il sottomodulo '%s' con più di un "
 "albero di lavoro"
 
-#: submodule.c:2008 submodule.c:2064
+#: submodule.c:2071 submodule.c:2130
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "impossibile ricercare il nome per il sottomodulo '%s'"
 
-#: submodule.c:2015
+#: submodule.c:2075
+#, c-format
+msgid "refusing to move '%s' into an existing git dir"
+msgstr "mi rifiuto di spostare '%s' in una directory Git esistente"
+
+#: submodule.c:2082
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -6465,42 +8248,37 @@ msgstr ""
 "'%s' a\n"
 "'%s'\n"
 
-#: submodule.c:2099
-#, c-format
-msgid "could not recurse into submodule '%s'"
-msgstr "impossibile eseguire l'azione ricorsivamente nel sottomodulo '%s'"
-
-#: submodule.c:2143
+#: submodule.c:2209
 msgid "could not start ls-files in .."
 msgstr "impossibile avviare ls-files in .."
 
-#: submodule.c:2182
+#: submodule.c:2248
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree ha restituito il valore di ritorno inatteso %d"
 
-#: submodule-config.c:232
+#: submodule-config.c:236
 #, c-format
 msgid "ignoring suspicious submodule name: %s"
 msgstr "ignoro un nome sottomodulo sospetto: %s"
 
-#: submodule-config.c:296
+#: submodule-config.c:303
 msgid "negative values not allowed for submodule.fetchjobs"
 msgstr "i valori negativi non sono consentiti per submodule.fetchjobs"
 
-#: submodule-config.c:390
+#: submodule-config.c:401
 #, c-format
 msgid "ignoring '%s' which may be interpreted as a command-line option: %s"
 msgstr ""
 "ignoro '%s' che potrebbe essere interpretato come argomento della riga di "
 "comando: %s"
 
-#: submodule-config.c:479
+#: submodule-config.c:498
 #, c-format
 msgid "invalid value for %s"
 msgstr "valore non valido per %s"
 
-#: submodule-config.c:754
+#: submodule-config.c:765
 #, c-format
 msgid "Could not update .gitmodules entry %s"
 msgstr "Impossibile aggiornare la voce .gitmodules %s"
@@ -6516,7 +8294,7 @@ msgstr "esecuzione del comando finale '%s' non riuscita"
 msgid "unknown value '%s' for key '%s'"
 msgstr "valore '%s' sconosciuto per la chiave '%s'"
 
-#: trailer.c:539 trailer.c:544 builtin/remote.c:295
+#: trailer.c:539 trailer.c:544 builtin/remote.c:298 builtin/remote.c:323
 #, c-format
 msgid "more than one %s"
 msgstr "più di un %s"
@@ -6535,7 +8313,7 @@ msgstr "impossibile leggere il file di input '%s'"
 msgid "could not read from stdin"
 msgstr "impossibile leggere dallo standard input"
 
-#: trailer.c:1011 wrapper.c:701
+#: trailer.c:1011 wrapper.c:665
 #, c-format
 msgid "could not stat %s"
 msgstr "impossibile eseguire lo stat di '%s'"
@@ -6564,39 +8342,47 @@ msgstr "impossibile ridenominare il file temporaneo in %s"
 msgid "Would set upstream of '%s' to '%s' of '%s'\n"
 msgstr "L'upstream di '%s' sarebbe impostato a '%s' di '%s'\n"
 
-#: transport.c:142
+#: transport.c:145
 #, c-format
 msgid "could not read bundle '%s'"
 msgstr "impossibile leggere il bundle '%s'"
 
-#: transport.c:208
+#: transport.c:214
 #, c-format
 msgid "transport: invalid depth option '%s'"
 msgstr "trasporto: opzione profondità '%s' non valida"
 
-#: transport.c:617
+#: transport.c:266
+msgid "see protocol.version in 'git help config' for more details"
+msgstr "vedi protocol.version in 'git help config' per maggiori dettagli"
+
+#: transport.c:267
+msgid "server options require protocol version 2 or later"
+msgstr "le opzioni server richiedono la versione 2 o successiva del protocollo"
+
+#: transport.c:632
 msgid "could not parse transport.color.* config"
 msgstr "impossibile analizzare la configurazione transport.color.*"
 
-#: transport.c:690
+#: transport.c:705
 msgid "support for protocol v2 not implemented yet"
 msgstr "supporto alla versione 2 del protocollo non ancora implementato"
 
-#: transport.c:817
+#: transport.c:831
 #, c-format
 msgid "unknown value for config '%s': %s"
 msgstr "valore sconosciuto per la configurazione '%s': %s"
 
-#: transport.c:883
+#: transport.c:897
 #, c-format
 msgid "transport '%s' not allowed"
 msgstr "trasporto '%s' non consentito"
 
-#: transport.c:937
+#: transport.c:949
 msgid "git-over-rsync is no longer supported"
 msgstr "git-over-rsync non è più supportato"
 
-#: transport.c:1032
+#: transport.c:1044
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
@@ -6605,7 +8391,7 @@ msgstr ""
 "I seguenti percorsi sottomodulo contengono modifiche\n"
 "non trovate su nessun remoto:\n"
 
-#: transport.c:1036
+#: transport.c:1048
 #, c-format
 msgid ""
 "\n"
@@ -6625,44 +8411,39 @@ msgstr ""
 "\n"
 "\tgit push --recurse-submodules=on-demand\n"
 "\n"
-"o esegui un cd al percorso e utilizza\n"
+"o esegui un cd al percorso e usa\n"
 "\n"
 "\tgit push\n"
 "\n"
 "per eseguirne il push a un remoto.\n"
 "\n"
 
-#: transport.c:1044
+#: transport.c:1056
 msgid "Aborting."
 msgstr "Interrompo l'operazione."
 
-#: transport.c:1184
+#: transport.c:1201
 msgid "failed to push all needed submodules"
 msgstr "push di tutti i sottomoduli richiesti non riuscito"
 
-#: transport.c:1317 transport-helper.c:643
+#: transport.c:1345 transport-helper.c:657
 msgid "operation not supported by protocol"
 msgstr "operazione non supportata dal protocollo"
 
-#: transport.c:1421
-#, 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
+#: transport-helper.c:61 transport-helper.c:90
 msgid "full write to remote helper failed"
 msgstr "scrittura completa verso l'helper remoto non riuscita"
 
-#: transport-helper.c:132
+#: transport-helper.c:144
 #, c-format
 msgid "unable to find remote helper for '%s'"
 msgstr "impossibile trovare l'helper remoto per '%s'"
 
-#: transport-helper.c:148 transport-helper.c:557
+#: transport-helper.c:160 transport-helper.c:571
 msgid "can't dup helper output fd"
 msgstr "impossibile duplicare il descrittore file dell'output helper"
 
-#: transport-helper.c:199
+#: transport-helper.c:211
 #, c-format
 msgid ""
 "unknown mandatory capability %s; this remote helper probably needs newer "
@@ -6671,103 +8452,108 @@ msgstr ""
 "capability necessaria %s sconosciuta; quest'helper remoto probabilmente "
 "richiede una versione di Git più recente"
 
-#: transport-helper.c:205
+#: transport-helper.c:217
 msgid "this remote helper should implement refspec capability"
 msgstr "questo helper remoto dovrebbe implementare la capability refspec"
 
-#: transport-helper.c:272 transport-helper.c:412
+#: transport-helper.c:284 transport-helper.c:425
 #, c-format
 msgid "%s unexpectedly said: '%s'"
 msgstr "%s ha inviato un messaggio inatteso: '%s'"
 
-#: transport-helper.c:401
+#: transport-helper.c:414
 #, c-format
 msgid "%s also locked %s"
 msgstr "%s ha bloccato anche %s"
 
-#: transport-helper.c:479
+#: transport-helper.c:493
 msgid "couldn't run fast-import"
 msgstr "impossibile eseguire fast-import"
 
-#: transport-helper.c:502
+#: transport-helper.c:516
 msgid "error while running fast-import"
 msgstr "errore durante l'esecuzione di fast-import"
 
-#: transport-helper.c:531 transport-helper.c:1097
+#: transport-helper.c:545 transport-helper.c:1134
 #, c-format
 msgid "could not read ref %s"
 msgstr "impossibile leggere il riferimento %s"
 
-#: transport-helper.c:576
+#: transport-helper.c:590
 #, c-format
 msgid "unknown response to connect: %s"
 msgstr "risposta inattesa a connect: %s"
 
-#: transport-helper.c:598
+#: transport-helper.c:612
 msgid "setting remote service path not supported by protocol"
 msgstr ""
 "l'impostazione del percorso del servizio remoto non è supportata dal "
 "protocollo"
 
-#: transport-helper.c:600
+#: transport-helper.c:614
 msgid "invalid remote service path"
 msgstr "percorso servizio remoto non valido"
 
-#: transport-helper.c:646
+#: transport-helper.c:660
 #, c-format
 msgid "can't connect to subservice %s"
 msgstr "impossibile connettersi al sottoservizio %s"
 
-#: transport-helper.c:718
+#: transport-helper.c:736
 #, c-format
 msgid "expected ok/error, helper said '%s'"
 msgstr "attesi ok/error, l'helper ha inviato '%s'"
 
-#: transport-helper.c:771
+#: transport-helper.c:789
 #, c-format
 msgid "helper reported unexpected status of %s"
 msgstr "l'helper ha segnalato uno stato inatteso di %s"
 
-#: transport-helper.c:832
+#: transport-helper.c:850
 #, c-format
 msgid "helper %s does not support dry-run"
 msgstr "l'helper %s non supporta dry-run"
 
-#: transport-helper.c:835
+#: transport-helper.c:853
 #, c-format
 msgid "helper %s does not support --signed"
 msgstr "l'helper %s non supporta --signed"
 
-#: transport-helper.c:838
+#: transport-helper.c:856
 #, c-format
 msgid "helper %s does not support --signed=if-asked"
 msgstr "l'helper %s non supporta --signed=if-asked"
 
-#: transport-helper.c:845
+#: transport-helper.c:861
+#, c-format
+msgid "helper %s does not support --atomic"
+msgstr "l'helper %s non supporta --atomic"
+
+#: transport-helper.c:867
 #, c-format
 msgid "helper %s does not support 'push-option'"
 msgstr "l'helper %s non supporta 'push-option'"
 
-#: transport-helper.c:937
+#: transport-helper.c:965
 msgid "remote-helper doesn't support push; refspec needed"
 msgstr ""
 "l'helper remoto non supporta il push; è necessario uno specificatore "
 "riferimento"
 
-#: transport-helper.c:942
+#: transport-helper.c:970
 #, c-format
 msgid "helper %s does not support 'force'"
 msgstr "l'helper %s non supporta 'force'"
 
-#: transport-helper.c:989
+#: transport-helper.c:1017
 msgid "couldn't run fast-export"
 msgstr "impossibile eseguire fast-export"
 
-#: transport-helper.c:994
+#: transport-helper.c:1022
 msgid "error while running fast-export"
 msgstr "errore durante l'esecuzione di fast-export"
 
-#: transport-helper.c:1019
+#: transport-helper.c:1047
 #, c-format
 msgid ""
 "No refs in common and none specified; doing nothing.\n"
@@ -6776,67 +8562,67 @@ msgstr ""
 "Nessun riferimento in comune e nessuno specificato; non eseguo nulla.\n"
 "Forse dovresti specificare un branch come 'master'.\n"
 
-#: transport-helper.c:1083
+#: transport-helper.c:1120
 #, c-format
 msgid "malformed response in ref list: %s"
 msgstr "risposta malformata nell'elenco riferimenti: %s"
 
-#: transport-helper.c:1236
+#: transport-helper.c:1272
 #, c-format
 msgid "read(%s) failed"
 msgstr "read(%s) non riuscita"
 
-#: transport-helper.c:1263
+#: transport-helper.c:1299
 #, c-format
 msgid "write(%s) failed"
 msgstr "write(%s) non riuscita"
 
-#: transport-helper.c:1312
+#: transport-helper.c:1348
 #, c-format
 msgid "%s thread failed"
 msgstr "thread %s non riuscito"
 
-#: transport-helper.c:1316
+#: transport-helper.c:1352
 #, c-format
 msgid "%s thread failed to join: %s"
 msgstr "join non riuscita per il thread %s: %s"
 
-#: transport-helper.c:1335 transport-helper.c:1339
+#: transport-helper.c:1371 transport-helper.c:1375
 #, 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:1376
+#: transport-helper.c:1412
 #, c-format
 msgid "%s process failed to wait"
 msgstr "wait non riuscita per il processo %s"
 
-#: transport-helper.c:1380
+#: transport-helper.c:1416
 #, c-format
 msgid "%s process failed"
 msgstr "processo %s non riuscito"
 
-#: transport-helper.c:1398 transport-helper.c:1407
+#: transport-helper.c:1434 transport-helper.c:1443
 msgid "can't start thread for copying data"
 msgstr "impossibile avviare il thread per la copia dei dati"
 
-#: tree-walk.c:33
+#: tree-walk.c:32
 msgid "too-short tree object"
 msgstr "oggetto albero troppo corto"
 
-#: tree-walk.c:39
+#: tree-walk.c:38
 msgid "malformed mode in tree entry"
 msgstr "modo malformato nella voce dell'albero"
 
-#: tree-walk.c:43
+#: tree-walk.c:42
 msgid "empty filename in tree entry"
 msgstr "nome file vuoto nella voce dell'albero"
 
-#: tree-walk.c:116
+#: tree-walk.c:117
 msgid "too-short tree file"
 msgstr "file alber troppo corto"
 
-#: unpack-trees.c:111
+#: unpack-trees.c:110
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -6846,7 +8632,7 @@ msgstr ""
 "checkout:\n"
 "%%sEsegui il commit o lo stash delle modifiche prima di cambiare branch."
 
-#: unpack-trees.c:113
+#: unpack-trees.c:112
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -6856,7 +8642,7 @@ msgstr ""
 "checkout:\n"
 "%%s"
 
-#: unpack-trees.c:116
+#: unpack-trees.c:115
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -6866,7 +8652,7 @@ msgstr ""
 "merge:\n"
 "%%sEsegui il commit o lo stash delle modifiche prima di eseguire il merge."
 
-#: unpack-trees.c:118
+#: unpack-trees.c:117
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -6876,7 +8662,7 @@ msgstr ""
 "merge:\n"
 "%%s"
 
-#: unpack-trees.c:121
+#: unpack-trees.c:120
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -6887,7 +8673,7 @@ msgstr ""
 "%%sEsegui il commit o lo stash delle modifiche prima di eseguire "
 "l'operazione di %s."
 
-#: unpack-trees.c:123
+#: unpack-trees.c:122
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -6897,7 +8683,7 @@ msgstr ""
 "l'operazione di %s:\n"
 "%%s"
 
-#: unpack-trees.c:128
+#: unpack-trees.c:127
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
@@ -6907,7 +8693,7 @@ msgstr ""
 "tracciati in esse contenuti vengano persi:\n"
 "%s"
 
-#: unpack-trees.c:132
+#: unpack-trees.c:131
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -6917,7 +8703,7 @@ msgstr ""
 "eliminati con il checkout:\n"
 "%%sSpostali o eliminali prima di cambiare branch."
 
-#: unpack-trees.c:134
+#: unpack-trees.c:133
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -6927,27 +8713,27 @@ msgstr ""
 "eliminati con il checkout:\n"
 "%%s"
 
-#: unpack-trees.c:137
+#: unpack-trees.c:136
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
 "%%sPlease move or remove them before you merge."
 msgstr ""
 "I seguenti file non tracciati presenti nell'albero di lavoro sarebbero "
-"eliminati con il merge:\n"
+"eliminati dal merge:\n"
 "%%sSpostali o eliminali prima di eseguire il merge."
 
-#: unpack-trees.c:139
+#: unpack-trees.c:138
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
 "%%s"
 msgstr ""
 "I seguenti file non tracciati presenti nell'albero di lavoro sarebbero "
-"eliminati con il merge:\n"
+"eliminati dal merge:\n"
 "%%s"
 
-#: unpack-trees.c:142
+#: unpack-trees.c:141
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -6957,7 +8743,7 @@ msgstr ""
 "eliminati con l'operazione di %s:\n"
 "%%sSpostali o eliminali prima di eseguire l'operazione di %s."
 
-#: unpack-trees.c:144
+#: unpack-trees.c:143
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -6967,7 +8753,7 @@ msgstr ""
 "eliminati con l'operazione di %s:\n"
 "%%s"
 
-#: unpack-trees.c:150
+#: unpack-trees.c:149
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -6978,7 +8764,7 @@ msgstr ""
 "sovrascritti con il checkout:\n"
 "%%sSpostali o eliminali prima di cambiare branch."
 
-#: unpack-trees.c:152
+#: unpack-trees.c:151
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -6989,27 +8775,27 @@ msgstr ""
 "sovrascritti con il checkout:\n"
 "%%s"
 
-#: unpack-trees.c:155
+#: unpack-trees.c:154
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
 "%%sPlease move or remove them before you merge."
 msgstr ""
 "I seguenti file non tracciati presenti nell'albero di lavoro sarebbero "
-"sovrascritti con il merge:\n"
+"sovrascritti dal merge:\n"
 "%%sSpostali o eliminali prima di eseguire il merge."
 
-#: unpack-trees.c:157
+#: unpack-trees.c:156
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
 "%%s"
 msgstr ""
 "I seguenti file non tracciati presenti nell'albero di lavoro sarebbero "
-"sovrascritti con il merge:\n"
+"sovrascritti dal merge:\n"
 "%%s"
 
-#: unpack-trees.c:160
+#: unpack-trees.c:159
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -7019,7 +8805,7 @@ msgstr ""
 "sovrascritti con l'operazione di %s:\n"
 "%%sSpostali o eliminali prima di eseguire l'operazione di %s."
 
-#: unpack-trees.c:162
+#: unpack-trees.c:161
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -7029,13 +8815,13 @@ msgstr ""
 "sovrascritti con l'operazione di %s:\n"
 "%%s"
 
-#: unpack-trees.c:170
+#: unpack-trees.c:169
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr ""
 "La voce '%s' si sovrappone a '%s'. Impossibile eseguire il collegamento."
 
-#: unpack-trees.c:173
+#: unpack-trees.c:172
 #, c-format
 msgid ""
 "Cannot update sparse checkout: the following entries are not up to date:\n"
@@ -7045,7 +8831,7 @@ msgstr ""
 "aggiornate:\n"
 "%s"
 
-#: unpack-trees.c:175
+#: unpack-trees.c:174
 #, c-format
 msgid ""
 "The following working tree files would be overwritten by sparse checkout "
@@ -7056,7 +8842,7 @@ msgstr ""
 "l'aggiornamento del checkout sparse:\n"
 "%s"
 
-#: unpack-trees.c:177
+#: unpack-trees.c:176
 #, c-format
 msgid ""
 "The following working tree files would be removed by sparse checkout "
@@ -7067,7 +8853,7 @@ msgstr ""
 "l'aggiornamento del checkout sparse:\n"
 "%s"
 
-#: unpack-trees.c:179
+#: unpack-trees.c:178
 #, c-format
 msgid ""
 "Cannot update submodule:\n"
@@ -7076,16 +8862,16 @@ msgstr ""
 "Impossibile aggiornare il sottomodulo:\n"
 "%s"
 
-#: unpack-trees.c:253
+#: unpack-trees.c:255
 #, c-format
 msgid "Aborting\n"
 msgstr "Interrompo l'operazione\n"
 
-#: unpack-trees.c:335
-msgid "Checking out files"
-msgstr "Checkout dei file in corso"
+#: unpack-trees.c:317
+msgid "Updating files"
+msgstr "Aggiornamento dei file in corso"
 
-#: unpack-trees.c:367
+#: unpack-trees.c:349
 msgid ""
 "the following paths have collided (e.g. case-sensitive paths\n"
 "on a case-insensitive filesystem) and only one from the same\n"
@@ -7096,6 +8882,10 @@ msgstr ""
 "su un filesystem non sensibile a tale differenza) e solo uno\n"
 "per gruppo in conflitto è nell'albero di lavoro:\n"
 
+#: unpack-trees.c:1445
+msgid "Updating index flags"
+msgstr "Aggiornamento dei contrassegni indice in corso"
+
 #: urlmatch.c:163
 msgid "invalid URL scheme name or missing '://' suffix"
 msgstr "nome schema URL non valido o suffisso '://' mancante"
@@ -7125,214 +8915,224 @@ msgstr "numero di porta non valido"
 msgid "invalid '..' path segment"
 msgstr "parte percorso '..' non valida"
 
-#: worktree.c:249 builtin/am.c:2094
+#: walker.c:170
+msgid "Fetching objects"
+msgstr "Recupero oggetti in corso"
+
+#: worktree.c:259 builtin/am.c:2099
 #, c-format
 msgid "failed to read '%s'"
-msgstr "impossibile leggere '%s'"
+msgstr "lettura di '%s' non riuscita"
 
-#: worktree.c:295
+#: worktree.c:305
 #, 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:306
+#: worktree.c:316
 #, 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:318
+#: worktree.c:328
 #, c-format
 msgid "'%s' does not exist"
 msgstr "'%s' non esiste"
 
-#: worktree.c:324
+#: worktree.c:334
 #, c-format
 msgid "'%s' is not a .git file, error code %d"
 msgstr "'%s' non è un file .git, codice d'errore %d"
 
-#: worktree.c:332
+#: worktree.c:342
 #, c-format
 msgid "'%s' does not point back to '%s'"
 msgstr "'%s' non punta a '%s'"
 
-#: wrapper.c:223 wrapper.c:393
+#: wrapper.c:186 wrapper.c:356
 #, c-format
 msgid "could not open '%s' for reading and writing"
 msgstr "impossibile aprire '%s' in lettura e scrittura"
 
-#: wrapper.c:424 wrapper.c:624
+#: wrapper.c:387 wrapper.c:588
 #, c-format
 msgid "unable to access '%s'"
 msgstr "impossibile accedere a '%s'"
 
-#: wrapper.c:632
+#: wrapper.c:596
 msgid "unable to get current working directory"
 msgstr "impossibile ottenere la directory di lavoro corrente"
 
-#: wt-status.c:155
+#: wt-status.c:158
 msgid "Unmerged paths:"
 msgstr "Percorsi non sottoposti a merge:"
 
-#: wt-status.c:182 wt-status.c:209
+#: 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:184 wt-status.c:211
+#: 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:188
+#: 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:190 wt-status.c:194
+#: 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:192
+#: 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:203 wt-status.c:1046
+#: wt-status.c:211 wt-status.c:1074
 msgid "Changes to be committed:"
 msgstr "Modifiche di cui verrà eseguito il commit:"
 
-#: wt-status.c:221 wt-status.c:1055
+#: 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:225
+#: 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:227
+#: 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:228
+#: 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:230
+#: 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:242
+#: 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:257
+#: wt-status.c:268
 msgid "both deleted:"
 msgstr "entrambi eliminati:"
 
-#: wt-status.c:259
+#: wt-status.c:270
 msgid "added by us:"
 msgstr "aggiunto da noi:"
 
-#: wt-status.c:261
+#: wt-status.c:272
 msgid "deleted by them:"
 msgstr "eliminato da loro:"
 
-#: wt-status.c:263
+#: wt-status.c:274
 msgid "added by them:"
 msgstr "aggiunto da loro:"
 
-#: wt-status.c:265
+#: wt-status.c:276
 msgid "deleted by us:"
 msgstr "eliminato da noi:"
 
-#: wt-status.c:267
+#: wt-status.c:278
 msgid "both added:"
 msgstr "entrambi aggiunti:"
 
-#: wt-status.c:269
+#: wt-status.c:280
 msgid "both modified:"
 msgstr "entrambi modificati:"
 
-#: wt-status.c:279
+#: wt-status.c:290
 msgid "new file:"
 msgstr "nuovo file:"
 
-#: wt-status.c:281
+#: wt-status.c:292
 msgid "copied:"
 msgstr "copiato:"
 
-#: wt-status.c:283
+#: wt-status.c:294
 msgid "deleted:"
 msgstr "eliminato:"
 
-#: wt-status.c:285
+#: wt-status.c:296
 msgid "modified:"
 msgstr "modificato:"
 
-#: wt-status.c:287
+#: wt-status.c:298
 msgid "renamed:"
 msgstr "rinominato:"
 
-#: wt-status.c:289
+#: wt-status.c:300
 msgid "typechange:"
 msgstr "modifica tipo:"
 
-#: wt-status.c:291
+#: wt-status.c:302
 msgid "unknown:"
 msgstr "sconosciuto:"
 
-#: wt-status.c:293
+#: wt-status.c:304
 msgid "unmerged:"
 msgstr "non sottoposto a merge:"
 
-#: wt-status.c:373
+#: wt-status.c:384
 msgid "new commits, "
 msgstr "nuovi commit, "
 
-#: wt-status.c:375
+#: wt-status.c:386
 msgid "modified content, "
 msgstr "contenuto modificato, "
 
-#: wt-status.c:377
+#: wt-status.c:388
 msgid "untracked content, "
 msgstr "contenuto non tracciato, "
 
-#: wt-status.c:884
+#: 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:916
+#: wt-status.c:938
 msgid "Submodules changed but not updated:"
 msgstr "Sottomoduli modificati ma non aggiornati:"
 
-#: wt-status.c:918
+#: wt-status.c:940
 msgid "Submodule changes to be committed:"
 msgstr "Modifiche ai sottomoduli di cui verrà eseguito il commit:"
 
-#: wt-status.c:1000
+#: wt-status.c:1022
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
@@ -7340,111 +9140,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:1101
+#: 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:1104
+#: wt-status.c:1147
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (risolvi i conflitti ed esegui \"git commit\")"
 
-#: wt-status.c:1106
+#: 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:1110
+#: 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:1113
+#: wt-status.c:1156
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (usa \"git commit\" per terminare il merge)"
 
-#: wt-status.c:1122
+#: 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:1125
+#: wt-status.c:1168
 msgid "The current patch is empty."
-msgstr "La patch attuale è vuota."
+msgstr "La patch corrente è vuota."
 
-#: wt-status.c:1129
+#: 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:1131
+#: 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:1133
+#: 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:1264
+#: wt-status.c:1309
 msgid "git-rebase-todo is missing."
 msgstr "git-rebase-todo è mancante."
 
-#: wt-status.c:1266
+#: wt-status.c:1311
 msgid "No commands done."
 msgstr "Nessun comando eseguito."
 
-#: wt-status.c:1269
+#: 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:1280
+#: wt-status.c:1325
 #, c-format
 msgid "  (see more in file %s)"
 msgstr "  (vedi di più nel file %s)"
 
-#: wt-status.c:1285
+#: wt-status.c:1330
 msgid "No commands remaining."
 msgstr "Nessun comando rimanente."
 
-#: wt-status.c:1288
+#: 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:1296
+#: 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:1308
+#: 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:1313
+#: wt-status.c:1358
 msgid "You are currently rebasing."
 msgstr "Attualmente stai eseguendo un rebase."
 
-#: wt-status.c:1326
+#: 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:1328
+#: 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:1330
+#: 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:1337
+#: 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:1341
+#: wt-status.c:1386
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -7452,129 +9264,145 @@ msgstr ""
 "Attualmente stai dividendo un commit durante il rebase del branch '%s' su "
 "'%s'."
 
-#: wt-status.c:1346
+#: 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:1349
+#: 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:1353
+#: 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:1358
+#: 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:1361
+#: 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:1363
+#: 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:1372
+#: wt-status.c:1419
+msgid "Cherry-pick currently in progress."
+msgstr "Cherry-pick in corso."
+
+#: wt-status.c:1422
 #, c-format
 msgid "You are currently cherry-picking commit %s."
-msgstr "Attualmente stai eseguendo il cherry pick del commit %s."
+msgstr "Attualmente stai eseguendo il cherry-pick del commit %s."
 
-#: wt-status.c:1377
+#: 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:1380
+#: wt-status.c:1432
+msgid "  (run \"git cherry-pick --continue\" to continue)"
+msgstr "  (esegui \"git cherry-pick --continue\" per continuare)"
+
+#: 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:1382
+#: wt-status.c:1437
+msgid "  (use \"git cherry-pick --skip\" to skip this patch)"
+msgstr "  (usa \"git cherry-pick --skip\" per saltare questa patch)"
+
+#: wt-status.c:1439
 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)"
+"  (usa \"git cherry-pick --abort\" per annullare l'operazione di cherry-pick)"
+
+#: wt-status.c:1449
+msgid "Revert currently in progress."
+msgstr "Revert in corso."
 
-#: wt-status.c:1390
+#: wt-status.c:1452
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Attualmente stai eseguendo il revert del commit %s."
 
-#: wt-status.c:1395
+#: wt-status.c:1458
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (risolvi i conflitti ed esegui \"git revert --continue\")"
 
-#: wt-status.c:1398
+#: wt-status.c:1461
+msgid "  (run \"git revert --continue\" to continue)"
+msgstr "  (esegui \"git revert --continue\" per continuare)"
+
+#: wt-status.c:1464
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr ""
 "  (tutti i conflitti sono stati risolti: esegui \"git revert --continue\")"
 
-#: wt-status.c:1400
+#: wt-status.c:1466
+msgid "  (use \"git revert --skip\" to skip this patch)"
+msgstr "  (usa \"git revert --skip\" per saltare questa patch)"
+
+#: wt-status.c:1468
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (usa \"git revert --abort\" per annullare l'operazione di revert)"
 
-#: wt-status.c:1410
+#: wt-status.c:1478
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr "Attualmente stai eseguendo una bisezione partendo dal branch '%s'."
 
-#: wt-status.c:1414
+#: wt-status.c:1482
 msgid "You are currently bisecting."
 msgstr "Attualmente stai eseguendo una bisezione."
 
-#: wt-status.c:1417
+#: wt-status.c:1485
 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:1617
+#: wt-status.c:1694
 msgid "On branch "
 msgstr "Sul branch "
 
-#: wt-status.c:1624
+#: wt-status.c:1701
 msgid "interactive rebase in progress; onto "
 msgstr "rebase interattivo in corso su "
 
-#: wt-status.c:1626
+#: wt-status.c:1703
 msgid "rebase in progress; onto "
 msgstr "rebase in corso su "
 
-#: wt-status.c:1631
-msgid "HEAD detached at "
-msgstr "HEAD scollegato su "
-
-#: wt-status.c:1633
-msgid "HEAD detached from "
-msgstr "HEAD scollegato da "
-
-#: wt-status.c:1636
+#: wt-status.c:1713
 msgid "Not currently on any branch."
 msgstr "Attualmente non sei su alcun branch."
 
-#: wt-status.c:1653
+#: wt-status.c:1730
 msgid "Initial commit"
 msgstr "Commit iniziale"
 
-#: wt-status.c:1654
+#: wt-status.c:1731
 msgid "No commits yet"
 msgstr "Non ci sono ancora commit"
 
-#: wt-status.c:1668
+#: wt-status.c:1745
 msgid "Untracked files"
 msgstr "File non tracciati"
 
-#: wt-status.c:1670
+#: wt-status.c:1747
 msgid "Ignored files"
 msgstr "File ignorati"
 
-#: wt-status.c:1674
+#: wt-status.c:1751
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -7586,31 +9414,31 @@ msgstr ""
 "ma devi stare attento a non dimenticarti di aggiungere\n"
 "autonomamente i file nuovi (vedi 'git help status')."
 
-#: wt-status.c:1680
+#: wt-status.c:1757
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "File non tracciati non elencati%s"
 
-#: wt-status.c:1682
+#: wt-status.c:1759
 msgid " (use -u option to show untracked files)"
 msgstr " (usa l'opzione -u per visualizzare i file non tracciati)"
 
-#: wt-status.c:1688
+#: wt-status.c:1765
 msgid "No changes"
 msgstr "Nessuna modifica"
 
-#: wt-status.c:1693
+#: wt-status.c:1770
 #, 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:1696
+#: wt-status.c:1773
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "nessuna modifica aggiunta al commit\n"
 
-#: wt-status.c:1699
+#: wt-status.c:1776
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -7619,197 +9447,206 @@ msgstr ""
 "non è stato aggiunto nulla al commit ma sono presenti file non tracciati "
 "(usa \"git add\" per tracciarli)\n"
 
-#: wt-status.c:1702
+#: wt-status.c:1779
 #, 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:1705
+#: wt-status.c:1782
 #, 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:1708 wt-status.c:1713
+#: wt-status.c:1785 wt-status.c:1790
 #, c-format
 msgid "nothing to commit\n"
 msgstr "non c'è nulla di cui eseguire il commit\n"
 
-#: wt-status.c:1711
+#: wt-status.c:1788
 #, 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:1715
+#: wt-status.c:1792
 #, 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:1828
+#: wt-status.c:1905
 msgid "No commits yet on "
 msgstr "Non ci sono ancora commit su"
 
-#: wt-status.c:1832
+#: wt-status.c:1909
 msgid "HEAD (no branch)"
 msgstr "HEAD (nessun branch)"
 
-#: wt-status.c:1863
+#: wt-status.c:1940
 msgid "different"
 msgstr "differente"
 
-#: wt-status.c:1865 wt-status.c:1873
+#: wt-status.c:1942 wt-status.c:1950
 msgid "behind "
 msgstr "indietro "
 
-#: wt-status.c:1868 wt-status.c:1871
+#: wt-status.c:1945 wt-status.c:1948
 msgid "ahead "
 msgstr "avanti "
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2386
+#: wt-status.c:2470
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr "impossibile eseguire %s: ci sono delle modifiche non in staging."
 
-#: wt-status.c:2392
+#: wt-status.c:2476
 msgid "additionally, your index contains uncommitted changes."
 msgstr ""
 "inoltre, l'indice contiene modifiche di cui non è stato eseguito il commit."
 
-#: wt-status.c:2394
+#: wt-status.c:2478
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr ""
 "impossibile eseguire %s: l'indice contiene modifiche di cui non è stato "
 "eseguito il commit."
 
-#: builtin/add.c:25
+#: compat/precompose_utf8.c:58 builtin/clone.c:455
+#, c-format
+msgid "failed to unlink '%s'"
+msgstr "unlink di '%s' non riuscito"
+
+#: builtin/add.c:26
 msgid "git add [<options>] [--] <pathspec>..."
 msgstr "git add [<opzioni>] [--] <specificatore percorso>..."
 
-#: builtin/add.c:84
+#: builtin/add.c:88
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "stato diff inatteso %c"
 
-#: builtin/add.c:89 builtin/commit.c:285
+#: builtin/add.c:93 builtin/commit.c:288
 msgid "updating files failed"
 msgstr "aggiornamento dei file non riuscito"
 
-#: builtin/add.c:99
+#: builtin/add.c:103
 #, c-format
 msgid "remove '%s'\n"
 msgstr "elimina '%s'\n"
 
-#: builtin/add.c:174
+#: builtin/add.c:178
 msgid "Unstaged changes after refreshing the index:"
 msgstr "Modifiche non nell'area di staging dopo l'aggiornamento dell'indice:"
 
-#: builtin/add.c:234 builtin/rev-parse.c:896
+#: builtin/add.c:266 builtin/rev-parse.c:899
 msgid "Could not read the index"
 msgstr "Impossibile leggere l'indice"
 
-#: builtin/add.c:245
+#: builtin/add.c:277
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Impossibile aprire '%s' in scrittura."
 
-#: builtin/add.c:249
+#: builtin/add.c:281
 msgid "Could not write patch"
 msgstr "Impossibile scrivere la patch"
 
-#: builtin/add.c:252
+#: builtin/add.c:284
 msgid "editing patch failed"
 msgstr "modifica della patch non riuscita"
 
-#: builtin/add.c:255
+#: builtin/add.c:287
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "Impossibile eseguire lo stat di '%s'"
 
-#: builtin/add.c:257
+#: builtin/add.c:289
 msgid "Empty patch. Aborted."
 msgstr "Patch vuota. Operazione interrotta."
 
-#: builtin/add.c:262
+#: builtin/add.c:294
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "Impossibile applicare '%s'"
 
-#: builtin/add.c:270
+#: builtin/add.c:302
 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:214 builtin/push.c:560
-#: builtin/remote.c:1345 builtin/rm.c:241 builtin/send-pack.c:165
+#: builtin/add.c:322 builtin/clean.c:910 builtin/fetch.c:163 builtin/mv.c:124
+#: builtin/prune-packed.c:56 builtin/pull.c:203 builtin/push.c:548
+#: builtin/remote.c:1421 builtin/rm.c:242 builtin/send-pack.c:165
 msgid "dry run"
 msgstr "test controllato"
 
-#: builtin/add.c:293
+#: builtin/add.c:325
 msgid "interactive picking"
 msgstr "scelta interattiva"
 
-#: builtin/add.c:294 builtin/checkout.c:1304 builtin/reset.c:306
+#: builtin/add.c:326 builtin/checkout.c:1511 builtin/reset.c:307
 msgid "select hunks interactively"
 msgstr "seleziona gli hunk in modalità interattiva"
 
-#: builtin/add.c:295
+#: builtin/add.c:327
 msgid "edit current diff and apply"
 msgstr "modifica il diff corrente e applicalo"
 
-#: builtin/add.c:296
+#: builtin/add.c:328
 msgid "allow adding otherwise ignored files"
 msgstr "consenti l'aggiunta di file altrimenti ignorati"
 
-#: builtin/add.c:297
+#: builtin/add.c:329
 msgid "update tracked files"
 msgstr "aggiorna i file tracciati"
 
-#: builtin/add.c:298
+#: builtin/add.c:330
 msgid "renormalize EOL of tracked files (implies -u)"
 msgstr "rinormalizza i fine riga dei file tracciati (implica -u)"
 
-#: builtin/add.c:299
+#: builtin/add.c:331
 msgid "record only the fact that the path will be added later"
 msgstr "salva solo il fatto che il percorso sarà aggiunto successivamente"
 
-#: builtin/add.c:300
+#: builtin/add.c:332
 msgid "add changes from all tracked and untracked files"
 msgstr "aggiungi le modifiche da tutti i file tracciati e non"
 
-#: builtin/add.c:303
+#: builtin/add.c:335
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr "ignora i percorsi eliminati nell'albero di lavoro (come --no-all)"
 
-#: builtin/add.c:305
+#: builtin/add.c:337
 msgid "don't add, only refresh the index"
 msgstr "non eseguire l'aggiunta, aggiorna solo l'indice"
 
-#: builtin/add.c:306
+#: builtin/add.c:338
 msgid "just skip files which cannot be added because of errors"
 msgstr ""
 "salta semplicemente i file che non possono essere aggiunti a causa di errori"
 
-#: builtin/add.c:307
+#: builtin/add.c:339
 msgid "check if - even missing - files are ignored in dry run"
 msgstr ""
 "controlla se i file - anche quelli mancanti - sono ignorati durante il test "
 "controllato"
 
-#: builtin/add.c:309 builtin/update-index.c:991
+#: builtin/add.c:341 builtin/update-index.c:1004
 msgid "override the executable bit of the listed files"
 msgstr "esegui l'override del bit eseguibile dei file elencati"
 
-#: builtin/add.c:311
+#: builtin/add.c:343
 msgid "warn when adding an embedded repository"
 msgstr "emetti un avviso quando si aggiunge un repository incorporato"
 
-#: builtin/add.c:326
+#: builtin/add.c:345
+msgid "backend for `git stash -p`"
+msgstr "backend per `git stash -p`"
+
+#: builtin/add.c:363
 #, c-format
 msgid ""
 "You've added another git repository inside your current repository.\n"
@@ -7840,152 +9677,178 @@ msgstr ""
 "\n"
 "Vedi \"git help submodule\" per ulteriori informazioni."
 
-#: builtin/add.c:354
+#: builtin/add.c:391
 #, c-format
 msgid "adding embedded git repository: %s"
 msgstr "aggiunta repository Git incorporato in corso: %s"
 
-#: builtin/add.c:372
-#, c-format
-msgid "Use -f if you really want to add them.\n"
-msgstr "Usa -f se vuoi davvero aggiungerli.\n"
+#: builtin/add.c:410
+msgid ""
+"Use -f if you really want to add them.\n"
+"Turn this message off by running\n"
+"\"git config advice.addIgnoredFile false\""
+msgstr ""
+"Usa -f se vuoi veramente aggiungerli.\n"
+"Per disabilitare questo messaggio, esegui\n"
+"\"git config advice.addIgnoredFile false\""
 
-#: builtin/add.c:380
+#: builtin/add.c:419
 msgid "adding files failed"
 msgstr "aggiunta dei file non riuscita"
 
-#: builtin/add.c:418
+#: builtin/add.c:447 builtin/commit.c:348
+msgid "--pathspec-from-file is incompatible with --interactive/--patch"
+msgstr "--pathspec-from-file non è compatibile con --interactive/--patch"
+
+#: builtin/add.c:464
+msgid "--pathspec-from-file is incompatible with --edit"
+msgstr "--pathspec-from-file non è compatibile con --edit"
+
+#: builtin/add.c:476
 msgid "-A and -u are mutually incompatible"
 msgstr "-A e -u non sono compatibili fra loro"
 
-#: builtin/add.c:425
+#: builtin/add.c:479
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr "L'opzione --ignore-missing può essere usata solo con --dry-run"
 
-#: builtin/add.c:429
+#: builtin/add.c:483
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "Il parametro --chmod '%s' deve essere -x o +x"
 
-#: builtin/add.c:444
+#: builtin/add.c:501 builtin/checkout.c:1675 builtin/commit.c:354
+#: builtin/reset.c:327 builtin/rm.c:272 builtin/stash.c:1509
+msgid "--pathspec-from-file is incompatible with pathspec arguments"
+msgstr ""
+"--pathspec-from-file non è compatibile con gli argomenti specificatore "
+"percorso"
+
+#: builtin/add.c:508 builtin/checkout.c:1687 builtin/commit.c:360
+#: builtin/reset.c:333 builtin/rm.c:278 builtin/stash.c:1515
+msgid "--pathspec-file-nul requires --pathspec-from-file"
+msgstr "--pathspec-file-nul richiede --pathspec-from-file"
+
+#: builtin/add.c:512
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr "Non è stato specificato nulla, non è stato aggiunto nulla.\n"
 
-#: builtin/add.c:445
-#, c-format
-msgid "Maybe you wanted to say 'git add .'?\n"
-msgstr "Forse intendevi dire 'git add .'?\n"
+#: builtin/add.c:514
+msgid ""
+"Maybe you wanted to say 'git add .'?\n"
+"Turn this message off by running\n"
+"\"git config advice.addEmptyPathspec false\""
+msgstr ""
+"Forse volevi dire 'git add .'?\n"
+"Per disabilitare questo messaggio, esegui\n"
+"\"git config advice.addEmptyPathspec false\""
 
-#: builtin/am.c:348
+#: builtin/am.c:352
 msgid "could not parse author script"
 msgstr "impossibile analizzare lo script author"
 
-#: builtin/am.c:432
+#: builtin/am.c:436
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr "'%s' è stato eliminato dall'hook applypatch-msg"
 
-#: builtin/am.c:473
+#: builtin/am.c:478
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Riga di input malformata: '%s'."
 
-#: builtin/am.c:510
+#: builtin/am.c:516
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Copia delle note da '%s' a '%s' non riuscita"
 
-#: builtin/am.c:536
+#: builtin/am.c:542
 msgid "fseek failed"
 msgstr "fseek non riuscita"
 
-#: builtin/am.c:724
+#: builtin/am.c:730
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "impossibile analizzare la patch '%s'"
 
-#: builtin/am.c:789
+#: builtin/am.c:795
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "Può essere applicata solo una serie di patch StGIT per volta"
 
-#: builtin/am.c:837
+#: builtin/am.c:843
 msgid "invalid timestamp"
 msgstr "timestamp non valido"
 
-#: builtin/am.c:842 builtin/am.c:854
+#: builtin/am.c:848 builtin/am.c:860
 msgid "invalid Date line"
 msgstr "riga Date non valida"
 
-#: builtin/am.c:849
+#: builtin/am.c:855
 msgid "invalid timezone offset"
 msgstr "offset fuso orario non valido"
 
-#: builtin/am.c:942
+#: builtin/am.c:948
 msgid "Patch format detection failed."
 msgstr "Rilevamento del formato della patch non riuscito."
 
-#: builtin/am.c:947 builtin/clone.c:409
+#: builtin/am.c:953 builtin/clone.c:409
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "creazione della directory '%s' non riuscita"
 
-#: builtin/am.c:952
+#: builtin/am.c:958
 msgid "Failed to split patches."
 msgstr "Divisione delle patch non riuscita."
 
-#: builtin/am.c:1082 builtin/commit.c:371
-msgid "unable to write index file"
-msgstr "impossibile scrivere il file index"
-
-#: builtin/am.c:1096
+#: builtin/am.c:1089
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr "Una volta risolto questo problema, esegui \"%s --continue\"."
 
-#: builtin/am.c:1097
+#: builtin/am.c:1090
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr "Se preferisci saltare questa patch, esegui invece \"%s --skip\"."
 
-#: builtin/am.c:1098
+#: builtin/am.c:1091
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr ""
 "Per ripristinare il branch originario e terminare il patching, esegui \"%s --"
 "abort\"."
 
-#: builtin/am.c:1181
+#: builtin/am.c:1174
 msgid "Patch sent with format=flowed; space at the end of lines might be lost."
 msgstr ""
 "Patch inviata con format=flowed; gli spazi al termine delle righe potrebbero "
 "essere andati perduti."
 
-#: builtin/am.c:1209
+#: builtin/am.c:1202
 msgid "Patch is empty."
 msgstr "La patch è vuota."
 
-#: builtin/am.c:1275
+#: builtin/am.c:1267
 #, c-format
-msgid "invalid ident line: %.*s"
-msgstr "riga ident non valida: %.*s"
+msgid "missing author line in commit %s"
+msgstr "riga autore mancante nel commit %s"
 
-#: builtin/am.c:1297
+#: builtin/am.c:1270
 #, c-format
-msgid "unable to parse commit %s"
-msgstr "impossibile analizzare il commit %s"
+msgid "invalid ident line: %.*s"
+msgstr "riga ident non valida: %.*s"
 
-#: builtin/am.c:1493
+#: builtin/am.c:1489
 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:1495
+#: builtin/am.c:1491
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 "Utilizzo le informazioni dell'indice per ricostruire un albero di base..."
 
-#: builtin/am.c:1514
+#: builtin/am.c:1510
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -7993,30 +9856,24 @@ msgstr ""
 "Hai modificato manualmente la patch?\n"
 "Non può essere applicata ai blob registrati nel suo indice."
 
-#: builtin/am.c:1520
+#: builtin/am.c:1516
 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:1546
+#: builtin/am.c:1542
 msgid "Failed to merge in the changes."
 msgstr "Merge delle modifiche non riuscito."
 
-#: builtin/am.c:1578
+#: builtin/am.c:1574
 msgid "applying to an empty history"
 msgstr "applicazione a una cronologia vuota"
 
-#: builtin/am.c:1624 builtin/am.c:1628
+#: builtin/am.c:1621 builtin/am.c:1625
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "impossibile riprendere l'attività: %s non esiste."
 
-#: builtin/am.c:1644
-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:1649
+#: builtin/am.c:1643
 msgid "Commit Body is:"
 msgstr "Il corpo del commit è:"
 
@@ -8024,36 +9881,41 @@ msgstr "Il corpo del commit è:"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1659
+#: builtin/am.c:1653
+#, 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:1709
+#: builtin/am.c:1700 builtin/commit.c:398
+msgid "unable to write index file"
+msgstr "impossibile scrivere il file indice"
+
+#: builtin/am.c:1704
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Indice sporco: impossibile applicare le patch (elemento sporco: %s)"
 
-#: builtin/am.c:1749 builtin/am.c:1817
+#: builtin/am.c:1744 builtin/am.c:1812
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Applicazione in corso: %.*s"
 
-#: builtin/am.c:1766
+#: builtin/am.c:1761
 msgid "No changes -- Patch already applied."
 msgstr "Nessuna modifica -- patch già applicata."
 
-#: builtin/am.c:1772
+#: builtin/am.c:1767
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "Patch non riuscita a %s %.*s"
 
-#: builtin/am.c:1776
-msgid "Use 'git am --show-current-patch' to see the failed patch"
+#: builtin/am.c:1771
+msgid "Use 'git am --show-current-patch=diff' to see the failed patch"
 msgstr ""
-"Usa 'git am --show-current-patch' per visualizzare la patch non riuscita"
+"Usa 'git am --show-current-patch=diff' per visualizzare la patch non riuscita"
 
-#: builtin/am.c:1820
+#: builtin/am.c:1815
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -8063,7 +9925,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:1827
+#: builtin/am.c:1822
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -8076,17 +9938,17 @@ msgstr ""
 "Potresti eseguire `git rm` su un file per accettarne la risoluzione "
 "\"eliminato da loro\"."
 
-#: builtin/am.c:1934 builtin/am.c:1938 builtin/am.c:1950 builtin/reset.c:329
-#: builtin/reset.c:337
+#: builtin/am.c:1929 builtin/am.c:1933 builtin/am.c:1945 builtin/reset.c:346
+#: builtin/reset.c:354
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Impossibile analizzare l'oggetto '%s'."
 
-#: builtin/am.c:1986
+#: builtin/am.c:1981
 msgid "failed to clean index"
 msgstr "pulizia dell'indice non riuscita"
 
-#: builtin/am.c:2030
+#: builtin/am.c:2025
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -8095,148 +9957,158 @@ msgstr ""
 "'am'.\n"
 "Non ritorno indietro a ORIG_HEAD"
 
-#: builtin/am.c:2123
+#: builtin/am.c:2132
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Valore non valido per --patch-format: %s"
 
-#: builtin/am.c:2159
+#: builtin/am.c:2172
+#, c-format
+msgid "Invalid value for --show-current-patch: %s"
+msgstr "Valore non valido per --show-current-patch: %s"
+
+#: builtin/am.c:2176
+#, c-format
+msgid "--show-current-patch=%s is incompatible with --show-current-patch=%s"
+msgstr "--show-current-patch=%s non è compatibile con --show-current-patch=%s"
+
+#: builtin/am.c:2207
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<opzioni>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/am.c:2160
+#: builtin/am.c:2208
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<opzioni>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2166
+#: builtin/am.c:2214
 msgid "run interactively"
 msgstr "esegui in modalità interattiva"
 
-#: builtin/am.c:2168
+#: builtin/am.c:2216
 msgid "historical option -- no-op"
 msgstr "opzione storica -- non esegue nulla"
 
-#: builtin/am.c:2170
+#: builtin/am.c:2218
 msgid "allow fall back on 3way merging if needed"
 msgstr "consenti il ripiego sul merge a tre vie se necessario"
 
-#: builtin/am.c:2171 builtin/init-db.c:486 builtin/prune-packed.c:58
-#: builtin/repack.c:306
+#: builtin/am.c:2219 builtin/init-db.c:494 builtin/prune-packed.c:58
+#: builtin/repack.c:304 builtin/stash.c:812
 msgid "be quiet"
 msgstr "non visualizzare messaggi"
 
-#: builtin/am.c:2173
+#: builtin/am.c:2221
 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:2176
+#: builtin/am.c:2224
 msgid "recode into utf8 (default)"
 msgstr "converti codifica in UTF-8 (impostazione predefinita)"
 
-#: builtin/am.c:2178
+#: builtin/am.c:2226
 msgid "pass -k flag to git-mailinfo"
 msgstr "fornisci l'argomento -k a git-mailinfo"
 
-#: builtin/am.c:2180
+#: builtin/am.c:2228
 msgid "pass -b flag to git-mailinfo"
 msgstr "fornisci l'argomento -b a git-mailinfo"
 
-#: builtin/am.c:2182
+#: builtin/am.c:2230
 msgid "pass -m flag to git-mailinfo"
 msgstr "fornisci l'argomento -m a git-mailinfo"
 
-#: builtin/am.c:2184
+#: builtin/am.c:2232
 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:2187
+#: builtin/am.c:2235
 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:2190
+#: builtin/am.c:2238
 msgid "strip everything before a scissors line"
 msgstr "rimuovi tutte le righe prima di una riga \"taglia qui\""
 
-#: builtin/am.c:2192 builtin/am.c:2195 builtin/am.c:2198 builtin/am.c:2201
-#: builtin/am.c:2204 builtin/am.c:2207 builtin/am.c:2210 builtin/am.c:2213
-#: builtin/am.c:2219
+#: builtin/am.c:2240 builtin/am.c:2243 builtin/am.c:2246 builtin/am.c:2249
+#: builtin/am.c:2252 builtin/am.c:2255 builtin/am.c:2258 builtin/am.c:2261
+#: builtin/am.c:2267
 msgid "pass it through git-apply"
 msgstr "passa l'argomento a git-apply"
 
-#: builtin/am.c:2209 builtin/commit.c:1343 builtin/fmt-merge-msg.c:671
-#: builtin/fmt-merge-msg.c:674 builtin/grep.c:879 builtin/merge.c:240
-#: builtin/pull.c:152 builtin/pull.c:210 builtin/rebase.c:1062
-#: builtin/repack.c:317 builtin/repack.c:321 builtin/repack.c:323
-#: builtin/show-branch.c:651 builtin/show-ref.c:171 builtin/tag.c:386
-#: parse-options.h:144 parse-options.h:146 parse-options.h:266
+#: builtin/am.c:2257 builtin/commit.c:1391 builtin/fmt-merge-msg.c:670
+#: builtin/fmt-merge-msg.c:673 builtin/grep.c:871 builtin/merge.c:250
+#: builtin/pull.c:140 builtin/pull.c:199 builtin/rebase.c:1505
+#: builtin/repack.c:315 builtin/repack.c:319 builtin/repack.c:321
+#: builtin/show-branch.c:650 builtin/show-ref.c:172 builtin/tag.c:403
+#: parse-options.h:154 parse-options.h:175 parse-options.h:316
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2215 builtin/branch.c:637 builtin/for-each-ref.c:38
-#: builtin/replace.c:544 builtin/tag.c:422 builtin/verify-tag.c:39
+#: builtin/am.c:2263 builtin/branch.c:661 builtin/for-each-ref.c:38
+#: builtin/replace.c:556 builtin/tag.c:437 builtin/verify-tag.c:38
 msgid "format"
 msgstr "formato"
 
-#: builtin/am.c:2216
+#: builtin/am.c:2264
 msgid "format the patch(es) are in"
 msgstr "il formato delle patch"
 
-#: builtin/am.c:2222
+#: builtin/am.c:2270
 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:2224
+#: builtin/am.c:2272
 msgid "continue applying patches after resolving a conflict"
 msgstr ""
 "continua l'applicazione delle patch dopo la risoluzione di un conflitto"
 
-#: builtin/am.c:2227
+#: builtin/am.c:2275
 msgid "synonyms for --continue"
 msgstr "sinonimi di --continue"
 
-#: builtin/am.c:2230
+#: builtin/am.c:2278
 msgid "skip the current patch"
-msgstr "salta la patch attuale"
+msgstr "salta la patch corrente"
 
-#: builtin/am.c:2233
+#: builtin/am.c:2281
 msgid "restore the original branch and abort the patching operation."
 msgstr "ripristina il branch originario e interrompi l'operazione di patching."
 
-#: builtin/am.c:2236
+#: builtin/am.c:2284
 msgid "abort the patching operation but keep HEAD where it is."
 msgstr "interrompi l'operazione di patching ma mantieni HEAD dov'è."
 
-#: builtin/am.c:2239
-msgid "show the patch being applied."
-msgstr "visualizza la patch in fase di applicazione."
+#: builtin/am.c:2288
+msgid "show the patch being applied"
+msgstr "visualizza la patch in fase di applicazione"
 
-#: builtin/am.c:2243
+#: builtin/am.c:2293
 msgid "lie about committer date"
 msgstr "menti sulla data del commit"
 
-#: builtin/am.c:2245
+#: builtin/am.c:2295
 msgid "use current timestamp for author date"
-msgstr "usa il timestamp attuale come data autore"
+msgstr "usa il timestamp corrente come data autore"
 
-#: builtin/am.c:2247 builtin/commit.c:1486 builtin/merge.c:274
-#: builtin/pull.c:185 builtin/rebase.c:1106 builtin/rebase--interactive.c:185
-#: builtin/revert.c:114 builtin/tag.c:402
+#: builtin/am.c:2297 builtin/commit-tree.c:120 builtin/commit.c:1512
+#: builtin/merge.c:287 builtin/pull.c:174 builtin/rebase.c:517
+#: builtin/rebase.c:1556 builtin/revert.c:117 builtin/tag.c:418
 msgid "key-id"
 msgstr "ID chiave"
 
-#: builtin/am.c:2248 builtin/rebase.c:1107 builtin/rebase--interactive.c:186
+#: builtin/am.c:2298 builtin/rebase.c:518 builtin/rebase.c:1557
 msgid "GPG-sign commits"
 msgstr "firma i commit con GPG"
 
-#: builtin/am.c:2251
+#: builtin/am.c:2301
 msgid "(internal use for git-rebase)"
 msgstr "(a uso interno per git-rebase)"
 
-#: builtin/am.c:2269
+#: builtin/am.c:2319
 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."
@@ -8244,18 +10116,18 @@ msgstr ""
 "L'opzione -b/--binary non esegue nulla da molto tempo e\n"
 "sarà rimossa. Non usarla più."
 
-#: builtin/am.c:2276
+#: builtin/am.c:2326
 msgid "failed to read the index"
 msgstr "lettura dell'indice non riuscita"
 
-#: builtin/am.c:2291
+#: builtin/am.c:2341
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr ""
-"la directory di rebase precedente %s esiste ancora ma è stata fornita "
+"la directory di rebase precedente %s esiste ancora ma è stata specificata "
 "un'mbox."
 
-#: builtin/am.c:2315
+#: builtin/am.c:2365
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -8264,10 +10136,16 @@ msgstr ""
 "Trovata directory smarrita %s.\n"
 "Usa \"git am --abort\" per eliminarla."
 
-#: builtin/am.c:2321
+#: builtin/am.c:2371
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr "Operazione di risoluzione non in corso, non riprendiamo."
 
+#: builtin/am.c:2381
+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>...]"
@@ -8317,46 +10195,47 @@ msgid "git bisect--helper --bisect-clean-state"
 msgstr "git bisect--helper --bisect-clean-state"
 
 #: builtin/bisect--helper.c:25
-#, fuzzy
 msgid "git bisect--helper --bisect-reset [<commit>]"
-msgstr "git bisect--helper --bisect-clean-state"
+msgstr "git bisect--helper --bisect-reset [<commit>]"
 
 #: builtin/bisect--helper.c:26
-#, fuzzy
 msgid ""
 "git bisect--helper --bisect-write [--no-log] <state> <revision> <good_term> "
 "<bad_term>"
 msgstr ""
-"git bisect--helper --write-terms <termine revisione non funzionante> "
-"<termine revisione funzionante>"
+"git bisect--helper --bisect-write [--no-log] <stato> <revisione> <termine "
+"revisione funzionante> <termine revisione non funzionante>"
 
 #: builtin/bisect--helper.c:27
-#, fuzzy
 msgid ""
 "git bisect--helper --bisect-check-and-set-terms <command> <good_term> "
 "<bad_term>"
 msgstr ""
-"git bisect--helper --write-terms <termine revisione non funzionante> "
-"<termine revisione funzionante>"
+"git bisect--helper --bisect-check-and-set-terms <comando> <termine revisione "
+"funzionante> <termine revisione non funzionante>"
 
 #: builtin/bisect--helper.c:28
-#, fuzzy
 msgid "git bisect--helper --bisect-next-check <good_term> <bad_term> [<term>]"
 msgstr ""
-"git bisect--helper --write-terms <termine revisione non funzionante> "
-"<termine revisione funzionante>"
+"git bisect--helper --bisect-next-check <termine revisione funzionante> "
+"<termine revisione non funzionante> [<termine>]"
 
 #: builtin/bisect--helper.c:29
 msgid ""
 "git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
 "term-new]"
 msgstr ""
+"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
+"term-new]"
 
 #: builtin/bisect--helper.c:30
 msgid ""
 "git bisect--helper --bisect-start [--term-{old,good}=<term> --term-{new,bad}"
 "=<term>][--no-checkout] [<bad> [<good>...]] [--] [<paths>...]"
 msgstr ""
+"git bisect--helper --bisect-start [--term-{old,good}=<termine> --term-{new,"
+"bad}=<termine>][--no-checkout] [<non funzionante> [<funzionante>...]] [--] "
+"[<percorsi>...]"
 
 #: builtin/bisect--helper.c:86
 #, c-format
@@ -8382,205 +10261,207 @@ msgid "could not open the file BISECT_TERMS"
 msgstr "impossibile aprire il file BISECT_TERMS"
 
 #: builtin/bisect--helper.c:155
-#, fuzzy, c-format
+#, c-format
 msgid "We are not bisecting.\n"
-msgstr "Non stiamo eseguendo un bisect."
+msgstr "Non stiamo eseguendo un bisect.\n"
 
 #: builtin/bisect--helper.c:163
-#, fuzzy, c-format
+#, c-format
 msgid "'%s' is not a valid commit"
-msgstr "'%s' non è un termine valido"
+msgstr "'%s' non è un commit valido"
 
-#: builtin/bisect--helper.c:174
+#: builtin/bisect--helper.c:172
 #, c-format
 msgid ""
 "could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
 msgstr ""
+"impossibile eseguire il checkout dell'HEAD originario '%s'. Prova con 'git "
+"bisect reset <commit>'."
 
-#: builtin/bisect--helper.c:215
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:216
+#, c-format
 msgid "Bad bisect_write argument: %s"
-msgstr "Argomento bisect_write errato: $state"
+msgstr "Argomento bisect_write errato: %s"
 
-#: builtin/bisect--helper.c:220
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:221
+#, c-format
 msgid "couldn't get the oid of the rev '%s'"
-msgstr "impossibile cambiare il significato del termine '%s'"
+msgstr "impossibile recuperare l'OID della revisione '%s'"
 
-#: builtin/bisect--helper.c:232
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:233
+#, c-format
 msgid "couldn't open the file '%s'"
-msgstr "impossibile creare il file '%s'"
+msgstr "impossibile aprire il file '%s'"
 
-#: builtin/bisect--helper.c:258
+#: builtin/bisect--helper.c:259
 #, c-format
 msgid "Invalid command: you're currently in a %s/%s bisect"
-msgstr ""
+msgstr "Comando non valido: attualmente stai eseguendo una bisezione %s/%s"
 
-#: builtin/bisect--helper.c:285
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:286
+#, c-format
 msgid ""
 "You need to give me at least one %s and %s revision.\n"
 "You can use \"git bisect %s\" and \"git bisect %s\" for that."
 msgstr ""
-"Devi specificare almeno una revisione corretta ed una errata.\n"
-"(Puoi usare \"git bisect bad\" e \"git bisect good\" per questo scopo.)"
+"Devi specificare almeno una revisione %s ed una %s.\n"
+"Puoi usare \"git bisect %s\" e \"git bisect %s\" per questo scopo."
 
-#: builtin/bisect--helper.c:289
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:290
+#, c-format
 msgid ""
 "You need to start by \"git bisect start\".\n"
 "You then need to give me at least one %s and %s revision.\n"
 "You can use \"git bisect %s\" and \"git bisect %s\" for that."
 msgstr ""
-"Devi specificare almeno una revisione corretta ed una errata.\n"
-"(Puoi usare \"git bisect bad\" e \"git bisect good\" per questo scopo.)"
+"Devi iniziare con \"git bisect start\".\n"
+"Quindi devi specificare almeno una revisione %s ed una %s.\n"
+"Puoi usare \"git bisect %s\" e \"git bisect %s\" a questo scopo."
 
-#: builtin/bisect--helper.c:321
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:310
+#, c-format
 msgid "bisecting only with a %s commit"
-msgstr "scrittura commit radice in corso"
+msgstr "eseguo la bisezione solo con un commit %s"
 
 #. TRANSLATORS: Make sure to include [Y] and [n] in your
 #. translation. The program will only accept English input
 #. at this point.
 #.
-#: builtin/bisect--helper.c:329
+#: builtin/bisect--helper.c:318
 msgid "Are you sure [Y/n]? "
 msgstr "Sei sicuro? [Y/n] "
 
-#: builtin/bisect--helper.c:376
+#: builtin/bisect--helper.c:379
 msgid "no terms defined"
-msgstr ""
+msgstr "nessun termine definito"
 
-#: builtin/bisect--helper.c:379
+#: builtin/bisect--helper.c:382
 #, c-format
 msgid ""
 "Your current terms are %s for the old state\n"
 "and %s for the new state.\n"
 msgstr ""
+"I tuoi termini correnti sono %s per lo stato vecchio\n"
+"e %s per lo stato nuovo.\n"
 
-#: builtin/bisect--helper.c:389
+#: builtin/bisect--helper.c:392
 #, c-format
 msgid ""
 "invalid argument %s for 'git bisect terms'.\n"
 "Supported options are: --term-good|--term-old and --term-bad|--term-new."
 msgstr ""
+"argomento %s non valido per 'git bisect terms'.\n"
+"Le opzioni supportate sono: --term-good|--term-old e --term-bad|--term-new."
 
-#: builtin/bisect--helper.c:475
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:478
+#, c-format
 msgid "unrecognized option: '%s'"
-msgstr "valore non riconosciuto: position:%s"
+msgstr "opzione non riconosciuta: '%s'"
 
-#: builtin/bisect--helper.c:479
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:482
+#, c-format
 msgid "'%s' does not appear to be a valid revision"
-msgstr "'$arg' non sembra essere una revisione valida"
+msgstr "sembra che '%s' non sia una revisione valida"
 
-#: builtin/bisect--helper.c:511
+#: builtin/bisect--helper.c:514
 msgid "bad HEAD - I need a HEAD"
-msgstr ""
+msgstr "HEAD non valida - ho bisogno di un'HEAD"
 
-#: builtin/bisect--helper.c:526
-#, fuzzy, c-format
+#: builtin/bisect--helper.c:529
+#, c-format
 msgid "checking out '%s' failed. Try 'git bisect start <valid-branch>'."
 msgstr ""
-"Checkout di '$start_head' non riuscito. Prova 'git bisect reset <branch-"
-"valido>'."
+"checkout di '%s' non riuscito. Prova con 'git bisect start <branch valido>'."
 
-#: builtin/bisect--helper.c:547
+#: builtin/bisect--helper.c:550
 msgid "won't bisect on cg-seek'ed tree"
-msgstr ""
+msgstr "non eseguirò la bisezione su un albero sottoposto a cg-seek"
 
-#: builtin/bisect--helper.c:550
-#, fuzzy
+#: builtin/bisect--helper.c:553
 msgid "bad HEAD - strange symbolic ref"
-msgstr "HEAD errato - strano ref simbolico"
+msgstr "head non valida - riferimento simbolico strano"
+
+#: builtin/bisect--helper.c:577
+#, c-format
+msgid "invalid ref: '%s'"
+msgstr "riferimento non valido: '%s'"
 
-#: builtin/bisect--helper.c:627
+#: builtin/bisect--helper.c:633
 msgid "perform 'git bisect next'"
 msgstr "esegui 'git bisect next'"
 
-#: builtin/bisect--helper.c:629
+#: builtin/bisect--helper.c:635
 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:637
 msgid "cleanup the bisection state"
 msgstr "pulisci lo stato bisezione"
 
-#: builtin/bisect--helper.c:633
+#: builtin/bisect--helper.c:639
 msgid "check for expected revs"
 msgstr "controlla se le revisioni attese sono presenti"
 
-#: builtin/bisect--helper.c:635
-#, fuzzy
+#: builtin/bisect--helper.c:641
 msgid "reset the bisection state"
-msgstr "pulisci lo stato bisezione"
+msgstr "reimposta lo stato della bisezione"
 
-#: builtin/bisect--helper.c:637
-#, fuzzy
+#: builtin/bisect--helper.c:643
 msgid "write out the bisection state in BISECT_LOG"
-msgstr "pulisci lo stato bisezione"
+msgstr "scrivi lo stato della bisezione in BISECT_LOG"
 
-#: builtin/bisect--helper.c:639
-#, fuzzy
+#: builtin/bisect--helper.c:645
 msgid "check and set terms in a bisection state"
-msgstr "pulisci lo stato bisezione"
+msgstr "controlla e imposta i termini in uno stato bisezione"
 
-#: builtin/bisect--helper.c:641
+#: builtin/bisect--helper.c:647
 msgid "check whether bad or good terms exist"
 msgstr ""
+"controlla se esistono termini per revisioni non funzionanti o funzionanti"
 
-#: builtin/bisect--helper.c:643
-#, fuzzy
+#: builtin/bisect--helper.c:649
 msgid "print out the bisect terms"
-msgstr "pulisci lo stato bisezione"
+msgstr "stampa i termini della bisezione"
 
-#: builtin/bisect--helper.c:645
+#: builtin/bisect--helper.c:651
 msgid "start the bisect session"
-msgstr ""
+msgstr "inizia la sessione di bisezione"
 
-#: builtin/bisect--helper.c:647
+#: builtin/bisect--helper.c:653
 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:655
 msgid "no log for BISECT_WRITE"
-msgstr ""
+msgstr "non registrare le operazioni eseguite per BISECT_WRITE"
 
-#: builtin/bisect--helper.c:666
+#: builtin/bisect--helper.c:673
 msgid "--write-terms requires two arguments"
 msgstr "--write-terms richiede due argomenti"
 
-#: builtin/bisect--helper.c:670
+#: builtin/bisect--helper.c:677
 msgid "--bisect-clean-state requires no arguments"
 msgstr "--bisect-clean-state non richiede argomenti"
 
-#: builtin/bisect--helper.c:677
-#, fuzzy
+#: builtin/bisect--helper.c:684
 msgid "--bisect-reset requires either no argument or a commit"
-msgstr "--bisect-clean-state non richiede argomenti"
+msgstr "--bisect-reset richiede o nessun argomento o un commit"
 
-#: builtin/bisect--helper.c:681
-#, fuzzy
+#: builtin/bisect--helper.c:688
 msgid "--bisect-write requires either 4 or 5 arguments"
-msgstr "--bisect-clean-state non richiede argomenti"
+msgstr "--bisect-write richiede o quattro o cinque argomenti"
 
-#: builtin/bisect--helper.c:687
-#, fuzzy
+#: builtin/bisect--helper.c:694
 msgid "--check-and-set-terms requires 3 arguments"
-msgstr "--bisect-clean-state non richiede argomenti"
+msgstr "--check-and-set-terms richiede tre argomenti"
 
-#: builtin/bisect--helper.c:693
-#, fuzzy
+#: builtin/bisect--helper.c:700
 msgid "--bisect-next-check requires 2 or 3 arguments"
-msgstr "--bisect-clean-state non richiede argomenti"
+msgstr "--bisect-next-check richiede due o tre argomenti"
 
-#: builtin/bisect--helper.c:699
-#, fuzzy
+#: builtin/bisect--helper.c:706
 msgid "--bisect-terms requires 0 or 1 argument"
-msgstr "--write-terms richiede due argomenti"
+msgstr "--bisect-terms richiede zero o un argomento"
 
 #: builtin/blame.c:31
 msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
@@ -8590,152 +10471,164 @@ 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:406
+#: builtin/blame.c:409
 #, c-format
 msgid "expecting a color: %s"
 msgstr "atteso colore: %s"
 
-#: builtin/blame.c:413
+#: builtin/blame.c:416
 msgid "must end with a color"
 msgstr "deve terminare con un colore"
 
-#: builtin/blame.c:700
+#: builtin/blame.c:729
 #, c-format
 msgid "invalid color '%s' in color.blame.repeatedLines"
 msgstr "colore '%s' non valido in color.blame.repeatedLines"
 
-#: builtin/blame.c:718
+#: builtin/blame.c:747
 msgid "invalid value for blame.coloring"
 msgstr "valore non valido per blame.coloring"
 
-#: builtin/blame.c:793
+#: builtin/blame.c:822
+#, c-format
+msgid "cannot find revision %s to ignore"
+msgstr "impossibile trovare la revisione %s da ignorare"
+
+#: builtin/blame.c:844
 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:794
+#: builtin/blame.c:845
 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:795
+#: builtin/blame.c:846
 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:796
+#: builtin/blame.c:847
 msgid "Show work cost statistics"
 msgstr "Visualizza le statistiche sul costo dell'operazione"
 
-#: builtin/blame.c:797
+#: builtin/blame.c:848
 msgid "Force progress reporting"
 msgstr "Forza l'indicazione d'avanzamento dell'operazione"
 
-#: builtin/blame.c:798
+#: builtin/blame.c:849
 msgid "Show output score for blame entries"
 msgstr "Visualizza il punteggio di output per le voci blame"
 
-#: builtin/blame.c:799
+#: builtin/blame.c:850
 msgid "Show original filename (Default: auto)"
 msgstr ""
 "Visualizza il nome file originario (impostazione predefinita: automatico)"
 
-#: builtin/blame.c:800
+#: builtin/blame.c:851
 msgid "Show original linenumber (Default: off)"
 msgstr ""
 "Visualizza il numero di riga originario (impostazione predefinita: off)"
 
-#: builtin/blame.c:801
+#: builtin/blame.c:852
 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:802
+#: builtin/blame.c:853
 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:803
+#: builtin/blame.c:854
 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:804
+#: builtin/blame.c:855
 msgid "Show raw timestamp (Default: off)"
 msgstr "Visualizza il timestamp grezzo (impostazione predefinita: off)"
 
-#: builtin/blame.c:805
+#: builtin/blame.c:856
 msgid "Show long commit SHA1 (Default: off)"
 msgstr ""
 "Visualizza l'hash SHA1 del commit in forma lunga (impostazione predefinita: "
 "off)"
 
-#: builtin/blame.c:806
+#: builtin/blame.c:857
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr ""
 "Non visualizzare il nome autore e il timestamp (impostazione predefinita: "
 "off)"
 
-#: builtin/blame.c:807
+#: builtin/blame.c:858
 msgid "Show author email instead of name (Default: off)"
 msgstr ""
-"Visualizza l'indirizzo email dell'autore invece del nome (impostazione "
+"Visualizza l'indirizzo e-mail dell'autore invece del nome (impostazione "
 "predefinita: off)"
 
-#: builtin/blame.c:808
+#: builtin/blame.c:859
 msgid "Ignore whitespace differences"
 msgstr "Ignora le differenze relative agli spazi bianchi"
 
-#: builtin/blame.c:809
+#: builtin/blame.c:860 builtin/log.c:1702
+msgid "rev"
+msgstr "revisione"
+
+#: builtin/blame.c:860
+msgid "Ignore <rev> when blaming"
+msgstr "Ignora <revisione> durante l'esecuzione del blame"
+
+#: builtin/blame.c:861
+msgid "Ignore revisions from <file>"
+msgstr "Ignora le revisioni specificate in <file>"
+
+#: builtin/blame.c:862
 msgid "color redundant metadata from previous line differently"
 msgstr "colora in modo differente i metadati ridondanti della riga precedente"
 
-#: builtin/blame.c:810
+#: builtin/blame.c:863
 msgid "color lines by age"
 msgstr "colora le righe in base all'età"
 
-#: builtin/blame.c:817
-msgid "Use an experimental heuristic to improve diffs"
-msgstr "Utilizza un'euristica sperimentale per migliorare i diff"
-
-#: builtin/blame.c:819
+#: builtin/blame.c:864
 msgid "Spend extra cycles to find better match"
-msgstr "Utilizza cicli extra per trovare una corrispondenza migliore"
+msgstr "Usa cicli extra per trovare una corrispondenza migliore"
 
-#: builtin/blame.c:820
+#: builtin/blame.c:865
 msgid "Use revisions from <file> instead of calling git-rev-list"
-msgstr ""
-"Utilizza le revisioni salvate in <file> anziché richiamare git-rev-list"
+msgstr "Usa le revisioni salvate in <file> anziché richiamare git-rev-list"
 
-#: builtin/blame.c:821
+#: builtin/blame.c:866
 msgid "Use <file>'s contents as the final image"
 msgstr "Usa i contenuti di <file> come immagine finale"
 
-#: builtin/blame.c:822 builtin/blame.c:823
+#: builtin/blame.c:867 builtin/blame.c:868
 msgid "score"
 msgstr "punteggio"
 
-#: builtin/blame.c:822
+#: builtin/blame.c:867
 msgid "Find line copies within and across files"
 msgstr "Trova copie delle righe all'interno e fra file"
 
-#: builtin/blame.c:823
+#: builtin/blame.c:868
 msgid "Find line movements within and across files"
 msgstr "Trova righe spostate all'interno e fra file"
 
-#: builtin/blame.c:824
+#: builtin/blame.c:869
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:824
+#: builtin/blame.c:869
 msgid "Process only line range n,m, counting from 1"
 msgstr "Elabora solo l'intervallo righe n,m, contandole da 1"
 
-#: builtin/blame.c:875
+#: builtin/blame.c:921
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress non può essere usato con --incremental o con i formati porcelain"
@@ -8748,18 +10641,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:926
+#: builtin/blame.c:972
 msgid "4 years, 11 months ago"
 msgstr "4 anni, 11 giorni fa"
 
-#: builtin/blame.c:1018
+#: builtin/blame.c:1079
 #, 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:1064
+#: builtin/blame.c:1125
 msgid "Blaming lines"
 msgstr "Eseguo il blame sulle righe"
 
@@ -8791,7 +10684,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"
@@ -8800,7 +10693,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"
@@ -8809,12 +10702,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"
@@ -8823,120 +10716,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 "Eliminato branch remoto tracciato %s (era %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 "Eliminato branch %s (era %s).\n"
+msgstr "Branch %s eliminato (era %s).\n"
 
-#: builtin/branch.c:421 builtin/tag.c:59
+#: builtin/branch.c:429 builtin/tag.c:61
 msgid "unable to parse format string"
 msgstr "impossibile analizzare la stringa di formato"
 
-#: builtin/branch.c:458
+#: builtin/branch.c:460
+msgid "could not resolve HEAD"
+msgstr "impossibile risolvere HEAD"
+
+#: 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:481
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr "Rebase del branch %s in corso in %s"
 
-#: builtin/branch.c:462
+#: 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:479
+#: 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:481
+#: 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:492
+#: builtin/branch.c:515
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Nome branch non valido: '%s'"
 
-#: builtin/branch.c:519
+#: builtin/branch.c:542
 msgid "Branch rename failed"
 msgstr "Ridenominazione del branch non riuscita"
 
-#: builtin/branch.c:521
+#: builtin/branch.c:544
 msgid "Branch copy failed"
 msgstr "Copia del branch non riuscita"
 
-#: builtin/branch.c:525
+#: 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:528
+#: builtin/branch.c:551
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "Branch mal denominato '%s' rinominato"
 
-#: builtin/branch.c:534
+#: 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:543
+#: 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:545
+#: 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:561
+#: builtin/branch.c:584
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -8947,192 +10849,186 @@ msgstr ""
 "  %s\n"
 "Le righe che iniziano con '%c' saranno omesse.\n"
 
-#: builtin/branch.c:594
+#: builtin/branch.c:618
 msgid "Generic options"
 msgstr "Opzioni generiche"
 
-#: builtin/branch.c:596
+#: 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:597
+#: builtin/branch.c:621
 msgid "suppress informational messages"
 msgstr "non visualizzare i messaggi informativi"
 
-#: builtin/branch.c:598
+#: 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:600
+#: builtin/branch.c:624
 msgid "do not use"
 msgstr "non usare"
 
-#: builtin/branch.c:602 builtin/rebase--interactive.c:182
+#: builtin/branch.c:626 builtin/rebase.c:513
 msgid "upstream"
 msgstr "upstream"
 
-#: builtin/branch.c:602
+#: builtin/branch.c:626
 msgid "change the upstream info"
 msgstr "modifica le informazioni sull'upstream"
 
-#: builtin/branch.c:603
-msgid "Unset the upstream info"
-msgstr "Rimuovi le informazioni sull'upstream"
+#: builtin/branch.c:627
+msgid "unset the upstream info"
+msgstr "rimuovi le informazioni sull'upstream"
 
-#: builtin/branch.c:604
+#: builtin/branch.c:628
 msgid "use colored output"
 msgstr "usa l'output colorato"
 
-#: builtin/branch.c:605
+#: builtin/branch.c:629
 msgid "act on remote-tracking branches"
 msgstr "agisci sui branch remoti tracciati"
 
-#: builtin/branch.c:607 builtin/branch.c:609
+#: 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:608 builtin/branch.c:610
+#: 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:613
+#: builtin/branch.c:637
 msgid "Specific git-branch actions:"
 msgstr "Azioni specifiche di git-branch:"
 
-#: builtin/branch.c:614
+#: 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:616
+#: builtin/branch.c:640
 msgid "delete fully merged branch"
 msgstr "elimina il branch completamente sottoposto a merge"
 
-#: builtin/branch.c:617
+#: 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:618
+#: 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:619
+#: 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:620
+#: builtin/branch.c:644
 msgid "copy a branch and its reflog"
 msgstr "copia un branch e il suo registro dei riferimenti"
 
-#: builtin/branch.c:621
+#: builtin/branch.c:645
 msgid "copy a branch, even if target exists"
 msgstr "copia un branch anche se la destinazione esiste"
 
-#: builtin/branch.c:622
+#: builtin/branch.c:646
 msgid "list branch names"
 msgstr "elenca i nomi dei branch"
 
-#: builtin/branch.c:623
+#: builtin/branch.c:647
+msgid "show current branch name"
+msgstr "visualizza il nome del branch corrente"
+
+#: builtin/branch.c:648
 msgid "create the branch's reflog"
 msgstr "crea il registro dei riferimenti del branch"
 
-#: builtin/branch.c:625
+#: builtin/branch.c:650
 msgid "edit the description for the branch"
 msgstr "modifica la descrizione del branch"
 
-#: builtin/branch.c:626
+#: builtin/branch.c:651
 msgid "force creation, move/rename, deletion"
 msgstr "forza la creazione, spostamento/ridenominazione, eliminazione"
 
-#: builtin/branch.c:627
+#: builtin/branch.c:652
 msgid "print only branches that are merged"
 msgstr "stampa solo i branch sottoposti a merge"
 
-#: builtin/branch.c:628
+#: builtin/branch.c:653
 msgid "print only branches that are not merged"
 msgstr "stampa solo i branch non sottoposti a merge"
 
-#: builtin/branch.c:629
+#: builtin/branch.c:654
 msgid "list branches in columns"
 msgstr "elenca i branch in colonne"
 
-#: builtin/branch.c:630 builtin/for-each-ref.c:40 builtin/ls-remote.c:70
-#: builtin/tag.c:415
-msgid "key"
-msgstr "chiave"
-
-#: builtin/branch.c:631 builtin/for-each-ref.c:41 builtin/ls-remote.c:71
-#: builtin/tag.c:416
-msgid "field name to sort on"
-msgstr "nome campo in base a cui ordinare"
-
-#: builtin/branch.c:633 builtin/for-each-ref.c:43 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:418
+#: builtin/tag.c:433
 msgid "object"
 msgstr "oggetto"
 
-#: builtin/branch.c:634
+#: builtin/branch.c:658
 msgid "print only branches of the object"
 msgstr "stampa solo i branch dell'oggetto"
 
-#: builtin/branch.c:636 builtin/for-each-ref.c:49 builtin/tag.c:425
+#: 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:637 builtin/for-each-ref.c:38 builtin/tag.c:423
-#: builtin/verify-tag.c:39
+#: builtin/branch.c:661 builtin/for-each-ref.c:38 builtin/tag.c:438
+#: builtin/verify-tag.c:38
 msgid "format to use for the output"
 msgstr "formato da usare per l'output"
 
-#: builtin/branch.c:660 builtin/clone.c:746
+#: builtin/branch.c:684 builtin/clone.c:785
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD non trovato fra i riferimenti/head!"
 
-#: builtin/branch.c:683
+#: builtin/branch.c:708
 msgid "--column and --verbose are incompatible"
 msgstr "--column e --verbose non sono compatibili"
 
-#: builtin/branch.c:698 builtin/branch.c:749 builtin/branch.c:758
+#: builtin/branch.c:723 builtin/branch.c:777 builtin/branch.c:786
 msgid "branch name required"
 msgstr "nome branch richiesto"
 
-#: builtin/branch.c:725
+#: builtin/branch.c:753
 msgid "Cannot give description to detached HEAD"
 msgstr "Impossibile fornire una descrizione per l'HEAD scollegato"
 
-#: builtin/branch.c:730
+#: 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:737
+#: 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:740
+#: builtin/branch.c:768
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Non esiste alcun branch denominato '%s'."
 
-#: builtin/branch.c:755
+#: 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:764
+#: 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:769
+#: 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:773
+#: builtin/branch.c:801
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -9140,38 +11036,41 @@ msgstr ""
 "impossibile impostare l'upstream di HEAD a %s quando non punta ad alcun "
 "branch."
 
-#: builtin/branch.c:776 builtin/branch.c:799
+#: builtin/branch.c:804 builtin/branch.c:827
 #, c-format
 msgid "no such branch '%s'"
 msgstr "branch '%s' non esistente"
 
-#: builtin/branch.c:780
+#: builtin/branch.c:808
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "il branch '%s' non esiste"
 
-#: builtin/branch.c:793
+#: 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:797
+#: 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:803
+#: 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:813
-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:816
+#: builtin/branch.c:845
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -9179,20 +11078,67 @@ msgstr ""
 "l'opzione '--set-upstream' non è più supportata. Usa '--track' o '--set-"
 "upstream-to'."
 
-#: builtin/bundle.c:45
-#, c-format
-msgid "%s is okay\n"
-msgstr "%s è corretto\n"
+#: builtin/bundle.c:15 builtin/bundle.c:23
+msgid "git bundle create [<options>] <file> <git-rev-list args>"
+msgstr "git bundle create [<opzioni>] <file> <argomenti git-rev-list>"
+
+#: builtin/bundle.c:16 builtin/bundle.c:28
+msgid "git bundle verify [<options>] <file>"
+msgstr "git bundle verify [<opzioni>] <file>"
+
+#: builtin/bundle.c:17 builtin/bundle.c:33
+msgid "git bundle list-heads <file> [<refname>...]"
+msgstr "git bundle list-heads <file> [<nome riferimento>...]"
+
+#: builtin/bundle.c:18 builtin/bundle.c:38
+msgid "git bundle unbundle <file> [<refname>...]"
+msgstr "git bundle unbundle <file> [<nome riferimento>...]"
 
-#: builtin/bundle.c:58
+#: builtin/bundle.c:66 builtin/pack-objects.c:3375
+msgid "do not show progress meter"
+msgstr "non visualizzare la barra di avanzamento"
+
+#: builtin/bundle.c:68 builtin/pack-objects.c:3377
+msgid "show progress meter"
+msgstr "visualizza la barra di avanzamento"
+
+#: builtin/bundle.c:70 builtin/pack-objects.c:3379
+msgid "show progress meter during object writing phase"
+msgstr ""
+"visualizza la barra di avanzamento durante la fase di scrittura oggetti"
+
+#: builtin/bundle.c:73 builtin/pack-objects.c:3382
+msgid "similar to --all-progress when progress meter is shown"
+msgstr "simile a --all-progress quando è visualizzata la barra di avanzamento"
+
+#: builtin/bundle.c:93
 msgid "Need a repository to create a bundle."
 msgstr "Per creare un bundle è necessario un repository."
 
-#: builtin/bundle.c:62
+#: builtin/bundle.c:104
+msgid "do not show bundle details"
+msgstr "non visualizzare i dettagli sul bundle"
+
+#: builtin/bundle.c:119
+#, c-format
+msgid "%s is okay\n"
+msgstr "%s è corretto\n"
+
+#: builtin/bundle.c:160
 msgid "Need a repository to unbundle."
 msgstr "Per decomprimere un bundle è necessario un repository."
 
-#: builtin/cat-file.c:593
+#: builtin/bundle.c:168 builtin/remote.c:1686
+msgid "be verbose; must be placed before a subcommand"
+msgstr ""
+"visualizza ulteriori dettagli; deve essere collocato prima di un sottocomando"
+
+#: builtin/bundle.c:190 builtin/remote.c:1717
+#, c-format
+msgid "Unknown subcommand: %s"
+msgstr "Sottocomando sconosciuto: %s"
+
+#: builtin/cat-file.c:595
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
@@ -9200,7 +11146,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:596
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
@@ -9208,75 +11154,75 @@ msgstr ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 
-#: builtin/cat-file.c:615
+#: builtin/cat-file.c:617
 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:635
 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:636
 msgid "show object type"
 msgstr "visualizza tipo oggetto"
 
-#: builtin/cat-file.c:635
+#: builtin/cat-file.c:637
 msgid "show object size"
 msgstr "visualizza dimensioni oggetto"
 
-#: builtin/cat-file.c:637
+#: builtin/cat-file.c:639
 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:640
 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:642
 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:644
 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:860
+#: builtin/cat-file.c:645 git-submodule.sh:1002
 msgid "blob"
 msgstr "blob"
 
-#: builtin/cat-file.c:644
+#: builtin/cat-file.c:646
 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:648
 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:649
 msgid "buffer --batch output"
 msgstr "esegui il buffering dell'output di --batch"
 
-#: builtin/cat-file.c:649
+#: builtin/cat-file.c:651
 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:655
 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:659
 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:661
 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:663
 msgid "do not order --batch-all-objects output"
 msgstr "non ordinare l'output di --batch-all-objects"
 
@@ -9304,8 +11250,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:1280 builtin/gc.c:517
-#: builtin/worktree.c:496
+#: builtin/check-ignore.c:21 builtin/checkout.c:1464 builtin/gc.c:537
+#: builtin/worktree.c:499
 msgid "suppress progress reporting"
 msgstr "non visualizzare l'avanzamento dell'operazione"
 
@@ -9317,27 +11263,27 @@ msgstr "visualizza i percorsi di input non corrispondenti"
 msgid "ignore index when checking"
 msgstr "ignora l'indice durante il controllo"
 
-#: builtin/check-ignore.c:160
+#: builtin/check-ignore.c:163
 msgid "cannot specify pathnames with --stdin"
 msgstr "impossibile specificare i nomi percorso con --stdin"
 
-#: builtin/check-ignore.c:163
+#: builtin/check-ignore.c:166
 msgid "-z only makes sense with --stdin"
 msgstr "-z ha senso solo con --stdin"
 
-#: builtin/check-ignore.c:165
+#: builtin/check-ignore.c:168
 msgid "no path specified"
 msgstr "nessun percorso specificato"
 
-#: builtin/check-ignore.c:169
+#: builtin/check-ignore.c:172
 msgid "--quiet is only valid with a single pathname"
 msgstr "--quiet è valido solo con un nome percorso singolo"
 
-#: builtin/check-ignore.c:171
+#: builtin/check-ignore.c:174
 msgid "cannot have both --quiet and --verbose"
 msgstr "non è possibile usare sia --quiet sia --verbose"
 
-#: builtin/check-ignore.c:174
+#: builtin/check-ignore.c:177
 msgid "--non-matching is only valid with --verbose"
 msgstr "--non-matching è valido solo con --verbose"
 
@@ -9395,9 +11341,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:1857
-#: builtin/worktree.c:669
+#: builtin/submodule--helper.c:1400 builtin/submodule--helper.c:1403
+#: builtin/submodule--helper.c:1411 builtin/submodule--helper.c:1909
+#: builtin/worktree.c:672
 msgid "string"
 msgstr "stringa"
 
@@ -9409,136 +11355,168 @@ 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:147 builtin/checkout.c:181
+#: 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:175 builtin/checkout.c:214
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "il percorso '%s' non ha la nostra versione"
 
-#: builtin/checkout.c:149 builtin/checkout.c:183
+#: builtin/checkout.c:177 builtin/checkout.c:216
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "il percorso '%s' non ha la loro versione"
 
-#: builtin/checkout.c:165
+#: builtin/checkout.c:193
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr "il percorso '%s' non ha tutte le versioni necessarie"
 
-#: builtin/checkout.c:210
+#: builtin/checkout.c:243
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr "il percorso '%s' non ha le versioni necessarie"
 
-#: builtin/checkout.c:228
+#: builtin/checkout.c:261
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "percorso '%s': impossibile eseguire il merge"
 
-#: builtin/checkout.c:244
+#: builtin/checkout.c:277
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "Impossibile aggiungere il risultato del merge per '%s'"
 
-#: builtin/checkout.c:267 builtin/checkout.c:270 builtin/checkout.c:273
-#: builtin/checkout.c:276
+#: builtin/checkout.c:377
+#, 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:382
+#, 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:389
+#, 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:412 builtin/checkout.c:415 builtin/checkout.c:418
+#: builtin/checkout.c:422
 #, 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:279 builtin/checkout.c:282
+#: builtin/checkout.c:425 builtin/checkout.c:428
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' non può essere usato con %s"
 
-#: builtin/checkout.c:285
+#: builtin/checkout.c:432
 #, 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:354 builtin/checkout.c:361
+#: builtin/checkout.c:436
 #, 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:397
+#: builtin/checkout.c:440
 #, c-format
-msgid "Recreated %d merge conflict"
-msgid_plural "Recreated %d merge conflicts"
-msgstr[0] ""
-msgstr[1] ""
+msgid "'%s' must be used when '%s' is not specified"
+msgstr "'%s' dev'essere usato quando '%s' non è specificato"
 
-#: builtin/checkout.c:402
-#, fuzzy, c-format
-msgid "Updated %d path from %s"
-msgid_plural "Updated %d paths from %s"
-msgstr[0] "Preimmagine di '%s' aggiornata"
-msgstr[1] "Preimmagine di '%s' aggiornata"
+#: builtin/checkout.c:445 builtin/checkout.c:450
+#, c-format
+msgid "'%s' or '%s' cannot be used with %s"
+msgstr "'%s' o '%s' non possono essere usati con %s"
 
-#: builtin/checkout.c:409
-#, fuzzy, c-format
-msgid "Updated %d path from the index"
-msgid_plural "Updated %d paths from the index"
-msgstr[0] "lettura dell'indice non riuscita"
-msgstr[1] "lettura dell'indice non riuscita"
+#: builtin/checkout.c:509 builtin/checkout.c:516
+#, c-format
+msgid "path '%s' is unmerged"
+msgstr "il percorso '%s' non è stato sottoposto a merge"
 
-#: builtin/checkout.c:645
+#: builtin/checkout.c:684 builtin/sparse-checkout.c:106
 msgid "you need to resolve your current index first"
 msgstr "prima devi risolvere l'indice corrente"
 
-#: builtin/checkout.c:782
+#: builtin/checkout.c:734
+#, c-format
+msgid ""
+"cannot continue with staged changes in the following files:\n"
+"%s"
+msgstr ""
+"impossibile continuare con modifiche in stage nei file seguenti:\n"
+"%s"
+
+#: builtin/checkout.c:837
 #, 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:824
+#: builtin/checkout.c:879
 msgid "HEAD is now at"
 msgstr "HEAD si trova ora a"
 
-#: builtin/checkout.c:828 builtin/clone.c:699
+#: builtin/checkout.c:883 builtin/clone.c:717
 msgid "unable to update HEAD"
 msgstr "impossibile aggiornare HEAD"
 
-#: builtin/checkout.c:832
+#: builtin/checkout.c:887
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Ripristina il branch '%s'\n"
 
-#: builtin/checkout.c:835
+#: builtin/checkout.c:890
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Si è già su '%s'\n"
 
-#: builtin/checkout.c:839
+#: builtin/checkout.c:894
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Si è passati al branch '%s' e lo si è reimpostato\n"
 
-#: builtin/checkout.c:841 builtin/checkout.c:1212
+#: builtin/checkout.c:896 builtin/checkout.c:1320
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Si è passati a un nuovo branch '%s'\n"
 
-#: builtin/checkout.c:843
+#: builtin/checkout.c:898
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Si è passati al branch '%s'\n"
 
-#: builtin/checkout.c:894
+#: builtin/checkout.c:949
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ...e altri %d.\n"
 
-#: builtin/checkout.c:900
+#: builtin/checkout.c:955
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -9561,7 +11539,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:919
+#: builtin/checkout.c:974
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -9588,173 +11566,273 @@ msgstr[1] ""
 " git branch <nome del nuovo branch> %s\n"
 "\n"
 
-#: builtin/checkout.c:951
+#: builtin/checkout.c:1009
 msgid "internal error in revision walk"
 msgstr "errore interno durante la visita delle revisioni"
 
-#: builtin/checkout.c:955
+#: builtin/checkout.c:1013
 msgid "Previous HEAD position was"
 msgstr "La precedente posizione di HEAD era"
 
-#: builtin/checkout.c:983 builtin/checkout.c:1207
+#: builtin/checkout.c:1053 builtin/checkout.c:1315
 msgid "You are on a branch yet to be born"
 msgstr "Sei su un branch che deve ancora essere creato"
 
-#: builtin/checkout.c:1104
-#, c-format
-msgid "only one reference expected, %d given."
-msgstr "atteso solo un riferimento, %d forniti."
-
-#: builtin/checkout.c:1140
+#: builtin/checkout.c:1128
 #, c-format
 msgid ""
 "'%s' could be both a local file and a tracking branch.\n"
 "Please use -- (and optionally --no-guess) to disambiguate"
 msgstr ""
+"'%s' potrebbe essere sia un file locale, sia un branch da tracciare.\n"
+"Usa -- (e facoltativamente --no-guess) per rimuovere l'ambiguità"
+
+#: builtin/checkout.c:1135
+msgid ""
+"If you meant to check out a remote tracking branch on, e.g. 'origin',\n"
+"you can do so by fully qualifying the name with the --track option:\n"
+"\n"
+"    git checkout --track origin/<name>\n"
+"\n"
+"If you'd like to always have checkouts of an ambiguous <name> prefer\n"
+"one remote, e.g. the 'origin' remote, consider setting\n"
+"checkout.defaultRemote=origin in your config."
+msgstr ""
+"Se intendevi eseguire il checkout di un branch remoto, ad es. 'origin',\n"
+"puoi farlo usando la versione completamente qualificata del nome\n"
+"con l'opzione --track:\n"
+"\n"
+"    git checkout --track origin/<nome>\n"
+"\n"
+"Se preferisci che i checkout di un <nome> ambiguo siano sempre risolti\n"
+"rispetto a un particolare remoto, ad es. 'origin', potresti voler\n"
+"impostare checkout.defaultRemote=origin nel tuo file di configurazione."
+
+#: builtin/checkout.c:1145
+#, c-format
+msgid "'%s' matched multiple (%d) remote tracking branches"
+msgstr "'%s' corrisponde a più (%d) branch che ne tracciano uno remoto"
+
+#: builtin/checkout.c:1211
+msgid "only one reference expected"
+msgstr "atteso solo un riferimento"
 
-#: builtin/checkout.c:1153 builtin/worktree.c:290 builtin/worktree.c:445
+#: builtin/checkout.c:1228
+#, c-format
+msgid "only one reference expected, %d given."
+msgstr "atteso solo un riferimento, %d specificati."
+
+#: builtin/checkout.c:1274 builtin/worktree.c:283 builtin/worktree.c:448
 #, c-format
 msgid "invalid reference: %s"
 msgstr "riferimento non valido: %s"
 
-#: builtin/checkout.c:1182
+#: builtin/checkout.c:1287 builtin/checkout.c:1649
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "il riferimento non è un albero: %s"
 
-#: builtin/checkout.c:1221
-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:1334
+#, c-format
+msgid "a branch is expected, got tag '%s'"
+msgstr "atteso branch, ricevuto tag '%s'"
 
-#: builtin/checkout.c:1224 builtin/checkout.c:1228
+#: builtin/checkout.c:1336
 #, c-format
-msgid "'%s' cannot be used with switching branches"
-msgstr "'%s' non può essere usato passando da un branch a un altro"
+msgid "a branch is expected, got remote branch '%s'"
+msgstr "atteso branch, ricevuto branch remoto '%s'"
 
-#: builtin/checkout.c:1232 builtin/checkout.c:1235 builtin/checkout.c:1240
-#: builtin/checkout.c:1243
+#: builtin/checkout.c:1337 builtin/checkout.c:1345
 #, c-format
-msgid "'%s' cannot be used with '%s'"
-msgstr "'%s' non può essere usato con '%s'"
+msgid "a branch is expected, got '%s'"
+msgstr "atteso branch, ricevuto '%s'"
 
-#: builtin/checkout.c:1248
+#: builtin/checkout.c:1340
 #, c-format
-msgid "Cannot switch branch to a non-commit '%s'"
-msgstr "Impossibile cambiare branch per passare a '%s' che non è un commit"
+msgid "a branch is expected, got commit '%s'"
+msgstr "atteso branch, ricevuto commit '%s'"
 
-#: builtin/checkout.c:1281 builtin/checkout.c:1283 builtin/clone.c:120
-#: builtin/remote.c:169 builtin/remote.c:171 builtin/worktree.c:489
-#: builtin/worktree.c:491
-msgid "branch"
-msgstr "branch"
+#: builtin/checkout.c:1356
+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:1282
-msgid "create and checkout a new branch"
-msgstr "crea un nuovo branch ed eseguine il checkout"
+#: builtin/checkout.c:1360
+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:1284
-msgid "create/reset and checkout a branch"
-msgstr "crea/reimposta un branch ed eseguine il checkout"
+#: builtin/checkout.c:1364
+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:1285
-msgid "create reflog for new branch"
-msgstr "crea il registro dei riferimenti per il nuovo branch"
+#: builtin/checkout.c:1368
+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:1286 builtin/worktree.c:493
-msgid "detach HEAD at named commit"
-msgstr "scollega l'HEAD al commit specificato"
+#: builtin/checkout.c:1372
+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:1287
-msgid "set upstream info for new branch"
-msgstr "imposta le informazioni sull'upstream per il nuovo branch"
+#: builtin/checkout.c:1376
+msgid "you are switching branch while bisecting"
+msgstr "stai cambiando branch durante una bisezione"
 
-#: builtin/checkout.c:1289
-msgid "new-branch"
-msgstr "nuovo branch"
+#: builtin/checkout.c:1383
+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:1289
-msgid "new unparented branch"
-msgstr "nuovo branch senza genitore"
+#: builtin/checkout.c:1386 builtin/checkout.c:1390 builtin/checkout.c:1394
+#, 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:1291
-msgid "checkout our version for unmerged files"
-msgstr ""
-"esegui il checkout della nostra versione per i file non sottoposti a merge"
+#: builtin/checkout.c:1398 builtin/checkout.c:1401 builtin/checkout.c:1404
+#: builtin/checkout.c:1409 builtin/checkout.c:1414
+#, c-format
+msgid "'%s' cannot be used with '%s'"
+msgstr "'%s' non può essere usato con '%s'"
 
-#: builtin/checkout.c:1294
-msgid "checkout their version for unmerged files"
-msgstr ""
-"esegui il checkout della loro versione per i file non sottoposti a merge"
+#: builtin/checkout.c:1411
+#, c-format
+msgid "'%s' cannot take <start-point>"
+msgstr "'%s' non accetta l'argomento <punto di partenza>"
 
-#: builtin/checkout.c:1296
-msgid "force checkout (throw away local modifications)"
-msgstr "esegui forzatamente il checkout (scarta le modifiche locali)"
+#: builtin/checkout.c:1419
+#, 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:1298
+#: builtin/checkout.c:1426
+msgid "missing branch or commit argument"
+msgstr "argomento branch o commit mancante"
+
+#: builtin/checkout.c:1468 builtin/clone.c:91 builtin/commit-graph.c:72
+#: builtin/commit-graph.c:135 builtin/fetch.c:167 builtin/merge.c:286
+#: builtin/multi-pack-index.c:27 builtin/pull.c:118 builtin/push.c:563
+#: builtin/send-pack.c:174
+msgid "force progress reporting"
+msgstr "forza l'indicazione d'avanzamento dell'operazione"
+
+#: builtin/checkout.c:1469
 msgid "perform a 3-way merge with the new branch"
 msgstr "esegui un merge a tre vie con il nuovo branch"
 
-#: builtin/checkout.c:1300 builtin/merge.c:276
-msgid "update ignored files (default)"
-msgstr "aggiorna i file ignorati (impostazione predefinita)"
-
-#: builtin/checkout.c:1302 builtin/log.c:1586 parse-options.h:272
+#: builtin/checkout.c:1470 builtin/log.c:1690 parse-options.h:322
 msgid "style"
 msgstr "stile"
 
-#: builtin/checkout.c:1303
+#: builtin/checkout.c:1471
 msgid "conflict style (merge or diff3)"
 msgstr "stile conflitti (merge o diff3)"
 
-#: builtin/checkout.c:1306
-msgid "do not limit pathspecs to sparse entries only"
-msgstr "non limitare gli specificatori percorso solo alle voci sparse"
+#: builtin/checkout.c:1483 builtin/worktree.c:496
+msgid "detach HEAD at named commit"
+msgstr "scollega l'HEAD al commit specificato"
 
-#: builtin/checkout.c:1308
-#, fuzzy
-msgid "do not second guess 'git checkout <no-such-branch>'"
-msgstr "prevedi 'git checkout <branch inesistente>'"
+#: builtin/checkout.c:1484
+msgid "set upstream info for new branch"
+msgstr "imposta le informazioni sull'upstream per il nuovo branch"
+
+#: builtin/checkout.c:1486
+msgid "force checkout (throw away local modifications)"
+msgstr "esegui forzatamente il checkout (scarta le modifiche locali)"
+
+#: builtin/checkout.c:1488
+msgid "new-branch"
+msgstr "nuovo branch"
+
+#: builtin/checkout.c:1488
+msgid "new unparented branch"
+msgstr "nuovo branch senza genitore"
 
-#: builtin/checkout.c:1310
+#: builtin/checkout.c:1490 builtin/merge.c:289
+msgid "update ignored files (default)"
+msgstr "aggiorna i file ignorati (impostazione predefinita)"
+
+#: builtin/checkout.c:1493
 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:1314 builtin/clone.c:87 builtin/fetch.c:141
-#: builtin/merge.c:273 builtin/pull.c:130 builtin/push.c:575
-#: builtin/send-pack.c:174
-msgid "force progress reporting"
-msgstr "forza l'indicazione d'avanzamento dell'operazione"
+#: builtin/checkout.c:1506
+msgid "checkout our version for unmerged files"
+msgstr ""
+"esegui il checkout della nostra versione per i file non sottoposti a merge"
+
+#: builtin/checkout.c:1509
+msgid "checkout their version for unmerged files"
+msgstr ""
+"esegui il checkout della loro versione per i file non sottoposti a merge"
+
+#: builtin/checkout.c:1513
+msgid "do not limit pathspecs to sparse entries only"
+msgstr "non limitare gli specificatori percorso solo alle voci sparse"
 
-#: builtin/checkout.c:1345
+#: builtin/checkout.c:1565
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "le opzioni -b, -B e --orphan sono mutuamente esclusive"
 
-#: builtin/checkout.c:1362
+#: builtin/checkout.c:1568
+msgid "-p and --overlay are mutually exclusive"
+msgstr "le opzioni -p e --overlay sono mutualmente esclusive"
+
+#: builtin/checkout.c:1605
 msgid "--track needs a branch name"
 msgstr "--track richiede il nome di un branch"
 
-#: builtin/checkout.c:1367
+#: builtin/checkout.c:1610
 msgid "missing branch name; try -b"
 msgstr "nome del branch mancante; prova con -b"
 
-#: builtin/checkout.c:1404
+#: builtin/checkout.c:1642
+#, c-format
+msgid "could not resolve %s"
+msgstr "impossibile risolvere %s"
+
+#: builtin/checkout.c:1658
 msgid "invalid path specification"
 msgstr "specificatore percorso non valido"
 
-#: builtin/checkout.c:1411
+#: builtin/checkout.c:1665
 #, 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:1415
+#: builtin/checkout.c:1669
 #, 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:1419
+#: builtin/checkout.c:1678
+msgid "--pathspec-from-file is incompatible with --detach"
+msgstr "--pathspec-from-file non è compatibile con --detach"
+
+#: builtin/checkout.c:1681 builtin/reset.c:324 builtin/stash.c:1506
+msgid "--pathspec-from-file is incompatible with --patch"
+msgstr "--pathspec-from-file non è compatibile con --patch"
+
+#: builtin/checkout.c:1692
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -9762,36 +11840,71 @@ msgstr ""
 "git checkout: --ours/--theirs, --force e --merge sono incompatibili quando\n"
 "si esegue il checkout dell'indice."
 
-#: builtin/checkout.c:1439
-#, c-format
-msgid ""
-"'%s' matched more than one remote tracking branch.\n"
-"We found %d remotes with a reference that matched. So we fell back\n"
-"on trying to resolve the argument as a path, but failed there too!\n"
-"\n"
-"If you meant to check out a remote tracking branch on, e.g. 'origin',\n"
-"you can do so by fully qualifying the name with the --track option:\n"
-"\n"
-"    git checkout --track origin/<name>\n"
-"\n"
-"If you'd like to always have checkouts of an ambiguous <name> prefer\n"
-"one remote, e.g. the 'origin' remote, consider setting\n"
-"checkout.defaultRemote=origin in your config."
-msgstr ""
-"'%s' corrisponde a più di un branch remoto.\n"
-"Abbiamo trovato %d remoti con un riferimento corrispondente, per cui\n"
-"abbiamo ripiegato tentando di risolvere l'argomento come percorso, ma\n"
-"non siamo riusciti nemmeno a portare a termine tale operazione!\n"
-"\n"
-"Se intendevi eseguire il checkout di un branch remoto, ad es. 'origin',\n"
-"puoi farlo utilizzando la versione completamente qualificata del nome\n"
-"con l'opzione --track:\n"
-"\n"
-"    git checkout --track origin/<nome>\n"
-"\n"
-"Se preferisci che i checkout di un <nome> ambiguo siano sempre risolti\n"
-"rispetto a un particolare remoto, ad es. 'origin', potresti voler\n"
-"impostare checkout.defaultRemote=origin nel tuo file di configurazione."
+#: builtin/checkout.c:1697
+msgid "you must specify path(s) to restore"
+msgstr "devi specificare il percorso/i percorsi da ripristinare"
+
+#: builtin/checkout.c:1723 builtin/checkout.c:1725 builtin/checkout.c:1774
+#: builtin/checkout.c:1776 builtin/clone.c:121 builtin/remote.c:170
+#: builtin/remote.c:172 builtin/worktree.c:492 builtin/worktree.c:494
+msgid "branch"
+msgstr "branch"
+
+#: builtin/checkout.c:1724
+msgid "create and checkout a new branch"
+msgstr "crea un nuovo branch ed eseguine il checkout"
+
+#: builtin/checkout.c:1726
+msgid "create/reset and checkout a branch"
+msgstr "crea/reimposta un branch ed eseguine il checkout"
+
+#: builtin/checkout.c:1727
+msgid "create reflog for new branch"
+msgstr "crea il registro dei riferimenti per il nuovo branch"
+
+#: builtin/checkout.c:1729
+msgid "second guess 'git checkout <no-such-branch>' (default)"
+msgstr "prevedi 'git checkout <branch inesistente>' (impostazione predefinita)"
+
+#: builtin/checkout.c:1730
+msgid "use overlay mode (default)"
+msgstr "usa modalità overlay (impostazione predefinita)"
+
+#: builtin/checkout.c:1775
+msgid "create and switch to a new branch"
+msgstr "crea un nuovo branch e passa a quest'ultimo"
+
+#: builtin/checkout.c:1777
+msgid "create/reset and switch to a branch"
+msgstr "crea/reimposta un branch e passa a quest'ultimo"
+
+#: builtin/checkout.c:1779
+msgid "second guess 'git switch <no-such-branch>'"
+msgstr "prevedi 'git switch <branch inesistente>'"
+
+#: builtin/checkout.c:1781
+msgid "throw away local modifications"
+msgstr "scarta le modifiche locali"
+
+#: builtin/checkout.c:1813
+msgid "which tree-ish to checkout from"
+msgstr "albero da cui eseguire il checkout"
+
+#: builtin/checkout.c:1815
+msgid "restore the index"
+msgstr "ripristina l'indice"
+
+#: builtin/checkout.c:1817
+msgid "restore the working tree (default)"
+msgstr "ripristina l'albero di lavoro (impostazione predefinita)"
+
+#: builtin/checkout.c:1819
+msgid "ignore unmerged entries"
+msgstr "ignora voci non sottoposte a merge"
+
+#: builtin/checkout.c:1820
+msgid "use overlay mode"
+msgstr "usa modalità overlay"
 
 #: builtin/clean.c:28
 msgid ""
@@ -9825,7 +11938,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:301 git-add--interactive.perl:595
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -9838,7 +11956,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:305 git-add--interactive.perl:604
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -9859,38 +11977,33 @@ 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:521 git-add--interactive.perl:570
+#: git-add--interactive.perl:575
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr "Eh (%s)?\n"
 
-#: builtin/clean.c:661
+#: builtin/clean.c:663
 #, c-format
 msgid "Input ignore patterns>> "
 msgstr "Immetti i pattern da ignorare>> "
 
-#: builtin/clean.c:698
+#: builtin/clean.c:700
 #, 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:721
 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:762
 #, c-format
 msgid "Remove %s [y/N]? "
 msgstr "Eliminare %s [y/N]? "
 
-#: builtin/clean.c:785 git-add--interactive.perl:1717
-#, c-format
-msgid "Bye.\n"
-msgstr "Ciao.\n"
-
-#: builtin/clean.c:793
+#: builtin/clean.c:795
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -9909,64 +12022,56 @@ msgstr ""
 "help                - visualizza questa schermata\n"
 "?                   - guida al prompt di selezione"
 
-#: builtin/clean.c:820 git-add--interactive.perl:1793
-msgid "*** Commands ***"
-msgstr "*** Comandi ***"
-
-#: builtin/clean.c:821 git-add--interactive.perl:1790
-msgid "What now"
-msgstr "Cosa faccio ora"
-
-#: builtin/clean.c:829
+#: builtin/clean.c:831
 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:847
 msgid "No more files to clean, exiting."
 msgstr "Non ci sono più file da ripulire, esco."
 
-#: builtin/clean.c:907
+#: builtin/clean.c:909
 msgid "do not print names of files removed"
 msgstr "non stampare i nomi dei file eliminati"
 
-#: builtin/clean.c:909
+#: builtin/clean.c:911
 msgid "force"
 msgstr "forza l'operazione"
 
-#: builtin/clean.c:910
+#: builtin/clean.c:912
 msgid "interactive cleaning"
 msgstr "pulizia interattiva"
 
-#: builtin/clean.c:912
+#: builtin/clean.c:914
 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:167 builtin/log.c:169
-#: builtin/ls-files.c:557 builtin/name-rev.c:415 builtin/name-rev.c:417
-#: builtin/show-ref.c:178
+#: builtin/clean.c:915 builtin/describe.c:562 builtin/describe.c:564
+#: builtin/grep.c:889 builtin/log.c:177 builtin/log.c:179
+#: builtin/ls-files.c:557 builtin/name-rev.c:526 builtin/name-rev.c:528
+#: builtin/show-ref.c:179
 msgid "pattern"
 msgstr "pattern"
 
-#: builtin/clean.c:914
+#: builtin/clean.c:916
 msgid "add <pattern> to ignore rules"
 msgstr "aggiungi <pattern> alle regole usate per ignorare i file"
 
-#: builtin/clean.c:915
+#: builtin/clean.c:917
 msgid "remove ignored files, too"
 msgstr "elimina anche i file ignorati"
 
-#: builtin/clean.c:917
+#: builtin/clean.c:919
 msgid "remove only ignored files"
 msgstr "elimina solo i file ignorati"
 
-#: builtin/clean.c:935
+#: builtin/clean.c:937
 msgid "-x and -X cannot be used together"
 msgstr "-x e -X non possono essere usati insieme"
 
-#: builtin/clean.c:939
+#: builtin/clean.c:941
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
@@ -9974,7 +12079,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:944
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -9982,148 +12087,171 @@ 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:45
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<opzioni>] [--] <repository> [<directory>]"
 
-#: builtin/clone.c:89
+#: builtin/clone.c:93
 msgid "don't create a checkout"
 msgstr "non creare un checkout"
 
-#: builtin/clone.c:90 builtin/clone.c:92 builtin/init-db.c:481
+#: 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:94
+#: builtin/clone.c:98
 msgid "create a mirror repository (implies bare)"
 msgstr "crea un repository mirror (implica che sia spoglio)"
 
-#: builtin/clone.c:96
+#: builtin/clone.c:100
 msgid "to clone from a local repository"
 msgstr "per clonare da un repository locale"
 
-#: builtin/clone.c:98
+#: 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:100
+#: builtin/clone.c:104
 msgid "setup as shared repository"
 msgstr "imposta il repository come condiviso"
 
-#: builtin/clone.c:102 builtin/clone.c:106
+#: builtin/clone.c:107
 msgid "pathspec"
 msgstr "specificatore percorso"
 
-#: builtin/clone.c:102 builtin/clone.c:106
+#: builtin/clone.c:107
 msgid "initialize submodules in the clone"
 msgstr "inizializza sottomoduli durante la clonazione"
 
-#: builtin/clone.c:109
+#: builtin/clone.c:110
 msgid "number of submodules cloned in parallel"
 msgstr "numero di sottomoduli clonati in parallelo"
 
-#: builtin/clone.c:110 builtin/init-db.c:478
+#: builtin/clone.c:111 builtin/init-db.c:486
 msgid "template-directory"
 msgstr "directory modelli"
 
-#: builtin/clone.c:111 builtin/init-db.c:479
+#: 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:113 builtin/clone.c:115 builtin/submodule--helper.c:1379
-#: builtin/submodule--helper.c:1860
+#: builtin/clone.c:114 builtin/clone.c:116 builtin/submodule--helper.c:1407
+#: builtin/submodule--helper.c:1912
 msgid "reference repository"
 msgstr "repository di riferimento"
 
-#: builtin/clone.c:117 builtin/submodule--helper.c:1381
-#: builtin/submodule--helper.c:1862
+#: builtin/clone.c:118 builtin/submodule--helper.c:1409
+#: builtin/submodule--helper.c:1914
 msgid "use --reference only while cloning"
 msgstr "usa --reference solo durante la clonazione"
 
-#: builtin/clone.c:118 builtin/column.c:27 builtin/merge-file.c:46
-#: builtin/pack-objects.c:3303 builtin/repack.c:329
+#: builtin/clone.c:119 builtin/column.c:27 builtin/merge-file.c:46
+#: builtin/pack-objects.c:3441 builtin/repack.c:327
 msgid "name"
 msgstr "nome"
 
-#: builtin/clone.c:119
+#: 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:121
+#: 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:123
+#: builtin/clone.c:124
 msgid "path to git-upload-pack on the remote"
 msgstr "percorso al comando remoto git-upload-pack"
 
-#: builtin/clone.c:124 builtin/fetch.c:142 builtin/grep.c:836
-#: builtin/pull.c:218
+#: builtin/clone.c:125 builtin/fetch.c:168 builtin/grep.c:828
+#: builtin/pull.c:207
 msgid "depth"
 msgstr "profondità"
 
-#: builtin/clone.c:125
+#: builtin/clone.c:126
 msgid "create a shallow clone of that depth"
 msgstr "crea un clone shallow con questa profondità"
 
-#: builtin/clone.c:126 builtin/fetch.c:144 builtin/pack-objects.c:3292
+#: builtin/clone.c:127 builtin/fetch.c:170 builtin/pack-objects.c:3430
 msgid "time"
 msgstr "tempo"
 
-#: builtin/clone.c:127
+#: 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:128 builtin/fetch.c:146 builtin/fetch.c:169
-#: builtin/rebase.c:1039
+#: builtin/clone.c:129 builtin/fetch.c:172 builtin/fetch.c:195
+#: builtin/rebase.c:1480
 msgid "revision"
 msgstr "revisione"
 
-#: builtin/clone.c:129 builtin/fetch.c:147
+#: builtin/clone.c:130 builtin/fetch.c:173
 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:131
+#: builtin/clone.c:132 builtin/submodule--helper.c:1419
+#: builtin/submodule--helper.c:1928
 msgid "clone only one branch, HEAD or --branch"
 msgstr "clona solo un branch, HEAD o quello specificato con --branch"
 
-#: builtin/clone.c:133
+#: 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:135
+#: builtin/clone.c:136
 msgid "any cloned submodules will be shallow"
 msgstr "tutti i sottomoduli clonati saranno shallow"
 
-#: builtin/clone.c:136 builtin/init-db.c:487
+#: builtin/clone.c:137 builtin/init-db.c:495
 msgid "gitdir"
 msgstr "directory Git"
 
-#: builtin/clone.c:137 builtin/init-db.c:488
+#: 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:138
+#: builtin/clone.c:139
 msgid "key=value"
 msgstr "chiave=valore"
 
-#: builtin/clone.c:139
+#: builtin/clone.c:140
 msgid "set config inside the new repository"
 msgstr "imposta la configurazione nel nuovo repository"
 
-#: builtin/clone.c:140 builtin/fetch.c:165 builtin/pull.c:231
-#: builtin/push.c:586
+#: builtin/clone.c:142 builtin/fetch.c:190 builtin/ls-remote.c:76
+#: builtin/push.c:573 builtin/send-pack.c:172
+msgid "server-specific"
+msgstr "specifica del server"
+
+#: builtin/clone.c:142 builtin/fetch.c:190 builtin/ls-remote.c:76
+#: builtin/push.c:573 builtin/send-pack.c:173
+msgid "option to transmit"
+msgstr "opzione da trasmettere"
+
+#: builtin/clone.c:143 builtin/fetch.c:191 builtin/pull.c:220
+#: builtin/push.c:574
 msgid "use IPv4 addresses only"
 msgstr "usa solo indirizzi IPv4"
 
-#: builtin/clone.c:142 builtin/fetch.c:167 builtin/pull.c:234
-#: builtin/push.c:588
+#: builtin/clone.c:145 builtin/fetch.c:193 builtin/pull.c:223
+#: builtin/push.c:576
 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:151
+msgid "initialize sparse-checkout file to include only files at root"
+msgstr ""
+"inizializza il file sparse-checkout per includere solo i file nel percorso "
+"radice"
+
+#: builtin/clone.c:287
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -10131,149 +12259,148 @@ msgstr ""
 "Non è stato possibile indovinare alcun nome directory.\n"
 "Specifica una directory tramite la riga di comando"
 
-#: builtin/clone.c:333
+#: builtin/clone.c:340
 #, 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
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s esiste e non è una directory"
 
-#: builtin/clone.c:427
-#, c-format
-msgid "failed to stat %s\n"
-msgstr "stat di %s non riuscito\n"
-
-#: builtin/clone.c:444
+#: builtin/clone.c:430
 #, c-format
-msgid "failed to unlink '%s'"
-msgstr "unlink di '%s' non riuscito"
+msgid "failed to start iterator over '%s'"
+msgstr "impossibile avviare l'iteratore su '%s'"
 
-#: builtin/clone.c:449
+#: builtin/clone.c:460
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "creazione del collegamento '%s' non riuscita"
 
-#: builtin/clone.c:453
+#: builtin/clone.c:464
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "copia del file in '%s' non riuscita"
 
-#: builtin/clone.c:479
+#: builtin/clone.c:469
+#, c-format
+msgid "failed to iterate over '%s'"
+msgstr "iterazione su '%s' non riuscita"
+
+#: builtin/clone.c:494
 #, c-format
 msgid "done.\n"
 msgstr "fatto.\n"
 
-#: builtin/clone.c:493
+#: builtin/clone.c:508
 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:585
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Impossibile trovare il branch remoto %s da clonare."
 
-#: builtin/clone.c:687
+#: builtin/clone.c:705
 #, c-format
 msgid "unable to update %s"
 msgstr "impossibile aggiornare %s"
 
-#: builtin/clone.c:737
+#: builtin/clone.c:753
+msgid "failed to initialize sparse-checkout"
+msgstr "inizializzazione del file sparse-checkout non riuscita"
+
+#: builtin/clone.c:776
 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:768
+#: builtin/clone.c:807
 msgid "unable to checkout working tree"
 msgstr "impossibile eseguire il checkout dell'albero di lavoro"
 
-#: builtin/clone.c:813
+#: builtin/clone.c:862
 msgid "unable to write parameters to config file"
 msgstr "impossibile scrivere i parametri nel file di configurazione"
 
-#: builtin/clone.c:876
+#: builtin/clone.c:925
 msgid "cannot repack to clean up"
 msgstr "impossibile eseguire il repack per pulire l'area di lavoro"
 
-#: builtin/clone.c:878
+#: builtin/clone.c:927
 msgid "cannot unlink temporary alternates file"
 msgstr "impossibile eseguire l'unlink del file alternates temporaneo"
 
-#: builtin/clone.c:918 builtin/receive-pack.c:1941
+#: builtin/clone.c:965 builtin/receive-pack.c:1950
 msgid "Too many arguments."
 msgstr "Troppi argomenti."
 
-#: builtin/clone.c:922
+#: builtin/clone.c:969
 msgid "You must specify a repository to clone."
 msgstr "Devi specificare un repository da clonare."
 
-#: builtin/clone.c:935
+#: builtin/clone.c:982
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "le opzioni --bare e --origin %s non sono compatibili."
 
-#: builtin/clone.c:938
+#: builtin/clone.c:985
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "le opzioni --bare e --separate-git-dir non sono compatibili."
 
-#: builtin/clone.c:951
+#: builtin/clone.c:998
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "il repository '%s' non esiste"
 
-#: builtin/clone.c:957 builtin/fetch.c:1608
+#: builtin/clone.c:1004 builtin/fetch.c:1796
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "la profondità %s non è un numero positivo"
 
-#: builtin/clone.c:967
+#: builtin/clone.c:1014
 #, 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:977
+#: builtin/clone.c:1024
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "l'albero di lavoro '%s' esiste già."
 
-#: builtin/clone.c:992 builtin/clone.c:1013 builtin/difftool.c:272
-#: builtin/worktree.c:296 builtin/worktree.c:326
+#: builtin/clone.c:1039 builtin/clone.c:1060 builtin/difftool.c:271
+#: builtin/log.c:1866 builtin/worktree.c:295 builtin/worktree.c:327
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "impossibile creare le prime directory di '%s'"
 
-#: builtin/clone.c:997
+#: builtin/clone.c:1044
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr "impossibile creare la directory dell'albero di lavoro '%s'"
 
-#: builtin/clone.c:1017
+#: builtin/clone.c:1064
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Clone nel repository spoglio '%s' in corso...\n"
 
-#: builtin/clone.c:1019
+#: builtin/clone.c:1066
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Clone in '%s' in corso...\n"
 
-#: builtin/clone.c:1043
+#: builtin/clone.c:1090
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -10281,36 +12408,36 @@ msgstr ""
 "il clone --recursive non è compatibile né con --reference né con --reference-"
 "if-able"
 
-#: builtin/clone.c:1104
+#: builtin/clone.c:1154
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "L'opzione --depth è ignorata nei cloni locali; usa file://."
 
-#: builtin/clone.c:1106
+#: builtin/clone.c:1156
 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:1108
+#: builtin/clone.c:1158
 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:1110
+#: builtin/clone.c:1160
 msgid "--filter is ignored in local clones; use file:// instead."
 msgstr "L'opzione --filter è ignorata nei cloni locali; usa file://."
 
-#: builtin/clone.c:1113
+#: builtin/clone.c:1163
 msgid "source repository is shallow, ignoring --local"
 msgstr "il repository sorgente è shallow, ignoro l'opzione --local"
 
-#: builtin/clone.c:1118
+#: builtin/clone.c:1168
 msgid "--local is ignored"
 msgstr "l'opzione --local è ignorata"
 
-#: builtin/clone.c:1192 builtin/clone.c:1200
+#: builtin/clone.c:1243 builtin/clone.c:1251
 #, 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:1203
+#: builtin/clone.c:1254
 msgid "You appear to have cloned an empty repository."
 msgstr "Sembra che tu abbia clonato un repository vuoto."
 
@@ -10324,7 +12451,7 @@ msgstr "recupera le variabili di configurazione da qui"
 
 #: builtin/column.c:28 builtin/column.c:29
 msgid "layout to use"
-msgstr "layout da utilizzare"
+msgstr "layout da usare"
 
 #: builtin/column.c:30
 msgid "Maximum width"
@@ -10346,6 +12473,74 @@ msgstr "Spazi vuoti fra le colonne"
 msgid "--command must be the first argument"
 msgstr "--command deve essere il primo argomento"
 
+#: builtin/commit-tree.c:18
+msgid ""
+"git commit-tree [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...] [(-F "
+"<file>)...] <tree>"
+msgstr ""
+"git commit-tree [(-p <genitore>)...] [-S[<ID chiave>]] [(-m <messaggio>)...] "
+"[(-F <file>)...] <albero>"
+
+#: builtin/commit-tree.c:31
+#, c-format
+msgid "duplicate parent %s ignored"
+msgstr "genitore duplicato %s ignorato"
+
+#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:526
+#, c-format
+msgid "not a valid object name %s"
+msgstr "%s non è un nome oggetto valido"
+
+#: builtin/commit-tree.c:93
+#, c-format
+msgid "git commit-tree: failed to open '%s'"
+msgstr "git commit-tree: apertura di '%s' non riuscita"
+
+#: builtin/commit-tree.c:96
+#, c-format
+msgid "git commit-tree: failed to read '%s'"
+msgstr "git commit-tree: lettura di '%s' non riuscita"
+
+#: builtin/commit-tree.c:98
+#, c-format
+msgid "git commit-tree: failed to close '%s'"
+msgstr "git commit-tree: chiusura di '%s' non riuscita"
+
+#: builtin/commit-tree.c:111
+msgid "parent"
+msgstr "genitore"
+
+#: builtin/commit-tree.c:112
+msgid "id of a parent commit object"
+msgstr "ID di un oggetto commit genitore"
+
+#: builtin/commit-tree.c:114 builtin/commit.c:1501 builtin/merge.c:271
+#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1477
+#: builtin/tag.c:412
+msgid "message"
+msgstr "messaggio"
+
+#: builtin/commit-tree.c:115 builtin/commit.c:1501
+msgid "commit message"
+msgstr "messaggio di commit"
+
+#: builtin/commit-tree.c:118
+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:1513 builtin/merge.c:288
+#: builtin/pull.c:175 builtin/revert.c:118
+msgid "GPG sign commit"
+msgstr "firma il commit con GPG"
+
+#: builtin/commit-tree.c:133
+msgid "must give exactly one tree"
+msgstr "è necessario fornire esattamente un albero"
+
+#: builtin/commit-tree.c:140
+msgid "git commit-tree: failed to read"
+msgstr "git commit-tree: lettura non riuscita"
+
 #: builtin/commit.c:41
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr "git commit [<opzioni>] [--] <specificatore percorso>..."
@@ -10381,119 +12576,134 @@ 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"
-"Then \"git cherry-pick --continue\" will resume cherry-picking\n"
-"the remaining commits.\n"
 msgstr ""
-"Se vuoi ignorare questo commit, usa:\n"
+"e quindi usa:\n"
+"\n"
+"    git cherry-pick --continue\n"
 "\n"
-"    git reset\n"
+"per riprendere l'esecuzione il cherry-pick per i commit rimanenti.\n"
+"Se vuoi saltare questo commit, usa:\n"
+"\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:351
+msgid "--pathspec-from-file with -a does not make sense"
+msgstr "l'opzione --pathspec-from-file non ha senso con -a"
+
+#: builtin/commit.c:364
+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:376
 msgid "unable to create temporary index"
-msgstr "impossibile creare l'index temporaneo"
+msgstr "impossibile creare l'indice temporaneo"
 
-#: builtin/commit.c:359
+#: builtin/commit.c:385
 msgid "interactive add failed"
 msgstr "aggiunta interattiva non riuscita"
 
-#: builtin/commit.c:373
+#: builtin/commit.c:400
 msgid "unable to update temporary index"
-msgstr "impossibile aggiornare l'index temporaneo"
+msgstr "impossibile aggiornare l'indice temporaneo"
 
-#: builtin/commit.c:375
+#: builtin/commit.c:402
 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:427 builtin/commit.c:450 builtin/commit.c:496
 msgid "unable to write new_index file"
 msgstr "impossibile scrivere il file new_index"
 
-#: builtin/commit.c:452
+#: builtin/commit.c:479
 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:481
 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:489
 msgid "cannot read the index"
-msgstr "impossibile leggere l'index"
+msgstr "impossibile leggere l'indice"
 
-#: builtin/commit.c:481
+#: builtin/commit.c:508
 msgid "unable to write temporary index file"
-msgstr "impossibile scrivere il file index temporaneo"
+msgstr "impossibile scrivere il file indice temporaneo"
 
-#: builtin/commit.c:579
+#: builtin/commit.c:606
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "dal commit '%s' manca l'intestazione autore"
 
-#: builtin/commit.c:581
+#: builtin/commit.c:608
 #, 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:627
 msgid "malformed --author parameter"
 msgstr "parametro --author malformato"
 
-#: builtin/commit.c:652
+#: builtin/commit.c:680
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
 msgstr ""
-"impossibile selezionare un carattere commento non utilizzato\n"
+"impossibile selezionare un carattere commento non usato\n"
 "nel messaggio di commit corrente"
 
-#: builtin/commit.c:689 builtin/commit.c:722 builtin/commit.c:1052
+#: builtin/commit.c:718 builtin/commit.c:751 builtin/commit.c:1097
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "impossibile trovare il commit %s"
 
-#: builtin/commit.c:701 builtin/shortlog.c:319
+#: builtin/commit.c:730 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:703
+#: builtin/commit.c:732
 msgid "could not read log from standard input"
 msgstr "impossibile leggere il log dallo standard input"
 
-#: builtin/commit.c:707
+#: builtin/commit.c:736
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "impossibile leggere il file di log '%s'"
 
-#: builtin/commit.c:736 builtin/commit.c:744
+#: builtin/commit.c:767 builtin/commit.c:783
 msgid "could not read SQUASH_MSG"
 msgstr "impossibile leggere SQUASH_MSG"
 
-#: builtin/commit.c:741
+#: builtin/commit.c:774
 msgid "could not read MERGE_MSG"
 msgstr "impossibile leggere MERGE_MSG"
 
-#: builtin/commit.c:795
+#: builtin/commit.c:834
 msgid "could not write commit template"
 msgstr "impossibile scrivere il modello di commit"
 
-#: builtin/commit.c:813
+#: builtin/commit.c:853
 #, c-format
 msgid ""
 "\n"
@@ -10508,7 +12718,7 @@ msgstr ""
 "\t%s\n"
 "e riprova.\n"
 
-#: builtin/commit.c:818
+#: builtin/commit.c:858
 #, c-format
 msgid ""
 "\n"
@@ -10523,7 +12733,7 @@ msgstr ""
 "\t%s\n"
 "e riprova.\n"
 
-#: builtin/commit.c:831
+#: builtin/commit.c:871
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -10532,7 +12742,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:839
+#: builtin/commit.c:879
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -10543,153 +12753,144 @@ msgstr ""
 "con '%c' saranno mantenute; puoi rimuoverle autonomamente se lo desideri.\n"
 "Un messaggio vuoto interromperà il commit.\n"
 
-#: builtin/commit.c:856
+#: builtin/commit.c:896
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sAutore:           %.*s <%.*s>"
 
-#: builtin/commit.c:864
+#: builtin/commit.c:904
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sData:             %s"
 
-#: builtin/commit.c:871
+#: builtin/commit.c:911
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sEsecutore commit: %.*s <%.*s>"
 
-#: builtin/commit.c:889
+#: builtin/commit.c:929
 msgid "Cannot read index"
-msgstr "Impossibile leggere l'index"
+msgstr "Impossibile leggere l'indice"
 
-#: builtin/commit.c:956
+#: builtin/commit.c:997
 msgid "Error building trees"
 msgstr "Errore durante la costruzione degli alberi"
 
-#: builtin/commit.c:970 builtin/tag.c:258
+#: builtin/commit.c:1011 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:1014
+#: builtin/commit.c:1055
 #, c-format
 msgid "--author '%s' is not 'Name <email>' and matches no existing author"
 msgstr ""
-"--author '%s' non è nel formato 'Nome <email>' e non corrisponde ad alcun "
+"--author '%s' non è nel formato 'Nome <e-mail>' e non corrisponde ad alcun "
 "autore esistente"
 
-#: builtin/commit.c:1028
+#: builtin/commit.c:1069
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr "Modo non valido ignorato: '%s'"
 
-#: builtin/commit.c:1042 builtin/commit.c:1279
+#: builtin/commit.c:1087 builtin/commit.c:1327
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Modo file non tracciati non valido: '%s'"
 
-#: builtin/commit.c:1080
+#: builtin/commit.c:1127
 msgid "--long and -z are incompatible"
 msgstr "--long e -z non sono compatibili"
 
-#: builtin/commit.c:1113
+#: builtin/commit.c:1171
 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:1122
+#: builtin/commit.c:1180
 msgid "You have nothing to amend."
 msgstr "Non c'è nulla da modificare."
 
-#: builtin/commit.c:1125
+#: builtin/commit.c:1183
 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:1127
+#: builtin/commit.c:1185
 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:1130
+#: builtin/commit.c:1188
 msgid "Options --squash and --fixup cannot be used together"
 msgstr "Le opzioni --squash e --fixup non possono essere usate insieme"
 
-#: builtin/commit.c:1140
+#: builtin/commit.c:1198
 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:1142
+#: builtin/commit.c:1200
 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:1150
+#: builtin/commit.c:1208
 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:1167
+#: builtin/commit.c:1225
 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:1169
-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:1183 builtin/tag.c:546
+#: builtin/commit.c:1231
 #, c-format
-msgid "Invalid cleanup mode %s"
-msgstr "Modalità pulizia non valida: %s"
-
-#: builtin/commit.c:1188
-msgid "Paths with -a does not make sense."
-msgstr "I percorsi con -a non hanno senso."
+msgid "paths '%s ...' with -a does not make sense"
+msgstr "i percorsi '%s ...' non hanno senso con -a"
 
-#: builtin/commit.c:1314 builtin/commit.c:1498
+#: builtin/commit.c:1362 builtin/commit.c:1524
 msgid "show status concisely"
 msgstr "visualizza concisamente lo stato"
 
-#: builtin/commit.c:1316 builtin/commit.c:1500
+#: builtin/commit.c:1364 builtin/commit.c:1526
 msgid "show branch information"
 msgstr "visualizza le informazioni sul branch"
 
-#: builtin/commit.c:1318
+#: builtin/commit.c:1366
 msgid "show stash information"
 msgstr "visualizza le informazioni sullo stash"
 
-#: builtin/commit.c:1320 builtin/commit.c:1502
+#: builtin/commit.c:1368 builtin/commit.c:1528
 msgid "compute full ahead/behind values"
 msgstr "calcola tutti i valori dopo/prima di"
 
-#: builtin/commit.c:1322
+#: builtin/commit.c:1370
 msgid "version"
 msgstr "versione"
 
-#: builtin/commit.c:1322 builtin/commit.c:1504 builtin/push.c:561
-#: builtin/worktree.c:640
+#: builtin/commit.c:1370 builtin/commit.c:1530 builtin/push.c:549
+#: builtin/worktree.c:643
 msgid "machine-readable output"
 msgstr "output leggibile da una macchina"
 
-#: builtin/commit.c:1325 builtin/commit.c:1506
+#: builtin/commit.c:1373 builtin/commit.c:1532
 msgid "show status in long format (default)"
 msgstr "visualizza lo stato in forma lunga (impostazione predefinita)"
 
-#: builtin/commit.c:1328 builtin/commit.c:1509
+#: builtin/commit.c:1376 builtin/commit.c:1535
 msgid "terminate entries with NUL"
 msgstr "termina le voci con NUL"
 
-#: builtin/commit.c:1330 builtin/commit.c:1334 builtin/commit.c:1512
-#: builtin/fast-export.c:1085 builtin/fast-export.c:1088 builtin/rebase.c:1118
-#: builtin/tag.c:400
+#: builtin/commit.c:1378 builtin/commit.c:1382 builtin/commit.c:1538
+#: builtin/fast-export.c:1153 builtin/fast-export.c:1156
+#: builtin/fast-export.c:1159 builtin/rebase.c:1569 parse-options.h:336
 msgid "mode"
 msgstr "modo"
 
-#: builtin/commit.c:1331 builtin/commit.c:1512
+#: builtin/commit.c:1379 builtin/commit.c:1538
 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:1335
+#: builtin/commit.c:1383
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
@@ -10697,11 +12898,11 @@ msgstr ""
 "visualizza file ignorati, modalità facoltative: traditional, matching, no. "
 "(Impostazione predefinita: traditional)"
 
-#: builtin/commit.c:1337 parse-options.h:164
+#: builtin/commit.c:1385 parse-options.h:192
 msgid "when"
 msgstr "quando"
 
-#: builtin/commit.c:1338
+#: builtin/commit.c:1386
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -10709,257 +12910,255 @@ msgstr ""
 "ignora modifiche ai sottomoduli, opzione facoltativa \"quando\": all, dirty, "
 "untracked. (Impostazione predefinita: all)"
 
-#: builtin/commit.c:1340
+#: builtin/commit.c:1388
 msgid "list untracked files in columns"
 msgstr "elenca i file non tracciati in colonne"
 
-#: builtin/commit.c:1341
+#: builtin/commit.c:1389
 msgid "do not detect renames"
 msgstr "non rilevare le ridenominazioni"
 
-#: builtin/commit.c:1343
+#: builtin/commit.c:1391
 msgid "detect renames, optionally set similarity index"
 msgstr ""
 "rileva le ridenominazioni, imposta facoltativamente l'indice di similarità"
 
-#: builtin/commit.c:1363
+#: builtin/commit.c:1411
 msgid "Unsupported combination of ignored and untracked-files arguments"
 msgstr ""
 "Combinazione di argomenti sui file ignorati e non tracciati non supportata"
 
-#: builtin/commit.c:1468
+#: builtin/commit.c:1494
 msgid "suppress summary after successful commit"
 msgstr ""
 "ometti di visualizzare il riepilogo dopo un commit completato con successo"
 
-#: builtin/commit.c:1469
+#: builtin/commit.c:1495
 msgid "show diff in commit message template"
 msgstr "visualizza il diff nel modello del messaggio di commit"
 
-#: builtin/commit.c:1471
+#: builtin/commit.c:1497
 msgid "Commit message options"
 msgstr "Opzioni messaggio di commit"
 
-#: builtin/commit.c:1472 builtin/merge.c:264 builtin/tag.c:397
+#: builtin/commit.c:1498 builtin/merge.c:275 builtin/tag.c:414
 msgid "read message from file"
 msgstr "leggi il messaggio da un file"
 
-#: builtin/commit.c:1473
+#: builtin/commit.c:1499
 msgid "author"
 msgstr "autore"
 
-#: builtin/commit.c:1473
+#: builtin/commit.c:1499
 msgid "override author for commit"
 msgstr "sovrascrivi l'autore per il commit"
 
-#: builtin/commit.c:1474 builtin/gc.c:518
+#: builtin/commit.c:1500 builtin/gc.c:538
 msgid "date"
 msgstr "data"
 
-#: builtin/commit.c:1474
+#: builtin/commit.c:1500
 msgid "override date for commit"
 msgstr "sovrascrivi la data per il commit"
 
-#: builtin/commit.c:1475 builtin/merge.c:260 builtin/notes.c:409
-#: builtin/notes.c:575 builtin/tag.c:395
-msgid "message"
-msgstr "messaggio"
-
-#: builtin/commit.c:1475
-msgid "commit message"
-msgstr "messaggio di commit"
-
-#: builtin/commit.c:1476 builtin/commit.c:1477 builtin/commit.c:1478
-#: builtin/commit.c:1479 parse-options.h:278 ref-filter.h:92
+#: builtin/commit.c:1502 builtin/commit.c:1503 builtin/commit.c:1504
+#: builtin/commit.c:1505 parse-options.h:328 ref-filter.h:92
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1476
+#: builtin/commit.c:1502
 msgid "reuse and edit message from specified commit"
 msgstr "riusa il messaggio del commit specificato per poi modificarlo"
 
-#: builtin/commit.c:1477
+#: builtin/commit.c:1503
 msgid "reuse message from specified commit"
 msgstr "riusa il messaggio del commit specificato"
 
-#: builtin/commit.c:1478
+#: builtin/commit.c:1504
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 "usa il messaggio in formato autosquash per correggere il commit specificato"
 
-#: builtin/commit.c:1479
+#: builtin/commit.c:1505
 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:1480
+#: builtin/commit.c:1506
 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:1481 builtin/log.c:1533 builtin/merge.c:277
-#: builtin/pull.c:156 builtin/revert.c:107
+#: builtin/commit.c:1507 builtin/log.c:1634 builtin/merge.c:290
+#: builtin/pull.c:144 builtin/revert.c:110
 msgid "add Signed-off-by:"
 msgstr "aggiungi Signed-off-by:"
 
-#: builtin/commit.c:1482
+#: builtin/commit.c:1508
 msgid "use specified template file"
 msgstr "usa il file modello specificato"
 
-#: builtin/commit.c:1483
+#: builtin/commit.c:1509
 msgid "force edit of commit"
 msgstr "forza la modifica del commit"
 
-#: builtin/commit.c:1484
-msgid "default"
-msgstr "impostazione predefinita"
-
-#: builtin/commit.c:1484 builtin/tag.c:401
-msgid "how to strip spaces and #comments from message"
-msgstr "come rimuovere gli spazi e i #commenti dal messaggio"
-
-#: builtin/commit.c:1485
+#: builtin/commit.c:1511
 msgid "include status in commit message template"
 msgstr "includi lo stato nel modello del messaggio di commit"
 
-#: builtin/commit.c:1487 builtin/merge.c:275 builtin/pull.c:186
-#: builtin/revert.c:115
-msgid "GPG sign commit"
-msgstr "firma il commit con GPG"
-
-#: builtin/commit.c:1490
+#: builtin/commit.c:1516
 msgid "Commit contents options"
 msgstr "Opzioni contenuto commit"
 
-#: builtin/commit.c:1491
+#: builtin/commit.c:1517
 msgid "commit all changed files"
 msgstr "esegui il commit di tutti i file modificati"
 
-#: builtin/commit.c:1492
+#: builtin/commit.c:1518
 msgid "add specified files to index for commit"
-msgstr "aggiungi i file specificati all'index per il commit"
+msgstr "aggiungi i file specificati all'indice per il commit"
 
-#: builtin/commit.c:1493
+#: builtin/commit.c:1519
 msgid "interactively add files"
 msgstr "aggiungi i file in modalità interattiva"
 
-#: builtin/commit.c:1494
+#: builtin/commit.c:1520
 msgid "interactively add changes"
 msgstr "aggiungi le modifiche in modalità interattiva"
 
-#: builtin/commit.c:1495
+#: builtin/commit.c:1521
 msgid "commit only specified files"
 msgstr "esegui il commit solo dei file specificati"
 
-#: builtin/commit.c:1496
+#: builtin/commit.c:1522
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "ignora gli hook pre-commit e commit-msg"
 
-#: builtin/commit.c:1497
+#: builtin/commit.c:1523
 msgid "show what would be committed"
 msgstr "visualizza gli elementi di cui sarebbe eseguito il commit"
 
-#: builtin/commit.c:1510
+#: builtin/commit.c:1536
 msgid "amend previous commit"
 msgstr "modifica il commit precedente"
 
-#: builtin/commit.c:1511
+#: builtin/commit.c:1537
 msgid "bypass post-rewrite hook"
 msgstr "ignora l'hook post-rewrite"
 
-#: builtin/commit.c:1516
+#: builtin/commit.c:1544
 msgid "ok to record an empty change"
 msgstr "accetta di registrare una modifica vuota"
 
-#: builtin/commit.c:1518
+#: builtin/commit.c:1546
 msgid "ok to record a change with an empty message"
 msgstr "accetta di registrare una modifica con un messaggio vuoto"
 
-#: builtin/commit.c:1591
+#: builtin/commit.c:1619
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "File MERGE_HEAD corrotto (%s)"
 
-#: builtin/commit.c:1598
+#: builtin/commit.c:1626
 msgid "could not read MERGE_MODE"
 msgstr "impossibile leggere MERGE_MODE"
 
-#: builtin/commit.c:1617
+#: builtin/commit.c:1645
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "impossibile leggere il messaggio di commit: %s"
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1652
 #, 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:1633
+#: builtin/commit.c:1657
 #, 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:1691
 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
-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
-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:11 builtin/commit-graph.c:17
+msgid ""
+"git commit-graph verify [--object-dir <objdir>] [--shallow] [--[no-]progress]"
+msgstr ""
+"git commit-graph verify [--object-dir <directory oggetti>] [--shallow] [--"
+"[no-]progress]"
 
-#: builtin/commit-graph.c:13 builtin/commit-graph.c:28
+#: builtin/commit-graph.c:12 builtin/commit-graph.c:22
 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] [--[no-]progress] <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] [--[no-]progress] <opzioni split>"
 
-#: builtin/commit-graph.c:48 builtin/commit-graph.c:78
-#: builtin/commit-graph.c:132 builtin/commit-graph.c:190 builtin/fetch.c:153
-#: builtin/log.c:1553
+#: builtin/commit-graph.c:52
+#, c-format
+msgid "could not find object directory matching %s"
+msgstr "impossibile trovare la directory oggetti corrispondente a %s"
+
+#: builtin/commit-graph.c:68 builtin/commit-graph.c:125
+#: builtin/commit-graph.c:210 builtin/fetch.c:179 builtin/log.c:1657
 msgid "dir"
 msgstr "directory"
 
-#: builtin/commit-graph.c:49 builtin/commit-graph.c:79
-#: builtin/commit-graph.c:133 builtin/commit-graph.c:191
+#: builtin/commit-graph.c:69 builtin/commit-graph.c:126
+#: builtin/commit-graph.c:211
 msgid "The object directory to store the graph"
 msgstr "La directory oggetti in cui memorizzare il grafo"
 
-#: builtin/commit-graph.c:135
+#: builtin/commit-graph.c:71
+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:94 t/helper/test-read-graph.c:23
+#, c-format
+msgid "Could not open commit-graph '%s'"
+msgstr "Impossibile aprire il grafo dei commit '%s'"
+
+#: builtin/commit-graph.c:128
 msgid "start walk at all refs"
 msgstr "inizia la visita da tutti i riferimenti"
 
-#: builtin/commit-graph.c:137
+#: builtin/commit-graph.c:130
 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:139
+#: builtin/commit-graph.c:132
 msgid "start walk at commits listed by stdin"
 msgstr "inizia la visita ai commit elencati sullo standard input"
 
-#: builtin/commit-graph.c:141
+#: builtin/commit-graph.c:134
 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:150
+#: builtin/commit-graph.c:137
+msgid "allow writing an incremental commit-graph file"
+msgstr "consenti la scrittura di un file grafo dei commit incrementale"
+
+#: builtin/commit-graph.c:139 builtin/commit-graph.c:143
+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:141
+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:159
 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"
 
@@ -10967,212 +13166,218 @@ 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:104 builtin/env--helper.c:23
 #, c-format
 msgid "unrecognized --type argument, %s"
 msgstr "argomento --type non riconosciuto: %s"
 
-#: builtin/config.c:115
+#: builtin/config.c:116
 msgid "only one type at a time"
 msgstr "solo un tipo per volta"
 
-#: builtin/config.c:124
+#: builtin/config.c:125
 msgid "Config file location"
 msgstr "Percorso file di configurazione"
 
-#: builtin/config.c:125
+#: builtin/config.c:126
 msgid "use global config file"
 msgstr "usa il file di configurazione globale"
 
-#: builtin/config.c:126
+#: builtin/config.c:127
 msgid "use system config file"
 msgstr "usa il file di configurazione di sistema"
 
-#: builtin/config.c:127
+#: builtin/config.c:128
 msgid "use repository config file"
 msgstr "usa il file di configurazione del repository"
 
-#: builtin/config.c:128
+#: builtin/config.c:129
 msgid "use per-worktree config file"
 msgstr "usa il file di configurazione per albero di lavoro"
 
-#: builtin/config.c:129
+#: builtin/config.c:130
 msgid "use given config file"
 msgstr "usa il file di configurazione specificato"
 
-#: builtin/config.c:130
+#: builtin/config.c:131
 msgid "blob-id"
 msgstr "ID blob"
 
-#: builtin/config.c:130
+#: builtin/config.c:131
 msgid "read config from given blob object"
 msgstr "leggi la configurazione dall'oggetto blob specificato"
 
-#: builtin/config.c:131
+#: builtin/config.c:132
 msgid "Action"
 msgstr "Azione"
 
-#: builtin/config.c:132
+#: builtin/config.c:133
 msgid "get value: name [value-regex]"
 msgstr "ottieni valore: nome [espressione-regolare-valore]"
 
-#: builtin/config.c:133
+#: builtin/config.c:134
 msgid "get all values: key [value-regex]"
 msgstr "ottieni tutti i valori: chiave [espressione-regolare-valore]"
 
-#: builtin/config.c:134
+#: builtin/config.c:135
 msgid "get values for regexp: name-regex [value-regex]"
 msgstr ""
 "ottieni i valori in base a un'espressione regolare: espressione-regolare-"
 "nome [espressione-regolare-valore]"
 
-#: builtin/config.c:135
+#: builtin/config.c:136
 msgid "get value specific for the URL: section[.var] URL"
 msgstr "ottieni il valore specifico per l'URL: sezione[.variabile] URL"
 
-#: builtin/config.c:136
+#: builtin/config.c:137
 msgid "replace all matching variables: name value [value_regex]"
 msgstr ""
 "sostituisci tutte le variabili corrispondenti: nome-valore [espressione-"
 "regolare-valore]"
 
-#: builtin/config.c:137
+#: builtin/config.c:138
 msgid "add a new variable: name value"
 msgstr "aggiungi una nuova variabile: nome valore"
 
-#: builtin/config.c:138
+#: builtin/config.c:139
 msgid "remove a variable: name [value-regex]"
 msgstr "rimuovi una variabile: nome [espressione-regolare-valore]"
 
-#: builtin/config.c:139
+#: builtin/config.c:140
 msgid "remove all matches: name [value-regex]"
 msgstr "rimuovi tutte le corrispondenze: nome [espressione-regolare-valore]"
 
-#: builtin/config.c:140
+#: builtin/config.c:141
 msgid "rename section: old-name new-name"
 msgstr "rinomina sezione: vecchio-nome nuovo-nome"
 
-#: builtin/config.c:141
+#: builtin/config.c:142
 msgid "remove a section: name"
 msgstr "rimuovi una sezione: nome"
 
-#: builtin/config.c:142
+#: builtin/config.c:143
 msgid "list all"
 msgstr "elenca tutti"
 
-#: builtin/config.c:143
+#: builtin/config.c:144
 msgid "open an editor"
 msgstr "apri un editor"
 
-#: builtin/config.c:144
+#: builtin/config.c:145
 msgid "find the color configured: slot [default]"
 msgstr "trova il colore configurato: slot [valore-predefinito]"
 
-#: builtin/config.c:145
+#: builtin/config.c:146
 msgid "find the color setting: slot [stdout-is-tty]"
 msgstr "trova l'impostazione colore: slot [standard-output-è-una-tty]"
 
-#: builtin/config.c:146
+#: builtin/config.c:147
 msgid "Type"
 msgstr "Tipo"
 
-#: builtin/config.c:147
+#: builtin/config.c:148 builtin/env--helper.c:38
 msgid "value is given this type"
 msgstr "al valore è assegnato questo tipo"
 
-#: builtin/config.c:148
+#: builtin/config.c:149
 msgid "value is \"true\" or \"false\""
 msgstr "il valore è \"true\" o \"false\""
 
-#: builtin/config.c:149
+#: builtin/config.c:150
 msgid "value is decimal number"
 msgstr "il valore è un numero decimale"
 
-#: builtin/config.c:150
+#: builtin/config.c:151
 msgid "value is --bool or --int"
 msgstr "il valore è --bool o --int"
 
-#: builtin/config.c:151
+#: builtin/config.c:152
 msgid "value is a path (file or directory name)"
 msgstr "il valore è un percorso (nome file o directory)"
 
-#: builtin/config.c:152
+#: builtin/config.c:153
 msgid "value is an expiry date"
 msgstr "il valore è una data di scadenza"
 
-#: builtin/config.c:153
+#: builtin/config.c:154
 msgid "Other"
 msgstr "Altro"
 
-#: builtin/config.c:154
+#: builtin/config.c:155
 msgid "terminate values with NUL byte"
 msgstr "termina i valori con un byte NUL"
 
-#: builtin/config.c:155
+#: builtin/config.c:156
 msgid "show variable names only"
 msgstr "visualizza solo i nomi delle variabili"
 
-#: builtin/config.c:156
+#: builtin/config.c:157
 msgid "respect include directives on lookup"
 msgstr ""
 "rispetta le directory di inclusione durante il recupero delle variabili"
 
-#: builtin/config.c:157
+#: builtin/config.c:158
 msgid "show origin of config (file, standard input, blob, command line)"
 msgstr ""
 "visualizza l'origine del file di configurazione (file, standard input, blob, "
 "riga di comando)"
 
-#: builtin/config.c:158
+#: builtin/config.c:159
+msgid "show scope of config (worktree, local, global, system, command)"
+msgstr ""
+"visualizza l'ambito della configurazione (albero di lavoro, locale, globale, "
+"sistema, comando)"
+
+#: builtin/config.c:160 builtin/env--helper.c:40
 msgid "value"
 msgstr "valore"
 
-#: builtin/config.c:158
+#: builtin/config.c:160
 msgid "with --get, use default value when missing entry"
 msgstr "con --get, usa il valore predefinito se la voce è mancante"
 
-#: builtin/config.c:172
+#: builtin/config.c:174
 #, c-format
 msgid "wrong number of arguments, should be %d"
 msgstr "numero di argomenti errato, dovrebbero essere %d"
 
-#: builtin/config.c:174
+#: builtin/config.c:176
 #, c-format
 msgid "wrong number of arguments, should be from %d to %d"
 msgstr "numero di argomenti errato, dovrebbero essere da %d a %d"
 
-#: builtin/config.c:308
+#: builtin/config.c:324
 #, c-format
 msgid "invalid key pattern: %s"
 msgstr "pattern chiave non valido: %s"
 
-#: builtin/config.c:344
+#: builtin/config.c:360
 #, c-format
 msgid "failed to format default config value: %s"
 msgstr "formattazione del valore configurazione predefinito non riuscita: %s"
 
-#: builtin/config.c:401
+#: builtin/config.c:417
 #, c-format
 msgid "cannot parse color '%s'"
 msgstr "impossibile analizzare il colore '%s'"
 
-#: builtin/config.c:443
+#: builtin/config.c:459
 msgid "unable to parse default color value"
 msgstr "impossibile analizzare il valore colore predefinito"
 
-#: builtin/config.c:496 builtin/config.c:742
+#: builtin/config.c:512 builtin/config.c:768
 msgid "not in a git directory"
 msgstr "non si è in una directory git"
 
-#: builtin/config.c:499
+#: builtin/config.c:515
 msgid "writing to stdin is not supported"
 msgstr "la scrittura su standard input non è supportata"
 
-#: builtin/config.c:502
+#: builtin/config.c:518
 msgid "writing config blobs is not supported"
 msgstr "la scrittura di blob di configurazione non è supportata"
 
-#: builtin/config.c:587
+#: builtin/config.c:603
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -11187,23 +13392,23 @@ msgstr ""
 "#\tname = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:611
+#: builtin/config.c:627
 msgid "only one config file at a time"
 msgstr "solo un file di configurazione per volta"
 
-#: builtin/config.c:616
+#: builtin/config.c:632
 msgid "--local can only be used inside a git repository"
 msgstr "--local può essere usato solo in un repository Git"
 
-#: builtin/config.c:619
+#: builtin/config.c:635
 msgid "--blob can only be used inside a git repository"
 msgstr "--blob può essere usato solo in un repository Git"
 
-#: builtin/config.c:638
+#: builtin/config.c:655
 msgid "$HOME not set"
 msgstr "$HOME non impostata"
 
-#: builtin/config.c:658
+#: builtin/config.c:679
 msgid ""
 "--worktree cannot be used with multiple working trees unless the config\n"
 "extension worktreeConfig is enabled. Please read \"CONFIGURATION FILE\"\n"
@@ -11214,52 +13419,52 @@ msgstr ""
 "Leggi la sezione \"FILE DI CONFIGURAZIONE\" in \"git help worktree\" per\n"
 "i dettagli"
 
-#: builtin/config.c:688
+#: builtin/config.c:714
 msgid "--get-color and variable type are incoherent"
 msgstr "--get-color e il tipo della variabile non sono coerenti"
 
-#: builtin/config.c:693
+#: builtin/config.c:719
 msgid "only one action at a time"
 msgstr "solo un'azione per volta"
 
-#: builtin/config.c:706
+#: builtin/config.c:732
 msgid "--name-only is only applicable to --list or --get-regexp"
 msgstr "--name-only è applicabile solo a --list o --get-regexp"
 
-#: builtin/config.c:712
+#: builtin/config.c:738
 msgid ""
 "--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
 "list"
 msgstr ""
 "--show-origin è applicabile solo a --get, --get-all, --get-regexp e --list"
 
-#: builtin/config.c:718
+#: builtin/config.c:744
 msgid "--default is only applicable to --get"
 msgstr "--default è applicabile solo a --get"
 
-#: builtin/config.c:731
+#: builtin/config.c:757
 #, c-format
 msgid "unable to read config file '%s'"
 msgstr "impossibile leggere il file di configurazione '%s'"
 
-#: builtin/config.c:734
+#: builtin/config.c:760
 msgid "error processing config file(s)"
 msgstr "errore durante l'elaborazione del/dei file di configurazione"
 
-#: builtin/config.c:744
+#: builtin/config.c:770
 msgid "editing stdin is not supported"
 msgstr "la modifica dello standard input non è supportata"
 
-#: builtin/config.c:746
+#: builtin/config.c:772
 msgid "editing blobs is not supported"
 msgstr "la modifica dei blob non è supportata"
 
-#: builtin/config.c:760
+#: builtin/config.c:786
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "impossibile creare il file di configurazione %s"
 
-#: builtin/config.c:773
+#: builtin/config.c:799
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
@@ -11268,7 +13473,7 @@ msgstr ""
 "impossibile sovrascrivere valori multipli con un singolo valore\n"
 "       Usa un'espressione regolare, --add o --replace-all per modificare %s."
 
-#: builtin/config.c:847 builtin/config.c:858
+#: builtin/config.c:873 builtin/config.c:884
 #, c-format
 msgid "no such section: %s"
 msgstr "sezione %s non esistente"
@@ -11281,59 +13486,59 @@ msgstr "git count-objects [-v] [-H | --human-readable]"
 msgid "print sizes in human readable format"
 msgstr "stampa le dimensioni in un formato leggibile"
 
-#: builtin/describe.c:27
+#: builtin/describe.c:26
 msgid "git describe [<options>] [<commit-ish>...]"
 msgstr "git describe [<opzioni>] [<espressione commit>...]"
 
-#: builtin/describe.c:28
+#: builtin/describe.c:27
 msgid "git describe [<options>] --dirty"
 msgstr "git describe [<opzioni>] --dirty"
 
-#: builtin/describe.c:63
+#: builtin/describe.c:62
 msgid "head"
 msgstr "head"
 
-#: builtin/describe.c:63
+#: builtin/describe.c:62
 msgid "lightweight"
 msgstr "leggero"
 
-#: builtin/describe.c:63
+#: builtin/describe.c:62
 msgid "annotated"
 msgstr "annotato"
 
-#: builtin/describe.c:273
+#: builtin/describe.c:275
 #, c-format
 msgid "annotated tag %s not available"
 msgstr "il tag annotato %s non è disponibile"
 
-#: builtin/describe.c:277
+#: builtin/describe.c:279
 #, c-format
 msgid "annotated tag %s has no embedded name"
 msgstr "il tag annotato %s non ha un nome incorporato"
 
-#: builtin/describe.c:279
+#: builtin/describe.c:281
 #, c-format
 msgid "tag '%s' is really '%s' here"
 msgstr "il tag '%s' in realtà qui è '%s'"
 
-#: builtin/describe.c:323
+#: builtin/describe.c:325
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr "nessun tag corrisponde esattamente a '%s'"
 
-#: builtin/describe.c:325
+#: builtin/describe.c:327
 #, c-format
 msgid "No exact match on refs or tags, searching to describe\n"
 msgstr ""
 "Nessuna corrispondenza esatta sui riferimenti o sui tag, sto eseguendo una "
 "ricerca per descrivere il commit\n"
 
-#: builtin/describe.c:379
+#: builtin/describe.c:394
 #, c-format
 msgid "finished search at %s\n"
 msgstr "ricerca terminata in %s\n"
 
-#: builtin/describe.c:405
+#: builtin/describe.c:421
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
@@ -11342,7 +13547,7 @@ msgstr ""
 "Nessun tag annotato può descrivere '%s'.\n"
 "Ciò nonostante, c'erano dei tag non annotati: prova con --tags."
 
-#: builtin/describe.c:409
+#: builtin/describe.c:425
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
@@ -11351,12 +13556,12 @@ msgstr ""
 "Nessun tag può descrivere '%s'.\n"
 "Prova con --always o crea dei tag."
 
-#: builtin/describe.c:439
+#: builtin/describe.c:455
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr "ho attraversato %lu commit\n"
 
-#: builtin/describe.c:442
+#: builtin/describe.c:458
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
@@ -11365,94 +13570,94 @@ msgstr ""
 "trovati più di %i tag; ho elencato i %i più recenti\n"
 "ho terminato la ricerca in %s\n"
 
-#: builtin/describe.c:510
+#: builtin/describe.c:526
 #, c-format
 msgid "describe %s\n"
 msgstr "descrivi %s\n"
 
-#: builtin/describe.c:513 builtin/log.c:516
+#: builtin/describe.c:529
 #, c-format
 msgid "Not a valid object name %s"
 msgstr "%s non è un nome oggetto valido"
 
-#: builtin/describe.c:521
+#: builtin/describe.c:537
 #, c-format
 msgid "%s is neither a commit nor blob"
 msgstr "%s non è né un commit né un blob"
 
-#: builtin/describe.c:535
+#: builtin/describe.c:551
 msgid "find the tag that comes after the commit"
 msgstr "trova il tag successivo al commit"
 
-#: builtin/describe.c:536
+#: builtin/describe.c:552
 msgid "debug search strategy on stderr"
 msgstr "esegui il debug della strategia di ricerca sullo standard error"
 
-#: builtin/describe.c:537
+#: builtin/describe.c:553
 msgid "use any ref"
 msgstr "usa qualunque riferimento"
 
-#: builtin/describe.c:538
+#: builtin/describe.c:554
 msgid "use any tag, even unannotated"
 msgstr "usa qualunque tag, anche quelli non annotati"
 
-#: builtin/describe.c:539
+#: builtin/describe.c:555
 msgid "always use long format"
 msgstr "usa sempre il formato lungo"
 
-#: builtin/describe.c:540
+#: builtin/describe.c:556
 msgid "only follow first parent"
 msgstr "segui solo il primo genitore"
 
-#: builtin/describe.c:543
+#: builtin/describe.c:559
 msgid "only output exact matches"
 msgstr "visualizza solo le corrispondenze esatte"
 
-#: builtin/describe.c:545
+#: builtin/describe.c:561
 msgid "consider <n> most recent tags (default: 10)"
 msgstr "considera gli <n> tag più recenti (impostazione predefinita: 10)"
 
-#: builtin/describe.c:547
+#: builtin/describe.c:563
 msgid "only consider tags matching <pattern>"
 msgstr "considera solo i tag corrispondenti al <pattern>"
 
-#: builtin/describe.c:549
+#: builtin/describe.c:565
 msgid "do not consider tags matching <pattern>"
 msgstr "non considerare i tag corrispondenti al <pattern>"
 
-#: builtin/describe.c:551 builtin/name-rev.c:424
+#: builtin/describe.c:567 builtin/name-rev.c:535
 msgid "show abbreviated commit object as fallback"
 msgstr "visualizza l'oggetto commit abbreviato come fallback"
 
-#: builtin/describe.c:552 builtin/describe.c:555
+#: builtin/describe.c:568 builtin/describe.c:571
 msgid "mark"
 msgstr "contrassegno"
 
-#: builtin/describe.c:553
+#: builtin/describe.c:569
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
 msgstr ""
 "aggiungi <contrassegno> all'albero di lavoro sporco (impostazione "
 "predefinita: \"-dirty\")"
 
-#: builtin/describe.c:556
+#: builtin/describe.c:572
 msgid "append <mark> on broken working tree (default: \"-broken\")"
 msgstr ""
 "aggiungi <contrassegno> all'albero di lavoro rotto (impostazione "
 "predefinita: \"-broken\")"
 
-#: builtin/describe.c:574
+#: builtin/describe.c:590
 msgid "--long is incompatible with --abbrev=0"
 msgstr "--long non è compatibile con --abbrev=0"
 
-#: builtin/describe.c:603
+#: builtin/describe.c:619
 msgid "No names found, cannot describe anything."
 msgstr "Nessun nome trovato, non è possibile descrivere nulla."
 
-#: builtin/describe.c:654
+#: builtin/describe.c:670
 msgid "--dirty is incompatible with commit-ishes"
 msgstr "--dirty non è compatibile con le espressioni commit"
 
-#: builtin/describe.c:656
+#: builtin/describe.c:672
 msgid "--broken is incompatible with commit-ishes"
 msgstr "--broken non è compatibile con le espressioni commit"
 
@@ -11466,50 +13671,50 @@ msgstr "'%s': non è un file regolare o un collegamento simbolico"
 msgid "invalid option: %s"
 msgstr "opzione non valida: %s"
 
-#: builtin/diff.c:364
+#: builtin/diff.c:350
 msgid "Not a git repository"
 msgstr "Non è un repository Git"
 
-#: builtin/diff.c:408
+#: builtin/diff.c:394
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "specificato oggetto non valido '%s'."
 
-#: builtin/diff.c:417
+#: builtin/diff.c:403
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr "più di due blob specificati: '%s'"
 
-#: builtin/diff.c:422
+#: builtin/diff.c:408
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "specificato oggetto non gestito '%s'."
 
-#: builtin/difftool.c:31
+#: builtin/difftool.c:30
 msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
 msgstr "git difftool [<opzioni>] [<commit> [<commit>]] [--] [<percorso>...]"
 
-#: builtin/difftool.c:261
+#: builtin/difftool.c:260
 #, c-format
 msgid "failed: %d"
 msgstr "non riuscito: %d"
 
-#: builtin/difftool.c:303
+#: builtin/difftool.c:302
 #, c-format
 msgid "could not read symlink %s"
 msgstr "impossibile leggere il collegamento simbolico %s"
 
-#: builtin/difftool.c:305
+#: builtin/difftool.c:304
 #, c-format
 msgid "could not read symlink file %s"
 msgstr "impossibile leggere il file collegamento simbolico %s"
 
-#: builtin/difftool.c:313
+#: builtin/difftool.c:312
 #, c-format
 msgid "could not read object %s for symlink %s"
 msgstr "impossibile leggere l'oggetto %s per il collegamento simbolico %s"
 
-#: builtin/difftool.c:414
+#: builtin/difftool.c:413
 msgid ""
 "combined diff formats('-c' and '--cc') are not supported in\n"
 "directory diff mode('-d' and '--dir-diff')."
@@ -11576,746 +13781,878 @@ msgstr ""
 msgid "specify a custom command for viewing diffs"
 msgstr "specifica un comando personalizzato per visualizzare i diff"
 
-#: builtin/difftool.c:740
+#: builtin/difftool.c:717
+msgid "passed to `diff`"
+msgstr "fornito a `diff`"
+
+#: builtin/difftool.c:732
+msgid "difftool requires worktree or --no-index"
+msgstr "difftool richiede un albero di lavoro o --no-index"
+
+#: builtin/difftool.c:739
+msgid "--dir-diff is incompatible with --no-index"
+msgstr "--dir-diff non è compatibile con --no-index"
+
+#: builtin/difftool.c:742
+msgid "--gui, --tool and --extcmd are mutually exclusive"
+msgstr "le opzioni --gui, --tool ed --extcmd sono mutualmente esclusive"
+
+#: builtin/difftool.c:750
 msgid "no <tool> given for --tool=<tool>"
 msgstr "nessuno <strumento> specificato per --tool=<strumento>"
 
-#: builtin/difftool.c:747
+#: builtin/difftool.c:757
 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:853
+msgid "Error: Cannot export nested tags unless --mark-tags is specified."
+msgstr ""
+"Errore: Impossibile esportare i tag nidificati a meno che non sia "
+"specificata l'opzione --mark-tags."
+
+#: builtin/fast-export.c:1152
 msgid "show progress after <n> objects"
 msgstr "visualizza l'avanzamento dopo <n> oggetti"
 
-#: builtin/fast-export.c:1086
+#: builtin/fast-export.c:1154
 msgid "select handling of signed tags"
 msgstr "seleziona la gestione dei tag firmati"
 
-#: builtin/fast-export.c:1089
+#: builtin/fast-export.c:1157
 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:1160
+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:1163
 msgid "Dump marks to this file"
 msgstr "Esegui il dump dei contrassegni in questo file"
 
-#: builtin/fast-export.c:1094
+#: builtin/fast-export.c:1165
 msgid "Import marks from this file"
 msgstr "Importa i contrassegni da questo file"
 
-#: builtin/fast-export.c:1096
+#: builtin/fast-export.c:1169
+msgid "Import marks from this file if it exists"
+msgstr "Importa i contrassegni da questo file se esiste"
+
+#: builtin/fast-export.c:1171
 msgid "Fake a tagger when tags lack one"
-msgstr ""
+msgstr "Usa un tagger falso se i tag non ne hanno uno"
 
-#: builtin/fast-export.c:1098
+#: builtin/fast-export.c:1173
 msgid "Output full tree for each commit"
-msgstr ""
+msgstr "Visualizza in output l'albero completo per ogni commit"
 
-#: builtin/fast-export.c:1100
+#: builtin/fast-export.c:1175
 msgid "Use the done feature to terminate the stream"
-msgstr ""
+msgstr "Usa la funzionalità \"fatto\" per terminare il flusso"
 
-#: builtin/fast-export.c:1101
+#: builtin/fast-export.c:1176
 msgid "Skip output of blob data"
-msgstr ""
+msgstr "Ometti l'output dei dati dei blob"
 
-#: builtin/fast-export.c:1102 builtin/log.c:1601
+#: builtin/fast-export.c:1177 builtin/log.c:1705
 msgid "refspec"
-msgstr ""
+msgstr "specificatore riferimento"
 
-#: builtin/fast-export.c:1103
+#: builtin/fast-export.c:1178
 msgid "Apply refspec to exported refs"
-msgstr ""
+msgstr "Applica lo specificatore riferimento ai riferimenti esportati"
 
-#: builtin/fast-export.c:1104
+#: builtin/fast-export.c:1179
 msgid "anonymize output"
-msgstr ""
+msgstr "rendi anonimo l'output"
 
-#: builtin/fast-export.c:1106
+#: builtin/fast-export.c:1181
 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:1183
 msgid "Show original object ids of blobs/commits"
+msgstr "Visualizza gli ID oggetto originari dei blob/commit"
+
+#: builtin/fast-export.c:1185
+msgid "Label tags with mark ids"
+msgstr "Etichetta i tag con ID contrassegno"
+
+#: builtin/fast-export.c:1220
+msgid "Cannot pass both --import-marks and --import-marks-if-exists"
 msgstr ""
+"Impossibile fornire entrambe le opzioni --import-marks e --import-marks-if-"
+"exists"
 
-#: builtin/fetch.c:28
-#, fuzzy
+#: builtin/fetch.c:34
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git fetch [<opzioni>] [<repository> [<specificatore riferimento>...]]"
 
-#: builtin/fetch.c:29
+#: builtin/fetch.c:35
 msgid "git fetch [<options>] <group>"
-msgstr ""
+msgstr "git fetch [<opzioni>] <gruppo>"
 
-#: builtin/fetch.c:30
+#: builtin/fetch.c:36
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
-msgstr ""
+msgstr "git fetch --multiple [<opzioni>] [(<repository> | <gruppo>)...]"
 
-#: builtin/fetch.c:31
+#: builtin/fetch.c:37
 msgid "git fetch --all [<options>]"
-msgstr ""
+msgstr "git fetch --all [<opzioni>]"
+
+#: builtin/fetch.c:116
+msgid "fetch.parallel cannot be negative"
+msgstr "fetch.parallel non può essere negativo"
 
-#: builtin/fetch.c:115 builtin/pull.c:195
+#: builtin/fetch.c:139 builtin/pull.c:184
 msgid "fetch from all remotes"
-msgstr ""
+msgstr "esegui il fetch da tutti i remoti"
+
+#: builtin/fetch.c:141 builtin/pull.c:228
+msgid "set upstream for git pull/fetch"
+msgstr "imposta l'upstream per git pull/fetch"
 
-#: builtin/fetch.c:117 builtin/pull.c:198
+#: builtin/fetch.c:143 builtin/pull.c:187
 msgid "append to .git/FETCH_HEAD instead of overwriting"
-msgstr ""
+msgstr "aggiungi i dati a .git/FETCH_HEAD anziché sovrascriverli"
 
-#: builtin/fetch.c:119 builtin/pull.c:201
+#: builtin/fetch.c:145 builtin/pull.c:190
 msgid "path to upload pack on remote end"
-msgstr ""
+msgstr "percorso in cui caricare il pack sul remoto"
 
-#: builtin/fetch.c:120
-#, fuzzy
+#: builtin/fetch.c:146
 msgid "force overwrite of local reference"
-msgstr "$reference non è un riferimento valido"
+msgstr "forza la sovrascrittura del riferimento locale"
 
-#: builtin/fetch.c:122
+#: builtin/fetch.c:148
 msgid "fetch from multiple remotes"
-msgstr ""
+msgstr "esegui il fetch da più remoti"
 
-#: builtin/fetch.c:124 builtin/pull.c:205
-#, fuzzy
+#: builtin/fetch.c:150 builtin/pull.c:194
 msgid "fetch all tags and associated objects"
-msgstr "Aggiorna i ref remoti insieme agli oggetti associati"
+msgstr "esegui il fetch di tutti i tag e degli oggetti associati"
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:152
 msgid "do not fetch all tags (--no-tags)"
-msgstr ""
+msgstr "non eseguire il fetch di alcun tag (--no-tags)"
 
-#: builtin/fetch.c:128
+#: builtin/fetch.c:154
 msgid "number of submodules fetched in parallel"
-msgstr ""
+msgstr "numero di sottomoduli recuperati in parallelo"
 
-#: builtin/fetch.c:130 builtin/pull.c:208
+#: builtin/fetch.c:156 builtin/pull.c:197
 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:158
 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:133
+#: builtin/fetch.c:159 builtin/fetch.c:182 builtin/pull.c:121
 msgid "on-demand"
-msgstr ""
+msgstr "a richiesta"
 
-#: builtin/fetch.c:134
+#: builtin/fetch.c:160
 msgid "control recursive fetching of submodules"
-msgstr ""
+msgstr "controlla il recupero ricorsivo dei sottomoduli"
 
-#: builtin/fetch.c:138 builtin/pull.c:216
+#: builtin/fetch.c:164 builtin/pull.c:205
 msgid "keep downloaded pack"
-msgstr ""
+msgstr "mantieni il pack scaricato"
 
-#: builtin/fetch.c:140
+#: builtin/fetch.c:166
 msgid "allow updating of HEAD ref"
-msgstr ""
+msgstr "consenti l'aggiornamento del riferimento HEAD"
 
-#: builtin/fetch.c:143 builtin/fetch.c:149 builtin/pull.c:219
+#: builtin/fetch.c:169 builtin/fetch.c:175 builtin/pull.c:208
 msgid "deepen history of shallow clone"
-msgstr ""
+msgstr "aumenta la profondità della cronologia di un clone shallow"
 
-#: builtin/fetch.c:145
+#: builtin/fetch.c:171
 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:222
-#, fuzzy
+#: builtin/fetch.c:177 builtin/pull.c:211
 msgid "convert to a complete repository"
-msgstr "Registra modifiche nel repository"
+msgstr "converti in un repository completo"
 
-#: builtin/fetch.c:154
+#: builtin/fetch.c:180
 msgid "prepend this to submodule path output"
-msgstr ""
+msgstr "anteponi questo prefisso all'output del percorso del sottomodulo"
 
-#: builtin/fetch.c:157
+#: builtin/fetch.c:183
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
 msgstr ""
+"impostazione predefinita per il recupero ricorsivo dei sottomoduli (a "
+"priorità minore rispetto ai file di configurazione)"
 
-#: builtin/fetch.c:161 builtin/pull.c:225
+#: builtin/fetch.c:187 builtin/pull.c:214
 msgid "accept refs that update .git/shallow"
-msgstr ""
+msgstr "accetta i riferimenti che aggiornano .git/shallow"
 
-#: builtin/fetch.c:162 builtin/pull.c:227
+#: builtin/fetch.c:188 builtin/pull.c:216
 msgid "refmap"
-msgstr ""
+msgstr "mappa riferimenti"
 
-#: builtin/fetch.c:163 builtin/pull.c:228
+#: builtin/fetch.c:189 builtin/pull.c:217
 msgid "specify fetch refmap"
-msgstr ""
+msgstr "specifica la mappa dei riferimenti per il fetch"
 
-#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:585
-#: builtin/send-pack.c:172
-msgid "server-specific"
-msgstr ""
+#: builtin/fetch.c:196
+msgid "report that we have only objects reachable from this object"
+msgstr "segnala che abbiamo solo oggetti raggiungibili da quest'oggetto"
 
-#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:585
-#: builtin/send-pack.c:173
-msgid "option to transmit"
-msgstr ""
+#: builtin/fetch.c:199
+msgid "run 'gc --auto' after fetching"
+msgstr "esegui 'gc --auto' dopo il fetch"
 
-#: builtin/fetch.c:170
-msgid "report that we have only objects reachable from this object"
-msgstr ""
+#: builtin/fetch.c:201 builtin/pull.c:226
+msgid "check for forced-updates on all updated branches"
+msgstr "controlla aggiornamenti forzati su tutti i branch aggiornati"
+
+#: builtin/fetch.c:203
+msgid "write the commit-graph after fetching"
+msgstr "scrivi il grafo dei commit dopo il fetch"
 
-#: builtin/fetch.c:469
+#: builtin/fetch.c:513
 msgid "Couldn't find remote ref HEAD"
-msgstr ""
+msgstr "Impossibile trovare l'HEAD del riferimento remoto"
 
-#: builtin/fetch.c:608
+#: builtin/fetch.c:653
 #, c-format
 msgid "configuration fetch.output contains invalid value %s"
-msgstr ""
+msgstr "il valore dell'opzione fetch.output contiene il valore non valido %s"
 
-#: builtin/fetch.c:705
+#: builtin/fetch.c:751
 #, c-format
 msgid "object %s not found"
 msgstr "oggetto %s non trovato"
 
-#: builtin/fetch.c:709
+#: builtin/fetch.c:755
 msgid "[up to date]"
 msgstr "[aggiornato]"
 
-#: builtin/fetch.c:722 builtin/fetch.c:738 builtin/fetch.c:801
+#: builtin/fetch.c:768 builtin/fetch.c:784 builtin/fetch.c:856
 msgid "[rejected]"
-msgstr "[respinto]"
+msgstr "[rifiutato]"
 
-#: builtin/fetch.c:723
-#, fuzzy
+#: builtin/fetch.c:769
 msgid "can't fetch in current branch"
-msgstr "Nessun remote per il branch corrente."
+msgstr "impossibile eseguire il fetch nel branch corrente"
 
-#: builtin/fetch.c:733
+#: builtin/fetch.c:779
 msgid "[tag update]"
-msgstr "[tag aggiornata]"
+msgstr "[tag aggiornato]"
 
-#: builtin/fetch.c:734 builtin/fetch.c:771 builtin/fetch.c:784
-#: builtin/fetch.c:796
+#: builtin/fetch.c:780 builtin/fetch.c:817 builtin/fetch.c:839
+#: builtin/fetch.c:851
 msgid "unable to update local ref"
-msgstr "impossibile aggiornare il ref locale"
+msgstr "impossibile aggiornare il riferimento locale"
 
-#: builtin/fetch.c:738
+#: builtin/fetch.c:784
 msgid "would clobber existing tag"
-msgstr ""
+msgstr "sovrascriverebbe il tag esistente"
 
-#: builtin/fetch.c:760
+#: builtin/fetch.c:806
 msgid "[new tag]"
-msgstr "[nuova tag]"
+msgstr "[nuovo tag]"
 
-#: builtin/fetch.c:763
+#: builtin/fetch.c:809
 msgid "[new branch]"
 msgstr "[nuovo branch]"
 
-#: builtin/fetch.c:766
+#: builtin/fetch.c:812
 msgid "[new ref]"
-msgstr "[nuovo ref]"
+msgstr "[nuovo riferimento]"
 
-#: builtin/fetch.c:796
+#: builtin/fetch.c:851
 msgid "forced update"
 msgstr "aggiornamento forzato"
 
-#: builtin/fetch.c:801
+#: builtin/fetch.c:856
 msgid "non-fast-forward"
+msgstr "non fast forward"
+
+#: builtin/fetch.c:877
+msgid ""
+"Fetch normally indicates which branches had a forced update,\n"
+"but that check has been disabled. To re-enable, use '--show-forced-updates'\n"
+"flag or run 'git config fetch.showForcedUpdates true'."
+msgstr ""
+"Il fetch normalmente indica quali branch siano stati sottoposti ad\n"
+"aggiornamento forzato, ma tale controllo è stato disabilitato. Per\n"
+"riabilitarlo, usa l'opzione '--show-forced-updates' o esegui 'git config\n"
+"fetch.showForcedUpdates true'."
+
+#: builtin/fetch.c:881
+#, c-format
+msgid ""
+"It took %.2f seconds to check forced updates. You can use\n"
+"'--no-show-forced-updates' or run 'git config fetch.showForcedUpdates "
+"false'\n"
+" to avoid this check.\n"
 msgstr ""
+"Sono stati richiesti %.2f secondi per controllare la presenza di eventuali\n"
+"aggiornamenti forzati. Puoi usare '--no-show-forced-updates' o eseguire\n"
+"'git config fetch.showForcedUpdates false' per omettere questo controllo.\n"
 
-#: builtin/fetch.c:847
+#: builtin/fetch.c:920
 #, 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:941
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
-msgstr ""
+msgstr "%s rifiutato perché non è consentito aggiornare radici shallow"
 
-#: builtin/fetch.c:959 builtin/fetch.c:1081
+#: builtin/fetch.c:1026 builtin/fetch.c:1164
 #, c-format
 msgid "From %.*s\n"
 msgstr "Da %.*s\n"
 
-#: builtin/fetch.c:970
+#: builtin/fetch.c:1037
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
 " 'git remote prune %s' to remove any old, conflicting branches"
 msgstr ""
-"non è stato possibile aggiornare alcuni ref locali; prova con\n"
-" 'git remote prune %s' per rimuovere ogni branch che vada in conflitto"
+"non è stato possibile aggiornare alcuni riferimenti locali; prova ad "
+"eseguire\n"
+" 'git remote prune %s' per rimuovere ogni branch vecchio in conflitto"
 
-#: builtin/fetch.c:1051
+#: builtin/fetch.c:1134
 #, c-format
 msgid "   (%s will become dangling)"
-msgstr ""
+msgstr "   (%s diventerà pendente)"
 
-#: builtin/fetch.c:1052
+#: builtin/fetch.c:1135
 #, c-format
 msgid "   (%s has become dangling)"
-msgstr ""
+msgstr "   (%s è diventato pendente)"
 
-#: builtin/fetch.c:1084
+#: builtin/fetch.c:1167
 msgid "[deleted]"
 msgstr "[eliminato]"
 
-#: builtin/fetch.c:1085 builtin/remote.c:1036
+#: builtin/fetch.c:1168 builtin/remote.c:1112
 msgid "(none)"
 msgstr "(nessuno)"
 
-#: builtin/fetch.c:1108
+#: builtin/fetch.c:1191
 #, 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:1210
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
-msgstr ""
+msgstr "L'opzione \"%s\" con il valore \"%s\" non è valida per %s"
 
-#: builtin/fetch.c:1130
+#: builtin/fetch.c:1213
 #, 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:1421
+msgid "multiple branches detected, incompatible with --set-upstream"
+msgstr "rilevati branch multipli, stato incompatibile con --set-upstream"
+
+#: builtin/fetch.c:1436
+msgid "not setting upstream for a remote remote-tracking branch"
+msgstr "non imposto l'upstream per un branch remoto che ne traccia uno remoto"
+
+#: builtin/fetch.c:1438
+msgid "not setting upstream for a remote tag"
+msgstr "non imposto l'upstream per un tag remoto"
+
+#: builtin/fetch.c:1440
+msgid "unknown branch type"
+msgstr "tipo branch sconosciuto"
+
+#: builtin/fetch.c:1442
+msgid ""
+"no source branch found.\n"
+"you need to specify exactly one branch with the --set-upstream option."
+msgstr ""
+"nessun branch sorgente trovato.\n"
+"devi specificare esattamente un branch con l'opzione --set-upstream."
+
+#: builtin/fetch.c:1568 builtin/fetch.c:1631
 #, c-format
 msgid "Fetching %s\n"
-msgstr ""
+msgstr "Recupero di %s in corso\n"
 
-#: builtin/fetch.c:1436 builtin/remote.c:100
+#: builtin/fetch.c:1578 builtin/fetch.c:1633 builtin/remote.c:101
 #, c-format
 msgid "Could not fetch %s"
-msgstr ""
+msgstr "Impossibile recuperare %s"
 
-#: builtin/fetch.c:1482
-msgid ""
-"--filter can only be used with the remote configured in extensions."
-"partialClone"
-msgstr ""
+#: builtin/fetch.c:1590
+#, c-format
+msgid "could not fetch '%s' (exit code: %d)\n"
+msgstr "impossibile recuperare '%s' (codice di uscita: %d)\n"
 
-#: builtin/fetch.c:1506
+#: builtin/fetch.c:1693
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
 msgstr ""
-"Nessun repository remoto specificato. Per favore, specifica un URL o\n"
-"il nome di un remote da cui prelevare nuove revisioni."
+"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:1730
 msgid "You need to specify a tag name."
 msgstr "Devi specificare il nome di un tag."
 
-#: builtin/fetch.c:1592
+#: builtin/fetch.c:1780
 msgid "Negative depth in --deepen is not supported"
-msgstr ""
+msgstr "Le profondità negative in --deepen non sono supportate"
 
-#: builtin/fetch.c:1594
-#, fuzzy
+#: builtin/fetch.c:1782
 msgid "--deepen and --depth are mutually exclusive"
-msgstr "-A e -u sono reciprocamente incompatibili"
+msgstr "le opzioni --deepen e --depth sono mutualmente esclusive"
 
-#: builtin/fetch.c:1599
-#, fuzzy
+#: builtin/fetch.c:1787
 msgid "--depth and --unshallow cannot be used together"
-msgstr "-x e -X non possono essere usati insieme"
+msgstr "--depth e --unshallow non possono essere usati insieme."
 
-#: builtin/fetch.c:1601
-#, fuzzy
+#: builtin/fetch.c:1789
 msgid "--unshallow on a complete repository does not make sense"
-msgstr "--name-only non ha senso"
+msgstr "--unshallow su un repository completo non ha senso"
 
-#: builtin/fetch.c:1617
+#: builtin/fetch.c:1805
 msgid "fetch --all does not take a repository argument"
-msgstr "fetch --all non richiede il repository come argomento"
+msgstr "fetch --all non richiede un repository come argomento"
 
-#: builtin/fetch.c:1619
+#: builtin/fetch.c:1807
 msgid "fetch --all does not make sense with refspecs"
-msgstr ""
+msgstr "fetch --all non ha senso con degli specificatori riferimento"
 
-#: builtin/fetch.c:1628
+#: builtin/fetch.c:1816
 #, c-format
 msgid "No such remote or remote group: %s"
-msgstr ""
+msgstr "Remoto o gruppo remoti non esistente: %s"
 
-#: builtin/fetch.c:1635
+#: builtin/fetch.c:1823
 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:1651
+#: builtin/fetch.c:1841
 msgid ""
 "--filter can only be used with the remote configured in extensions."
 "partialclone"
 msgstr ""
+"--filter può essere usato solo con il remoto configurato nelle estensioni."
+"partialclone"
 
 #: builtin/fmt-merge-msg.c:18
 msgid ""
 "git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
 msgstr ""
+"git fmt-merge-msg [-m <messaggio>] [--log[=<n>] | --no-log] [--file <file>]"
 
-#: builtin/fmt-merge-msg.c:672
+#: builtin/fmt-merge-msg.c:671
 msgid "populate log with at most <n> entries from shortlog"
-msgstr ""
+msgstr "popola il registro con al più <n> voci del registro breve"
 
-#: builtin/fmt-merge-msg.c:675
+#: builtin/fmt-merge-msg.c:674
 msgid "alias for --log (deprecated)"
-msgstr ""
+msgstr "alias di --log (deprecato)"
 
-#: builtin/fmt-merge-msg.c:678
+#: builtin/fmt-merge-msg.c:677
 msgid "text"
-msgstr ""
+msgstr "testo"
 
-#: builtin/fmt-merge-msg.c:679
+#: builtin/fmt-merge-msg.c:678
 msgid "use <text> as start of message"
-msgstr ""
+msgstr "usa <testo> come stringa iniziale del messaggio"
 
-#: builtin/fmt-merge-msg.c:680
-#, fuzzy
+#: builtin/fmt-merge-msg.c:679
 msgid "file to read from"
-msgstr "Non è stato possibile leggere da '%s'"
+msgstr "file da cui leggere"
 
 #: builtin/for-each-ref.c:10
-#, fuzzy
 msgid "git for-each-ref [<options>] [<pattern>]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git for-each-ref [<opzioni>] [<pattern>]"
 
 #: builtin/for-each-ref.c:11
 msgid "git for-each-ref [--points-at <object>]"
-msgstr ""
+msgstr "git for-each-ref [--points-at <oggetto>]"
 
 #: builtin/for-each-ref.c:12
 msgid "git for-each-ref [(--merged | --no-merged) [<commit>]]"
-msgstr ""
+msgstr "git for-each-ref [(--merged | --no-merged) [<commit>]]"
 
 #: builtin/for-each-ref.c:13
 msgid "git for-each-ref [--contains [<commit>]] [--no-contains [<commit>]]"
-msgstr ""
+msgstr "git for-each-ref [--contains [<commit>]] [--no-contains [<commit>]]"
 
 #: builtin/for-each-ref.c:28
 msgid "quote placeholders suitably for shells"
 msgstr ""
+"racchiudi i segnaposto fra virgolette in modo da poterli usare in una shell"
 
 #: builtin/for-each-ref.c:30
 msgid "quote placeholders suitably for perl"
 msgstr ""
+"racchiudi i segnaposto fra virgolette in modo da poterli usare con Perl"
 
 #: builtin/for-each-ref.c:32
 msgid "quote placeholders suitably for python"
 msgstr ""
+"racchiudi i segnaposto fra virgolette in modo da poterli usare con Python"
 
 #: builtin/for-each-ref.c:34
 msgid "quote placeholders suitably for Tcl"
-msgstr ""
+msgstr "racchiudi i segnaposto fra virgolette in modo da poterli usare con Tcl"
 
 #: builtin/for-each-ref.c:37
 msgid "show only <n> matched refs"
-msgstr ""
+msgstr "visualizza solo <n> riferimenti corrispondenti"
 
-#: builtin/for-each-ref.c:39 builtin/tag.c:424
+#: builtin/for-each-ref.c:39 builtin/tag.c:439
 msgid "respect format colors"
-msgstr ""
+msgstr "rispetta le stringhe di formato per i colori"
 
-#: builtin/for-each-ref.c:43
-#, fuzzy
+#: builtin/for-each-ref.c:42
 msgid "print only refs which points at the given object"
-msgstr "lo switch 'points-at' richiede un oggetto"
+msgstr "stampa solo i riferimenti che puntano all'oggetto dato"
 
-#: builtin/for-each-ref.c:45
+#: builtin/for-each-ref.c:44
 msgid "print only refs that are merged"
-msgstr ""
+msgstr "stampa solo i riferimenti sottoposti a merge"
 
-#: builtin/for-each-ref.c:46
+#: builtin/for-each-ref.c:45
 msgid "print only refs that are not merged"
-msgstr ""
+msgstr "stampa solo i riferimenti non sottoposti a merge"
 
-#: builtin/for-each-ref.c:47
+#: builtin/for-each-ref.c:46
 msgid "print only refs which contain the commit"
-msgstr ""
+msgstr "stampa solo i riferimenti contenenti il commit"
 
-#: builtin/for-each-ref.c:48
+#: builtin/for-each-ref.c:47
 msgid "print only refs which don't contain the commit"
-msgstr ""
+msgstr "stampa solo i riferimenti che non contengono il commit"
 
-#: builtin/fsck.c:88 builtin/fsck.c:160 builtin/fsck.c:161
-#, fuzzy
+#: builtin/fsck.c:68 builtin/fsck.c:147 builtin/fsck.c:148
 msgid "unknown"
-msgstr "sconosciuto:"
+msgstr "sconosciuto"
 
 #. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
-#: builtin/fsck.c:120 builtin/fsck.c:136
-#, fuzzy, c-format
+#: builtin/fsck.c:100 builtin/fsck.c:120
+#, c-format
 msgid "error in %s %s: %s"
-msgstr "errore nell'oggetto: %s"
+msgstr "errore in %s %s: %s"
 
 #. TRANSLATORS: e.g. warning in tree 01bfda: <more explanation>
-#: builtin/fsck.c:131
-#, fuzzy, c-format
+#: builtin/fsck.c:114
+#, c-format
 msgid "warning in %s %s: %s"
-msgstr "impossibile aprire %s: %s"
+msgstr "avviso in %s %s: %s"
 
-#: builtin/fsck.c:157 builtin/fsck.c:159
+#: builtin/fsck.c:143 builtin/fsck.c:146
 #, c-format
 msgid "broken link from %7s %s"
-msgstr ""
+msgstr "collegamento rotto da %7s %s"
 
-#: builtin/fsck.c:168
-#, fuzzy
+#: builtin/fsck.c:155
 msgid "wrong object type in link"
-msgstr "tipo di oggetto %d sconosciuto"
+msgstr "tipo oggetto errato nel collegamento"
 
-#: builtin/fsck.c:184
+#: builtin/fsck.c:171
 #, c-format
 msgid ""
 "broken link from %7s %s\n"
 "              to %7s %s"
 msgstr ""
+"collegamento rotto da %7s %s\n"
+"                   a %7s %s"
 
-#: builtin/fsck.c:253
-#, fuzzy, c-format
+#: builtin/fsck.c:282
+#, c-format
 msgid "missing %s %s"
-msgstr "oggetto %s mancante per %s"
+msgstr "%s mancante %s"
 
-#: builtin/fsck.c:279
-#, fuzzy, c-format
+#: builtin/fsck.c:309
+#, c-format
 msgid "unreachable %s %s"
-msgstr "ho già %s (%s)"
+msgstr "%s non raggiungibile %s"
 
-#: builtin/fsck.c:298
-#, fuzzy, c-format
+#: builtin/fsck.c:329
+#, c-format
 msgid "dangling %s %s"
-msgstr "Aggiornamento di %s..%s\n"
+msgstr "%s pendente %s"
 
-#: builtin/fsck.c:307
-#, fuzzy
+#: builtin/fsck.c:339
 msgid "could not create lost-found"
-msgstr "impossibile creare il file '%s'"
+msgstr "impossibile creare lost-found"
 
-#: builtin/fsck.c:318
-#, fuzzy, c-format
+#: builtin/fsck.c:350
+#, c-format
 msgid "could not finish '%s'"
-msgstr "impossibile eliminare l'impostazione di '%s'"
+msgstr "impossibile terminare '%s'"
 
-#: builtin/fsck.c:335
-#, fuzzy, c-format
+#: builtin/fsck.c:367
+#, c-format
 msgid "Checking %s"
-msgstr "Ricezione degli oggetti"
+msgstr "Controllo di %s in corso"
 
-#: builtin/fsck.c:353
-#, fuzzy, c-format
+#: builtin/fsck.c:405
+#, c-format
 msgid "Checking connectivity (%d objects)"
-msgstr "Controllo connettività in corso"
+msgstr "Controllo connessione in corso (%d oggetti)"
 
-#: builtin/fsck.c:372
-#, fuzzy, c-format
+#: builtin/fsck.c:424
+#, c-format
 msgid "Checking %s %s"
-msgstr "Controllo della patch %s in corso..."
+msgstr "Controllo di %s in corso %s"
 
-#: builtin/fsck.c:376
+#: builtin/fsck.c:429
 msgid "broken links"
-msgstr ""
+msgstr "collegamenti rotti"
 
-#: builtin/fsck.c:385
-#, fuzzy, c-format
+#: builtin/fsck.c:438
+#, c-format
 msgid "root %s"
-msgstr "radice"
+msgstr "radice %s"
 
-#: builtin/fsck.c:393
+#: builtin/fsck.c:446
 #, c-format
 msgid "tagged %s %s (%s) in %s"
-msgstr ""
+msgstr "eseguito tag di %s %s (%s) in %s"
 
-#: builtin/fsck.c:422
+#: builtin/fsck.c:475
 #, c-format
 msgid "%s: object corrupt or missing"
-msgstr ""
+msgstr "%s: oggetto corrotto o mancante"
 
-#: builtin/fsck.c:447
-#, fuzzy, c-format
+#: builtin/fsck.c:500
+#, c-format
 msgid "%s: invalid reflog entry %s"
-msgstr "riferimento non valido: %s"
+msgstr "%s: voce registro riferimenti non valida: %s"
 
-#: builtin/fsck.c:461
-#, fuzzy, c-format
+#: builtin/fsck.c:514
+#, c-format
 msgid "Checking reflog %s->%s"
-msgstr "Checkout dei file in corso"
+msgstr "Controllo registro riferimenti %s->%s"
 
-#: builtin/fsck.c:495
-#, fuzzy, c-format
+#: builtin/fsck.c:548
+#, c-format
 msgid "%s: invalid sha1 pointer %s"
-msgstr "riga shallow non valida: '%s'"
+msgstr "%s: puntatore SHA1 non valido: %s"
 
-#: builtin/fsck.c:502
-#, fuzzy, c-format
+#: builtin/fsck.c:555
+#, c-format
 msgid "%s: not a commit"
-msgstr "%s %s non è un commit!"
+msgstr "%s: non è un commit"
 
-#: builtin/fsck.c:557
-#, fuzzy
+#: builtin/fsck.c:609
 msgid "notice: No default references"
-msgstr "impossibile eliminare i riferimenti: %s"
+msgstr "avviso: nessun riferimento predefinito"
 
-#: builtin/fsck.c:572
-#, fuzzy, c-format
+#: builtin/fsck.c:624
+#, c-format
 msgid "%s: object corrupt or missing: %s"
-msgstr "oggetto non trovato: %s"
+msgstr "%s: oggetto corrotto o mancante: %s"
 
-#: builtin/fsck.c:585
-#, fuzzy, c-format
+#: builtin/fsck.c:637
+#, c-format
 msgid "%s: object could not be parsed: %s"
-msgstr "impossibile analizzare %s"
+msgstr "%s: impossibile analizzare l'oggetto: %s"
 
-#: builtin/fsck.c:605
-#, fuzzy, c-format
+#: builtin/fsck.c:657
+#, c-format
 msgid "bad sha1 file: %s"
-msgstr "riga shallow non valida: '%s'"
+msgstr "file SHA1 non valido: %s"
 
-#: builtin/fsck.c:620
-#, fuzzy
+#: builtin/fsck.c:672
 msgid "Checking object directory"
-msgstr "Due directory di output?"
+msgstr "Controllo directory oggetti in corso"
 
-#: builtin/fsck.c:623
-#, fuzzy
+#: builtin/fsck.c:675
 msgid "Checking object directories"
-msgstr "Due directory di output?"
+msgstr "Controllo directory oggetti in corso"
 
-#: builtin/fsck.c:638
-#, fuzzy, c-format
+#: builtin/fsck.c:690
+#, c-format
 msgid "Checking %s link"
-msgstr "Checkout dei file in corso"
+msgstr "Controllo collegamento %s"
 
-#: builtin/fsck.c:643 builtin/index-pack.c:833
+#: builtin/fsck.c:695 builtin/index-pack.c:843
 #, c-format
 msgid "invalid %s"
 msgstr "%s non valido"
 
-#: builtin/fsck.c:650
-#, fuzzy, c-format
+#: builtin/fsck.c:702
+#, c-format
 msgid "%s points to something strange (%s)"
-msgstr "%s - non è qualcosa per cui possiamo eseguire il merge"
+msgstr "%s punta a qualcosa di strano (%s)"
 
-#: builtin/fsck.c:656
+#: builtin/fsck.c:708
 #, c-format
 msgid "%s: detached HEAD points at nothing"
-msgstr ""
+msgstr "%s: l'HEAD scollegato non punta a niente"
 
-#: builtin/fsck.c:660
+#: builtin/fsck.c:712
 #, c-format
 msgid "notice: %s points to an unborn branch (%s)"
-msgstr ""
+msgstr "avviso: %s punta a un branch non nato (%s)"
 
-#: builtin/fsck.c:672
-#, fuzzy
+#: builtin/fsck.c:724
 msgid "Checking cache tree"
-msgstr "Controllo della patch %s in corso..."
+msgstr "Controllo cache albero in corso"
 
-#: builtin/fsck.c:677
-#, fuzzy, c-format
+#: builtin/fsck.c:729
+#, c-format
 msgid "%s: invalid sha1 pointer in cache-tree"
-msgstr "Impossibile aggiornare l'albero cache principale"
+msgstr "%s: puntatore SHA1 non valido nella cache alberi"
 
-#: builtin/fsck.c:688
+#: builtin/fsck.c:738
 msgid "non-tree in cache-tree"
-msgstr ""
+msgstr "oggetto non albero nella cache alberi"
 
-#: builtin/fsck.c:719
-#, fuzzy
+#: builtin/fsck.c:769
 msgid "git fsck [<options>] [<object>...]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git fsck [<opzioni>] [<oggetto>...]"
 
-#: builtin/fsck.c:725
+#: builtin/fsck.c:775
 msgid "show unreachable objects"
-msgstr ""
+msgstr "visualizza oggetti non raggiungibili"
 
-#: builtin/fsck.c:726
-#, fuzzy
+#: builtin/fsck.c:776
 msgid "show dangling objects"
-msgstr "Indicizzazione degli oggetti"
+msgstr "visualizza oggetti pendenti"
 
-#: builtin/fsck.c:727
+#: builtin/fsck.c:777
 msgid "report tags"
-msgstr ""
+msgstr "segnala i tag"
 
-#: builtin/fsck.c:728
+#: builtin/fsck.c:778
 msgid "report root nodes"
-msgstr ""
+msgstr "segnala i nodi radice"
 
-#: builtin/fsck.c:729
+#: builtin/fsck.c:779
 msgid "make index objects head nodes"
-msgstr ""
+msgstr "rendi gli oggetti indice nodi head"
 
-#: builtin/fsck.c:730
+#: builtin/fsck.c:780
 msgid "make reflogs head nodes (default)"
-msgstr ""
+msgstr "rendi i registri dei riferimenti nodi head (impostazione predefinita)"
 
-#: builtin/fsck.c:731
+#: builtin/fsck.c:781
 msgid "also consider packs and alternate objects"
-msgstr ""
+msgstr "considera anche i pack e gli oggetti alternativi"
 
-#: builtin/fsck.c:732
+#: builtin/fsck.c:782
 msgid "check only connectivity"
-msgstr ""
+msgstr "controlla solo la connessione"
 
-#: builtin/fsck.c:733
+#: builtin/fsck.c:783
 msgid "enable more strict checking"
-msgstr ""
+msgstr "abilita controlli più restrittivi"
 
-#: builtin/fsck.c:735
+#: builtin/fsck.c:785
 msgid "write dangling objects in .git/lost-found"
-msgstr ""
+msgstr "scrivi oggetti pendenti in .git/lost-found"
 
-#: builtin/fsck.c:736 builtin/prune.c:110
+#: builtin/fsck.c:786 builtin/prune.c:132
 msgid "show progress"
-msgstr ""
+msgstr "visualizza l'avanzamento"
 
-#: builtin/fsck.c:737
-#, fuzzy
+#: builtin/fsck.c:787
 msgid "show verbose names for reachable objects"
-msgstr "Mostra vari tipi di oggetti"
+msgstr "visualizza nomi dettagliati per gli oggetti raggiungibili"
 
-#: builtin/fsck.c:797
-#, fuzzy
+#: builtin/fsck.c:846 builtin/index-pack.c:225
 msgid "Checking objects"
-msgstr "Ricezione degli oggetti"
+msgstr "Controllo oggetti in corso"
 
-#: builtin/fsck.c:825
-#, fuzzy, c-format
+#: builtin/fsck.c:874
+#, c-format
 msgid "%s: object missing"
-msgstr "visualizza dimensioni oggetto"
+msgstr "%s: oggetto mancante"
 
-#: builtin/fsck.c:837
-#, fuzzy, c-format
+#: builtin/fsck.c:885
+#, c-format
 msgid "invalid parameter: expected sha1, got '%s'"
-msgstr "errore protocollo: atteso SHA1 shallow, ricevuto '%s'"
+msgstr "parametro non valido: atteso SHA1, presente '%s'"
 
-#: builtin/gc.c:34
-#, fuzzy
+#: builtin/gc.c:35
 msgid "git gc [<options>]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git gc [<opzioni>]"
 
 #: builtin/gc.c:90
-#, fuzzy, c-format
+#, c-format
 msgid "Failed to fstat %s: %s"
-msgstr "stat di %s non riuscito\n"
+msgstr "fstat di %s non riuscito: %s"
+
+#: builtin/gc.c:126
+#, c-format
+msgid "failed to parse '%s' value '%s'"
+msgstr "analisi dell'opzione '%s' con valore '%s' non riuscita"
 
-#: builtin/gc.c:461 builtin/init-db.c:55
+#: builtin/gc.c:475 builtin/init-db.c:55
 #, c-format
 msgid "cannot stat '%s'"
 msgstr "impossibile eseguire lo stat di '%s'"
 
-#: builtin/gc.c:470 builtin/notes.c:240 builtin/tag.c:510
+#: builtin/gc.c:484 builtin/notes.c:240 builtin/tag.c:529
 #, c-format
 msgid "cannot read '%s'"
 msgstr "impossibile leggere '%s'"
 
-#: builtin/gc.c:477
+#: builtin/gc.c:491
 #, c-format
 msgid ""
 "The last gc run reported the following. Please correct the root cause\n"
@@ -12324,66 +14661,81 @@ msgid ""
 "\n"
 "%s"
 msgstr ""
+"L'ultima esecuzione di gc ha segnalato quanto segue. Correggi la causa\n"
+"alla radice ed elimina %s.\n"
+"L'operazione di pulizia automatica non sarà eseguita fino all'eliminazione\n"
+"del file.\n"
+"\n"
+"%s"
 
-#: builtin/gc.c:519
+#: builtin/gc.c:539
 msgid "prune unreferenced objects"
-msgstr ""
+msgstr "elimina oggetti non referenziati"
 
-#: builtin/gc.c:521
+#: builtin/gc.c:541
 msgid "be more thorough (increased runtime)"
-msgstr ""
+msgstr "sii più accurato (tempi di esecuzione maggiori)"
 
-#: builtin/gc.c:522
+#: builtin/gc.c:542
 msgid "enable auto-gc mode"
-msgstr ""
+msgstr "abilita modalità garbage collector automatica"
 
-#: builtin/gc.c:525
+#: builtin/gc.c:545
 msgid "force running gc even if there may be another gc running"
 msgstr ""
+"forza l'esecuzione del garbage collector anche nel caso in cui ve ne "
+"potrebbe essere un altro in esecuzione"
 
-#: builtin/gc.c:528
+#: builtin/gc.c:548
 msgid "repack all other packs except the largest pack"
 msgstr ""
+"esegui il repack di tutti gli altri pack ad eccezione di quello più grande"
 
-#: builtin/gc.c:545
-#, fuzzy, c-format
+#: builtin/gc.c:565
+#, c-format
 msgid "failed to parse gc.logexpiry value %s"
-msgstr "rimozione di %s non riuscita"
+msgstr "analisi del valore %s di gc.logexpiry non riuscita"
 
-#: builtin/gc.c:556
-#, fuzzy, c-format
+#: builtin/gc.c:576
+#, c-format
 msgid "failed to parse prune expiry value %s"
-msgstr "rimozione di %s non riuscita"
+msgstr "analisi del valore %s per la scadenza delle eliminazioni non riuscita"
 
-#: builtin/gc.c:576
+#: builtin/gc.c:596
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
+"Comprimo il repository in background per ottenere le migliori prestazioni.\n"
 
-#: builtin/gc.c:578
+#: builtin/gc.c:598
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
-msgstr ""
+msgstr "Comprimo il repository per ottenere le migliori prestazioni.\n"
 
-#: builtin/gc.c:579
+#: builtin/gc.c:599
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
-msgstr ""
+msgstr "Vedi \"git help gc\" per le operazioni di manutenzione manuali.\n"
 
-#: builtin/gc.c:619
+#: builtin/gc.c:639
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
 msgstr ""
+"gc è già in esecuzione sul computer '%s' con PID %<PRIuMAX> (usa --force se "
+"non lo è)"
 
-#: builtin/gc.c:672
+#: builtin/gc.c:694
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
+"Ci sono troppi oggetti sparsi non raggiungibili; esegui 'git prune' per "
+"eliminarli."
 
-#: builtin/grep.c:29
+#: builtin/grep.c:30
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr ""
+"git grep [<opzioni>] [-e] <pattern> [<revisione>...] [[--] <percorso>...]"
 
 #: builtin/grep.c:225
 #, c-format
@@ -12393,373 +14745,371 @@ msgstr "grep: creazione del thread non riuscita: %s"
 #: builtin/grep.c:279
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
-msgstr ""
+msgstr "specificato numero non valido di thread (%d) per %s"
 
 #. TRANSLATORS: %s is the configuration
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:287 builtin/index-pack.c:1506 builtin/index-pack.c:1697
-#: builtin/pack-objects.c:2717
+#: builtin/grep.c:287 builtin/index-pack.c:1538 builtin/index-pack.c:1731
+#: builtin/pack-objects.c:2854
 #, c-format
 msgid "no threads support, ignoring %s"
-msgstr ""
+msgstr "non vi è supporto per i thread, ignoro %s"
 
-#: builtin/grep.c:466 builtin/grep.c:590 builtin/grep.c:631
+#: builtin/grep.c:453 builtin/grep.c:578 builtin/grep.c:618
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "impossibile leggere il tree (%s)"
 
-#: builtin/grep.c:646
+#: builtin/grep.c:633
 #, c-format
 msgid "unable to grep from object of type %s"
-msgstr ""
+msgstr "impossibile eseguire grep su un oggetto di tipo %s"
 
-#: builtin/grep.c:712
+#: builtin/grep.c:704
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "switch '%c' richiede un valore numerico"
 
-#: builtin/grep.c:811
+#: builtin/grep.c:803
 msgid "search in index instead of in the work tree"
-msgstr ""
+msgstr "cerca nell'index anziché nell'albero di lavoro"
 
-#: builtin/grep.c:813
+#: builtin/grep.c:805
 msgid "find in contents not managed by git"
-msgstr ""
+msgstr "la ricerca nei contenuti non è gestita da Git"
 
-#: builtin/grep.c:815
+#: builtin/grep.c:807
 msgid "search in both tracked and untracked files"
-msgstr ""
+msgstr "cerca sia nei file tracciati sia in quelli non tracciati"
 
-#: builtin/grep.c:817
+#: builtin/grep.c:809
 msgid "ignore files specified via '.gitignore'"
-msgstr ""
+msgstr "ignora i file specificati in '.gitignore'"
 
-#: builtin/grep.c:819
+#: builtin/grep.c:811
 msgid "recursively search in each submodule"
-msgstr ""
+msgstr "cerca ricorsivamente in ogni sottomodulo"
 
-#: builtin/grep.c:822
+#: builtin/grep.c:814
 msgid "show non-matching lines"
-msgstr ""
+msgstr "visualizza le righe non corrispondenti"
 
-#: builtin/grep.c:824
+#: builtin/grep.c:816
 msgid "case insensitive matching"
-msgstr ""
+msgstr "ricerca corrispondenze senza differenze maiuscole/minuscole"
 
-#: builtin/grep.c:826
+#: builtin/grep.c:818
 msgid "match patterns only at word boundaries"
-msgstr ""
+msgstr "cerca corrispondenze ai pattern solo a inizio/fine parola"
 
-#: builtin/grep.c:828
+#: builtin/grep.c:820
 msgid "process binary files as text"
-msgstr ""
+msgstr "elabora i file binari come testuali"
 
-#: builtin/grep.c:830
+#: builtin/grep.c:822
 msgid "don't match patterns in binary files"
-msgstr ""
+msgstr "non cercare corrispondenze ai pattern nei file binari"
 
-#: builtin/grep.c:833
+#: builtin/grep.c:825
 msgid "process binary files with textconv filters"
-msgstr ""
+msgstr "elabora i file binari con filtri di conversione in testo"
 
-#: builtin/grep.c:835
+#: builtin/grep.c:827
 msgid "search in subdirectories (default)"
-msgstr ""
+msgstr "cerca nelle sottodirectory (impostazione predefinita)"
 
-#: builtin/grep.c:837
+#: builtin/grep.c:829
 msgid "descend at most <depth> levels"
-msgstr ""
+msgstr "scendi al più di <profondità> livelli"
 
-#: builtin/grep.c:841
+#: builtin/grep.c:833
 msgid "use extended POSIX regular expressions"
-msgstr ""
+msgstr "usa espressioni regolari POSIX estese"
 
-#: builtin/grep.c:844
+#: builtin/grep.c:836
 msgid "use basic POSIX regular expressions (default)"
-msgstr ""
+msgstr "usa espressioni regolari POSIX di base (impostazione predefinita)"
 
-#: builtin/grep.c:847
+#: builtin/grep.c:839
 msgid "interpret patterns as fixed strings"
-msgstr ""
+msgstr "interpreta i pattern come stringhe fisse"
 
-#: builtin/grep.c:850
+#: builtin/grep.c:842
 msgid "use Perl-compatible regular expressions"
-msgstr ""
+msgstr "usa espressioni regolari compatibili con Perl"
 
-#: builtin/grep.c:853
+#: builtin/grep.c:845
 msgid "show line numbers"
-msgstr ""
+msgstr "visualizza numeri di riga"
 
-#: builtin/grep.c:854
+#: builtin/grep.c:846
 msgid "show column number of first match"
-msgstr ""
+msgstr "visualizza il numero di colonna della prima corrispondenza"
 
-#: builtin/grep.c:855
+#: builtin/grep.c:847
 msgid "don't show filenames"
-msgstr ""
+msgstr "non visualizzare i nomi file"
 
-#: builtin/grep.c:856
-#, fuzzy
+#: builtin/grep.c:848
 msgid "show filenames"
-msgstr "%s file:"
+msgstr "visualizza i nomi file"
 
-#: builtin/grep.c:858
+#: builtin/grep.c:850
 msgid "show filenames relative to top directory"
-msgstr ""
+msgstr "visualizza i nomi file relativi alla directory di primo livello"
 
-#: builtin/grep.c:860
+#: builtin/grep.c:852
 msgid "show only filenames instead of matching lines"
-msgstr ""
+msgstr "visualizza solo i nomi file anziché le righe corrispondenti"
 
-#: builtin/grep.c:862
+#: builtin/grep.c:854
 msgid "synonym for --files-with-matches"
-msgstr ""
+msgstr "sinonimo di --files-with-matches"
 
-#: builtin/grep.c:865
+#: builtin/grep.c:857
 msgid "show only the names of files without match"
-msgstr ""
+msgstr "visualizza solo i nomi dei file non corrispondenti"
 
-#: builtin/grep.c:867
-#, fuzzy
+#: builtin/grep.c:859
 msgid "print NUL after filenames"
-msgstr "antepone <root> a tutti i nomi file"
+msgstr "stampa NUL dopo i nomi file"
 
-#: builtin/grep.c:870
+#: builtin/grep.c:862
 msgid "show only matching parts of a line"
-msgstr ""
+msgstr "visualizza solo le parti corrispondenti di una riga"
 
-#: builtin/grep.c:872
+#: builtin/grep.c:864
 msgid "show the number of matches instead of matching lines"
-msgstr ""
+msgstr "visualizza il numero di corrispondenze anziché le righe corrispondenti"
 
-#: builtin/grep.c:873
+#: builtin/grep.c:865
 msgid "highlight matches"
-msgstr ""
+msgstr "evidenzia corrispondenze"
 
-#: builtin/grep.c:875
+#: builtin/grep.c:867
 msgid "print empty line between matches from different files"
-msgstr ""
+msgstr "stampa una riga vuota fra le corrispondenze in file differenti"
 
-#: builtin/grep.c:877
+#: builtin/grep.c:869
 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:872
 msgid "show <n> context lines before and after matches"
-msgstr ""
+msgstr "visualizza <n> righe di contesto prima e dopo le corrispondenze"
 
-#: builtin/grep.c:883
+#: builtin/grep.c:875
 msgid "show <n> context lines before matches"
-msgstr ""
+msgstr "visualizza <n> righe di contesto prima delle corrispondenze"
 
-#: builtin/grep.c:885
+#: builtin/grep.c:877
 msgid "show <n> context lines after matches"
-msgstr ""
+msgstr "visualizza <n> righe di contesto dopo le corrispondenze"
 
-#: builtin/grep.c:887
+#: builtin/grep.c:879
 msgid "use <n> worker threads"
-msgstr ""
+msgstr "usa <n> thread di lavoro"
 
-#: builtin/grep.c:888
+#: builtin/grep.c:880
 msgid "shortcut for -C NUM"
-msgstr ""
+msgstr "scorciatoia per -C NUM"
 
-#: builtin/grep.c:891
+#: builtin/grep.c:883
 msgid "show a line with the function name before matches"
-msgstr ""
+msgstr "visualizza una riga con il nome funzione prima delle corrispondenze"
 
-#: builtin/grep.c:893
+#: builtin/grep.c:885
 msgid "show the surrounding function"
-msgstr ""
+msgstr "visualizza la funzione circostante"
 
-#: builtin/grep.c:896
+#: builtin/grep.c:888
 msgid "read patterns from file"
-msgstr ""
+msgstr "leggi le corrispondenze da un file"
 
-#: builtin/grep.c:898
+#: builtin/grep.c:890
 msgid "match <pattern>"
-msgstr ""
+msgstr "cerca corrispondenze con <pattern>"
 
-#: builtin/grep.c:900
+#: builtin/grep.c:892
 msgid "combine patterns specified with -e"
-msgstr ""
+msgstr "combina i pattern specificati con -e"
 
-#: builtin/grep.c:912
+#: builtin/grep.c:904
 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:906
 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:908
 msgid "show parse tree for grep expression"
-msgstr ""
+msgstr "visualizza l'albero di analisi per l'espressione grep"
 
-#: builtin/grep.c:920
+#: builtin/grep.c:912
 msgid "pager"
-msgstr ""
+msgstr "pager"
 
-#: builtin/grep.c:920
+#: builtin/grep.c:912
 msgid "show matching files in the pager"
-msgstr ""
+msgstr "visualizza i file corrispondenti nel pager"
 
-#: builtin/grep.c:924
+#: builtin/grep.c:916
 msgid "allow calling of grep(1) (ignored by this build)"
-msgstr ""
+msgstr "consenti"
 
-#: builtin/grep.c:988
-#, fuzzy
+#: builtin/grep.c:983
 msgid "no pattern given"
-msgstr "nessun modello specificato."
+msgstr "nessun pattern specificato"
 
-#: builtin/grep.c:1024
-#, fuzzy
+#: builtin/grep.c:1019
 msgid "--no-index or --untracked cannot be used with revs"
-msgstr "--no-index o --untracked non possono essere usate con le revisioni."
+msgstr "--no-index o --untracked non possono essere usate con le revisioni"
 
-#: builtin/grep.c:1032
-#, fuzzy, c-format
+#: builtin/grep.c:1027
+#, c-format
 msgid "unable to resolve revision: %s"
-msgstr "impossibile spostare %s in %s"
+msgstr "impossibile risolvere la revisione %s"
 
-#: builtin/grep.c:1063
+#: builtin/grep.c:1057
+msgid "--untracked not supported with --recurse-submodules"
+msgstr "l'opzione --untracked non è supportata con --recurse-submodules"
+
+#: builtin/grep.c:1061
 msgid "invalid option combination, ignoring --threads"
-msgstr ""
+msgstr "combinazione di opzioni non valida, ignoro --threads"
 
-#: builtin/grep.c:1066 builtin/pack-objects.c:3400
+#: builtin/grep.c:1064 builtin/pack-objects.c:3547
 msgid "no threads support, ignoring --threads"
-msgstr ""
+msgstr "non vi è supporto per i thread, ignoro --threads"
 
-#: builtin/grep.c:1069 builtin/index-pack.c:1503 builtin/pack-objects.c:2714
+#: builtin/grep.c:1067 builtin/index-pack.c:1535 builtin/pack-objects.c:2851
 #, c-format
 msgid "invalid number of threads specified (%d)"
-msgstr ""
+msgstr "specificato numero non valido di thread (%d)"
 
-#: builtin/grep.c:1092
+#: builtin/grep.c:1101
 msgid "--open-files-in-pager only works on the worktree"
-msgstr ""
-
-#: builtin/grep.c:1115
-msgid "option not supported with --recurse-submodules"
-msgstr ""
+msgstr "--open-files-in-pager funziona solo sull'albero di lavoro"
 
-#: builtin/grep.c:1121
-#, fuzzy
+#: builtin/grep.c:1127
 msgid "--cached or --untracked cannot be used with --no-index"
-msgstr "--cached o --untracked non può essere usato con --no-index."
+msgstr "--cached o --untracked non possono essere usate con --no-index"
 
-#: builtin/grep.c:1127
+#: builtin/grep.c:1133
 msgid "--[no-]exclude-standard cannot be used for tracked contents"
-msgstr ""
+msgstr "--[no-]exclude-standard non può essere usata per i contenuti tracciati"
 
-#: builtin/grep.c:1135
+#: builtin/grep.c:1141
 msgid "both --cached and trees are given"
-msgstr ""
+msgstr "sono specificati sia --cached sia degli alberi"
 
 #: builtin/hash-object.c:85
 msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
 msgstr ""
+"git hash-object [-t <tipo>] [-w] [--path=<file> | --no-filters] [--stdin] "
+"[--] <file>..."
 
 #: builtin/hash-object.c:86
 msgid "git hash-object  --stdin-paths"
-msgstr ""
-
-#: builtin/hash-object.c:98
-msgid "type"
-msgstr ""
+msgstr "git hash-object  --stdin-paths"
 
 #: builtin/hash-object.c:98
-#, fuzzy
 msgid "object type"
-msgstr "tipo di oggetto errato."
+msgstr "tipo oggetto"
 
 #: builtin/hash-object.c:99
 msgid "write the object into the object database"
-msgstr ""
+msgstr "scrivi l'oggetto nel database oggetti"
 
 #: builtin/hash-object.c:101
 msgid "read the object from stdin"
-msgstr ""
+msgstr "leggi l'oggetto dallo standard input"
 
 #: builtin/hash-object.c:103
 msgid "store file as is without filters"
-msgstr ""
+msgstr "salva il file così com'è senza filtri"
 
 #: builtin/hash-object.c:104
 msgid ""
 "just hash any random garbage to create corrupt objects for debugging Git"
 msgstr ""
+"esegui semplicemente l'hash di dati inutili per creare oggetti corrotti al "
+"fine di eseguire il debug di Git"
 
 #: builtin/hash-object.c:105
 msgid "process file as it were from this path"
-msgstr ""
+msgstr "elabora i file come se fossero in questo percorso"
 
 #: builtin/help.c:46
-#, fuzzy
 msgid "print all available commands"
-msgstr "comandi git disponibili in '%s'"
+msgstr "stampa tutti i comandi disponibili"
 
 #: builtin/help.c:47
 msgid "exclude guides"
-msgstr ""
+msgstr "escludi le guide"
 
 #: builtin/help.c:48
 msgid "print list of useful guides"
-msgstr ""
+msgstr "stampa un elenco di guide utili"
 
 #: builtin/help.c:49
 msgid "print all configuration variable names"
-msgstr ""
+msgstr "stampa i nomi di tutte le variabili di configurazione"
 
 #: builtin/help.c:51
 msgid "show man page"
-msgstr ""
+msgstr "visualizza la pagina man"
 
 #: builtin/help.c:52
 msgid "show manual in web browser"
-msgstr ""
+msgstr "visualizza il manuale nel browser Web"
 
 #: builtin/help.c:54
 msgid "show info page"
-msgstr ""
+msgstr "visualizza la pagina info"
 
 #: builtin/help.c:56
 msgid "print command description"
-msgstr ""
+msgstr "stampa la descrizione del comando"
 
 #: builtin/help.c:61
 msgid "git help [--all] [--guides] [--man | --web | --info] [<command>]"
-msgstr ""
+msgstr "git help [--all] [--guides] [--man | --web | --info] [<comando>]"
 
-#: builtin/help.c:73
+#: builtin/help.c:77
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr "formato di aiuto '%s' non riconosciuto"
 
-#: builtin/help.c:100
+#: builtin/help.c:104
 msgid "Failed to start emacsclient."
 msgstr "Esecuzione di emacsclient non riuscita."
 
-#: builtin/help.c:113
+#: builtin/help.c:117
 msgid "Failed to parse emacsclient version."
 msgstr "Verifica della versione di emacsclient non riuscita."
 
-#: builtin/help.c:121
+#: builtin/help.c:125
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr "la versione '%d' di emacsclient è troppo vecchia (<22)."
 
-#: builtin/help.c:139 builtin/help.c:161 builtin/help.c:171 builtin/help.c:179
-#, fuzzy, c-format
+#: builtin/help.c:143 builtin/help.c:165 builtin/help.c:175 builtin/help.c:183
+#, c-format
 msgid "failed to exec '%s'"
-msgstr "esecuzione di '%s' non riuscita: %s"
+msgstr "esecuzione di '%s' non riuscita"
 
-#: builtin/help.c:217
+#: builtin/help.c:221
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -12768,7 +15118,7 @@ msgstr ""
 "'%s': path ad un visualizzatore man pages non supportato.\n"
 "Usa invece 'man.<tool>.cmd'."
 
-#: builtin/help.c:229
+#: builtin/help.c:233
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -12777,407 +15127,396 @@ msgstr ""
 "'%s': comando per visualizzatore man pages supportato.\n"
 "Per favore usa 'man.<tool>.path' invece."
 
-#: builtin/help.c:346
+#: builtin/help.c:350
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "'%s': visualizzatore man sconosciuto."
 
-#: builtin/help.c:363
+#: builtin/help.c:367
 msgid "no man viewer handled the request"
 msgstr "nessun visualizzatore man ha gestito la richiesta"
 
-#: builtin/help.c:371
+#: builtin/help.c:375
 msgid "no info viewer handled the request"
 msgstr "nessun visualizzatore info ha gestito la richiesta"
 
-#: builtin/help.c:430 builtin/help.c:441 git.c:323
-#, fuzzy, c-format
+#: builtin/help.c:434 builtin/help.c:445 git.c:336
+#, c-format
 msgid "'%s' is aliased to '%s'"
-msgstr "'git %s è un alias di '%s'"
+msgstr "'%s' è un alias di '%s'"
 
-#: builtin/help.c:444 git.c:347
-#, fuzzy, c-format
+#: builtin/help.c:448 git.c:365
+#, c-format
 msgid "bad alias.%s string: %s"
-msgstr "Stringa branch.%s.mergeoptions errata: %s"
+msgstr "stringa alias.%s non valida: %s"
 
-#: builtin/help.c:473 builtin/help.c:503
+#: builtin/help.c:477 builtin/help.c:507
 #, c-format
 msgid "usage: %s%s"
 msgstr "uso: %s%s"
 
-#: builtin/help.c:487
-#, fuzzy
+#: builtin/help.c:491
 msgid "'git help config' for more information"
-msgstr ""
-"Vedi 'git help <comando> per maggiori informazioni su un comando specifico."
+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 ""
+msgstr "tipo oggetto non corrispondente in %s"
 
-#: builtin/index-pack.c:204
-#, fuzzy, c-format
+#: builtin/index-pack.c:205
+#, c-format
 msgid "did not receive expected object %s"
-msgstr "Non è stato possibile leggere l'oggetto %s"
+msgstr "non si è ricevuto l'oggetto atteso %s"
 
-#: builtin/index-pack.c:207
-#, fuzzy, c-format
+#: builtin/index-pack.c:208
+#, c-format
 msgid "object %s: expected type %s, found %s"
-msgstr "oggetto %s non trovato"
+msgstr "oggetto %s: atteso tipo %s, trovato %s"
 
-#: builtin/index-pack.c:249
+#: builtin/index-pack.c:258
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "impossibile riempire %d byte"
+msgstr[1] "impossibile riempire %d byte"
 
-#: builtin/index-pack.c:259
+#: builtin/index-pack.c:268
 msgid "early EOF"
 msgstr "EOF prematuro"
 
-#: builtin/index-pack.c:260
+#: builtin/index-pack.c:269
 msgid "read error on input"
 msgstr "errore di lettura in input"
 
-#: builtin/index-pack.c:272
+#: builtin/index-pack.c:281
 msgid "used more bytes than were available"
 msgstr "usati più byte di quelli disponibili"
 
-#: builtin/index-pack.c:279 builtin/pack-objects.c:599
+#: builtin/index-pack.c:288 builtin/pack-objects.c:606
 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:282 builtin/unpack-objects.c:94
+#: builtin/index-pack.c:291 builtin/unpack-objects.c:95
 msgid "pack exceeds maximum allowed size"
-msgstr ""
-
-#: builtin/index-pack.c:297 builtin/repack.c:250
-#, c-format
-msgid "unable to create '%s'"
-msgstr "impossibile creare '%s'"
+msgstr "il pack supera la dimensione massima consentita"
 
-#: builtin/index-pack.c:303
+#: builtin/index-pack.c:312
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "impossibile aprire il file pack '%s'"
 
-#: builtin/index-pack.c:317
+#: builtin/index-pack.c:326
 msgid "pack signature mismatch"
 msgstr "la firma del pack non coincide"
 
-#: builtin/index-pack.c:319
+#: builtin/index-pack.c:328
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
-msgstr ""
+msgstr "versione pack %<PRIu32> non supportata"
 
-#: builtin/index-pack.c:337
+#: builtin/index-pack.c:346
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
-msgstr ""
+msgstr "il pack ha un oggetto danneggiato all'offset %<PRIuMAX>: %s"
 
-#: builtin/index-pack.c:457
+#: builtin/index-pack.c:466
 #, c-format
 msgid "inflate returned %d"
-msgstr ""
+msgstr "inflate ha restituito il codice %d"
 
-#: builtin/index-pack.c:506
+#: builtin/index-pack.c:515
 msgid "offset value overflow for delta base object"
-msgstr ""
+msgstr "overflow del valore dell'offset base del delta"
 
-#: builtin/index-pack.c:514
+#: builtin/index-pack.c:523
 msgid "delta base offset is out of bound"
-msgstr ""
+msgstr "l'offset base del delta è fuori dall'intervallo consentito"
 
-#: builtin/index-pack.c:522
+#: builtin/index-pack.c:531
 #, c-format
 msgid "unknown object type %d"
-msgstr "tipo di oggetto %d sconosciuto"
+msgstr "tipo oggetto %d sconosciuto"
 
-#: builtin/index-pack.c:553
+#: builtin/index-pack.c:562
 msgid "cannot pread pack file"
-msgstr ""
+msgstr "impossibile eseguire pread sul file pack"
 
-#: builtin/index-pack.c:555
+#: 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] ""
-msgstr[1] ""
+msgstr[0] "fine del file pack prematura, %<PRIuMAX> byte mancante"
+msgstr[1] "fine del file pack prematura, %<PRIuMAX> byte mancanti"
 
-#: builtin/index-pack.c:581
+#: builtin/index-pack.c:590
 msgid "serious inflate inconsistency"
-msgstr ""
+msgstr "inconsistenza grave di inflate"
 
-#: builtin/index-pack.c:726 builtin/index-pack.c:732 builtin/index-pack.c:755
-#: builtin/index-pack.c:794 builtin/index-pack.c:803
+#: builtin/index-pack.c:735 builtin/index-pack.c:741 builtin/index-pack.c:765
+#: builtin/index-pack.c:804 builtin/index-pack.c:813
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "TROVATA COLLISIONE SHA1 CON %s !"
 
-#: builtin/index-pack.c:729 builtin/pack-objects.c:152
-#: builtin/pack-objects.c:212 builtin/pack-objects.c:306
-#, fuzzy, c-format
+#: builtin/index-pack.c:738 builtin/pack-objects.c:158
+#: builtin/pack-objects.c:218 builtin/pack-objects.c:313
+#, c-format
 msgid "unable to read %s"
-msgstr "non è possibile scrivere %s"
+msgstr "impossibile leggere %s"
 
-#: builtin/index-pack.c:792
-#, fuzzy, c-format
+#: builtin/index-pack.c:802
+#, c-format
 msgid "cannot read existing object info %s"
-msgstr "non è possibile leggere l'oggetto %s esistente"
+msgstr "impossibile leggere le informazioni sull'oggetto esistente: %s"
 
-#: builtin/index-pack.c:800
+#: builtin/index-pack.c:810
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "non è possibile leggere l'oggetto %s esistente"
 
-#: builtin/index-pack.c:814
+#: builtin/index-pack.c:824
 #, c-format
 msgid "invalid blob object %s"
 msgstr "oggetto blob %s non valido"
 
-#: builtin/index-pack.c:817 builtin/index-pack.c:836
-#, fuzzy
+#: builtin/index-pack.c:827 builtin/index-pack.c:846
 msgid "fsck error in packed object"
-msgstr "Errore nell'oggetto"
+msgstr "errore fsck nell'oggetto sottoposto a pack"
 
-#: builtin/index-pack.c:838
+#: builtin/index-pack.c:848
 #, 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:910 builtin/index-pack.c:941
+#: builtin/index-pack.c:920 builtin/index-pack.c:951
 msgid "failed to apply delta"
 msgstr "applicazione del delta non riuscita"
 
-#: builtin/index-pack.c:1109
+#: builtin/index-pack.c:1121
 msgid "Receiving objects"
 msgstr "Ricezione degli oggetti"
 
-#: builtin/index-pack.c:1109
+#: builtin/index-pack.c:1121
 msgid "Indexing objects"
 msgstr "Indicizzazione degli oggetti"
 
-#: builtin/index-pack.c:1143
+#: builtin/index-pack.c:1155
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "il pack è corrotto (SHA1 non corrisponde)"
 
-#: builtin/index-pack.c:1148
+#: builtin/index-pack.c:1160
 msgid "cannot fstat packfile"
-msgstr ""
+msgstr "impossibile eseguire fstat sul file pack"
 
-#: builtin/index-pack.c:1151
+#: builtin/index-pack.c:1163
 msgid "pack has junk at the end"
-msgstr ""
+msgstr "il pack ha dati inutili alla fine"
 
-#: builtin/index-pack.c:1163
-#, fuzzy
+#: builtin/index-pack.c:1175
 msgid "confusion beyond insanity in parse_pack_objects()"
-msgstr "confusione al di là della follia"
+msgstr "confusione oltre ogni follia in parse_pack_objects()"
 
-#: builtin/index-pack.c:1186
+#: builtin/index-pack.c:1198
 msgid "Resolving deltas"
 msgstr "Risoluzione dei delta"
 
-#: builtin/index-pack.c:1196 builtin/pack-objects.c:2486
-#, fuzzy, c-format
+#: builtin/index-pack.c:1208 builtin/pack-objects.c:2615
+#, c-format
 msgid "unable to create thread: %s"
-msgstr "grep: creazione del thread non riuscita: %s"
+msgstr "impossibile creare il thread: %s"
 
-#: builtin/index-pack.c:1237
+#: builtin/index-pack.c:1249
 msgid "confusion beyond insanity"
-msgstr "confusione al di là della follia"
+msgstr "confusione oltre ogni follia"
 
-#: builtin/index-pack.c:1243
+#: builtin/index-pack.c:1255
 #, c-format
 msgid "completed with %d local object"
 msgid_plural "completed with %d local objects"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "completato con %d oggetto locale"
+msgstr[1] "completato con %d oggetti locali"
 
-#: builtin/index-pack.c:1255
+#: builtin/index-pack.c:1267
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
-msgstr ""
+msgstr "Checksum in coda inatteso per %s (disco corrotto?)"
 
-#: builtin/index-pack.c:1259
+#: builtin/index-pack.c:1271
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] "pack ha %d delta irrisolto"
 msgstr[1] "pack ha %d delta irrisolti"
 
-#: builtin/index-pack.c:1283
+#: builtin/index-pack.c:1295
 #, c-format
 msgid "unable to deflate appended object (%d)"
-msgstr ""
+msgstr "impossibile eseguire deflate sull'oggetto aggiunto alla fine (%d)"
 
-#: builtin/index-pack.c:1360
+#: builtin/index-pack.c:1392
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "l'oggetto locale %s è corrotto"
 
-#: builtin/index-pack.c:1374
+#: builtin/index-pack.c:1406
 #, c-format
 msgid "packfile name '%s' does not end with '.pack'"
 msgstr "il nome del file pack '%s' non termina con '.pack'"
 
-#: builtin/index-pack.c:1399
-#, fuzzy, c-format
+#: builtin/index-pack.c:1431
+#, c-format
 msgid "cannot write %s file '%s'"
-msgstr "impossibile scrivere il file keep '%s'"
+msgstr "impossibile scrivere il file %s '%s'"
 
-#: builtin/index-pack.c:1407
-#, fuzzy, c-format
+#: builtin/index-pack.c:1439
+#, c-format
 msgid "cannot close written %s file '%s'"
-msgstr "impossibile scrivere il file keep '%s'"
+msgstr "impossibile chiudere il file %s scritto '%s'"
 
-#: builtin/index-pack.c:1431
+#: builtin/index-pack.c:1463
 msgid "error while closing pack file"
 msgstr "errore nella chiusura del file pack"
 
-#: builtin/index-pack.c:1445
+#: builtin/index-pack.c:1477
 msgid "cannot store pack file"
 msgstr "impossibile archiviare il file pack"
 
-#: builtin/index-pack.c:1453
+#: builtin/index-pack.c:1485
 msgid "cannot store index file"
 msgstr "impossibile archiviare index file"
 
-#: builtin/index-pack.c:1497 builtin/pack-objects.c:2725
-#, fuzzy, c-format
+#: builtin/index-pack.c:1529 builtin/pack-objects.c:2862
+#, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
-msgstr "versione '%s' di index errata"
+msgstr "pack.indexversion=%<PRIu32> non valida"
 
-#: builtin/index-pack.c:1565
+#: builtin/index-pack.c:1597
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "Impossibile aprire il file pack '%s' esistente"
 
-#: builtin/index-pack.c:1567
+#: builtin/index-pack.c:1599
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
-msgstr ""
+msgstr "Impossibile aprire il file pack idx esistente per '%s'"
 
-#: builtin/index-pack.c:1615
+#: builtin/index-pack.c:1647
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] "non delta: %d oggetto"
 msgstr[1] "non delta: %d oggetti"
 
-#: builtin/index-pack.c:1622
+#: builtin/index-pack.c:1654
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] "lunghezza della catena = %d: %lu oggetto"
 msgstr[1] "lunghezza della catena = %d: %lu oggetti"
 
-#: builtin/index-pack.c:1659
+#: builtin/index-pack.c:1693
 msgid "Cannot come back to cwd"
-msgstr ""
+msgstr "impossibile tornare alla directory di lavoro corrente"
 
-#: builtin/index-pack.c:1708 builtin/index-pack.c:1711
-#: builtin/index-pack.c:1727 builtin/index-pack.c:1731
+#: builtin/index-pack.c:1742 builtin/index-pack.c:1745
+#: builtin/index-pack.c:1761 builtin/index-pack.c:1765
 #, c-format
 msgid "bad %s"
 msgstr "%s errato"
 
-#: builtin/index-pack.c:1747
+#: builtin/index-pack.c:1781
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin non può essere usato senza --stdin"
 
-#: builtin/index-pack.c:1749
-#, fuzzy
+#: builtin/index-pack.c:1783
 msgid "--stdin requires a git repository"
-msgstr "--index al di fuori di un repository"
+msgstr "--stdin richiede un repository Git"
 
-#: builtin/index-pack.c:1755
+#: builtin/index-pack.c:1789
 msgid "--verify with no packfile name given"
 msgstr "--verify senza un nome del file pack specificato"
 
-#: builtin/index-pack.c:1803 builtin/unpack-objects.c:580
-#, fuzzy
+#: builtin/index-pack.c:1837 builtin/unpack-objects.c:582
 msgid "fsck error in pack objects"
-msgstr "Errore nell'oggetto"
+msgstr "errore fsck negli oggetti sottoposti a pack"
 
 #: builtin/init-db.c:61
 #, c-format
 msgid "cannot stat template '%s'"
-msgstr ""
+msgstr "impossibile eseguire stat sul modello '%s'"
 
 #: builtin/init-db.c:66
 #, c-format
 msgid "cannot opendir '%s'"
-msgstr ""
+msgstr "impossibile aprire la directory '%s'"
 
 #: builtin/init-db.c:78
 #, c-format
 msgid "cannot readlink '%s'"
-msgstr ""
+msgstr "impossibile leggere il link '%s'"
 
 #: builtin/init-db.c:80
 #, c-format
 msgid "cannot symlink '%s' '%s'"
-msgstr ""
+msgstr "impossibile creare il collegamento simbolico da '%s' a '%s'"
 
 #: builtin/init-db.c:86
 #, c-format
 msgid "cannot copy '%s' to '%s'"
-msgstr ""
+msgstr "impossibile copiare '%s' in '%s'"
 
 #: builtin/init-db.c:90
 #, c-format
 msgid "ignoring template %s"
-msgstr ""
+msgstr "ignoro il modello %s"
 
 #: builtin/init-db.c:121
-#, fuzzy, c-format
+#, c-format
 msgid "templates not found in %s"
-msgstr "Il branch remoto %s non è stato trovato in upstream %s"
+msgstr "modelli non trovati in %s"
 
 #: builtin/init-db.c:136
-#, fuzzy, c-format
+#, c-format
 msgid "not copying templates from '%s': %s"
-msgstr "Copia delle note da '%s' a '%s' non riuscita"
+msgstr "non copio i modelli da '%s': %s"
 
-#: builtin/init-db.c:329
+#: builtin/init-db.c:334
 #, c-format
 msgid "unable to handle file type %d"
 msgstr "impossibile gestire il tipo di file %d"
 
-#: builtin/init-db.c:332
+#: builtin/init-db.c:337
 #, c-format
 msgid "unable to move %s to %s"
 msgstr "impossibile spostare %s in %s"
 
-#: builtin/init-db.c:349 builtin/init-db.c:352
+#: builtin/init-db.c:354 builtin/init-db.c:357
 #, c-format
 msgid "%s already exists"
 msgstr "%s esiste già"
 
-#: builtin/init-db.c:405
-#, fuzzy, c-format
+#: builtin/init-db.c:413
+#, c-format
 msgid "Reinitialized existing shared Git repository in %s%s\n"
-msgstr "%s%s repository Git in %s%s\n"
+msgstr "Reinizializzato repository Git condiviso esistente in %s%s\n"
 
-#: builtin/init-db.c:406
-#, fuzzy, c-format
+#: builtin/init-db.c:414
+#, c-format
 msgid "Reinitialized existing Git repository in %s%s\n"
-msgstr "%s%s repository Git in %s%s\n"
+msgstr "Reinizializzato repository Git esistente in %s%s\n"
 
-#: builtin/init-db.c:410
+#: builtin/init-db.c:418
 #, c-format
 msgid "Initialized empty shared Git repository in %s%s\n"
 msgstr "Inizializzato repository Git condiviso vuoto in %s%s\n"
 
-#: builtin/init-db.c:411
+#: builtin/init-db.c:419
 #, c-format
 msgid "Initialized empty Git repository in %s%s\n"
 msgstr "Inizializzato repository Git vuoto in %s%s\n"
 
-#: builtin/init-db.c:460
+#: builtin/init-db.c:468
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [<directory>]"
@@ -13185,25 +15524,25 @@ msgstr ""
 "git init [-q | --quiet] [--bare] [--template=<directory-modello>] [--"
 "shared[=<permessi>]] [<directory>]"
 
-#: builtin/init-db.c:483
+#: builtin/init-db.c:491
 msgid "permissions"
 msgstr "permessi"
 
-#: builtin/init-db.c:484
+#: builtin/init-db.c:492
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr "specifica che il repository Git deve essere condiviso con più utenti"
 
-#: builtin/init-db.c:518 builtin/init-db.c:523
+#: builtin/init-db.c:529 builtin/init-db.c:534
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "impossibile creare la directory %s"
 
-#: builtin/init-db.c:527
+#: builtin/init-db.c:538
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "impossibile modificare la directory corrente in %s"
 
-#: builtin/init-db.c:548
+#: builtin/init-db.c:559
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
@@ -13212,12 +15551,12 @@ msgstr ""
 "%s (o --work-tree=<directory>) non consentito senza specificare %s (o --git-"
 "dir=<directory>)"
 
-#: builtin/init-db.c:576
+#: builtin/init-db.c:587
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "Impossibile accedere all'albero di lavoro '%s'"
 
-#: builtin/interpret-trailers.c:15
+#: builtin/interpret-trailers.c:16
 msgid ""
 "git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
 "<token>[(=|:)<value>])...] [<file>...]"
@@ -13225,572 +15564,591 @@ msgstr ""
 "git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
 "<token>[(=|:)<valore>])...] [<file>...]"
 
-#: builtin/interpret-trailers.c:94
+#: builtin/interpret-trailers.c:95
 msgid "edit files in place"
 msgstr "modifica i file sul posto"
 
-#: builtin/interpret-trailers.c:95
+#: builtin/interpret-trailers.c:96
 msgid "trim empty trailers"
 msgstr "rimuovi spazi dalle stringhe finali vuote"
 
-#: builtin/interpret-trailers.c:98
+#: builtin/interpret-trailers.c:99
 msgid "where to place the new trailer"
 msgstr "dove collocare la nuova stringa finale"
 
-#: builtin/interpret-trailers.c:100
+#: builtin/interpret-trailers.c:101
 msgid "action if trailer already exists"
 msgstr "azione da eseguire se la stringa finale esiste già"
 
-#: builtin/interpret-trailers.c:102
+#: builtin/interpret-trailers.c:103
 msgid "action if trailer is missing"
 msgstr "azione da eseguire se la stringa finale è mancante"
 
-#: builtin/interpret-trailers.c:104
+#: builtin/interpret-trailers.c:105
 msgid "output only the trailers"
 msgstr "emetti in output solo le stringhe finali"
 
-#: builtin/interpret-trailers.c:105
+#: builtin/interpret-trailers.c:106
 msgid "do not apply config rules"
 msgstr "non applicare le regole di configurazione"
 
-#: builtin/interpret-trailers.c:106
+#: builtin/interpret-trailers.c:107
 msgid "join whitespace-continued values"
 msgstr "unisci i valori resi contigui dagli spazi bianchi"
 
-#: builtin/interpret-trailers.c:107
+#: builtin/interpret-trailers.c:108
 msgid "set parsing options"
 msgstr "imposta le opzioni di analisi"
 
-#: builtin/interpret-trailers.c:109
+#: builtin/interpret-trailers.c:110
 msgid "do not treat --- specially"
 msgstr "non trattare la sequenza --- in modo speciale"
 
-#: builtin/interpret-trailers.c:110
+#: builtin/interpret-trailers.c:111
 msgid "trailer"
 msgstr "stringa finale"
 
-#: builtin/interpret-trailers.c:111
+#: builtin/interpret-trailers.c:112
 msgid "trailer(s) to add"
 msgstr "stringa/e finale/i da aggiungere"
 
-#: builtin/interpret-trailers.c:120
+#: builtin/interpret-trailers.c:123
 msgid "--trailer with --only-input does not make sense"
 msgstr "--trailer con --only-input non ha senso"
 
-#: builtin/interpret-trailers.c:130
+#: builtin/interpret-trailers.c:133
 msgid "no input file given for in-place editing"
 msgstr "nessun file di input specificato per la modifica sul posto"
 
-#: builtin/log.c:55
+#: builtin/log.c:56
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<opzioni>] [<intervallo-revisioni>] [[--] <percorso>...]"
 
-#: builtin/log.c:56
+#: builtin/log.c:57
 msgid "git show [<options>] <object>..."
 msgstr "git show [<opzioni>] <oggetto>..."
 
-#: builtin/log.c:100
+#: builtin/log.c:110
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "opzione --decorate non valida: %s"
 
-#: builtin/log.c:163
-msgid "suppress diff output"
-msgstr "non visualizzare l'output del diff"
-
-#: builtin/log.c:164
+#: builtin/log.c:174
 msgid "show source"
 msgstr "visualizza sorgente"
 
-#: builtin/log.c:165
+#: builtin/log.c:175
 msgid "Use mail map file"
 msgstr "Usa il file mappatura e-mail"
 
-#: builtin/log.c:167
+#: builtin/log.c:177
 msgid "only decorate refs that match <pattern>"
 msgstr "decora solo i riferimenti corrispondenti a <pattern>"
 
-#: builtin/log.c:169
+#: builtin/log.c:179
 msgid "do not decorate refs that match <pattern>"
 msgstr "non decorare i riferimenti corrispondenti a <pattern>"
 
-#: builtin/log.c:170
+#: builtin/log.c:180
 msgid "decorate options"
 msgstr "opzioni decorazione"
 
-#: builtin/log.c:173
+#: builtin/log.c:183
 msgid "Process line range n,m in file, counting from 1"
 msgstr "Elabora l'intervallo righe n,m nel file, contandole da 1"
 
-#: builtin/log.c:271
+#: builtin/log.c:281
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Output finale: %d %s\n"
 
-#: builtin/log.c:525
+#: builtin/log.c:535
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s: file non valido"
 
-#: builtin/log.c:540 builtin/log.c:634
+#: builtin/log.c:550 builtin/log.c:645
+#, c-format
+msgid "could not read object %s"
+msgstr "impossibile leggere l'oggetto %s"
+
+#: builtin/log.c:670
 #, c-format
-msgid "Could not read object %s"
-msgstr "Impossibile leggere l'oggetto %s"
+msgid "unknown type: %d"
+msgstr "tipo sconosciuto: %d"
 
-#: builtin/log.c:659
+#: builtin/log.c:814
 #, c-format
-msgid "Unknown type: %d"
-msgstr "Tipo sconosciuto: %d"
+msgid "%s: invalid cover from description mode"
+msgstr "%s: modo lettera da descrizione non valido"
 
-#: builtin/log.c:780
+#: builtin/log.c:821
 msgid "format.headers without value"
 msgstr "format.headers non ha alcun valore"
 
-#: builtin/log.c:881
+#: builtin/log.c:936
 msgid "name of output directory is too long"
 msgstr "il nome della directory di output è troppo lungo"
 
-#: builtin/log.c:897
+#: builtin/log.c:952
 #, c-format
-msgid "Cannot open patch file %s"
-msgstr "Impossibile aprire il file patch %s"
+msgid "cannot open patch file %s"
+msgstr "impossibile aprire il file patch %s"
 
-#: builtin/log.c:914
-msgid "Need exactly one range."
-msgstr "Ã\88 necessario specificare esattamente un intervallo."
+#: builtin/log.c:969
+msgid "need exactly one range"
+msgstr "è necessario specificare esattamente un intervallo"
 
-#: builtin/log.c:924
-msgid "Not a range."
-msgstr "Il valore non è un intervallo."
+#: builtin/log.c:979
+msgid "not a range"
+msgstr "il valore non è un intervallo"
 
-#: builtin/log.c:1047
-msgid "Cover letter needs email format"
-msgstr ""
+#: builtin/log.c:1143
+msgid "cover letter needs email format"
+msgstr "la lettera di accompagnamento dev'essere in formato e-mail"
+
+#: builtin/log.c:1149
+msgid "failed to create cover-letter file"
+msgstr "creazione del file lettera di accompagnamento non riuscita"
 
-#: builtin/log.c:1132
+#: builtin/log.c:1228
 #, c-format
 msgid "insane in-reply-to: %s"
-msgstr ""
+msgstr "valore in-reply-to folle: %s"
 
-#: builtin/log.c:1159
+#: builtin/log.c:1255
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
-msgstr ""
+msgstr "git format-patch [<opzioni>] [<da> | <intervallo revisioni>]"
 
-#: builtin/log.c:1217
-msgid "Two output directories?"
-msgstr "Due directory di output?"
+#: builtin/log.c:1313
+msgid "two output directories?"
+msgstr "due directory di output?"
 
-#: builtin/log.c:1324 builtin/log.c:2068 builtin/log.c:2070 builtin/log.c:2082
+#: builtin/log.c:1424 builtin/log.c:2197 builtin/log.c:2199 builtin/log.c:2211
 #, c-format
-msgid "Unknown commit %s"
-msgstr "Commit %s sconosciuto"
+msgid "unknown commit %s"
+msgstr "commit %s sconosciuto"
 
-#: builtin/log.c:1334 builtin/notes.c:897 builtin/tag.c:526
+#: builtin/log.c:1434 builtin/replace.c:58 builtin/replace.c:207
+#: builtin/replace.c:210
 #, c-format
-msgid "Failed to resolve '%s' as a valid ref."
-msgstr ""
+msgid "failed to resolve '%s' as a valid ref"
+msgstr "impossibile risolvere '%s' come riferimento valido"
 
-#: builtin/log.c:1339
-#, fuzzy
-msgid "Could not find exact merge base."
-msgstr "Non è stato possibile trovare la strategia di merge '%s'.\n"
+#: builtin/log.c:1439
+msgid "could not find exact merge base"
+msgstr "impossibile trovare esattamente la base del merge"
 
-#: builtin/log.c:1343
+#: builtin/log.c:1443
 msgid ""
-"Failed to get upstream, if you want to record base commit automatically,\n"
+"failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
-"Or you could specify base commit by --base=<base-commit-id> manually."
+"Or you could specify base commit by --base=<base-commit-id> manually"
 msgstr ""
+"impossibile recuperare l'upstream, se vuoi registrare automaticamente\n"
+"il commit di base usa git branch --set-upstream-to per tracciare un branch\n"
+"remoto.\n"
+"In alternativa puoi specificare manualmente il commit di base con\n"
+"--base=<ID commit di base>"
 
-#: builtin/log.c:1363
-msgid "Failed to find exact merge base"
-msgstr ""
+#: builtin/log.c:1463
+msgid "failed to find exact merge base"
+msgstr "impossibile trovare esattamente la base del merge"
 
-#: builtin/log.c:1374
+#: builtin/log.c:1474
 msgid "base commit should be the ancestor of revision list"
-msgstr ""
+msgstr "il commit di base dovrebbe essere l'antenato dell'elenco revisioni"
 
-#: builtin/log.c:1378
+#: builtin/log.c:1478
 msgid "base commit shouldn't be in revision list"
-msgstr ""
+msgstr "il commit di base non dovrebbe essere nell'elenco revisioni"
 
-#: builtin/log.c:1431
-#, fuzzy
+#: builtin/log.c:1531
 msgid "cannot get patch id"
-msgstr "impossibile usare -a con -d"
+msgstr "impossibile ottenere l'ID della patch"
 
-#: builtin/log.c:1483
-#, fuzzy
+#: builtin/log.c:1583
 msgid "failed to infer range-diff ranges"
-msgstr "creazione del link '%s' non riuscita"
+msgstr "inferenza degli intervalli range-diff non riuscita"
 
-#: builtin/log.c:1528
+#: builtin/log.c:1629
 msgid "use [PATCH n/m] even with a single patch"
-msgstr ""
+msgstr "usa [PATCH n/m] anche con una singola patch"
 
-#: builtin/log.c:1531
+#: builtin/log.c:1632
 msgid "use [PATCH] even with multiple patches"
-msgstr ""
+msgstr "usa [PATCH] anche con più patch"
 
-#: builtin/log.c:1535
+#: builtin/log.c:1636
 msgid "print patches to standard out"
-msgstr ""
+msgstr "stampa le patch sullo standard output"
 
-#: builtin/log.c:1537
+#: builtin/log.c:1638
 msgid "generate a cover letter"
-msgstr ""
+msgstr "genera una lettera di accompagnamento"
 
-#: builtin/log.c:1539
+#: builtin/log.c:1640
 msgid "use simple number sequence for output file names"
-msgstr ""
+msgstr "usa una sequenza numerica semplice per i nomi file di output"
 
-#: builtin/log.c:1540
+#: builtin/log.c:1641
 msgid "sfx"
-msgstr ""
+msgstr "suff"
 
-#: builtin/log.c:1541
+#: builtin/log.c:1642
 msgid "use <sfx> instead of '.patch'"
-msgstr ""
+msgstr "usa <suff> anziché '.patch'"
 
-#: builtin/log.c:1543
+#: builtin/log.c:1644
 msgid "start numbering patches at <n> instead of 1"
-msgstr ""
+msgstr "inizia a numerare le patch da <n> anziché da 1"
 
-#: builtin/log.c:1545
+#: builtin/log.c:1646
 msgid "mark the series as Nth re-roll"
-msgstr ""
+msgstr "contrassegna la serie come l'n-esima versione revisionata"
 
-#: builtin/log.c:1547
+#: builtin/log.c:1648
 msgid "Use [RFC PATCH] instead of [PATCH]"
+msgstr "Usa [RFC PATCH] anziché [PATCH]"
+
+#: builtin/log.c:1651
+msgid "cover-from-description-mode"
+msgstr "modo-lettera-da-descrizione"
+
+#: builtin/log.c:1652
+msgid "generate parts of a cover letter based on a branch's description"
 msgstr ""
+"genera parti di una lettera d'accompagnamento basandosi sulla descrizione di "
+"un branch"
 
-#: builtin/log.c:1550
+#: builtin/log.c:1654
 msgid "Use [<prefix>] instead of [PATCH]"
-msgstr ""
+msgstr "Usa [<prefisso>] anziché [PATCH]"
 
-#: builtin/log.c:1553
+#: builtin/log.c:1657
 msgid "store resulting files in <dir>"
-msgstr ""
+msgstr "salva i file risultanti in <dir>"
 
-#: builtin/log.c:1556
+#: builtin/log.c:1660
 msgid "don't strip/add [PATCH]"
-msgstr ""
+msgstr "non eliminare/aggiungere [PATCH]"
 
-#: builtin/log.c:1559
+#: builtin/log.c:1663
 msgid "don't output binary diffs"
-msgstr ""
+msgstr "non mandare in output diff binari"
 
-#: builtin/log.c:1561
+#: builtin/log.c:1665
 msgid "output all-zero hash in From header"
-msgstr ""
+msgstr "manda in output un hash costituito da soli zeri nell'intestazione From"
 
-#: builtin/log.c:1563
+#: builtin/log.c:1667
 msgid "don't include a patch matching a commit upstream"
-msgstr ""
+msgstr "non includere una patch corrispondente a un commit upstream"
 
-#: builtin/log.c:1565
+#: builtin/log.c:1669
 msgid "show patch format instead of default (patch + stat)"
 msgstr ""
+"visualizza il formato della patch anziché l'impostazione predefinita (patch "
+"+ stat)"
 
-#: builtin/log.c:1567
+#: builtin/log.c:1671
 msgid "Messaging"
-msgstr ""
+msgstr "Messaggistica"
 
-#: builtin/log.c:1568
-#, fuzzy
+#: builtin/log.c:1672
 msgid "header"
-msgstr "avanti "
+msgstr "intestazione"
 
-#: builtin/log.c:1569
+#: builtin/log.c:1673
 msgid "add email header"
-msgstr ""
+msgstr "aggiungi intestazione e-mail"
 
-#: builtin/log.c:1570 builtin/log.c:1572
+#: builtin/log.c:1674 builtin/log.c:1676
 msgid "email"
-msgstr ""
+msgstr "e-mail"
 
-#: builtin/log.c:1570
+#: builtin/log.c:1674
 msgid "add To: header"
-msgstr ""
+msgstr "aggiungi intestazione A:"
 
-#: builtin/log.c:1572
+#: builtin/log.c:1676
 msgid "add Cc: header"
-msgstr ""
+msgstr "aggiungi intestazione Cc:"
 
-#: builtin/log.c:1574
+#: builtin/log.c:1678
 msgid "ident"
-msgstr ""
+msgstr "identità"
 
-#: builtin/log.c:1575
+#: builtin/log.c:1679
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
+"imposta l'indirizzo Da a <identità> (o all'identità di chi ha creato il "
+"commit se assente)"
 
-#: builtin/log.c:1577
+#: builtin/log.c:1681
 msgid "message-id"
-msgstr ""
+msgstr "ID messaggio"
 
-#: builtin/log.c:1578
+#: builtin/log.c:1682
 msgid "make first mail a reply to <message-id>"
-msgstr ""
+msgstr "rendi la prima e-mail una risposta a <ID messaggio>"
 
-#: builtin/log.c:1579 builtin/log.c:1582
+#: builtin/log.c:1683 builtin/log.c:1686
 msgid "boundary"
-msgstr ""
+msgstr "delimitatore"
 
-#: builtin/log.c:1580
+#: builtin/log.c:1684
 msgid "attach the patch"
-msgstr ""
+msgstr "allega la patch"
 
-#: builtin/log.c:1583
-#, fuzzy
+#: builtin/log.c:1687
 msgid "inline the patch"
-msgstr "ignora le aggiunte create dalla patch"
+msgstr "includi la patch nel messaggio"
 
-#: builtin/log.c:1587
+#: builtin/log.c:1691
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
+"abilita il raggruppamento messaggi per conversazione, stili: superficiale, "
+"profondo"
 
-#: builtin/log.c:1589
+#: builtin/log.c:1693
 msgid "signature"
-msgstr ""
+msgstr "firma"
 
-#: builtin/log.c:1590
+#: builtin/log.c:1694
 msgid "add a signature"
-msgstr ""
+msgstr "aggiungi una firma"
 
-#: builtin/log.c:1591
+#: builtin/log.c:1695
 msgid "base-commit"
-msgstr ""
+msgstr "commit di base"
 
-#: builtin/log.c:1592
+#: builtin/log.c:1696
 msgid "add prerequisite tree info to the patch series"
 msgstr ""
+"aggiungi le informazioni prerequisito per l'albero alla serie delle patch"
 
-#: builtin/log.c:1594
+#: builtin/log.c:1698
 msgid "add a signature from a file"
-msgstr ""
+msgstr "aggiungi una firma da file"
 
-#: builtin/log.c:1595
-#, fuzzy
+#: builtin/log.c:1699
 msgid "don't print the patch filenames"
-msgstr "Impossibile aprire il file patch %s"
+msgstr "non stampare i nomi file delle patch"
 
-#: builtin/log.c:1597
+#: builtin/log.c:1701
 msgid "show progress while generating patches"
-msgstr ""
-
-#: builtin/log.c:1598
-#, fuzzy
-msgid "rev"
-msgstr "revert non riuscito"
+msgstr "visualizza l'avanzamento dell'operazione di generazione patch"
 
-#: builtin/log.c:1599
+#: builtin/log.c:1703
 msgid "show changes against <rev> in cover letter or single patch"
 msgstr ""
+"visualizza le modifiche rispetto a <revisione> nella lettera di "
+"accompagnamento o in una patch singola"
 
-#: builtin/log.c:1602
+#: builtin/log.c:1706
 msgid "show changes against <refspec> in cover letter or single patch"
 msgstr ""
+"visualizza le modifiche rispetto a <specificatore revisione> nella lettera "
+"di accompagnamento o in una patch singola"
 
-#: builtin/log.c:1604
+#: builtin/log.c:1708
 msgid "percentage by which creation is weighted"
-msgstr ""
+msgstr "percentuale in base a cui viene pesata la creazione"
 
-#: builtin/log.c:1679
-#, fuzzy, c-format
+#: builtin/log.c:1792
+#, c-format
 msgid "invalid ident line: %s"
-msgstr "opzione non valida: %s"
+msgstr "riga ident non valida: %s"
 
-#: builtin/log.c:1694
-#, fuzzy
+#: builtin/log.c:1807
 msgid "-n and -k are mutually exclusive"
-msgstr "-A e -u sono reciprocamente incompatibili"
+msgstr "le opzioni -n e -k sono mutuamente esclusive"
 
-#: builtin/log.c:1696
+#: builtin/log.c:1809
 msgid "--subject-prefix/--rfc and -k are mutually exclusive"
-msgstr ""
+msgstr "le opzioni --subject-prefix/--rfc e -k sono mutuamente esclusive"
 
-#: builtin/log.c:1704
+#: builtin/log.c:1817
 msgid "--name-only does not make sense"
 msgstr "--name-only non ha senso"
 
-#: builtin/log.c:1706
+#: builtin/log.c:1819
 msgid "--name-status does not make sense"
 msgstr "--name-status non ha senso"
 
-#: builtin/log.c:1708
+#: builtin/log.c:1821
 msgid "--check does not make sense"
 msgstr "--check non ha senso"
 
-#: builtin/log.c:1740
+#: builtin/log.c:1854
 msgid "standard output, or directory, which one?"
 msgstr "standard output, o directory, quale dei due?"
 
-#: builtin/log.c:1742
-#, c-format
-msgid "Could not create directory '%s'"
-msgstr "Non è stato possibile creare la directory '%s'"
-
-#: builtin/log.c:1829
+#: builtin/log.c:1958
 msgid "--interdiff requires --cover-letter or single patch"
-msgstr ""
+msgstr "--interdiff richiede --cover-letter o una singola patch"
 
-#: builtin/log.c:1833
+#: builtin/log.c:1962
 msgid "Interdiff:"
-msgstr ""
+msgstr "Interdiff:"
 
-#: builtin/log.c:1834
+#: builtin/log.c:1963
 #, c-format
 msgid "Interdiff against v%d:"
-msgstr ""
+msgstr "Interdiff rispetto alla versione %d:"
 
-#: builtin/log.c:1840
+#: builtin/log.c:1969
 msgid "--creation-factor requires --range-diff"
-msgstr ""
+msgstr "--creation-factor richiede --range-diff"
 
-#: builtin/log.c:1844
+#: builtin/log.c:1973
 msgid "--range-diff requires --cover-letter or single patch"
-msgstr ""
+msgstr "--range-diff richiede --cover-letter o una singola patch"
 
-#: builtin/log.c:1852
+#: builtin/log.c:1981
 msgid "Range-diff:"
-msgstr ""
+msgstr "Range-diff:"
 
-#: builtin/log.c:1853
+#: builtin/log.c:1982
 #, c-format
 msgid "Range-diff against v%d:"
-msgstr ""
+msgstr "Range-diff rispetto alla versione %d:"
 
-#: builtin/log.c:1864
-#, fuzzy, c-format
+#: builtin/log.c:1993
+#, c-format
 msgid "unable to read signature file '%s'"
-msgstr "impossibile leggere index file"
+msgstr "impossibile leggere il file firma '%s'"
 
-#: builtin/log.c:1900
+#: builtin/log.c:2029
 msgid "Generating patches"
-msgstr ""
+msgstr "Generazione delle patch in corso"
 
-#: builtin/log.c:1944
-msgid "Failed to create output files"
-msgstr "Creazione dei file di output non riuscita"
+#: builtin/log.c:2073
+msgid "failed to create output files"
+msgstr "creazione dei file di output non riuscita"
 
-#: builtin/log.c:2003
+#: builtin/log.c:2132
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
-msgstr ""
+msgstr "git cherry [-v] [<upstream> [<head> [<limite>]]]"
 
-#: builtin/log.c:2057
+#: builtin/log.c:2186
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
 msgstr ""
+"Impossibile trovare un branch remoto tracciato, specifica <upstream> "
+"manualmente.\n"
 
 #: builtin/ls-files.c:470
-#, fuzzy
 msgid "git ls-files [<options>] [<file>...]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git ls-files [<opzioni>] [<file>...]"
 
 #: builtin/ls-files.c:526
 msgid "identify the file status with tags"
-msgstr ""
+msgstr "identifica lo stato del file con i tag"
 
 #: builtin/ls-files.c:528
 msgid "use lowercase letters for 'assume unchanged' files"
-msgstr ""
+msgstr "usa lettere minuscole per i file che si 'assumono non modificati'"
 
 #: builtin/ls-files.c:530
 msgid "use lowercase letters for 'fsmonitor clean' files"
-msgstr ""
+msgstr "usa lettere minuscole per i file 'fsmonitor clean'"
 
 #: builtin/ls-files.c:532
 msgid "show cached files in the output (default)"
-msgstr ""
+msgstr "visualizza file in cache nell'output (impostazione predefinita)"
 
 #: builtin/ls-files.c:534
-#, fuzzy
 msgid "show deleted files in the output"
-msgstr "il file eliminato %s ha ancora dei contenuti"
+msgstr "visualizza file eliminati nell'output"
 
 #: builtin/ls-files.c:536
 msgid "show modified files in the output"
-msgstr ""
+msgstr "visualizza file modificati nell'output"
 
 #: builtin/ls-files.c:538
 msgid "show other files in the output"
-msgstr ""
+msgstr "visualizza altri file nell'output"
 
 #: builtin/ls-files.c:540
 msgid "show ignored files in the output"
-msgstr ""
+msgstr "visualizza file ignorati nell'output"
 
 #: builtin/ls-files.c:543
 msgid "show staged contents' object name in the output"
 msgstr ""
+"visualizza il nome dell'oggetto \"contenuti nell'area di staging\" "
+"nell'output"
 
 #: builtin/ls-files.c:545
 msgid "show files on the filesystem that need to be removed"
-msgstr ""
+msgstr "visualizza i file nel filesystem che devono essere rimossi"
 
 #: builtin/ls-files.c:547
 msgid "show 'other' directories' names only"
-msgstr ""
+msgstr "visualizza solo i nomi delle directory 'altro'"
 
 #: builtin/ls-files.c:549
 msgid "show line endings of files"
-msgstr ""
+msgstr "visualizza i fine riga dei file"
 
 #: builtin/ls-files.c:551
-#, fuzzy
 msgid "don't show empty directories"
-msgstr "Due directory di output?"
+msgstr "non visualizzare le directory vuote"
 
 #: builtin/ls-files.c:554
 msgid "show unmerged files in the output"
-msgstr ""
+msgstr "visualizza file non sottoposti a merge nell'output"
 
 #: builtin/ls-files.c:556
 msgid "show resolve-undo information"
-msgstr ""
+msgstr "visualizza informazioni resolve-undo"
 
 #: builtin/ls-files.c:558
-#, fuzzy
 msgid "skip files matching pattern"
-msgstr "Stampa le righe corrispondenti ad un modello"
+msgstr "salta i file corrispondenti a \"espressione regolare\""
 
 #: builtin/ls-files.c:561
 msgid "exclude patterns are read from <file>"
-msgstr ""
+msgstr "le espressioni regolari di esclusione sono lette da <file>"
 
 #: builtin/ls-files.c:564
 msgid "read additional per-directory exclude patterns in <file>"
 msgstr ""
+"leggi espressioni regolari di esclusione aggiuntive specifiche per directory "
+"da <file>"
 
 #: builtin/ls-files.c:566
 msgid "add the standard git exclusions"
-msgstr ""
+msgstr "aggiungi le esclusioni standard di Git"
 
 #: builtin/ls-files.c:570
 msgid "make the output relative to the project top directory"
-msgstr ""
+msgstr "rendi l'output relativo alla directory radice del progetto"
 
 #: builtin/ls-files.c:573
 msgid "recurse through submodules"
-msgstr ""
+msgstr "esegui ricorsivamente sui sottomoduli"
 
 #: builtin/ls-files.c:575
 msgid "if any <file> is not in the index, treat this as an error"
-msgstr ""
+msgstr "se dei <file> non sono nell'indice, consideralo un errore"
 
 #: builtin/ls-files.c:576
 msgid "tree-ish"
-msgstr ""
+msgstr "espressione albero"
 
 #: builtin/ls-files.c:577
 msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr ""
+"fingi che i percorsi rimossi da <espressione albero> in poi siano ancora "
+"presenti"
 
 #: builtin/ls-files.c:579
 msgid "show debugging data"
-msgstr ""
+msgstr "visualizza informazioni di debug"
 
 #: builtin/ls-remote.c:9
 msgid ""
@@ -13798,451 +16156,472 @@ msgid ""
 "                     [-q | --quiet] [--exit-code] [--get-url]\n"
 "                     [--symref] [<repository> [<refs>...]]"
 msgstr ""
+"git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<eseguibile>]\n"
+"                     [-q | --quiet] [--exit-code] [--get-url]\n"
+"                     [--symref] [<repository> [<riferimenti>...]]"
 
 #: builtin/ls-remote.c:59
 msgid "do not print remote URL"
-msgstr ""
+msgstr "non stampare l'URL del remoto"
 
-#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1111
+#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1561
 msgid "exec"
-msgstr ""
+msgstr "eseguibile"
 
 #: builtin/ls-remote.c:61 builtin/ls-remote.c:63
 msgid "path of git-upload-pack on the remote host"
-msgstr ""
+msgstr "percorso di git-upload-pack sull'host remoto"
 
 #: builtin/ls-remote.c:65
 msgid "limit to tags"
-msgstr ""
+msgstr "limitati ai tag"
 
 #: builtin/ls-remote.c:66
 msgid "limit to heads"
-msgstr ""
+msgstr "limitati alle head"
 
 #: builtin/ls-remote.c:67
 msgid "do not show peeled tags"
-msgstr ""
+msgstr "non visualizzare i tag rimossi"
 
 #: builtin/ls-remote.c:69
 msgid "take url.<base>.insteadOf into account"
-msgstr ""
+msgstr "tieni in considerazione url.<base>.insteadOf"
 
-#: builtin/ls-remote.c:73
+#: builtin/ls-remote.c:72
 msgid "exit with exit code 2 if no matching refs are found"
 msgstr ""
+"esci con codice d'uscita 2 se non sono stati trovati riferimenti "
+"corrispondenti"
 
-#: builtin/ls-remote.c:76
+#: builtin/ls-remote.c:75
 msgid "show underlying ref in addition to the object pointed by it"
-msgstr ""
+msgstr "visualizza riferimento sottostante oltre all'oggetto a cui punta"
 
 #: builtin/ls-tree.c:30
-#, fuzzy
 msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git ls-tree [<opzioni>] <espressione albero> [<percorso>...]"
 
 #: builtin/ls-tree.c:128
 msgid "only show trees"
-msgstr ""
+msgstr "visualizza solo alberi"
 
 #: builtin/ls-tree.c:130
 msgid "recurse into subtrees"
-msgstr ""
+msgstr "esegui ricorsivamente nei sottoalberi"
 
 #: builtin/ls-tree.c:132
 msgid "show trees when recursing"
-msgstr ""
+msgstr "visualizza gli alberi durante la ricorsione"
 
 #: builtin/ls-tree.c:135
 msgid "terminate entries with NUL byte"
-msgstr ""
+msgstr "termina le voci con un byte NUL"
 
 #: builtin/ls-tree.c:136
-#, fuzzy
 msgid "include object size"
-msgstr "oggetto non valido '%s' specificato."
+msgstr "includi dimensioni oggetto"
 
 #: builtin/ls-tree.c:138 builtin/ls-tree.c:140
 msgid "list only filenames"
-msgstr ""
+msgstr "elenca solo i nomi file"
 
 #: builtin/ls-tree.c:143
 msgid "use full path names"
-msgstr ""
+msgstr "usa nomi percorso completi"
 
 #: builtin/ls-tree.c:145
 msgid "list entire tree; not just current directory (implies --full-name)"
 msgstr ""
+"elenca l'intero albero; non solo la directory corrente (implica --full-name)"
 
 #: builtin/mailsplit.c:241
 #, c-format
 msgid "empty mbox: '%s'"
-msgstr ""
+msgstr "mbox vuota: '%s'"
 
-#: builtin/merge.c:53
-#, fuzzy
+#: builtin/merge.c:55
 msgid "git merge [<options>] [<commit>...]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git merge [<opzioni>] [<commit>...]"
 
-#: builtin/merge.c:54
+#: builtin/merge.c:56
 msgid "git merge --abort"
-msgstr ""
+msgstr "git merge --abort"
 
-#: builtin/merge.c:55
+#: builtin/merge.c:57
 msgid "git merge --continue"
-msgstr ""
+msgstr "git merge --continue"
 
-#: builtin/merge.c:112
+#: builtin/merge.c:119
 msgid "switch `m' requires a value"
 msgstr "lo switch 'm' richiede un valore"
 
-#: builtin/merge.c:132
-#, fuzzy, c-format
+#: builtin/merge.c:142
+#, c-format
 msgid "option `%s' requires a value"
-msgstr "l'opzione '%s' richiede un valore"
+msgstr "l'opzione `%s' richiede un valore"
 
-#: builtin/merge.c:178
+#: builtin/merge.c:188
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "Non è stato possibile trovare la strategia di merge '%s'.\n"
 
-#: builtin/merge.c:179
+#: builtin/merge.c:189
 #, c-format
 msgid "Available strategies are:"
 msgstr "Le strategie disponibili sono:"
 
-#: builtin/merge.c:184
+#: builtin/merge.c:194
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Le strategie personalizzate disponibili sono:"
 
-#: builtin/merge.c:235 builtin/pull.c:144
+#: builtin/merge.c:245 builtin/pull.c:132
 msgid "do not show a diffstat at the end of the merge"
-msgstr ""
+msgstr "non visualizzare un diffstat al termine del merge"
 
-#: builtin/merge.c:238 builtin/pull.c:147
+#: builtin/merge.c:248 builtin/pull.c:135
 msgid "show a diffstat at the end of the merge"
-msgstr ""
+msgstr "visualizza un diffstat al termine del merge"
 
-#: builtin/merge.c:239 builtin/pull.c:150
+#: builtin/merge.c:249 builtin/pull.c:138
 msgid "(synonym to --stat)"
-msgstr ""
+msgstr "(sinonimo di --stat)"
 
-#: builtin/merge.c:241 builtin/pull.c:153
+#: builtin/merge.c:251 builtin/pull.c:141
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr ""
+"aggiungi (al più <n>) voci dal registro breve al messaggio di commit del "
+"merge"
 
-#: builtin/merge.c:244 builtin/pull.c:159
-#, fuzzy
+#: builtin/merge.c:254 builtin/pull.c:147
 msgid "create a single commit instead of doing a merge"
-msgstr "impossibile eseguire un commit parziale durante un merge."
+msgstr "crea un singolo commit anziché eseguire un merge"
 
-#: builtin/merge.c:246 builtin/pull.c:162
+#: builtin/merge.c:256 builtin/pull.c:150
 msgid "perform a commit if the merge succeeds (default)"
-msgstr ""
+msgstr "esegui un commit se il merge ha successo (impostazione predefinita)"
 
-#: builtin/merge.c:248 builtin/pull.c:165
+#: builtin/merge.c:258 builtin/pull.c:153
 msgid "edit message before committing"
-msgstr ""
+msgstr "modifica il messaggio prima di eseguire il commit"
 
-#: builtin/merge.c:249
+#: builtin/merge.c:260
 msgid "allow fast-forward (default)"
-msgstr ""
+msgstr "consenti fast forward (impostazione predefinita)"
 
-#: builtin/merge.c:251 builtin/pull.c:171
+#: builtin/merge.c:262 builtin/pull.c:160
 msgid "abort if fast-forward is not possible"
-msgstr ""
+msgstr "interrompi se il fast forward non è possibile"
 
-#: builtin/merge.c:255 builtin/pull.c:174
+#: builtin/merge.c:266 builtin/pull.c:163
 msgid "verify that the named commit has a valid GPG signature"
-msgstr ""
+msgstr "verifica che il commit specificato abbia una firma GPG valida"
 
-#: builtin/merge.c:256 builtin/notes.c:787 builtin/pull.c:178
-#: builtin/rebase.c:1124 builtin/rebase--interactive.c:188 builtin/revert.c:111
+#: builtin/merge.c:267 builtin/notes.c:787 builtin/pull.c:167
+#: builtin/rebase.c:520 builtin/rebase.c:1575 builtin/revert.c:114
 msgid "strategy"
-msgstr ""
+msgstr "strategia"
 
-#: builtin/merge.c:257 builtin/pull.c:179
-#, fuzzy
+#: builtin/merge.c:268 builtin/pull.c:168
 msgid "merge strategy to use"
-msgstr "Tentativo con la strategia di merge %s...\n"
+msgstr "strategia di merge da usare"
 
-#: builtin/merge.c:258 builtin/pull.c:182
+#: builtin/merge.c:269 builtin/pull.c:171
 msgid "option=value"
-msgstr ""
+msgstr "opzione=valore"
 
-#: builtin/merge.c:259 builtin/pull.c:183
+#: builtin/merge.c:270 builtin/pull.c:172
 msgid "option for selected merge strategy"
-msgstr ""
+msgstr "opzione per la strategia di merge selezionata"
 
-#: builtin/merge.c:261
+#: builtin/merge.c:272
 msgid "merge commit message (for a non-fast-forward merge)"
-msgstr ""
+msgstr "messaggio di commit del merge (per un merge non fast forward)"
 
-#: builtin/merge.c:268
-#, fuzzy
+#: builtin/merge.c:279
 msgid "abort the current in-progress merge"
-msgstr "Impossibile salvare lo stato corrente di index"
+msgstr "interrompi il merge attualmente in corso"
 
-#: builtin/merge.c:270
+#: builtin/merge.c:281
+msgid "--abort but leave index and working tree alone"
+msgstr "esegui --abort ma mantieni immutati l'indice e l'albero di lavoro"
+
+#: builtin/merge.c:283
 msgid "continue the current in-progress merge"
-msgstr ""
+msgstr "continua il merge attualmente in corso"
 
-#: builtin/merge.c:272 builtin/pull.c:190
+#: builtin/merge.c:285 builtin/pull.c:179
 msgid "allow merging unrelated histories"
-msgstr ""
+msgstr "consenti di unire cronologie non correlate"
 
-#: builtin/merge.c:278
-msgid "verify commit-msg hook"
-msgstr ""
+#: builtin/merge.c:291
+msgid "bypass pre-merge-commit and commit-msg hooks"
+msgstr "ignora gli hook pre-merge-commit e commit-msg"
 
-#: builtin/merge.c:303
+#: builtin/merge.c:308
 msgid "could not run stash."
 msgstr "non è stato possibile eseguire stash."
 
-#: builtin/merge.c:308
+#: builtin/merge.c:313
 msgid "stash failed"
 msgstr "esecuzione di stash non riuscita"
 
-#: builtin/merge.c:313
+#: builtin/merge.c:318
 #, c-format
 msgid "not a valid object: %s"
 msgstr "non è un oggetto valido: %s"
 
-#: builtin/merge.c:335 builtin/merge.c:352
+#: builtin/merge.c:340 builtin/merge.c:357
 msgid "read-tree failed"
 msgstr "read-tree non riuscito"
 
-#: builtin/merge.c:382
+#: builtin/merge.c:387
 msgid " (nothing to squash)"
-msgstr ""
+msgstr " (nulla di cui eseguire lo squash)"
 
-#: builtin/merge.c:393
+#: builtin/merge.c:398
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
-msgstr ""
+msgstr "Commit di squash -- non aggiorno HEAD\n"
 
-#: builtin/merge.c:443
+#: builtin/merge.c:448
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "Nessun messaggio di merge -- HEAD non viene aggiornato\n"
 
-#: builtin/merge.c:494
+#: builtin/merge.c:499
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "'%s' non punta ad un commit"
 
-#: builtin/merge.c:581
+#: builtin/merge.c:586
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Stringa branch.%s.mergeoptions errata: %s"
 
-#: builtin/merge.c:702
+#: builtin/merge.c:708
 msgid "Not handling anything other than two heads merge."
-msgstr ""
+msgstr "Non gestisco nulla che non sia il merge di due head."
 
-#: builtin/merge.c:716
+#: builtin/merge.c:722
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
-msgstr "Opzione per merge-recursive sconosciuta: -X%s"
+msgstr "Opzione sconosciuta per merge-recursive: -X%s"
 
-#: builtin/merge.c:731
+#: builtin/merge.c:737
 #, c-format
 msgid "unable to write %s"
-msgstr "non è possibile scrivere %s"
+msgstr "impossibile scrivere %s"
 
-#: builtin/merge.c:783
+#: builtin/merge.c:789
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Non è stato possibile leggere da '%s'"
 
-#: builtin/merge.c:792
+#: builtin/merge.c:798
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
+"Non eseguo il commit del merge; usa 'git commit' per completare il merge.\n"
 
-#: builtin/merge.c:798
-#, fuzzy, c-format
+#: builtin/merge.c:804
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
 "especially if it merges an updated upstream into a topic branch.\n"
 "\n"
+msgstr ""
+"Inserisci un messaggio di commit per spiegare perché è necessario\n"
+"questo merge, in particolare se si esegue il merge di un upstream\n"
+"aggiornato in un topic branch.\n"
+"\n"
+
+#: builtin/merge.c:809
+msgid "An empty message aborts the commit.\n"
+msgstr "Un messaggio vuoto interromperà il commit.\n"
+
+#: builtin/merge.c:812
+#, c-format
+msgid ""
 "Lines starting with '%c' will be ignored, and an empty message aborts\n"
 "the commit.\n"
 msgstr ""
-"Per favore inserisci il messaggio di commit per le modifiche. Le righe\n"
-"che iniziano con '#' verranno ignorate, e un messaggio vuoto annulla il "
-"commit.\n"
+"Le righe che iniziano con '%c' saranno ignorate e un messaggio vuoto\n"
+"interromperà il commit.\n"
 
-#: builtin/merge.c:834
+#: builtin/merge.c:865
 msgid "Empty commit message."
 msgstr "Messaggio di commit vuoto."
 
-#: builtin/merge.c:853
+#: builtin/merge.c:880
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Splendido.\n"
 
-#: builtin/merge.c:906
+#: builtin/merge.c:941
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr ""
-"Merge automatico fallito; risolvi i conflitti ed eseguire il commit\n"
+"Merge automatico fallito; risolvi i conflitti ed esegui il commit\n"
 "del risultato.\n"
 
-#: builtin/merge.c:945
+#: builtin/merge.c:980
 msgid "No current branch."
 msgstr "Nessun branch corrente."
 
-#: builtin/merge.c:947
+#: builtin/merge.c:982
 msgid "No remote for the current branch."
 msgstr "Nessun remote per il branch corrente."
 
-#: builtin/merge.c:949
+#: builtin/merge.c:984
 msgid "No default upstream defined for the current branch."
 msgstr "Nessun upstream di default definito per il branch corrente."
 
-#: builtin/merge.c:954
+#: builtin/merge.c:989
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
-msgstr ""
+msgstr "Nessun branch che tracci un remoto per %s da %s"
 
-#: builtin/merge.c:1011
+#: builtin/merge.c:1046
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
-msgstr ""
+msgstr "Valore errato '%s' nell'ambiente '%s'"
 
-#: builtin/merge.c:1114
-#, fuzzy, c-format
+#: builtin/merge.c:1149
+#, c-format
 msgid "not something we can merge in %s: %s"
-msgstr "%s - non è qualcosa per cui possiamo eseguire il merge"
+msgstr "non è qualcosa di cui possiamo eseguire il merge in %s: %s"
 
-#: builtin/merge.c:1148
-#, fuzzy
+#: builtin/merge.c:1183
 msgid "not something we can merge"
-msgstr "%s - non è qualcosa per cui possiamo eseguire il merge"
+msgstr "non è qualcosa di cui possiamo eseguire il merge"
 
-#: builtin/merge.c:1251
+#: builtin/merge.c:1286
 msgid "--abort expects no arguments"
-msgstr ""
+msgstr "--abort non richiede argomenti"
 
-#: builtin/merge.c:1255
+#: builtin/merge.c:1290
 msgid "There is no merge to abort (MERGE_HEAD missing)."
-msgstr "Non c'è nessun merge da interrompere (manca MERGE_HEAD)"
+msgstr "Non c'è nessun merge da interrompere (MERGE_HEAD mancante)."
+
+#: builtin/merge.c:1299
+msgid "--quit expects no arguments"
+msgstr "--quit non richiede argomenti"
 
-#: builtin/merge.c:1267
+#: builtin/merge.c:1312
 msgid "--continue expects no arguments"
-msgstr ""
+msgstr "--continue non richiede argomenti"
 
-#: builtin/merge.c:1271
-#, fuzzy
+#: builtin/merge.c:1316
 msgid "There is no merge in progress (MERGE_HEAD missing)."
-msgstr "Non c'è nessun merge da interrompere (manca MERGE_HEAD)"
+msgstr "Non c'è nessun merge in corso (MERGE_HEAD mancante)."
 
-#: builtin/merge.c:1287
-#, fuzzy
+#: builtin/merge.c:1332
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
 msgstr ""
-"Il merge non è stato concluso (esiste MERGE_HEAD).\n"
-"Per favore, esegui il commit delle modifiche prima del merge."
+"Non hai concluso il merge (MERGE_HEAD esiste).\n"
+"Esegui il commit delle modifiche prima di eseguire il merge."
 
-#: builtin/merge.c:1294
-#, fuzzy
+#: builtin/merge.c:1339
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
 msgstr ""
-"Il cherry-pick non è stato concluso (esiste CHERRY_PICK_HEAD).\n"
-"Per favore, esegui il commit delle modifiche prima del merge."
+"Non hai concluso il cherry-pick (CHERRY_PICK_HEAD esiste).\n"
+"Esegui il commit delle modifiche prima di eseguire il merge."
 
-#: builtin/merge.c:1297
+#: builtin/merge.c:1342
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
-msgstr "Il tuo cherry-pick non è stato concluso (CHERRY_PICK_HEAD esiste)."
+msgstr "Il cherry-pick non è stato concluso (CHERRY_PICK_HEAD esiste)."
 
-#: builtin/merge.c:1306
+#: builtin/merge.c:1356
 msgid "You cannot combine --squash with --no-ff."
-msgstr "Impossibile combinare --squash con --no-off."
+msgstr "Non è possibile combinare --squash con --no-ff."
 
-#: builtin/merge.c:1314
+#: builtin/merge.c:1358
+msgid "You cannot combine --squash with --commit."
+msgstr "Non è possibile combinare --squash con --commit."
+
+#: builtin/merge.c:1374
 msgid "No commit specified and merge.defaultToUpstream not set."
-msgstr "Nessun commit specificato e merge.defaultToUpstream non definito."
+msgstr "Nessun commit specificato e merge.defaultToUpstream non impostato."
 
-#: builtin/merge.c:1331
+#: builtin/merge.c:1391
 msgid "Squash commit into empty head not supported yet"
-msgstr ""
+msgstr "Lo squash di un commit in un'head vuota non è ancora supportato"
 
-#: builtin/merge.c:1333
+#: builtin/merge.c:1393
 msgid "Non-fast-forward commit does not make sense into an empty head"
-msgstr ""
+msgstr "Un commit non fast forward non ha senso in un'head vuota"
 
-#: builtin/merge.c:1338
+#: builtin/merge.c:1398
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - non è qualcosa per cui possiamo eseguire il merge"
 
-#: builtin/merge.c:1340
+#: builtin/merge.c:1400
 msgid "Can merge only exactly one commit into empty head"
-msgstr ""
+msgstr "Si può eseguire solo il merge di uno e un solo commit in un'head vuota"
 
-#: builtin/merge.c:1422
+#: builtin/merge.c:1481
 msgid "refusing to merge unrelated histories"
-msgstr ""
+msgstr "mi rifiuto di eseguire il merge di cronologie non correlate"
 
-#: builtin/merge.c:1431
-#, fuzzy
+#: builtin/merge.c:1490
 msgid "Already up to date."
-msgstr "aggiornato"
+msgstr "Già aggiornato."
 
-#: builtin/merge.c:1441
+#: builtin/merge.c:1500
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Aggiornamento di %s..%s\n"
 
-#: builtin/merge.c:1483
+#: builtin/merge.c:1542
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
-msgstr ""
+msgstr "Provo con un merge veramente banale dentro l'indice...\n"
 
-#: builtin/merge.c:1490
+#: builtin/merge.c:1549
 #, c-format
 msgid "Nope.\n"
 msgstr "No.\n"
 
-#: builtin/merge.c:1515
+#: builtin/merge.c:1574
 msgid "Already up to date. Yeeah!"
-msgstr ""
+msgstr "Già aggiornato. Oh sì!"
 
-#: builtin/merge.c:1521
+#: builtin/merge.c:1580
 msgid "Not possible to fast-forward, aborting."
-msgstr "Fast-forward non possibile, stop."
+msgstr "Fast forward non possibile, interrompo l'operazione."
 
-#: builtin/merge.c:1544 builtin/merge.c:1623
+#: builtin/merge.c:1603 builtin/merge.c:1668
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
-msgstr ""
+msgstr "Ripristino l'albero in uno stato pulito...\n"
 
-#: builtin/merge.c:1548
+#: builtin/merge.c:1607
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Tentativo con la strategia di merge %s...\n"
 
-#: builtin/merge.c:1614
+#: builtin/merge.c:1659
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "Nessuna strategia di merge ha gestito il merge.\n"
 
-#: builtin/merge.c:1616
+#: builtin/merge.c:1661
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "Merge con la strategia %s fallito.\n"
 
-#: builtin/merge.c:1625
+#: builtin/merge.c:1670
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
-msgstr ""
+msgstr "Uso %s per preparare una risoluzione manuale.\n"
 
-#: builtin/merge.c:1637
+#: builtin/merge.c:1682
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -14251,188 +16630,208 @@ msgstr ""
 
 #: builtin/merge-base.c:32
 msgid "git merge-base [-a | --all] <commit> <commit>..."
-msgstr ""
+msgstr "git merge-base [-a | --all] <commit> <commit>..."
 
 #: builtin/merge-base.c:33
 msgid "git merge-base [-a | --all] --octopus <commit>..."
-msgstr ""
+msgstr "git merge-base [-a | --all] --octopus <commit>..."
 
 #: builtin/merge-base.c:34
 msgid "git merge-base --independent <commit>..."
-msgstr ""
+msgstr "git merge-base --independent <commit>..."
 
 #: builtin/merge-base.c:35
 msgid "git merge-base --is-ancestor <commit> <commit>"
-msgstr ""
+msgstr "git merge-base --is-ancestor <commit> <commit>"
 
 #: builtin/merge-base.c:36
 msgid "git merge-base --fork-point <ref> [<commit>]"
-msgstr ""
+msgstr "git merge-base --fork-point <riferimento> [<commit>]"
 
 #: builtin/merge-base.c:153
 msgid "output all common ancestors"
-msgstr ""
+msgstr "manda in output tutti gli antenati comuni"
 
 #: builtin/merge-base.c:155
 msgid "find ancestors for a single n-way merge"
-msgstr ""
+msgstr "trova gli antenati per un singolo merge a n vie"
 
 #: builtin/merge-base.c:157
 msgid "list revs not reachable from others"
-msgstr ""
+msgstr "elenca le revisioni non raggiungibili dalle altre"
 
 #: builtin/merge-base.c:159
 msgid "is the first one ancestor of the other?"
-msgstr ""
+msgstr "il primo argomento è antenato dell'altro?"
 
 #: builtin/merge-base.c:161
 msgid "find where <commit> forked from reflog of <ref>"
 msgstr ""
+"trova il punto di fork di <commit> dal registro dei riferimenti di "
+"<riferimento>"
 
 #: builtin/merge-file.c:9
 msgid ""
 "git merge-file [<options>] [-L <name1> [-L <orig> [-L <name2>]]] <file1> "
 "<orig-file> <file2>"
 msgstr ""
+"git merge-file [<opzioni>] [-L <nome1> [-L <originale> [-L <nome2>]]] "
+"<file1> <file originale> <file2>"
 
 #: builtin/merge-file.c:35
 msgid "send results to standard output"
-msgstr ""
+msgstr "invia i risultati allo standard output"
 
 #: builtin/merge-file.c:36
 msgid "use a diff3 based merge"
-msgstr ""
+msgstr "usa un merge basato su diff3"
 
 #: builtin/merge-file.c:37
 msgid "for conflicts, use our version"
-msgstr ""
+msgstr "per i conflitti, usa la nostra versione"
 
 #: builtin/merge-file.c:39
 msgid "for conflicts, use their version"
-msgstr ""
+msgstr "per i conflitti, usa la loro versione"
 
 #: builtin/merge-file.c:41
 msgid "for conflicts, use a union version"
-msgstr ""
+msgstr "per i conflitti, usa una versione unita"
 
 #: builtin/merge-file.c:44
 msgid "for conflicts, use this marker size"
-msgstr ""
+msgstr "per i conflitti, usa questa dimensione dei contrassegni"
 
 #: builtin/merge-file.c:45
 msgid "do not warn about conflicts"
-msgstr ""
+msgstr "non emettere avvisi in caso di conflitti"
 
 #: builtin/merge-file.c:47
 msgid "set labels for file1/orig-file/file2"
-msgstr ""
+msgstr "imposta etichette per file1/file originale/file2"
 
-#: builtin/merge-recursive.c:46
-#, fuzzy, c-format
+#: builtin/merge-recursive.c:47
+#, c-format
 msgid "unknown option %s"
-msgstr "sconosciuto:    %s"
+msgstr "opzione sconosciuta %s"
 
-#: builtin/merge-recursive.c:52
-#, fuzzy, c-format
+#: builtin/merge-recursive.c:53
+#, c-format
 msgid "could not parse object '%s'"
-msgstr "Non è stato possibile analizzare l'oggetto '%s'."
+msgstr "impossibile analizzare l'oggetto '%s'"
 
-#: builtin/merge-recursive.c:56
+#: builtin/merge-recursive.c:57
 #, c-format
 msgid "cannot handle more than %d base. Ignoring %s."
 msgid_plural "cannot handle more than %d bases. Ignoring %s."
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "impossibile gestire più di %d base. Ignoro %s."
+msgstr[1] "impossibile gestire più di %d basi. Ignoro %s."
 
-#: builtin/merge-recursive.c:64
+#: builtin/merge-recursive.c:65
 msgid "not handling anything other than two heads merge."
-msgstr ""
+msgstr "non gestisco nulla che non sia il merge di due head."
 
-#: builtin/merge-recursive.c:70 builtin/merge-recursive.c:72
-#, fuzzy, c-format
+#: builtin/merge-recursive.c:74 builtin/merge-recursive.c:76
+#, c-format
 msgid "could not resolve ref '%s'"
-msgstr "non è stato possibile creare il file '%s'"
+msgstr "impossibile risolvere il riferimento '%s'"
 
-#: builtin/merge-recursive.c:78
-#, fuzzy, c-format
+#: builtin/merge-recursive.c:82
+#, c-format
 msgid "Merging %s with %s\n"
-msgstr "Rinominazione di %s in %s in corso\n"
+msgstr "Merge di %s con %s in corso\n"
 
 #: builtin/mktree.c:66
 msgid "git mktree [-z] [--missing] [--batch]"
-msgstr ""
+msgstr "git mktree [-z] [--missing] [--batch]"
 
 #: builtin/mktree.c:154
 msgid "input is NUL terminated"
-msgstr ""
+msgstr "l'input è terminato da NUL"
 
 #: builtin/mktree.c:155 builtin/write-tree.c:26
-#, fuzzy
 msgid "allow missing objects"
-msgstr "Ricezione degli oggetti"
+msgstr "consenti oggetti mancanti"
 
 #: builtin/mktree.c:156
 msgid "allow creation of more than one tree"
-msgstr ""
+msgstr "consenti la creazione di più di un albero"
 
-#: builtin/multi-pack-index.c:8
-msgid "git multi-pack-index [--object-dir=<dir>] (write|verify)"
+#: builtin/multi-pack-index.c:9
+msgid ""
+"git multi-pack-index [<options>] (write|verify|expire|repack --batch-"
+"size=<size>)"
 msgstr ""
+"git multi-pack-index [<opzioni>] (write|verify|expire|repack --batch-"
+"size=<dimensione>)"
 
-#: builtin/multi-pack-index.c:21
+#: builtin/multi-pack-index.c:26
 msgid "object directory containing set of packfile and pack-index pairs"
 msgstr ""
+"directory oggetti contenente un insieme di coppie packfile e pack-index"
 
-#: builtin/multi-pack-index.c:39
-#, fuzzy
+#: builtin/multi-pack-index.c:29
+msgid ""
+"during repack, collect pack-files of smaller size into a batch that is "
+"larger than this size"
+msgstr ""
+"durante il repack, raccogli i file pack di dimensioni più piccole in un "
+"gruppo più grande di queste dimensioni"
+
+#: builtin/multi-pack-index.c:50 builtin/prune-packed.c:67
 msgid "too many arguments"
-msgstr "Troppi argomenti."
+msgstr "troppi argomenti"
 
-#: builtin/multi-pack-index.c:48
-#, fuzzy, c-format
-msgid "unrecognized verb: %s"
-msgstr "argomento non riconosciuto: %s"
+#: builtin/multi-pack-index.c:60
+msgid "--batch-size option is only for 'repack' subcommand"
+msgstr "l'opzione --batch-size è consentita solo per il sottocomando 'repack'"
+
+#: builtin/multi-pack-index.c:69
+#, c-format
+msgid "unrecognized subcommand: %s"
+msgstr "sottocomando sconosciuto: %s"
 
 #: builtin/mv.c:18
 msgid "git mv [<options>] <source>... <destination>"
-msgstr ""
+msgstr "git mv [<opzioni>] <sorgente>... <destinazione>"
 
 #: builtin/mv.c:83
 #, c-format
 msgid "Directory %s is in index and no submodule?"
-msgstr ""
+msgstr "La directory %s è nell'indice e non è specificato un sottomodulo?"
 
 #: builtin/mv.c:85
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
+"Esegui lo stage delle modifiche a .gitmodules o eseguine lo stash per "
+"procedere"
 
 #: builtin/mv.c:103
-#, fuzzy, c-format
+#, c-format
 msgid "%.*s is in index"
-msgstr "Eh? %.*s si trova in index?"
+msgstr "%.*s è nell'indice"
 
 #: builtin/mv.c:125
 msgid "force move/rename even if target exists"
-msgstr ""
+msgstr "forza spostamento/ridenominazione anche se la destinazione esiste"
 
 #: builtin/mv.c:127
-#, fuzzy
 msgid "skip move/rename errors"
-msgstr "errore del programma"
+msgstr "salta errori spostamento/ridenominazione"
 
 #: builtin/mv.c:169
-#, fuzzy, c-format
+#, c-format
 msgid "destination '%s' is not a directory"
-msgstr "%s esiste e non è una directory"
+msgstr "la destinazione '%s' non è una directory"
 
 #: builtin/mv.c:180
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
-msgstr ""
+msgstr "Controllo la ridenominazione di '%s' in '%s'\n"
 
 #: builtin/mv.c:184
 msgid "bad source"
-msgstr ""
+msgstr "sourgente errata"
 
 #: builtin/mv.c:187
 msgid "can not move directory into itself"
@@ -14468,9 +16867,8 @@ msgid "multiple sources for the same target"
 msgstr "fonti multiple per la stessa destinazione"
 
 #: builtin/mv.c:243
-#, fuzzy
 msgid "destination directory does not exist"
-msgstr "il repository '%s' non esiste"
+msgstr "la directory di destinazione non esiste"
 
 #: builtin/mv.c:250
 #, c-format
@@ -14482,168 +16880,171 @@ msgstr "%s, sorgente=%s, destinazione=%s"
 msgid "Renaming %s to %s\n"
 msgstr "Rinominazione di %s in %s in corso\n"
 
-#: builtin/mv.c:277 builtin/remote.c:717 builtin/repack.c:513
+#: builtin/mv.c:277 builtin/remote.c:781 builtin/repack.c:518
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "rinomina di '%s' non riuscita"
 
-#: builtin/name-rev.c:355
-#, fuzzy
+#: builtin/name-rev.c:465
 msgid "git name-rev [<options>] <commit>..."
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git name-rev [<opzioni>] <commit>..."
 
-#: builtin/name-rev.c:356
+#: builtin/name-rev.c:466
 msgid "git name-rev [<options>] --all"
-msgstr ""
+msgstr "git name-rev [<opzioni>] --all"
 
-#: builtin/name-rev.c:357
+#: builtin/name-rev.c:467
 msgid "git name-rev [<options>] --stdin"
-msgstr ""
+msgstr "git name-rev [<opzioni>] --stdin"
 
-#: builtin/name-rev.c:413
+#: builtin/name-rev.c:524
 msgid "print only names (no SHA-1)"
-msgstr ""
+msgstr "stampa solo i nomi (non lo SHA-1)"
 
-#: builtin/name-rev.c:414
+#: builtin/name-rev.c:525
 msgid "only use tags to name the commits"
-msgstr ""
+msgstr "usa solo tag per denominare i commit"
 
-#: builtin/name-rev.c:416
-#, fuzzy
+#: builtin/name-rev.c:527
 msgid "only use refs matching <pattern>"
-msgstr "Stampa le righe corrispondenti ad un modello"
+msgstr "usa solo i riferimenti corrispondenti a <pattern>"
 
-#: builtin/name-rev.c:418
-#, fuzzy
+#: builtin/name-rev.c:529
 msgid "ignore refs matching <pattern>"
-msgstr "Stampa le righe corrispondenti ad un modello"
+msgstr "ignora i riferimenti corrispondenti a <pattern>"
 
-#: builtin/name-rev.c:420
+#: builtin/name-rev.c:531
 msgid "list all commits reachable from all refs"
-msgstr ""
+msgstr "elenca tutti i commit raggiungibili da tutti i riferimenti"
 
-#: builtin/name-rev.c:421
+#: builtin/name-rev.c:532
 msgid "read from stdin"
-msgstr ""
+msgstr "leggi dallo standard input"
 
-#: builtin/name-rev.c:422
+#: builtin/name-rev.c:533
 msgid "allow to print `undefined` names (default)"
-msgstr ""
+msgstr "consenti di stampare nomi `non definito` (impostazione predefinita)"
 
-#: builtin/name-rev.c:428
+#: builtin/name-rev.c:539
 msgid "dereference tags in the input (internal use)"
-msgstr ""
+msgstr "dereferenzia tag nell'input (uso interno)"
 
 #: builtin/notes.c:28
 msgid "git notes [--ref <notes-ref>] [list [<object>]]"
-msgstr ""
+msgstr "git notes [--ref <riferimento note>] [list [<oggetto>]]"
 
 #: builtin/notes.c:29
 msgid ""
 "git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F <file> "
 "| (-c | -C) <object>] [<object>]"
 msgstr ""
+"git notes [--ref <riferimento note>] add [-f] [--allow-empty] [-m "
+"<messaggio> | -F <file> | (-c | -C) <oggetto>] [<oggetto>]"
 
 #: builtin/notes.c:30
 msgid "git notes [--ref <notes-ref>] copy [-f] <from-object> <to-object>"
 msgstr ""
+"git notes [--ref <riferimento note>] copy [-f] <oggetto sorgente> <oggetto "
+"destinazione>"
 
 #: builtin/notes.c:31
 msgid ""
 "git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F <file> | "
 "(-c | -C) <object>] [<object>]"
 msgstr ""
+"git notes [--ref <riferimento note>] append [--allow-empty] [-m <messaggio> "
+"| -F <file> | (-c | -C) <oggetto>] [<oggetto>]"
 
 #: builtin/notes.c:32
 msgid "git notes [--ref <notes-ref>] edit [--allow-empty] [<object>]"
-msgstr ""
+msgstr "git notes [--ref <riferimento note>] edit [--allow-empty] [<oggetto>]"
 
 #: builtin/notes.c:33
 msgid "git notes [--ref <notes-ref>] show [<object>]"
-msgstr ""
+msgstr "git notes [--ref <riferimento note>] show [<oggetto>]"
 
 #: builtin/notes.c:34
 msgid ""
 "git notes [--ref <notes-ref>] merge [-v | -q] [-s <strategy>] <notes-ref>"
 msgstr ""
+"git notes [--ref <riferimento note>] merge [-v | -q] [-s <strategia>] "
+"<riferimento note>"
 
 #: builtin/notes.c:35
 msgid "git notes merge --commit [-v | -q]"
-msgstr ""
+msgstr "git notes merge --commit [-v | -q]"
 
 #: builtin/notes.c:36
 msgid "git notes merge --abort [-v | -q]"
-msgstr ""
+msgstr "git notes merge --abort [-v | -q]"
 
 #: builtin/notes.c:37
 msgid "git notes [--ref <notes-ref>] remove [<object>...]"
-msgstr ""
+msgstr "git notes [--ref <riferimento note>] remove [<oggetto>...]"
 
 #: builtin/notes.c:38
 msgid "git notes [--ref <notes-ref>] prune [-n] [-v]"
-msgstr ""
+msgstr "git notes [--ref <riferimento note>] prune [-n] [-v]"
 
 #: builtin/notes.c:39
 msgid "git notes [--ref <notes-ref>] get-ref"
-msgstr ""
+msgstr "git notes [--ref <riferimento note>] get-ref"
 
 #: builtin/notes.c:44
 msgid "git notes [list [<object>]]"
-msgstr ""
+msgstr "git notes [list [<oggetto>]]"
 
 #: builtin/notes.c:49
-#, fuzzy
 msgid "git notes add [<options>] [<object>]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git notes add [<opzioni>] [<oggetto>]"
 
 #: builtin/notes.c:54
 msgid "git notes copy [<options>] <from-object> <to-object>"
-msgstr ""
+msgstr "git notes copy [<oggetto>] <oggetto sorgente> <oggetto destinazione>"
 
 #: builtin/notes.c:55
 msgid "git notes copy --stdin [<from-object> <to-object>]..."
-msgstr ""
+msgstr "git notes copy --stdin [<oggetto sorgente> <oggetto destinazione>]..."
 
 #: builtin/notes.c:60
-#, fuzzy
 msgid "git notes append [<options>] [<object>]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git notes append [<opzioni>] [<oggetto>]"
 
 #: builtin/notes.c:65
 msgid "git notes edit [<object>]"
-msgstr ""
+msgstr "git notes edit [<oggetto>]"
 
 #: builtin/notes.c:70
 msgid "git notes show [<object>]"
-msgstr ""
+msgstr "git notes show [<oggetto>]"
 
 #: builtin/notes.c:75
 msgid "git notes merge [<options>] <notes-ref>"
-msgstr ""
+msgstr "git notes merge [<opzioni>] <riferimento note>"
 
 #: builtin/notes.c:76
 msgid "git notes merge --commit [<options>]"
-msgstr ""
+msgstr "git notes merge --commit [<opzioni>]"
 
 #: builtin/notes.c:77
 msgid "git notes merge --abort [<options>]"
-msgstr ""
+msgstr "git notes merge --abort [<opzioni>]"
 
 #: builtin/notes.c:82
 msgid "git notes remove [<object>]"
-msgstr ""
+msgstr "git notes remove [<oggetto>]"
 
 #: builtin/notes.c:87
 msgid "git notes prune [<options>]"
-msgstr ""
+msgstr "git notes prune [<opzioni>]"
 
 #: builtin/notes.c:92
 msgid "git notes get-ref"
-msgstr ""
+msgstr "git notes get-ref"
 
 #: builtin/notes.c:97
 msgid "Write/edit the notes for the following object:"
-msgstr ""
+msgstr "Scrivi/modifica le note per l'oggetto seguente:"
 
 #: builtin/notes.c:150
 #, c-format
@@ -14651,30 +17052,28 @@ msgid "unable to start 'show' for object '%s'"
 msgstr "impossibile avviare 'show' per l'oggetto '%s'"
 
 #: builtin/notes.c:154
-#, fuzzy
 msgid "could not read 'show' output"
-msgstr "non è stato possibile leggere '%s'"
+msgstr "impossibile leggere l'output di 'show'"
 
 #: builtin/notes.c:162
 #, c-format
 msgid "failed to finish 'show' for object '%s'"
-msgstr ""
+msgstr "impossibile terminare 'show' per l'oggetto '%s'"
 
 #: builtin/notes.c:197
-#, fuzzy
 msgid "please supply the note contents using either -m or -F option"
-msgstr "Per favore specifica il contenuto delle note usando le opzioni -m o -F"
+msgstr "fornisci i contenuti delle note usando l'opzione -m o -F"
 
 #: builtin/notes.c:206
 msgid "unable to write note object"
 msgstr "impossibile scrivere l'oggetto nota"
 
 #: builtin/notes.c:208
-#, fuzzy, c-format
+#, c-format
 msgid "the note contents have been left in %s"
-msgstr "Il contenuto della nota è stato lasciato in %s"
+msgstr "i contenuti della nota sono stati lasciati in %s"
 
-#: builtin/notes.c:242 builtin/tag.c:513
+#: builtin/notes.c:242 builtin/tag.c:532
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "non è stato possibile aprire o leggere '%s'"
@@ -14682,37 +17081,38 @@ msgstr "non è stato possibile aprire o leggere '%s'"
 #: builtin/notes.c:263 builtin/notes.c:313 builtin/notes.c:315
 #: builtin/notes.c:383 builtin/notes.c:438 builtin/notes.c:526
 #: builtin/notes.c:531 builtin/notes.c:610 builtin/notes.c:672
-#, fuzzy, c-format
+#, c-format
 msgid "failed to resolve '%s' as a valid ref."
-msgstr "rimozione di %s non riuscita"
+msgstr "impossibile risolvere '%s' come riferimento valido."
 
 #: builtin/notes.c:265
-#, fuzzy, c-format
+#, c-format
 msgid "failed to read object '%s'."
-msgstr "Lettura dell'oggetto '%s' non riuscita."
+msgstr "lettura dell'oggetto '%s' non riuscita."
 
 #: builtin/notes.c:268
-#, fuzzy, c-format
+#, c-format
 msgid "cannot read note data from non-blob object '%s'."
-msgstr "non è possibile leggere l'oggetto %s esistente"
+msgstr "impossibile leggere i dati della nota dall'oggetto non blob '%s'."
 
 #: builtin/notes.c:309
-#, fuzzy, c-format
+#, c-format
 msgid "malformed input line: '%s'."
-msgstr "Riga di input malformata: '%s'."
+msgstr "riga di input malformata: '%s'."
 
 #: builtin/notes.c:324
-#, fuzzy, c-format
+#, c-format
 msgid "failed to copy notes from '%s' to '%s'"
-msgstr "Copia delle note da '%s' a '%s' non riuscita"
+msgstr "copia delle note da '%s' a '%s' non riuscita"
 
 #. TRANSLATORS: the first %s will be replaced by a git
 #. notes command: 'add', 'merge', 'remove', etc.
 #.
 #: builtin/notes.c:356
-#, fuzzy, c-format
+#, c-format
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
-msgstr "Impossibile riscrivere le note in %s (al di fuori di refs/notes/)"
+msgstr ""
+"mi rifiuto di eseguire %s delle note in %s (al di fuori di refs/notes/)"
 
 #: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:509
 #: builtin/notes.c:521 builtin/notes.c:598 builtin/notes.c:665
@@ -14721,38 +17121,33 @@ msgid "too many parameters"
 msgstr "troppi parametri"
 
 #: builtin/notes.c:389 builtin/notes.c:678
-#, fuzzy, c-format
+#, c-format
 msgid "no note found for object %s."
-msgstr "Nessuna nota trovata per l'oggetto %s."
+msgstr "nessuna nota trovata per l'oggetto %s."
 
 #: builtin/notes.c:410 builtin/notes.c:576
-#, fuzzy
 msgid "note contents as a string"
-msgstr "Il contenuto della nota è stato lasciato in %s"
+msgstr "contenuti della nota come stringa"
 
 #: builtin/notes.c:413 builtin/notes.c:579
-#, fuzzy
 msgid "note contents in a file"
-msgstr "impossibile archiviare index file"
+msgstr "contenuti della nota in un file"
 
 #: builtin/notes.c:416 builtin/notes.c:582
-#, fuzzy
 msgid "reuse and edit specified note object"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "riusa l'oggetto nota specificato per poi modificarlo"
 
 #: builtin/notes.c:419 builtin/notes.c:585
-#, fuzzy
 msgid "reuse specified note object"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "riusa l'oggetto nota specificato"
 
 #: builtin/notes.c:422 builtin/notes.c:588
 msgid "allow storing empty note"
-msgstr ""
+msgstr "consenti il salvataggio di una nota vuota"
 
 #: builtin/notes.c:423 builtin/notes.c:496
-#, fuzzy
 msgid "replace existing notes"
-msgstr "non è possibile leggere l'oggetto %s esistente"
+msgstr "sostituisci le note esistenti"
 
 #: builtin/notes.c:448
 #, c-format
@@ -14760,6 +17155,8 @@ msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
 "existing notes"
 msgstr ""
+"Impossibile aggiungere note. Trovate note esistenti per l'oggetto %s. Usa '-"
+"f' per sovrascrivere le note esistenti"
 
 #: builtin/notes.c:463 builtin/notes.c:544
 #, c-format
@@ -14772,13 +17169,13 @@ msgid "Removing note for object %s\n"
 msgstr "Rimozione della nota per l'oggetto %s\n"
 
 #: builtin/notes.c:497
-#, fuzzy
 msgid "read objects from stdin"
-msgstr "oggetto %s errato"
+msgstr "leggi oggetti dallo standard input"
 
 #: builtin/notes.c:499
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr ""
+"carica la configurazione di riscrittura per <comando> (implica --stdin)"
 
 #: builtin/notes.c:517
 msgid "too few parameters"
@@ -14794,9 +17191,9 @@ msgstr ""
 "f' per sovrascrivere le note esistenti"
 
 #: builtin/notes.c:550
-#, fuzzy, c-format
+#, c-format
 msgid "missing notes on source object %s. Cannot copy."
-msgstr "Note mancanti per l'oggetto sorgente %s. Impossibile copiare."
+msgstr "note mancanti per l'oggetto sorgente %s. Impossibile copiare."
 
 #: builtin/notes.c:603
 #, c-format
@@ -14805,100 +17202,103 @@ msgid ""
 "Please use 'git notes add -f -m/-F/-c/-C' instead.\n"
 msgstr ""
 "Le opzioni -m/-F/-c/-C per il sottocomando 'edit' sono deprecate.\n"
-"Per favore usa 'git notes add -f -m/-F/-c/-C' invece.\n"
+"Usa 'git notes add -f -m/-F/-c/-C' al loro posto.\n"
 
 #: builtin/notes.c:698
 msgid "failed to delete ref NOTES_MERGE_PARTIAL"
-msgstr ""
+msgstr "eliminazione del riferimento NOTES_MERGE_PARTIAL non riuscita"
 
 #: builtin/notes.c:700
 msgid "failed to delete ref NOTES_MERGE_REF"
-msgstr ""
+msgstr "eliminazione del riferimento NOTES_MERGE_REF non riuscita"
 
 #: builtin/notes.c:702
 msgid "failed to remove 'git notes merge' worktree"
-msgstr ""
+msgstr "rimozione dell'albero di lavoro di 'git notes merge' non riuscita"
 
 #: builtin/notes.c:722
 msgid "failed to read ref NOTES_MERGE_PARTIAL"
-msgstr ""
+msgstr "lettura del riferimento NOTES_MERGE_PARTIAL non riuscita"
 
 #: builtin/notes.c:724
 msgid "could not find commit from NOTES_MERGE_PARTIAL."
-msgstr ""
+msgstr "impossibile trovare il commit da NOTES_MERGE_PARTIAL."
 
 #: builtin/notes.c:726
 msgid "could not parse commit from NOTES_MERGE_PARTIAL."
-msgstr ""
+msgstr "impossibile analizzare il commit da NOTES_MERGE_PARTIAL."
 
 #: builtin/notes.c:739
-#, fuzzy
 msgid "failed to resolve NOTES_MERGE_REF"
-msgstr "rimozione di %s non riuscita"
+msgstr "risoluzione di NOTES_MERGE_REF non riuscita"
 
 #: builtin/notes.c:742
 msgid "failed to finalize notes merge"
-msgstr ""
+msgstr "finalizzazione del merge delle note non riuscita"
 
 #: builtin/notes.c:768
-#, fuzzy, c-format
+#, c-format
 msgid "unknown notes merge strategy %s"
-msgstr "Non è stato possibile trovare la strategia di merge '%s'.\n"
+msgstr "strategia di merge delle note %s sconosciuta"
 
 #: builtin/notes.c:784
-#, fuzzy
 msgid "General options"
-msgstr "opzione non valida: %s"
+msgstr "Opzioni generali"
 
 #: builtin/notes.c:786
 msgid "Merge options"
-msgstr ""
+msgstr "Opzioni merge"
 
 #: builtin/notes.c:788
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
 msgstr ""
+"risolvi i conflitti delle note usando la strategia data (manual/ours/theirs/"
+"union/cat_sort_uniq)"
 
 #: builtin/notes.c:790
 msgid "Committing unmerged notes"
-msgstr ""
+msgstr "Commit delle note non sottoposte a merge"
 
 #: builtin/notes.c:792
 msgid "finalize notes merge by committing unmerged notes"
 msgstr ""
+"finalizza il merge delle note eseguendo il commit delle note non sottoposte "
+"a merge"
 
 #: builtin/notes.c:794
 msgid "Aborting notes merge resolution"
-msgstr ""
+msgstr "Interruzione della risoluzione del merge delle note"
 
 #: builtin/notes.c:796
 msgid "abort notes merge"
-msgstr ""
+msgstr "interrompi il merge delle note"
 
 #: builtin/notes.c:807
 msgid "cannot mix --commit, --abort or -s/--strategy"
-msgstr ""
+msgstr "impossibile usare contemporaneamente --commit, --abort o -s/--strategy"
 
 #: builtin/notes.c:812
-#, fuzzy
 msgid "must specify a notes ref to merge"
-msgstr "Devi specificare un repository da clonare."
+msgstr "devi specificare un riferimento note da sottoporre a merge"
 
 #: builtin/notes.c:836
 #, c-format
 msgid "unknown -s/--strategy: %s"
-msgstr ""
+msgstr "-s/--strategy sconosciuta: %s"
 
 #: builtin/notes.c:873
-#, fuzzy, c-format
+#, c-format
 msgid "a notes merge into %s is already in-progress at %s"
-msgstr "è già in corso un'operazione di cherry-pick o di revert"
+msgstr "è già in corso un'operazione di merge delle note in %s al percorso %s"
 
 #: builtin/notes.c:876
 #, c-format
 msgid "failed to store link to current notes ref (%s)"
 msgstr ""
+"salvataggio del collegamento al riferimento corrente delle note (%s) non "
+"riuscito"
 
 #: builtin/notes.c:878
 #, c-format
@@ -14907,6 +17307,14 @@ msgid ""
 "'git notes merge --commit', or abort the merge with 'git notes merge --"
 "abort'.\n"
 msgstr ""
+"Merge automatico delle note non riuscito. Risolvi i conflitti in %s ed "
+"esegui il commit del risultato con 'git notes merge --commit' o interrompi "
+"il merge con 'git notes merge --abort'.\n"
+
+#: builtin/notes.c:897 builtin/tag.c:545
+#, c-format
+msgid "Failed to resolve '%s' as a valid ref."
+msgstr "Risoluzione di '%s' come riferimento valido non riuscita."
 
 #: builtin/notes.c:900
 #, c-format
@@ -14915,629 +17323,607 @@ msgstr "L'oggetto %s non ha note.\n"
 
 #: builtin/notes.c:912
 msgid "attempt to remove non-existent note is not an error"
-msgstr ""
+msgstr "il tentativo di rimuovere una nota inesistente non è un errore"
 
 #: builtin/notes.c:915
-#, fuzzy
 msgid "read object names from the standard input"
-msgstr "(lettura del messaggio di log dallo standard input)\n"
+msgstr "leggi i nomi degli oggetti dallo standard input"
 
-#: builtin/notes.c:954 builtin/prune.c:108 builtin/worktree.c:165
-#, fuzzy
+#: builtin/notes.c:954 builtin/prune.c:130 builtin/worktree.c:164
 msgid "do not remove, show only"
-msgstr "Non è stato possibile rimuovere il branch %s"
+msgstr "non rimuovere, limitati a visualizzare"
 
 #: builtin/notes.c:955
 msgid "report pruned notes"
-msgstr ""
+msgstr "segnala le note eliminate"
 
 #: builtin/notes.c:998
 msgid "notes-ref"
-msgstr ""
+msgstr "riferimento note"
 
 #: builtin/notes.c:999
 msgid "use notes from <notes-ref>"
-msgstr ""
+msgstr "usa le note in <riferimento note>"
 
-#: builtin/notes.c:1034
-#, fuzzy, c-format
+#: builtin/notes.c:1034 builtin/stash.c:1643
+#, c-format
 msgid "unknown subcommand: %s"
-msgstr "Sottocomando sconosciuto: %s"
+msgstr "sottocomando sconosciuto: %s"
 
-#: builtin/pack-objects.c:51
+#: builtin/pack-objects.c:52
 msgid ""
 "git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
 msgstr ""
+"git pack-objects --stdout [<opzioni>...] [< <elenco riferimenti> | < <elenco "
+"oggetti>]"
 
-#: builtin/pack-objects.c:52
+#: builtin/pack-objects.c:53
 msgid ""
 "git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
 msgstr ""
+"git pack-objects [<opzioni>...] <nome base> [< <elenco riferimenti> | < "
+"<elenco oggetti>]"
 
-#: builtin/pack-objects.c:423
-#, fuzzy, c-format
+#: builtin/pack-objects.c:430
+#, c-format
 msgid "bad packed object CRC for %s"
-msgstr "oggetto %s errato"
+msgstr "CRC oggetto sottoposto a pack %s errato"
 
-#: builtin/pack-objects.c:434
-#, fuzzy, c-format
+#: builtin/pack-objects.c:441
+#, c-format
 msgid "corrupt packed object for %s"
-msgstr "patch corrotta per il sottoprogetto %s"
+msgstr "oggetto sottoposto a pack %s corrotto"
 
-#: builtin/pack-objects.c:565
+#: builtin/pack-objects.c:572
 #, c-format
 msgid "recursive delta detected for object %s"
-msgstr ""
+msgstr "rilevato delta ricorsivo per l'oggetto %s"
 
-#: builtin/pack-objects.c:776
+#: builtin/pack-objects.c:783
 #, c-format
 msgid "ordered %u objects, expected %<PRIu32>"
-msgstr ""
-
-#: builtin/pack-objects.c:789
-#, fuzzy, c-format
-msgid "packfile is invalid: %s"
-msgstr "%s non valido"
-
-#: builtin/pack-objects.c:793
-#, fuzzy, c-format
-msgid "unable to open packfile for reuse: %s"
-msgstr "impossibile aprire o leggere %s"
-
-#: builtin/pack-objects.c:797
-#, fuzzy
-msgid "unable to seek in reused packfile"
-msgstr "impossibile leggere index file"
-
-#: builtin/pack-objects.c:808
-#, fuzzy
-msgid "unable to read from reused packfile"
-msgstr "impossibile leggere index file"
+msgstr "%u oggetti ordinati, attesi %<PRIu32>"
 
-#: builtin/pack-objects.c:836
+#: builtin/pack-objects.c:972
 msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
 msgstr ""
+"disabilito la scrittura delle bitmap, i pack sono divisi a causa "
+"dell'impostazione pack.packSizeLimit"
 
-#: builtin/pack-objects.c:849
-#, fuzzy
+#: builtin/pack-objects.c:985
 msgid "Writing objects"
-msgstr "Ricezione degli oggetti"
+msgstr "Scrittura degli oggetti in corso"
 
-#: builtin/pack-objects.c:911 builtin/update-index.c:89
-#, fuzzy, c-format
+#: builtin/pack-objects.c:1046 builtin/update-index.c:90
+#, c-format
 msgid "failed to stat %s"
-msgstr "stat di %s non riuscito\n"
+msgstr "stat di %s non riuscito"
 
-#: builtin/pack-objects.c:964
+#: builtin/pack-objects.c:1099
 #, c-format
 msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
-msgstr ""
+msgstr "scritti %<PRIu32> oggetti quando me ne attendevo %<PRIu32>"
 
-#: builtin/pack-objects.c:1158
+#: builtin/pack-objects.c:1297
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr ""
+"disabilito la scrittura delle bitmap perché alcuni oggetti non saranno "
+"sottoposti a pack"
 
-#: builtin/pack-objects.c:1586
+#: builtin/pack-objects.c:1724
 #, c-format
 msgid "delta base offset overflow in pack for %s"
-msgstr ""
+msgstr "overflow dell'offset base del delta nel pack per %s"
 
-#: builtin/pack-objects.c:1595
+#: builtin/pack-objects.c:1733
 #, c-format
 msgid "delta base offset out of bound for %s"
-msgstr ""
+msgstr "offset base del delta fuori dall'intervallo consentito per %s"
 
-#: builtin/pack-objects.c:1864
-#, fuzzy
+#: builtin/pack-objects.c:2004
 msgid "Counting objects"
-msgstr "Indicizzazione degli oggetti"
-
-#: builtin/pack-objects.c:1994
-#, fuzzy, c-format
-msgid "unable to get size of %s"
-msgstr "impossibile spostare %s in %s"
+msgstr "Conteggio degli oggetti in corso"
 
-#: builtin/pack-objects.c:2009
-#, fuzzy, c-format
+#: builtin/pack-objects.c:2149
+#, c-format
 msgid "unable to parse object header of %s"
-msgstr "impossibile aprire o leggere %s"
+msgstr "impossibile analizzare l'intestazione oggetto di %s"
 
-#: builtin/pack-objects.c:2079 builtin/pack-objects.c:2095
-#: builtin/pack-objects.c:2105
-#, fuzzy, c-format
+#: builtin/pack-objects.c:2219 builtin/pack-objects.c:2235
+#: builtin/pack-objects.c:2245
+#, c-format
 msgid "object %s cannot be read"
-msgstr "oggetto %s non trovato"
+msgstr "impossibile leggere l'oggetto %s"
 
-#: builtin/pack-objects.c:2082 builtin/pack-objects.c:2109
+#: builtin/pack-objects.c:2222 builtin/pack-objects.c:2249
 #, c-format
 msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
 msgstr ""
+"oggetto %s: lunghezza oggetto inconsistente (%<PRIuMAX> contro %<PRIuMAX>)"
 
-#: builtin/pack-objects.c:2119
+#: builtin/pack-objects.c:2259
 msgid "suboptimal pack - out of memory"
-msgstr ""
+msgstr "pack subottimo - memoria esaurita"
 
-#: builtin/pack-objects.c:2445
+#: builtin/pack-objects.c:2574
 #, c-format
 msgid "Delta compression using up to %d threads"
-msgstr ""
+msgstr "Compressione delta in corso, uso fino a %d thread"
 
-#: builtin/pack-objects.c:2577
-#, fuzzy, c-format
+#: builtin/pack-objects.c:2713
+#, c-format
 msgid "unable to pack objects reachable from tag %s"
-msgstr "impossibile aggiungere la voce della cache per %s"
+msgstr "impossibile eseguire il pack degli oggetti raggiungibili dal tag %s"
 
-#: builtin/pack-objects.c:2664
-#, fuzzy
+#: builtin/pack-objects.c:2801
 msgid "Compressing objects"
-msgstr "Indicizzazione degli oggetti"
+msgstr "Compressione oggetti in corso"
 
-#: builtin/pack-objects.c:2670
+#: builtin/pack-objects.c:2807
 msgid "inconsistency with delta count"
-msgstr ""
+msgstr "inconsistenza con il numero dei delta"
 
-#: builtin/pack-objects.c:2751
+#: builtin/pack-objects.c:2888
 #, c-format
 msgid ""
 "expected edge object ID, got garbage:\n"
 " %s"
 msgstr ""
+"atteso ID oggetto arco, ricevuti dati errati:\n"
+" %s"
 
-#: builtin/pack-objects.c:2757
+#: builtin/pack-objects.c:2894
 #, c-format
 msgid ""
 "expected object ID, got garbage:\n"
 " %s"
 msgstr ""
+"atteso ID oggetto, ricevuti dati errati:\n"
+" %s"
 
-#: builtin/pack-objects.c:2855
-#, fuzzy
+#: builtin/pack-objects.c:2992
 msgid "invalid value for --missing"
-msgstr "Valore non valido per %s: %s"
+msgstr "valore non valido per --missing"
 
-#: builtin/pack-objects.c:2914 builtin/pack-objects.c:3022
-#, fuzzy
+#: builtin/pack-objects.c:3051 builtin/pack-objects.c:3159
 msgid "cannot open pack index"
-msgstr "impossibile archiviare il file pack"
+msgstr "impossibile aprire l'indice pack"
 
-#: builtin/pack-objects.c:2945
+#: builtin/pack-objects.c:3082
 #, c-format
 msgid "loose object at %s could not be examined"
-msgstr ""
+msgstr "impossibile esaminare l'oggetto sciolto %s"
 
-#: builtin/pack-objects.c:3030
-#, fuzzy
+#: builtin/pack-objects.c:3167
 msgid "unable to force loose object"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "impossibile forzare l'oggetto sciolto"
 
-#: builtin/pack-objects.c:3122
-#, fuzzy, c-format
+#: builtin/pack-objects.c:3260
+#, c-format
 msgid "not a rev '%s'"
-msgstr "impossibile leggere '%s'"
+msgstr "'%s' non è una revisione"
 
-#: builtin/pack-objects.c:3125
-#, fuzzy, c-format
+#: builtin/pack-objects.c:3263
+#, c-format
 msgid "bad revision '%s'"
-msgstr "repository '%s' errato"
+msgstr "revisione '%s' errata"
 
-#: builtin/pack-objects.c:3150
-#, fuzzy
+#: builtin/pack-objects.c:3288
 msgid "unable to add recent objects"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "impossibile aggiungere gli oggetti recenti"
 
-#: builtin/pack-objects.c:3203
+#: builtin/pack-objects.c:3341
 #, c-format
 msgid "unsupported index version %s"
 msgstr "versione %s di index non supportata"
 
-#: builtin/pack-objects.c:3207
+#: builtin/pack-objects.c:3345
 #, c-format
 msgid "bad index version '%s'"
 msgstr "versione '%s' di index errata"
 
-#: builtin/pack-objects.c:3237
-msgid "do not show progress meter"
-msgstr ""
-
-#: builtin/pack-objects.c:3239
-msgid "show progress meter"
-msgstr ""
-
-#: builtin/pack-objects.c:3241
-msgid "show progress meter during object writing phase"
-msgstr ""
-
-#: builtin/pack-objects.c:3244
-msgid "similar to --all-progress when progress meter is shown"
-msgstr ""
-
-#: builtin/pack-objects.c:3245
+#: builtin/pack-objects.c:3383
 msgid "<version>[,<offset>]"
-msgstr ""
+msgstr "<versione>[,<offset>]"
 
-#: builtin/pack-objects.c:3246
+#: builtin/pack-objects.c:3384
 msgid "write the pack index file in the specified idx format version"
-msgstr ""
+msgstr "scrivi il file indice pack usando la versione formato idx specificata"
 
-#: builtin/pack-objects.c:3249
-#, fuzzy
+#: builtin/pack-objects.c:3387
 msgid "maximum size of each output pack file"
-msgstr "Creazione dei file di output non riuscita"
+msgstr "dimensione massima di ogni file pack in output"
 
-#: builtin/pack-objects.c:3251
+#: builtin/pack-objects.c:3389
 msgid "ignore borrowed objects from alternate object store"
-msgstr ""
+msgstr "ignora gli oggetti presi in prestito dallo store oggetti alternativo"
 
-#: builtin/pack-objects.c:3253
-#, fuzzy
+#: builtin/pack-objects.c:3391
 msgid "ignore packed objects"
-msgstr "Non è stato possibile leggere l'oggetto %s"
+msgstr "ignora gli oggetti sottoposti a pack"
 
-#: builtin/pack-objects.c:3255
+#: builtin/pack-objects.c:3393
 msgid "limit pack window by objects"
-msgstr ""
+msgstr "limita la finestra di pack al numero di oggetti specificato"
 
-#: builtin/pack-objects.c:3257
+#: builtin/pack-objects.c:3395
 msgid "limit pack window by memory in addition to object limit"
 msgstr ""
+"limita la finestra di pack alla memoria specificata in aggiunta al limite "
+"sugli oggetti"
 
-#: builtin/pack-objects.c:3259
+#: builtin/pack-objects.c:3397
 msgid "maximum length of delta chain allowed in the resulting pack"
-msgstr ""
+msgstr "lunghezza massima della catena di delta consentita nel pack risultante"
 
-#: builtin/pack-objects.c:3261
-#, fuzzy
+#: builtin/pack-objects.c:3399
 msgid "reuse existing deltas"
-msgstr "Risoluzione dei delta"
+msgstr "riusa i delta esistenti"
 
-#: builtin/pack-objects.c:3263
-#, fuzzy
+#: builtin/pack-objects.c:3401
 msgid "reuse existing objects"
-msgstr "non è possibile leggere l'oggetto %s esistente"
+msgstr "riusa gli oggetti esistenti"
 
-#: builtin/pack-objects.c:3265
+#: builtin/pack-objects.c:3403
 msgid "use OFS_DELTA objects"
-msgstr ""
+msgstr "usa oggetti OFS_DELTA"
 
-#: builtin/pack-objects.c:3267
+#: builtin/pack-objects.c:3405
 msgid "use threads when searching for best delta matches"
 msgstr ""
+"usa più thread durante la ricerca delle migliori corrispondenze per i delta"
 
-#: builtin/pack-objects.c:3269
+#: builtin/pack-objects.c:3407
 msgid "do not create an empty pack output"
-msgstr ""
+msgstr "non creare un output pack vuoto"
 
-#: builtin/pack-objects.c:3271
-#, fuzzy
+#: builtin/pack-objects.c:3409
 msgid "read revision arguments from standard input"
-msgstr "(lettura del messaggio di log dallo standard input)\n"
+msgstr "leggi gli argomenti revisione dallo standard input"
 
-#: builtin/pack-objects.c:3273
+#: builtin/pack-objects.c:3411
 msgid "limit the objects to those that are not yet packed"
-msgstr ""
+msgstr "limita gli oggetti a quelli non ancora sottoposti a pack"
 
-#: builtin/pack-objects.c:3276
+#: builtin/pack-objects.c:3414
 msgid "include objects reachable from any reference"
-msgstr ""
+msgstr "includi gli oggetti raggiungibili da qualunque riferimento"
 
-#: builtin/pack-objects.c:3279
+#: builtin/pack-objects.c:3417
 msgid "include objects referred by reflog entries"
-msgstr ""
+msgstr "includi gli oggetti referenziati da voci del log riferimenti"
 
-#: builtin/pack-objects.c:3282
-#, fuzzy
+#: builtin/pack-objects.c:3420
 msgid "include objects referred to by the index"
-msgstr "Aggiunge il contenuto del file a index"
+msgstr "includi gli oggetti referenziati dall'indice"
 
-#: builtin/pack-objects.c:3285
+#: builtin/pack-objects.c:3423
 msgid "output pack to stdout"
-msgstr ""
+msgstr "invia il pack in output sullo standard output"
 
-#: builtin/pack-objects.c:3287
+#: builtin/pack-objects.c:3425
 msgid "include tag objects that refer to objects to be packed"
 msgstr ""
+"includi gli oggetti tag che fanno riferimento agli oggetti da sottoporre a "
+"pack"
 
-#: builtin/pack-objects.c:3289
+#: builtin/pack-objects.c:3427
 msgid "keep unreachable objects"
-msgstr ""
+msgstr "mantieni gli oggetti non raggiungibili"
 
-#: builtin/pack-objects.c:3291
+#: builtin/pack-objects.c:3429
 msgid "pack loose unreachable objects"
-msgstr ""
+msgstr "esegui il pack degli oggetti non raggiungibili sciolti"
 
-#: builtin/pack-objects.c:3293
+#: builtin/pack-objects.c:3431
 msgid "unpack unreachable objects newer than <time>"
-msgstr ""
+msgstr "decomprimi gli oggetti non raggiungibili più recenti di <tempo>"
 
-#: builtin/pack-objects.c:3296
+#: builtin/pack-objects.c:3434
 msgid "use the sparse reachability algorithm"
-msgstr ""
+msgstr "usa l'algoritmo di raggiungibilità sparse"
 
-#: builtin/pack-objects.c:3298
+#: builtin/pack-objects.c:3436
 msgid "create thin packs"
-msgstr ""
+msgstr "crea pack thin"
 
-#: builtin/pack-objects.c:3300
+#: builtin/pack-objects.c:3438
 msgid "create packs suitable for shallow fetches"
-msgstr ""
+msgstr "crea pack adatti per fetch shallow"
 
-#: builtin/pack-objects.c:3302
+#: builtin/pack-objects.c:3440
 msgid "ignore packs that have companion .keep file"
-msgstr ""
+msgstr "ignora i pack che hanno un file .keep che li accompagna"
 
-#: builtin/pack-objects.c:3304
+#: builtin/pack-objects.c:3442
 msgid "ignore this pack"
-msgstr ""
+msgstr "ignora questo pack"
 
-#: builtin/pack-objects.c:3306
+#: builtin/pack-objects.c:3444
 msgid "pack compression level"
-msgstr ""
+msgstr "livello compressione pack"
 
-#: builtin/pack-objects.c:3308
-#, fuzzy
+#: builtin/pack-objects.c:3446
 msgid "do not hide commits by grafts"
-msgstr "non è stato possibile scrivere il modello di commit"
+msgstr "non nascondere i commit innestati"
 
-#: builtin/pack-objects.c:3310
+#: builtin/pack-objects.c:3448
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr ""
+"usa un indice bitmap se disponibile per velocizzare il conteggio degli "
+"oggetti"
 
-#: builtin/pack-objects.c:3312
+#: builtin/pack-objects.c:3450
 msgid "write a bitmap index together with the pack index"
-msgstr ""
+msgstr "scrivi un indice bitmap insieme all'indice pack"
 
-#: builtin/pack-objects.c:3315
-#, fuzzy
+#: builtin/pack-objects.c:3454
+msgid "write a bitmap index if possible"
+msgstr "scrivi un indice bitmap se possibile"
+
+#: builtin/pack-objects.c:3458
 msgid "handling for missing objects"
-msgstr "non è possibile leggere l'oggetto %s esistente"
+msgstr "azione da eseguire sugli oggetti mancanti"
 
-#: builtin/pack-objects.c:3318
+#: builtin/pack-objects.c:3461
 msgid "do not pack objects in promisor packfiles"
-msgstr ""
+msgstr "non eseguire il pack degli oggetti nei file pack promettenti"
 
-#: builtin/pack-objects.c:3320
+#: builtin/pack-objects.c:3463
 msgid "respect islands during delta compression"
-msgstr ""
+msgstr "rispetta le isole durante la compressione delta"
 
-#: builtin/pack-objects.c:3345
+#: builtin/pack-objects.c:3492
 #, c-format
 msgid "delta chain depth %d is too deep, forcing %d"
-msgstr ""
+msgstr "la profondità della catena dei delta (%d) è troppo elevata, forzo %d"
 
-#: builtin/pack-objects.c:3350
+#: builtin/pack-objects.c:3497
 #, c-format
 msgid "pack.deltaCacheLimit is too high, forcing %d"
-msgstr ""
+msgstr "il valore pack.deltaCacheLimit è troppo elevato, forzo %d"
 
-#: builtin/pack-objects.c:3404
+#: builtin/pack-objects.c:3551
 msgid "--max-pack-size cannot be used to build a pack for transfer"
 msgstr ""
+"--max-pack-size non può essere usato per generare un pack da trasferire"
 
-#: builtin/pack-objects.c:3406
+#: builtin/pack-objects.c:3553
 msgid "minimum pack size limit is 1 MiB"
-msgstr ""
+msgstr "il limite minimo delle dimensioni dei pack è 1 MiB"
 
-#: builtin/pack-objects.c:3411
-#, fuzzy
+#: builtin/pack-objects.c:3558
 msgid "--thin cannot be used to build an indexable pack"
-msgstr "--fix-thin non può essere usato senza --stdin"
+msgstr "--thin non può essere usato per generare un pack indicizzabile"
 
-#: builtin/pack-objects.c:3414
-#, fuzzy
+#: builtin/pack-objects.c:3561
 msgid "--keep-unreachable and --unpack-unreachable are incompatible"
-msgstr "--column e --verbose non sono compatibili"
+msgstr "--keep-unreachable e --unpack-unreachable non sono compatibili"
 
-#: builtin/pack-objects.c:3420
-#, fuzzy
+#: builtin/pack-objects.c:3567
 msgid "cannot use --filter without --stdout"
-msgstr "impossibile usare -a con -d"
+msgstr "impossibile usare --filter senza --stdout"
 
-#: builtin/pack-objects.c:3479
-#, fuzzy
+#: builtin/pack-objects.c:3627
 msgid "Enumerating objects"
-msgstr "Indicizzazione degli oggetti"
+msgstr "Enumerazione degli oggetti in corso"
 
-#: builtin/pack-objects.c:3498
+#: builtin/pack-objects.c:3657
 #, c-format
-msgid "Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>)"
+msgid ""
+"Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>), pack-"
+"reused %<PRIu32>"
 msgstr ""
+"%<PRIu32> oggetti totali (%<PRIu32> delta), %<PRIu32> riutilizzati "
+"(%<PRIu32> delta), %<PRIu32> riutilizzati nel file pack"
 
-#: builtin/pack-refs.c:7
+#: builtin/pack-refs.c:8
 msgid "git pack-refs [<options>]"
-msgstr ""
+msgstr "git pack-refs [<opzioni>]"
 
-#: builtin/pack-refs.c:15
+#: builtin/pack-refs.c:16
 msgid "pack everything"
-msgstr ""
+msgstr "esegui il pack di tutto"
 
-#: builtin/pack-refs.c:16
+#: builtin/pack-refs.c:17
 msgid "prune loose refs (default)"
-msgstr ""
+msgstr "elimina i riferimenti sciolti (impostazione predefinita)"
 
 #: builtin/prune-packed.c:9
 msgid "git prune-packed [-n | --dry-run] [-q | --quiet]"
-msgstr ""
+msgstr "git prune-packed [-n | --dry-run] [-q | --quiet]"
 
 #: builtin/prune-packed.c:42
-#, fuzzy
 msgid "Removing duplicate objects"
-msgstr "Rimozione della nota per l'oggetto %s\n"
+msgstr "Rimozione oggetti duplicati in corso"
 
 #: builtin/prune.c:12
 msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
-msgstr ""
+msgstr "git prune [-n] [-v] [--progress] [--expire <tempo>] [--] [<head>...]"
 
-#: builtin/prune.c:109
-#, fuzzy
+#: builtin/prune.c:131
 msgid "report pruned objects"
-msgstr "Errore nell'oggetto"
+msgstr "segnala gli oggetti ripuliti"
 
-#: builtin/prune.c:112
+#: builtin/prune.c:134
 msgid "expire objects older than <time>"
-msgstr ""
+msgstr "fai scadere oggetti più vecchi di <tempo>"
 
-#: builtin/prune.c:114
+#: builtin/prune.c:136
 msgid "limit traversal to objects outside promisor packfiles"
-msgstr ""
+msgstr "limita la visita agli oggetti al di fuori dei file pack promettenti"
 
-#: builtin/prune.c:128
-#, fuzzy
+#: builtin/prune.c:150
 msgid "cannot prune in a precious-objects repo"
-msgstr "non è possibile leggere l'oggetto %s esistente"
+msgstr ""
+"impossibile eseguire l'eliminazione in un repository 'oggetti preziosi'"
 
-#: builtin/pull.c:61 builtin/pull.c:63
+#: builtin/pull.c:45 builtin/pull.c:47
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr "Valore non valido per %s: %s"
 
-#: builtin/pull.c:83
-#, fuzzy
+#: builtin/pull.c:67
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git pull [<opzioni>] [<repository> [<specificatore riferimento>...]]"
 
-#: builtin/pull.c:134
+#: builtin/pull.c:122
 msgid "control for recursive fetching of submodules"
-msgstr ""
+msgstr "controlla il recupero ricorsivo dei sottomoduli"
 
-#: builtin/pull.c:138
+#: builtin/pull.c:126
 msgid "Options related to merging"
-msgstr ""
+msgstr "Opzioni relative al merge"
 
-#: builtin/pull.c:141
+#: builtin/pull.c:129
 msgid "incorporate changes by rebasing rather than merging"
-msgstr ""
+msgstr "incorpora le modifiche eseguendo un rebase anziché un merge"
 
-#: builtin/pull.c:168 builtin/rebase--interactive.c:149 builtin/revert.c:123
+#: builtin/pull.c:157 builtin/rebase.c:471 builtin/revert.c:126
 msgid "allow fast-forward"
-msgstr ""
+msgstr "consenti fast forward"
 
-#: builtin/pull.c:177
+#: builtin/pull.c:166
 msgid "automatically stash/stash pop before and after rebase"
-msgstr ""
+msgstr "esegui stash/stash pop automaticamente prima e dopo il rebase"
 
-#: builtin/pull.c:193
+#: builtin/pull.c:182
 msgid "Options related to fetching"
-msgstr ""
+msgstr "Opzioni relative al fetch"
 
-#: builtin/pull.c:203
+#: builtin/pull.c:192
 msgid "force overwrite of local branch"
-msgstr ""
+msgstr "forza la sovrascrittura del branch locale"
 
-#: builtin/pull.c:211
+#: builtin/pull.c:200
 msgid "number of submodules pulled in parallel"
-msgstr ""
+msgstr "numero di sottomoduli recuperati in parallelo"
 
-#: builtin/pull.c:306
-#, fuzzy, c-format
+#: builtin/pull.c:300
+#, c-format
 msgid "Invalid value for pull.ff: %s"
-msgstr "Valore non valido per %s: %s"
+msgstr "Valore non valido per pull.ff: %s"
 
-#: builtin/pull.c:422
+#: builtin/pull.c:426
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
 msgstr ""
+"Non ci sono candidati in base ai quali eseguire il rebase fra i riferimenti "
+"appena recuperati."
 
-#: builtin/pull.c:424
+#: builtin/pull.c:428
 msgid ""
 "There are no candidates for merging among the refs that you just fetched."
 msgstr ""
+"Non ci sono candidati in base ai quali eseguire il merge fra i riferimenti "
+"appena recuperati."
 
-#: builtin/pull.c:425
+#: builtin/pull.c:429
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
 msgstr ""
+"In generale, questo significa che hai fornito uno specificatore\n"
+"riferimento che non aveva corrispondenze nel remoto."
 
-#: builtin/pull.c:428
+#: builtin/pull.c:432
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
 "a branch. Because this is not the default configured remote\n"
 "for your current branch, you must specify a branch on the command line."
 msgstr ""
+"Hai chiesto di eseguire un pull dal remoto '%s' ma non hai\n"
+"specificato un branch. Dal momento che questo non è il remoto\n"
+"configurato come predefinito per il branch corrente, devi\n"
+"specificare un branch sulla riga di comando."
 
-#: builtin/pull.c:433 builtin/rebase.c:956 git-parse-remote.sh:73
-#, fuzzy
+#: builtin/pull.c:437 builtin/rebase.c:1409 git-parse-remote.sh:73
 msgid "You are not currently on a branch."
-msgstr "Nessun remote per il branch corrente."
+msgstr "Attualmente non sei su un branch."
 
-#: builtin/pull.c:435 builtin/pull.c:450 git-parse-remote.sh:79
+#: builtin/pull.c:439 builtin/pull.c:454 git-parse-remote.sh:79
 msgid "Please specify which branch you want to rebase against."
-msgstr ""
+msgstr "Specifica il branch in base a cui vuoi effettuare il rebase."
 
-#: builtin/pull.c:437 builtin/pull.c:452 git-parse-remote.sh:82
+#: builtin/pull.c:441 builtin/pull.c:456 git-parse-remote.sh:82
 msgid "Please specify which branch you want to merge with."
-msgstr ""
+msgstr "Specifica il branch in base a cui vuoi effettuare il merge."
 
-#: builtin/pull.c:438 builtin/pull.c:453
+#: builtin/pull.c:442 builtin/pull.c:457
 msgid "See git-pull(1) for details."
-msgstr ""
+msgstr "Vedi git-pull(1) per ulteriori dettagli."
 
-#: builtin/pull.c:440 builtin/pull.c:446 builtin/pull.c:455
-#: builtin/rebase.c:962 git-parse-remote.sh:64
-#, fuzzy
+#: builtin/pull.c:444 builtin/pull.c:450 builtin/pull.c:459
+#: builtin/rebase.c:1415 git-parse-remote.sh:64
 msgid "<remote>"
-msgstr "* remote %s"
+msgstr "<remoto>"
 
-#: builtin/pull.c:440 builtin/pull.c:455 builtin/pull.c:460
-#: git-legacy-rebase.sh:564 git-parse-remote.sh:65
-#, fuzzy
+#: builtin/pull.c:444 builtin/pull.c:459 builtin/pull.c:464
+#: git-parse-remote.sh:65
 msgid "<branch>"
-msgstr "Sul branch "
+msgstr "<branch>"
 
-#: builtin/pull.c:448 builtin/rebase.c:954 git-parse-remote.sh:75
-#, fuzzy
+#: builtin/pull.c:452 builtin/rebase.c:1407 git-parse-remote.sh:75
 msgid "There is no tracking information for the current branch."
-msgstr "Nessun remote per il branch corrente."
+msgstr "Non ci sono informazioni di tracciamento per il branch corrente."
 
-#: builtin/pull.c:457 git-parse-remote.sh:95
+#: builtin/pull.c:461 git-parse-remote.sh:95
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:"
 msgstr ""
+"Se vuoi impostare le informazioni di tracciamento per questo branch puoi "
+"farlo con:"
 
-#: builtin/pull.c:462
+#: builtin/pull.c:466
 #, c-format
 msgid ""
 "Your configuration specifies to merge with the ref '%s'\n"
 "from the remote, but no such ref was fetched."
 msgstr ""
+"La tua configurazione specifica che deve essere eseguito\n"
+"il merge con il riferimento '%s' del remoto, ma un tale\n"
+"riferimento non è stato recuperato."
 
-#: builtin/pull.c:566
-#, fuzzy, c-format
+#: builtin/pull.c:576
+#, c-format
 msgid "unable to access commit %s"
-msgstr "Non è stato possibile analizzare il commit %s\n"
+msgstr "impossibile accedere al commit %s"
 
-#: builtin/pull.c:844
+#: builtin/pull.c:857
 msgid "ignoring --verify-signatures for rebase"
-msgstr ""
+msgstr "ignoro --verify-signature per il rebase"
 
-#: builtin/pull.c:892
-#, fuzzy
+#: builtin/pull.c:912
 msgid "--[no-]autostash option is only valid with --rebase."
-msgstr "l'opzione --contains è consentita solo con -l."
+msgstr "l'opzione --[no-]autostash option è valida solo con --rebase."
 
-#: builtin/pull.c:900
+#: builtin/pull.c:920
 msgid "Updating an unborn branch with changes added to the index."
-msgstr ""
+msgstr "Aggiorno un branch non nato con le modifiche aggiunte all'indice."
 
-#: builtin/pull.c:904
+#: builtin/pull.c:924
 msgid "pull with rebase"
-msgstr ""
+msgstr "pull con rebase"
 
-#: builtin/pull.c:905
+#: builtin/pull.c:925
 msgid "please commit or stash them."
-msgstr ""
+msgstr "eseguine il commit o lo stash."
 
-#: builtin/pull.c:930
+#: builtin/pull.c:950
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
 "fast-forwarding your working tree from\n"
 "commit %s."
 msgstr ""
+"il fetch ha aggiornato l'head del\n"
+"branch corrente.\n"
+"Eseguo il fast forward dell'albero\n"
+"di lavoro dal commit %s."
 
-#: builtin/pull.c:936
+#: builtin/pull.c:956
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -15547,41 +17933,51 @@ msgid ""
 "$ git reset --hard\n"
 "to recover."
 msgstr ""
+"Impossibile eseguire il fast forward dell'albero\n"
+"di lavoro.\n"
+"Dopo esserti assicurato di aver salvato tutto ciò\n"
+"che è importante dall'output di\n"
+"$ git diff %s\n"
+"esegui\n"
+"$ git reset --hard\n"
+"per eseguire il ripristino."
 
-#: builtin/pull.c:951
-#, fuzzy
+#: builtin/pull.c:971
 msgid "Cannot merge multiple branches into empty head."
-msgstr "Impossibile eseguire il merge di branch multipli in un head vuoto"
+msgstr "Impossibile eseguire il merge di più branch in un head vuoto."
 
-#: builtin/pull.c:955
-#, fuzzy
+#: builtin/pull.c:975
 msgid "Cannot rebase onto multiple branches."
-msgstr "Impossibile eseguire il rebase su branch multipli"
+msgstr "Impossibile eseguire il rebase su più branch."
 
-#: builtin/pull.c:962
+#: builtin/pull.c:982
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
+"impossibile eseguire il rebase se ci sono delle modifiche registrate "
+"localmente ai sottomoduli"
 
 #: builtin/push.c:19
-#, fuzzy
 msgid "git push [<options>] [<repository> [<refspec>...]]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git push [<opzioni>] [<repository> [<specificatore riferimento>...]]"
 
-#: builtin/push.c:111
+#: builtin/push.c:112
 msgid "tag shorthand without <tag>"
-msgstr ""
+msgstr "esegui il tag della forma breve senza <tag>"
 
-#: builtin/push.c:121
+#: builtin/push.c:122
 msgid "--delete only accepts plain target ref names"
 msgstr "--delete accetta solo nomi dei ref di destinazione in chiaro"
 
-#: builtin/push.c:167
+#: builtin/push.c:168
 msgid ""
 "\n"
 "To choose either option permanently, see push.default in 'git help config'."
 msgstr ""
+"\n"
+"Per scegliere permanentemente una delle due opzioni, vedi push.default in "
+"'git help config'."
 
-#: builtin/push.c:170
+#: builtin/push.c:171
 #, c-format
 msgid ""
 "The upstream branch of your current branch does not match\n"
@@ -15595,8 +17991,18 @@ msgid ""
 "    git push %s HEAD\n"
 "%s"
 msgstr ""
+"Il branch upstream del branch attuale non corrisponde al\n"
+"nome del branch attuale. Per eseguire il push al branch upstream\n"
+"del remoto, usa\n"
+"\n"
+"    git push %s HEAD:%s\n"
+"\n"
+"Per eseguire il push al branch con lo stesso nome del remoto, usa\n"
+"\n"
+"    git push %s HEAD\n"
+"%s"
 
-#: builtin/push.c:185
+#: builtin/push.c:186
 #, c-format
 msgid ""
 "You are not currently on a branch.\n"
@@ -15605,8 +18011,13 @@ msgid ""
 "\n"
 "    git push %s HEAD:<name-of-remote-branch>\n"
 msgstr ""
+"Attualmente non sei su un branch.\n"
+"Per eseguire ora il push della cronologia che ha condotto\n"
+"allo stato corrente (HEAD scollegato), usa\n"
+"\n"
+"    git push %s HEAD:<nome del branch remoto>\n"
 
-#: builtin/push.c:199
+#: builtin/push.c:200
 #, c-format
 msgid ""
 "The current branch %s has no upstream branch.\n"
@@ -15615,49 +18026,65 @@ msgid ""
 "    git push --set-upstream %s %s\n"
 msgstr ""
 "Il branch corrente %s non ha alcun branch upstream.\n"
-"Per eseguire il push del branch corrente ed impostare remote come upstream, "
-"usa\n"
+"Per eseguire il push del branch corrente ed impostare il remoto come "
+"upstream, usa\n"
 "\n"
 "    git push --set-upstream %s %s\n"
 
-#: builtin/push.c:207
+#: builtin/push.c:208
 #, c-format
 msgid "The current branch %s has multiple upstream branches, refusing to push."
 msgstr ""
-"Il branch corrente %s ha branch multipli in upstream; push non eseguito."
+"Il branch corrente %s ha più branch upstream, mi rifiuto di eseguire il push."
 
-#: builtin/push.c:210
+#: builtin/push.c:211
 #, c-format
 msgid ""
 "You are pushing to remote '%s', which is not the upstream of\n"
 "your current branch '%s', without telling me what to push\n"
 "to update which remote branch."
 msgstr ""
+"Stai eseguendo il push al remoto '%s', che non è l'upstream del\n"
+"branch corrente '%s', senza dirmi di cosa devo eseguire il push\n"
+"per aggiornare quale branch remoto."
 
-#: builtin/push.c:269
+#: builtin/push.c:270
 msgid ""
 "You didn't specify any refspecs to push, and push.default is \"nothing\"."
 msgstr ""
 "Non è stato specificato alcun refspec per il push, e push.default è \"nothing"
 "\"."
 
-#: builtin/push.c:276
+#: builtin/push.c:277
 msgid ""
 "Updates were rejected because the tip of your current branch is behind\n"
 "its remote counterpart. Integrate the remote changes (e.g.\n"
 "'git pull ...') before pushing again.\n"
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
+"Gli aggiornamenti sono stati rifiutati perché l'ultimo commit del branch\n"
+"attuale è rimasto indietro rispetto alla sua controparte remota.\n"
+"Integra le modifiche remote (ad es. con 'git pull ...') prima di\n"
+"eseguire nuovamente il push.\n"
+"Vedi la 'Nota sui fast forward' in 'git push --help' per ulteriori\n"
+"dettagli."
 
-#: builtin/push.c:282
+#: builtin/push.c:283
 msgid ""
 "Updates were rejected because a pushed branch tip is behind its remote\n"
 "counterpart. Check out this branch and integrate the remote changes\n"
 "(e.g. 'git pull ...') before pushing again.\n"
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
+"Gli aggiornamenti sono stati rifiutati perché l'ultimo commit di un\n"
+"branch di cui è stato eseguito il push è rimasto indietro rispetto\n"
+"alla sua controparte remota. Esegui il checkout di questo branch e\n"
+"integra le modifiche remote (ad es. con 'git pull ...') prima di\n"
+"eseguire nuovamente il push.\n"
+"Vedi la 'Nota sui fast forward' in 'git push --help' per ulteriori\n"
+"dettagli."
 
-#: builtin/push.c:288
+#: builtin/push.c:289
 msgid ""
 "Updates were rejected because the remote contains work that you do\n"
 "not have locally. This is usually caused by another repository pushing\n"
@@ -15665,192 +18092,214 @@ msgid ""
 "(e.g., 'git pull ...') before pushing again.\n"
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
+"Gli aggiornamenti sono stati rifiutati perché il remoto contiene delle\n"
+"modifiche che non hai localmente. Ciò solitamente è causato da un push\n"
+"da un altro repository allo stesso riferimento. Potresti voler integrare\n"
+"le modifiche remote (ad es. con 'git pull ...') prima di eseguire\n"
+"nuovamente il push.\n"
+"Vedi la 'Nota sui fast forward' in 'git push --help' per ulteriori\n"
+"dettagli."
 
-#: builtin/push.c:295
+#: builtin/push.c:296
 msgid "Updates were rejected because the tag already exists in the remote."
 msgstr ""
+"Gli aggiornamenti sono stati rifiutati perché il tag esiste già nel remoto."
 
-#: builtin/push.c:298
+#: builtin/push.c:299
 msgid ""
 "You cannot update a remote ref that points at a non-commit object,\n"
 "or update a remote ref to make it point at a non-commit object,\n"
 "without using the '--force' option.\n"
 msgstr ""
+"Non puoi aggiornare un riferimento remoto che punta a un oggetto\n"
+"diverso da un commit o aggiornare un riferimento remoto per farlo\n"
+"puntare a un oggetto diverso da un commit senza usare l'opzione\n"
+"'--force'.\n"
 
-#: builtin/push.c:359
+#: builtin/push.c:360
 #, c-format
 msgid "Pushing to %s\n"
-msgstr ""
-
-#: builtin/push.c:364
-#, c-format
-msgid "failed to push some refs to '%s'"
-msgstr ""
+msgstr "Push su %s in corso\n"
 
-#: builtin/push.c:398
+#: builtin/push.c:367
 #, c-format
-msgid "bad repository '%s'"
-msgstr "repository '%s' errato"
-
-#: builtin/push.c:399
-msgid ""
-"No configured push destination.\n"
-"Either specify the URL from the command-line or configure a remote "
-"repository using\n"
-"\n"
-"    git remote add <name> <url>\n"
-"\n"
-"and then push using the remote name\n"
-"\n"
-"    git push <name>\n"
-msgstr ""
-"Nessuna destinazione per il push configurata.\n"
-"Specifica un URL dalla riga di comando oppure configurare un repository "
-"remoto usando\n"
-"\n"
-"    git remote add <nome> <url>\n"
-"\n"
-"e poi eseguire il push usando il nome del remote\n"
-"\n"
-"    git push <nome>\n"
+msgid "failed to push some refs to '%s'"
+msgstr "push di alcuni riferimenti su '%s' non riuscito"
 
-#: builtin/push.c:554
-#, fuzzy
+#: builtin/push.c:542
 msgid "repository"
-msgstr "repository '%s' errato"
+msgstr "repository"
 
-#: builtin/push.c:555 builtin/send-pack.c:164
+#: builtin/push.c:543 builtin/send-pack.c:164
 msgid "push all refs"
-msgstr ""
+msgstr "esegui il push di tutti i riferimenti"
 
-#: builtin/push.c:556 builtin/send-pack.c:166
+#: builtin/push.c:544 builtin/send-pack.c:166
 msgid "mirror all refs"
-msgstr ""
+msgstr "esegui il mirror di tutti i riferimenti"
 
-#: builtin/push.c:558
-#, fuzzy
+#: builtin/push.c:546
 msgid "delete refs"
-msgstr "elimina"
+msgstr "elimina riferimenti"
 
-#: builtin/push.c:559
+#: builtin/push.c:547
 msgid "push tags (can't be used with --all or --mirror)"
-msgstr ""
+msgstr "esegui il push dei tag (non può essere usato con --all o --mirror)"
 
-#: builtin/push.c:562 builtin/send-pack.c:167
-#, fuzzy
+#: builtin/push.c:550 builtin/send-pack.c:167
 msgid "force updates"
-msgstr "aggiornamento forzato"
+msgstr "forza gli aggiornamenti"
 
-#: builtin/push.c:564 builtin/send-pack.c:181
+#: builtin/push.c:552 builtin/send-pack.c:181
 msgid "<refname>:<expect>"
-msgstr ""
+msgstr "<nome riferimento>:<valore atteso>"
 
-#: builtin/push.c:565 builtin/send-pack.c:182
+#: builtin/push.c:553 builtin/send-pack.c:182
 msgid "require old value of ref to be at this value"
 msgstr ""
+"richiedi che il vecchio valore del riferimento corrisponda a questo valore"
 
-#: builtin/push.c:568
+#: builtin/push.c:556
 msgid "control recursive pushing of submodules"
-msgstr ""
+msgstr "controlla il push ricorsivo dei sottomoduli"
 
-#: builtin/push.c:570 builtin/send-pack.c:175
+#: builtin/push.c:558 builtin/send-pack.c:175
 msgid "use thin pack"
-msgstr ""
+msgstr "usa un thin pack"
 
-#: builtin/push.c:571 builtin/push.c:572 builtin/send-pack.c:161
+#: builtin/push.c:559 builtin/push.c:560 builtin/send-pack.c:161
 #: builtin/send-pack.c:162
 msgid "receive pack program"
-msgstr ""
+msgstr "programma ricezione pack"
 
-#: builtin/push.c:573
+#: builtin/push.c:561
 msgid "set upstream for git pull/status"
-msgstr ""
+msgstr "imposta l'upstream per git pull/status"
 
-#: builtin/push.c:576
+#: builtin/push.c:564
 msgid "prune locally removed refs"
-msgstr ""
+msgstr "elimina i riferimenti rimossi localmente"
 
-#: builtin/push.c:578
+#: builtin/push.c:566
 msgid "bypass pre-push hook"
-msgstr ""
+msgstr "ignora l'hook pre-push"
 
-#: builtin/push.c:579
+#: builtin/push.c:567
 msgid "push missing but relevant tags"
-msgstr ""
+msgstr "esegui il push dei tag mancanti ma rilevanti"
 
-#: builtin/push.c:582 builtin/send-pack.c:169
+#: builtin/push.c:570 builtin/send-pack.c:169
 msgid "GPG sign the push"
-msgstr ""
+msgstr "firma il push con GPG"
 
-#: builtin/push.c:584 builtin/send-pack.c:176
+#: builtin/push.c:572 builtin/send-pack.c:176
 msgid "request atomic transaction on remote side"
-msgstr ""
+msgstr "richiedi l'atomicità della transazione al remoto"
 
-#: builtin/push.c:602
+#: builtin/push.c:590
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete non è compatibile con --all, --mirror e --tags"
 
-#: builtin/push.c:604
+#: builtin/push.c:592
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete non ha senso senza alcun ref"
 
-#: builtin/push.c:607
+#: builtin/push.c:612
+#, c-format
+msgid "bad repository '%s'"
+msgstr "repository '%s' errato"
+
+#: builtin/push.c:613
+msgid ""
+"No configured push destination.\n"
+"Either specify the URL from the command-line or configure a remote "
+"repository using\n"
+"\n"
+"    git remote add <name> <url>\n"
+"\n"
+"and then push using the remote name\n"
+"\n"
+"    git push <name>\n"
+msgstr ""
+"Nessuna destinazione per il push configurata.\n"
+"Specifica un URL dalla riga di comando oppure configurare un repository "
+"remoto usando\n"
+"\n"
+"    git remote add <nome> <url>\n"
+"\n"
+"e poi eseguire il push usando il nome del remote\n"
+"\n"
+"    git push <nome>\n"
+
+#: builtin/push.c:628
 msgid "--all and --tags are incompatible"
 msgstr "--all e --tags non sono compatibili"
 
-#: builtin/push.c:609
+#: builtin/push.c:630
 msgid "--all can't be combined with refspecs"
-msgstr ""
+msgstr "--all non può essere combinato con degli specificatori riferimento"
 
-#: builtin/push.c:613
+#: builtin/push.c:634
 msgid "--mirror and --tags are incompatible"
 msgstr "--mirror e --tags non sono compatibili"
 
-#: builtin/push.c:615
+#: builtin/push.c:636
 msgid "--mirror can't be combined with refspecs"
-msgstr ""
+msgstr "--mirror non può essere combinato con degli specificatori riferimento"
 
-#: builtin/push.c:618
+#: builtin/push.c:639
 msgid "--all and --mirror are incompatible"
 msgstr "--all e --mirror non sono compatibili"
 
-#: builtin/push.c:637
+#: builtin/push.c:643
 msgid "push options must not have new line characters"
-msgstr ""
+msgstr "le opzioni push non devono avere caratteri di fine riga"
 
 #: builtin/range-diff.c:8
 msgid "git range-diff [<options>] <old-base>..<old-tip> <new-base>..<new-tip>"
 msgstr ""
+"git range-diff [<opzioni>] <vecchia base>..<vecchio ultimo commit> <nuova "
+"base>..<nuovo ultimo commit>"
 
 #: builtin/range-diff.c:9
 msgid "git range-diff [<options>] <old-tip>...<new-tip>"
 msgstr ""
+"git range-diff [<opzioni>] <vecchio ultimo commit>...<nuovo ultimo commit>"
 
 #: builtin/range-diff.c:10
 msgid "git range-diff [<options>] <base> <old-tip> <new-tip>"
 msgstr ""
+"git range-diff [<opzioni>] <base> <vecchio ultimo commit> <nuovo ultimo "
+"commit>"
 
-#: builtin/range-diff.c:21
+#: builtin/range-diff.c:22
 msgid "Percentage by which creation is weighted"
-msgstr ""
+msgstr "Percentuale in base a cui viene pesata la creazione"
 
-#: builtin/range-diff.c:23
+#: builtin/range-diff.c:24
 msgid "use simple diff colors"
-msgstr ""
+msgstr "usa colori semplici per il diff"
+
+#: builtin/range-diff.c:26
+msgid "notes"
+msgstr "note"
 
-#: builtin/range-diff.c:61 builtin/range-diff.c:65
-#, fuzzy, c-format
+#: builtin/range-diff.c:26
+msgid "passed to 'git log'"
+msgstr "passato a 'git log'"
+
+#: builtin/range-diff.c:50 builtin/range-diff.c:54
+#, c-format
 msgid "no .. in range: '%s'"
-msgstr "Nessun branch esistente: '%s'"
+msgstr "nessun .. nell'intervallo: '%s'"
 
-#: builtin/range-diff.c:75
+#: builtin/range-diff.c:64
 msgid "single arg format must be symmetric range"
-msgstr ""
+msgstr "il formato dell'unico argomento dev'essere un intervallo simmetrico"
 
-#: builtin/range-diff.c:90
-#, fuzzy
+#: builtin/range-diff.c:79
 msgid "need two commit ranges"
-msgstr "nuovi commit, "
+msgstr "devono essere specificati due intervalli commit"
 
 #: builtin/read-tree.c:41
 msgid ""
@@ -15858,129 +18307,304 @@ msgid ""
 "[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
 "index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
 msgstr ""
+"git read-tree [(-m [--trivial] [--aggressive] | --reset | --"
+"prefix=<prefisso>) [-u [--exclude-per-directory=<gitignore>] | -i]] [--no-"
+"sparse-checkout] [--index-output=<file>] (--empty | <espressione albero 1> "
+"[<espressione albero 2> [<espressione albero 3>]])"
 
 #: builtin/read-tree.c:124
-#, fuzzy
 msgid "write resulting index to <file>"
-msgstr "file index corrotto"
+msgstr "scrivi l'indice risultante in <file>"
 
 #: builtin/read-tree.c:127
-#, fuzzy
 msgid "only empty the index"
-msgstr "Non è stato possibile leggere index"
+msgstr "svuota solo l'indice"
 
 #: builtin/read-tree.c:129
 msgid "Merging"
-msgstr ""
+msgstr "Merge"
 
 #: builtin/read-tree.c:131
 msgid "perform a merge in addition to a read"
-msgstr ""
+msgstr "esegui il merge oltre a una lettura"
 
 #: builtin/read-tree.c:133
 msgid "3-way merge if no file level merging required"
-msgstr ""
+msgstr "merge a tre vie se non sono richiesti merge a livello di file"
 
 #: builtin/read-tree.c:135
 msgid "3-way merge in presence of adds and removes"
-msgstr ""
+msgstr "merge a tre vie se sono presenti aggiunte ed eliminazioni"
 
 #: builtin/read-tree.c:137
 msgid "same as -m, but discard unmerged entries"
-msgstr ""
+msgstr "come -m, ma scarta le voci non sottoposte a merge"
 
 #: builtin/read-tree.c:138
 msgid "<subdirectory>/"
-msgstr ""
+msgstr "<sottodirectory>/"
 
 #: builtin/read-tree.c:139
 msgid "read the tree into the index under <subdirectory>/"
-msgstr ""
+msgstr "leggi l'albero nell'indice in <sottodirectory>/"
 
 #: builtin/read-tree.c:142
 msgid "update working tree with merge result"
-msgstr ""
+msgstr "aggiorna l'albero di lavoro con il risultato del merge"
 
 #: builtin/read-tree.c:144
-#, fuzzy
 msgid "gitignore"
-msgstr "Ignorato"
+msgstr "gitignore"
 
 #: builtin/read-tree.c:145
 msgid "allow explicitly ignored files to be overwritten"
-msgstr ""
+msgstr "consenti la sovrascrittura dei file ignorati esplicitamente"
 
 #: builtin/read-tree.c:148
 msgid "don't check the working tree after merging"
-msgstr ""
+msgstr "non controllare l'albero di lavoro dopo il merge"
 
 #: builtin/read-tree.c:149
 msgid "don't update the index or the work tree"
-msgstr ""
+msgstr "non aggiornare l'indice o l'albero di lavoro"
 
 #: builtin/read-tree.c:151
 msgid "skip applying sparse checkout filter"
-msgstr ""
+msgstr "salta l'applicazione del filtro checkout sparse"
 
 #: builtin/read-tree.c:153
 msgid "debug unpack-trees"
-msgstr ""
+msgstr "esegui il debug di unpack-trees"
 
-#: builtin/rebase.c:30
-#, fuzzy
+#: builtin/read-tree.c:157
+msgid "suppress feedback messages"
+msgstr "non visualizzare i messaggi di feedback"
+
+#: builtin/read-tree.c:188
+msgid "You need to resolve your current index first"
+msgstr "Prima devi risolvere l'indice corrente"
+
+#: builtin/rebase.c:32
 msgid ""
-"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] [<upstream>] "
-"[<branch>]"
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase> | --keep-base] "
+"[<upstream> [<branch>]]"
 msgstr ""
-"git archive --remote <repository> [--exec <comando>] [<opzioni>] <albero> "
-"[<percorso>...]"
+"git rebase [-i] [opzioni] [--exec <comando>] [--onto <nuova base> | --keep-"
+"base] [<upstream> [<branch>]]"
 
-#: builtin/rebase.c:32
+#: builtin/rebase.c:34
 msgid ""
 "git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
 msgstr ""
+"git rebase [-i] [options] [--exec <comando>] [--onto <nuova base>] --root "
+"[<branch>]"
 
-#: builtin/rebase.c:34
-#, fuzzy
+#: builtin/rebase.c:36
 msgid "git rebase --continue | --abort | --skip | --edit-todo"
-msgstr "prova \"git cherry-pick (--continue | --quit | -- abort)\""
+msgstr "git rebase --continue | --abort | --skip | --edit-todo"
+
+#: builtin/rebase.c:175 builtin/rebase.c:199 builtin/rebase.c:226
+#, c-format
+msgid "unusable todo list: '%s'"
+msgstr "elenco todo inutilizzabile: '%s'"
+
+#: builtin/rebase.c:292
+#, c-format
+msgid "could not create temporary %s"
+msgstr "impossibile creare un %s temporaneo"
+
+#: builtin/rebase.c:298
+msgid "could not mark as interactive"
+msgstr "impossibile contrassegnare come interattivo"
+
+#: builtin/rebase.c:352
+msgid "could not generate todo list"
+msgstr "impossibile generare l'elenco todo"
+
+#: builtin/rebase.c:391
+msgid "a base commit must be provided with --upstream or --onto"
+msgstr ""
+"le opzioni --upstream o --onto richiedono che sia fornito un commit di base"
+
+#: builtin/rebase.c:461
+msgid "git rebase--interactive [<options>]"
+msgstr "git rebase --interactive [<opzioni>]"
+
+#: builtin/rebase.c:474 builtin/rebase.c:1550
+msgid "(DEPRECATED) keep empty commits"
+msgstr "(DEPRECATO) mantieni i commit vuoti"
 
-#: builtin/rebase.c:121 builtin/rebase.c:1437
-#, fuzzy, c-format
+#: builtin/rebase.c:478 builtin/revert.c:128
+msgid "allow commits with empty messages"
+msgstr "consenti commit con messaggi vuoti"
+
+#: builtin/rebase.c:480
+msgid "rebase merge commits"
+msgstr "esegui il rebase dei commit di merge"
+
+#: builtin/rebase.c:482
+msgid "keep original branch points of cousins"
+msgstr "mantieni i punti di branch originali dei cugini"
+
+#: builtin/rebase.c:484
+msgid "move commits that begin with squash!/fixup!"
+msgstr "sposta i commit che iniziano con squash!/fixup!"
+
+#: builtin/rebase.c:485
+msgid "sign commits"
+msgstr "firma i commit"
+
+#: builtin/rebase.c:487 builtin/rebase.c:1490
+msgid "display a diffstat of what changed upstream"
+msgstr "visualizza un diffstat delle modifiche upstream"
+
+#: builtin/rebase.c:489
+msgid "continue rebase"
+msgstr "continua il rebase"
+
+#: builtin/rebase.c:491
+msgid "skip commit"
+msgstr "salta il commit"
+
+#: builtin/rebase.c:492
+msgid "edit the todo list"
+msgstr "modifica l'elenco todo"
+
+#: builtin/rebase.c:494
+msgid "show the current patch"
+msgstr "visualizza la patch corrente"
+
+#: builtin/rebase.c:497
+msgid "shorten commit ids in the todo list"
+msgstr "abbrevia gli ID dei commit nell'elenco todo"
+
+#: builtin/rebase.c:499
+msgid "expand commit ids in the todo list"
+msgstr "espandi gli ID dei commit nell'elenco todo"
+
+#: builtin/rebase.c:501
+msgid "check the todo list"
+msgstr "controlla l'elenco todo"
+
+#: builtin/rebase.c:503
+msgid "rearrange fixup/squash lines"
+msgstr "ridisponi le righe fixup/squash"
+
+#: builtin/rebase.c:505
+msgid "insert exec commands in todo list"
+msgstr "inserisci i comandi exec nell'elenco todo"
+
+#: builtin/rebase.c:506
+msgid "onto"
+msgstr "su"
+
+#: builtin/rebase.c:509
+msgid "restrict-revision"
+msgstr "revisioni-limite"
+
+#: builtin/rebase.c:509
+msgid "restrict revision"
+msgstr "limita la revisione"
+
+#: builtin/rebase.c:511
+msgid "squash-onto"
+msgstr "squash-su"
+
+#: builtin/rebase.c:512
+msgid "squash onto"
+msgstr "esegui lo squash su"
+
+#: builtin/rebase.c:514
+msgid "the upstream commit"
+msgstr "il commit upstream"
+
+#: builtin/rebase.c:516
+msgid "head-name"
+msgstr "nome head"
+
+#: builtin/rebase.c:516
+msgid "head name"
+msgstr "nome head"
+
+#: builtin/rebase.c:521
+msgid "rebase strategy"
+msgstr "strategia di rebase"
+
+#: builtin/rebase.c:522
+msgid "strategy-opts"
+msgstr "opzioni strategia"
+
+#: builtin/rebase.c:523
+msgid "strategy options"
+msgstr "opzioni strategia"
+
+#: builtin/rebase.c:524
+msgid "switch-to"
+msgstr "passa a"
+
+#: builtin/rebase.c:525
+msgid "the branch or commit to checkout"
+msgstr "il branch o il commit di cui eseguire il checkout"
+
+#: builtin/rebase.c:526
+msgid "onto-name"
+msgstr "nome"
+
+#: builtin/rebase.c:526
+msgid "onto name"
+msgstr "sul nome"
+
+#: builtin/rebase.c:527
+msgid "cmd"
+msgstr "comando"
+
+#: builtin/rebase.c:527
+msgid "the command to run"
+msgstr "il comando da eseguire"
+
+#: builtin/rebase.c:530 builtin/rebase.c:1584
+msgid "automatically re-schedule any `exec` that fails"
+msgstr "schedula nuovamente le operazioni `exec` non riuscite automaticamente"
+
+#: builtin/rebase.c:546
+msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
+msgstr "--[no-]rebase-cousins non ha effetto senza --rebase-merges"
+
+#: builtin/rebase.c:562
+#, c-format
 msgid "%s requires an interactive rebase"
-msgstr "add interattivo non riuscito"
+msgstr "%s richiede un rebase interattivo"
 
-#: builtin/rebase.c:173
-#, fuzzy, c-format
+#: builtin/rebase.c:612
+#, c-format
 msgid "could not get 'onto': '%s'"
-msgstr "impossibile impostare '%s' a '%s'"
+msgstr "impossibile ottenere 'onto': '%s'"
 
-#: builtin/rebase.c:188
-#, fuzzy, c-format
+#: builtin/rebase.c:627
+#, c-format
 msgid "invalid orig-head: '%s'"
-msgstr "%s non valido: '%s'"
+msgstr "orig-head non valida: '%s'"
 
-#: builtin/rebase.c:213
+#: builtin/rebase.c:652
 #, c-format
 msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
-msgstr ""
+msgstr "ignoro il valore non valido per allow_rerere_autoupdate: '%s'"
 
-#: builtin/rebase.c:289
-#, fuzzy, c-format
+#: builtin/rebase.c:728
+#, c-format
 msgid "Could not read '%s'"
-msgstr "non è stato possibile leggere '%s'"
+msgstr "Impossibile leggere '%s'"
 
-#: builtin/rebase.c:307
-#, fuzzy, c-format
+#: builtin/rebase.c:746
+#, c-format
 msgid "Cannot store %s"
-msgstr "impossibile eseguire lo stat di '%s'"
+msgstr "Impossibile memorizzare %s"
 
-#: builtin/rebase.c:402
-#, fuzzy
+#: builtin/rebase.c:853
 msgid "could not determine HEAD revision"
-msgstr "non è stato possibile analizzare il commit HEAD"
+msgstr "impossibile determinare la revisione HEAD"
 
-#: builtin/rebase.c:522
+#: builtin/rebase.c:976 git-rebase--preserve-merges.sh:81
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -15988,8 +18612,15 @@ msgid ""
 "To abort and get back to the state before \"git rebase\", run \"git rebase --"
 "abort\"."
 msgstr ""
+"Risolvi manualmente tutti i conflitti, contrassegnali come\n"
+"risolti con \"git add/rm <file in conflitto>\", quindi esegui\n"
+"\"git rebase --continue\".\n"
+"In alternativa, puoi saltare questo commit: esegui \"git rebase\n"
+"--skip\".\n"
+"Per interrompere l'operazione e tornare allo stato precedente\n"
+"il \"git rebase\", esegui \"git rebase --abort\"."
 
-#: builtin/rebase.c:603
+#: builtin/rebase.c:1058
 #, c-format
 msgid ""
 "\n"
@@ -16000,8 +18631,24 @@ msgid ""
 "\n"
 "As a result, git cannot rebase them."
 msgstr ""
+"\n"
+"Git ha riscontrato un errore durante la preparazione delle patch\n"
+"per applicare nuovamente queste revisioni:\n"
+"\n"
+"    %s\n"
+"\n"
+"Di conseguenza, Git non può eseguirne il rebase."
+
+#: builtin/rebase.c:1383
+#, c-format
+msgid ""
+"unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and \"ask"
+"\"."
+msgstr ""
+"tipo vuoto '%s' non riconosciuto; i valori validi sono \"drop\", \"keep\" e "
+"\"ask\"."
 
-#: builtin/rebase.c:948
+#: builtin/rebase.c:1401
 #, c-format
 msgid ""
 "%s\n"
@@ -16011,205 +18658,216 @@ msgid ""
 "    git rebase '<branch>'\n"
 "\n"
 msgstr ""
+"%s\n"
+"Specifica il branch su cui effettuare il rebase.\n"
+"Vedi git-rebase(1) per i dettagli.\n"
+"\n"
+"    git rebase '<branch>'\n"
+"\n"
 
-#: builtin/rebase.c:964
-#, fuzzy, c-format
+#: builtin/rebase.c:1417
+#, c-format
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:\n"
 "\n"
 "    git branch --set-upstream-to=%s/<branch> %s\n"
 "\n"
 msgstr ""
-"Se si vuole mantenerle creando un nuovo branch, questo potrebbe essere\n"
-"un buon momento per farlo con:\n"
+"Se vuoi impostare le informazioni di tracciamento per questo branch puoi "
+"farlo con:\n"
 "\n"
-" git branch nuovo_nome_branch %s\n"
+"    git branch --set-upstream-to=%s/<branch> %s\n"
 "\n"
 
-#: builtin/rebase.c:994
+#: builtin/rebase.c:1447
 msgid "exec commands cannot contain newlines"
-msgstr ""
+msgstr "i comandi exec non possono contenere caratteri di fine riga"
 
-#: builtin/rebase.c:998
+#: builtin/rebase.c:1451
 msgid "empty exec command"
-msgstr ""
+msgstr "comando exec vuoto"
 
-#: builtin/rebase.c:1040
-#, fuzzy
+#: builtin/rebase.c:1481
 msgid "rebase onto given branch instead of upstream"
-msgstr "Non imposto il branch %s come upstream di sé stesso."
+msgstr "esegui il rebase sul branch specificato anziché su quello upstream"
 
-#: builtin/rebase.c:1042
+#: builtin/rebase.c:1483
+msgid "use the merge-base of upstream and branch as the current base"
+msgstr "usa la base del merge dell'upstream e del branch come base corrente"
+
+#: builtin/rebase.c:1485
 msgid "allow pre-rebase hook to run"
-msgstr ""
+msgstr "consenti l'esecuzione dell'hook pre-rebase"
 
-#: builtin/rebase.c:1044
+#: builtin/rebase.c:1487
 msgid "be quiet. implies --no-stat"
-msgstr ""
-
-#: builtin/rebase.c:1047
-msgid "display a diffstat of what changed upstream"
-msgstr ""
+msgstr "sii silenzioso. implica --no-stat"
 
-#: builtin/rebase.c:1050
+#: builtin/rebase.c:1493
 msgid "do not show diffstat of what changed upstream"
-msgstr ""
+msgstr "non visualizzare un diffstat delle modifiche upstream"
 
-#: builtin/rebase.c:1053
+#: builtin/rebase.c:1496
 msgid "add a Signed-off-by: line to each commit"
-msgstr ""
+msgstr "aggiungi una riga Signed-off-by: a ogni commit"
 
-#: builtin/rebase.c:1055 builtin/rebase.c:1059 builtin/rebase.c:1061
+#: builtin/rebase.c:1498 builtin/rebase.c:1502 builtin/rebase.c:1504
 msgid "passed to 'git am'"
-msgstr ""
+msgstr "passato a 'git am'"
 
-#: builtin/rebase.c:1063 builtin/rebase.c:1065
+#: builtin/rebase.c:1506 builtin/rebase.c:1508
 msgid "passed to 'git apply'"
-msgstr ""
+msgstr "passato a 'git apply'"
 
-#: builtin/rebase.c:1067 builtin/rebase.c:1070
+#: builtin/rebase.c:1510 builtin/rebase.c:1513
 msgid "cherry-pick all commits, even if unchanged"
-msgstr ""
+msgstr "esegui il cherry-pick di tutti i commit, anche se non modificati"
 
-#: builtin/rebase.c:1072
+#: builtin/rebase.c:1515
 msgid "continue"
-msgstr ""
+msgstr "continua"
 
-#: builtin/rebase.c:1075
-#, fuzzy
+#: builtin/rebase.c:1518
 msgid "skip current patch and continue"
-msgstr "Impossibile salvare lo stato attuale"
+msgstr "salta la patch corrente e continua"
 
-#: builtin/rebase.c:1077
+#: builtin/rebase.c:1520
 msgid "abort and check out the original branch"
-msgstr ""
+msgstr "interrompi ed esegui il checkout del branch originario"
 
-#: builtin/rebase.c:1080
+#: builtin/rebase.c:1523
 msgid "abort but keep HEAD where it is"
-msgstr ""
+msgstr "interrompi ma mantieni l'HEAD dov'è"
 
-#: builtin/rebase.c:1081
+#: builtin/rebase.c:1524
 msgid "edit the todo list during an interactive rebase"
-msgstr ""
+msgstr "modifica l'elenco todo durante un rebase interattivo"
 
-#: builtin/rebase.c:1084
-#, fuzzy
+#: builtin/rebase.c:1527
 msgid "show the patch file being applied or merged"
-msgstr "Nessuna modifica -- patch già applicata."
+msgstr ""
+"visualizza il file patch che sta per essere applicato o sottoposto a merge"
 
-#: builtin/rebase.c:1087
-#, fuzzy
-msgid "use merging strategies to rebase"
-msgstr "Tentativo con la strategia di merge %s...\n"
+#: builtin/rebase.c:1530
+msgid "use apply strategies to rebase"
+msgstr "usa le strategie di apply per eseguire il rebase"
 
-#: builtin/rebase.c:1091
-msgid "let the user edit the list of commits to rebase"
-msgstr ""
+#: builtin/rebase.c:1534
+msgid "use merging strategies to rebase"
+msgstr "usa le strategie di merge per eseguire il rebase"
 
-#: builtin/rebase.c:1095
-msgid "try to recreate merges instead of ignoring them"
+#: builtin/rebase.c:1538
+msgid "let the user edit the list of commits to rebase"
 msgstr ""
+"consenti all'utente di modificare l'elenco dei commit di cui eseguire il "
+"rebase"
 
-#: builtin/rebase.c:1099
-msgid "allow rerere to update index with resolved conflict"
-msgstr ""
+#: builtin/rebase.c:1542
+msgid "(DEPRECATED) try to recreate merges instead of ignoring them"
+msgstr "(DEPRECATO) prova a ricreare i merge anziché ignorarli"
 
-#: builtin/rebase.c:1102
-#, fuzzy
-msgid "preserve empty commits during rebase"
-msgstr "Impossibile eseguire il revert come commit iniziale"
+#: builtin/rebase.c:1547
+msgid "how to handle commits that become empty"
+msgstr "come gestire i commit che diventano vuoti"
 
-#: builtin/rebase.c:1104
+#: builtin/rebase.c:1554
 msgid "move commits that begin with squash!/fixup! under -i"
-msgstr ""
+msgstr "sposta i commit che iniziano con squash!/fixup! in -i"
 
-#: builtin/rebase.c:1110
+#: builtin/rebase.c:1560
 msgid "automatically stash/stash pop before and after"
-msgstr ""
+msgstr "esegui stash/stash pop automaticamente prima e dopo"
 
-#: builtin/rebase.c:1112
+#: builtin/rebase.c:1562
 msgid "add exec lines after each commit of the editable list"
-msgstr ""
+msgstr "aggiungi righe exec dopo ogni commit della lista modificabile"
 
-#: builtin/rebase.c:1116
-#, fuzzy
+#: builtin/rebase.c:1566
 msgid "allow rebasing commits with empty messages"
-msgstr "il commit ha un messaggio vuoto"
+msgstr "consenti il rebase di commit con messaggi vuoti"
 
-#: builtin/rebase.c:1119
+#: builtin/rebase.c:1570
 msgid "try to rebase merges instead of skipping them"
-msgstr ""
+msgstr "prova ad eseguire il rebase dei merge anziché saltarli"
 
-#: builtin/rebase.c:1122
+#: builtin/rebase.c:1573
 msgid "use 'merge-base --fork-point' to refine upstream"
 msgstr ""
+"usa 'merge-base --fork-point' per ridefinire più precisamente l'upstream"
 
-#: builtin/rebase.c:1124
-#, fuzzy
+#: builtin/rebase.c:1575
 msgid "use the given merge strategy"
-msgstr "Tentativo con la strategia di merge %s...\n"
+msgstr "usa la strategia di merge specificata"
 
-#: builtin/rebase.c:1126 builtin/revert.c:112
-#, fuzzy
+#: builtin/rebase.c:1577 builtin/revert.c:115
 msgid "option"
-msgstr "azione"
+msgstr "opzione"
 
-#: builtin/rebase.c:1127
+#: builtin/rebase.c:1578
 msgid "pass the argument through to the merge strategy"
-msgstr ""
+msgstr "passa l'argomento alla strategia di merge"
 
-#: builtin/rebase.c:1130
+#: builtin/rebase.c:1581
 msgid "rebase all reachable commits up to the root(s)"
-msgstr ""
+msgstr "esegui il rebase di tutti i commit raggiungibili fino a quelli radice"
 
-#: builtin/rebase.c:1133 builtin/rebase--interactive.c:198
-msgid "automatically re-schedule any `exec` that fails"
+#: builtin/rebase.c:1598
+msgid ""
+"the rebase.useBuiltin support has been removed!\n"
+"See its entry in 'git help config' for details."
 msgstr ""
+"il supporto per rebase.useBuiltin è stato rimosso!\n"
+"Vedi la voce relativa in 'git help config' per i dettagli."
 
-#: builtin/rebase.c:1149
-#, fuzzy, c-format
-msgid "could not exec %s"
-msgstr "impossibile analizzare %s"
-
-#: builtin/rebase.c:1167 git-legacy-rebase.sh:220
+#: builtin/rebase.c:1604
 msgid "It looks like 'git am' is in progress. Cannot rebase."
-msgstr ""
+msgstr "Sembra che 'git am' sia in corso. Impossibile eseguire il rebase."
+
+#: builtin/rebase.c:1645
+msgid ""
+"git rebase --preserve-merges is deprecated. Use --rebase-merges instead."
+msgstr "git rebase --preserve-merges è deprecato. Usa --rebase-merges."
+
+#: builtin/rebase.c:1650
+msgid "cannot combine '--keep-base' with '--onto'"
+msgstr "impossibile combinare '--keep-base' con '--onto'"
 
-#: builtin/rebase.c:1208 git-legacy-rebase.sh:406
+#: builtin/rebase.c:1652
+msgid "cannot combine '--keep-base' with '--root'"
+msgstr "impossibile combinare '--keep-base' con '--root'"
+
+#: builtin/rebase.c:1656
 msgid "No rebase in progress?"
-msgstr ""
+msgstr "Nessun rebase in corso?"
 
-#: builtin/rebase.c:1212 git-legacy-rebase.sh:417
+#: builtin/rebase.c:1660
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
+"L'azione --edit-todo può essere usata solo durante un rebase interattivo."
 
-#: builtin/rebase.c:1226 git-legacy-rebase.sh:424
-#, fuzzy
+#: builtin/rebase.c:1683
 msgid "Cannot read HEAD"
-msgstr "impossibile risolvere HEAD"
+msgstr "Impossibile leggere l'HEAD"
 
-#: builtin/rebase.c:1238 git-legacy-rebase.sh:427
+#: builtin/rebase.c:1695
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
 msgstr ""
+"Devi modificare tutti i conflitti di merge e\n"
+"quindi contrassegnarli come risolti usando\n"
+"git add"
 
-#: builtin/rebase.c:1257
-#, fuzzy
+#: builtin/rebase.c:1714
 msgid "could not discard worktree changes"
-msgstr "non è stato possibile leggere il messaggio di commit: %s"
+msgstr "impossibile scartare le modifiche all'albero di lavoro"
 
-#: builtin/rebase.c:1276
-#, fuzzy, c-format
+#: builtin/rebase.c:1733
+#, c-format
 msgid "could not move back to %s"
-msgstr "Non è stato possibile rimuovere il branch %s"
-
-#: builtin/rebase.c:1287 builtin/rm.c:369
-#, fuzzy, c-format
-msgid "could not remove '%s'"
-msgstr "non è stato possibile leggere '%s'"
+msgstr "impossibile ritornare a %s"
 
-#: builtin/rebase.c:1313
+#: builtin/rebase.c:1778
 #, c-format
 msgid ""
 "It seems that there is already a %s directory, and\n"
@@ -16221,359 +18879,178 @@ msgid ""
 "and run me again.  I am stopping in case you still have something\n"
 "valuable there.\n"
 msgstr ""
+"Sembra che esista già una directory %s e mi domando\n"
+"se tu sia già nel bel mezzo di un altro rebase. Se questo è il caso,\n"
+"prova con il comando\n"
+"\t%s\n"
+"Se questo non è il caso, esegui\n"
+"\t%s\n"
+"ed eseguimi di nuovo. Mi fermo nel caso in cui tu abbia ancora\n"
+"salvato qualcosa di importante lì.\n"
 
-#: builtin/rebase.c:1334
-#, fuzzy
+#: builtin/rebase.c:1806
 msgid "switch `C' expects a numerical value"
-msgstr "switch '%c' richiede un valore numerico"
+msgstr "l'opzione `C` richiede un valore numerico"
 
-#: builtin/rebase.c:1375
-#, fuzzy, c-format
+#: builtin/rebase.c:1847
+#, c-format
 msgid "Unknown mode: %s"
-msgstr "sconosciuto:    %s"
+msgstr "Modo sconosciuto: %s"
 
-#: builtin/rebase.c:1397
+#: builtin/rebase.c:1869
 msgid "--strategy requires --merge or --interactive"
-msgstr ""
+msgstr "--strategy richiede --merge o --interactive"
 
-#: builtin/rebase.c:1446
-msgid "cannot combine am options with either interactive or merge options"
-msgstr ""
+#: builtin/rebase.c:1899
+msgid "cannot combine apply options with merge options"
+msgstr "non è possibile combinare le opzioni apply con quelle merge"
 
-#: builtin/rebase.c:1465
-#, fuzzy
+#: builtin/rebase.c:1912
+#, c-format
+msgid "Unknown rebase backend: %s"
+msgstr "Backend di rebase sconosciuto: %s"
+
+#: builtin/rebase.c:1937
+msgid "--reschedule-failed-exec requires --exec or --interactive"
+msgstr "--reschedule-failed-exec richiede --exec o --interactive"
+
+#: builtin/rebase.c:1957
 msgid "cannot combine '--preserve-merges' with '--rebase-merges'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
+msgstr "impossibile combinare '--preserve-merges' con '--rebase-merges'"
 
-#: builtin/rebase.c:1469 git-legacy-rebase.sh:544
-#, fuzzy
+#: builtin/rebase.c:1961
 msgid ""
 "error: cannot combine '--preserve-merges' with '--reschedule-failed-exec'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
-
-#: builtin/rebase.c:1475
-#, fuzzy
-msgid "cannot combine '--rebase-merges' with '--strategy-option'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
-
-#: builtin/rebase.c:1478
-#, fuzzy
-msgid "cannot combine '--rebase-merges' with '--strategy'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
+msgstr ""
+"errore: impossibile combinare '--preserve-merges' con '--reschedule-failed-"
+"exec'"
 
-#: builtin/rebase.c:1502
-#, fuzzy, c-format
+#: builtin/rebase.c:1985
+#, c-format
 msgid "invalid upstream '%s'"
-msgstr "percorso non valido: %s"
+msgstr "upstream non valido: '%s'"
 
-#: builtin/rebase.c:1508
-#, fuzzy
+#: builtin/rebase.c:1991
 msgid "Could not create new root commit"
-msgstr "non è stato possibile analizzare il commit appena creato"
+msgstr "Impossibile creare il nuovo commit radice"
 
-#: builtin/rebase.c:1526
-#, fuzzy, c-format
+#: builtin/rebase.c:2017
+#, c-format
+msgid "'%s': need exactly one merge base with branch"
+msgstr ""
+"'%s': è necessario specificare esattamente una base per il merge con il "
+"branch"
+
+#: builtin/rebase.c:2020
+#, c-format
 msgid "'%s': need exactly one merge base"
-msgstr "Non è stato possibile trovare la strategia di merge '%s'.\n"
+msgstr "'%s': è necessario specificare esattamente una base per il merge"
 
-#: builtin/rebase.c:1533
-#, fuzzy, c-format
+#: builtin/rebase.c:2028
+#, c-format
 msgid "Does not point to a valid commit '%s'"
-msgstr "'%s' non punta ad un commit"
+msgstr "'%s' non punta a un commit valido"
 
-#: builtin/rebase.c:1558
-#, fuzzy, c-format
+#: builtin/rebase.c:2054
+#, c-format
 msgid "fatal: no such branch/commit '%s'"
-msgstr "Nessun branch esistente: '%s'"
+msgstr "errore fatale: branch/commit '%s' inesistente"
 
-#: builtin/rebase.c:1566 builtin/submodule--helper.c:38
-#: builtin/submodule--helper.c:1934
-#, fuzzy, c-format
+#: builtin/rebase.c:2062 builtin/submodule--helper.c:40
+#: builtin/submodule--helper.c:1990
+#, c-format
 msgid "No such ref: %s"
-msgstr "Remote non esistente: %s"
+msgstr "Riferimento non esistente: %s"
 
-#: builtin/rebase.c:1578
-#, fuzzy
+#: builtin/rebase.c:2073
 msgid "Could not resolve HEAD to a revision"
-msgstr "Non è stato possibile risolvere il commit HEAD\n"
+msgstr "Impossibile risolvere HEAD come revisione"
 
-#: builtin/rebase.c:1619 git-legacy-rebase.sh:673
-#, fuzzy
+#: builtin/rebase.c:2111
 msgid "Cannot autostash"
-msgstr "Impossibile inizializzare stash"
+msgstr "Impossibile eseguire lo stash automatico"
 
-#: builtin/rebase.c:1622
-#, fuzzy, c-format
+#: builtin/rebase.c:2114
+#, c-format
 msgid "Unexpected stash response: '%s'"
-msgstr "fine del file inattesa"
+msgstr "Risposta stash non attesa: '%s'"
 
-#: builtin/rebase.c:1628
-#, fuzzy, c-format
+#: builtin/rebase.c:2120
+#, c-format
 msgid "Could not create directory for '%s'"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "Impossibile creare la directory '%s'"
 
-#: builtin/rebase.c:1631
-#, fuzzy, c-format
+#: builtin/rebase.c:2123
+#, c-format
 msgid "Created autostash: %s\n"
-msgstr "Impossibile inizializzare stash"
+msgstr "Stash automatico creato: %s\n"
 
-#: builtin/rebase.c:1634
-#, fuzzy
+#: builtin/rebase.c:2126
 msgid "could not reset --hard"
-msgstr "Non è stato possibile leggere index"
-
-#: builtin/rebase.c:1635 builtin/reset.c:114
-#, c-format
-msgid "HEAD is now at %s"
-msgstr "HEAD ora si trova a %s"
+msgstr "impossibile eseguire reset --hard"
 
-#: builtin/rebase.c:1651 git-legacy-rebase.sh:682
+#: builtin/rebase.c:2135
 msgid "Please commit or stash them."
-msgstr ""
+msgstr "Eseguine il commit o lo stash."
 
-#: builtin/rebase.c:1678
-#, fuzzy, c-format
-msgid "could not parse '%s'"
-msgstr "impossibile analizzare %s"
-
-#: builtin/rebase.c:1691
-#, fuzzy, c-format
+#: builtin/rebase.c:2169
+#, c-format
 msgid "could not switch to %s"
-msgstr "Non è stato possibile scrivere su '%s'"
+msgstr "impossibile passare a %s"
 
-#: builtin/rebase.c:1702 git-legacy-rebase.sh:705
-#, fuzzy, sh-format
+#: builtin/rebase.c:2180
 msgid "HEAD is up to date."
-msgstr "HEAD si trova ora a"
+msgstr "HEAD è aggiornato."
 
-#: builtin/rebase.c:1704
-#, fuzzy, c-format
+#: builtin/rebase.c:2182
+#, c-format
 msgid "Current branch %s is up to date.\n"
-msgstr "Il tuo branch è avanti rispetto a '%s' di %d commit.\n"
+msgstr "Il branch corrente %s è aggiornato.\n"
 
-#: builtin/rebase.c:1712 git-legacy-rebase.sh:715
-#, sh-format
+#: builtin/rebase.c:2190
 msgid "HEAD is up to date, rebase forced."
-msgstr ""
+msgstr "HEAD è aggiornato, forzo il rebase."
 
-#: builtin/rebase.c:1714
-#, fuzzy, c-format
+#: builtin/rebase.c:2192
+#, c-format
 msgid "Current branch %s is up to date, rebase forced.\n"
-msgstr "Il tuo branch è avanti rispetto a '%s' di %d commit.\n"
+msgstr "Il branch corrente %s è aggiornato, forzo il rebase.\n"
 
-#: builtin/rebase.c:1722 git-legacy-rebase.sh:215
+#: builtin/rebase.c:2200
 msgid "The pre-rebase hook refused to rebase."
-msgstr ""
+msgstr "L'hook pre-rebase ha rifiutato di consentire il rebase."
 
-#: builtin/rebase.c:1729
-#, fuzzy, c-format
+#: builtin/rebase.c:2207
+#, c-format
 msgid "Changes to %s:\n"
-msgstr "Rinominazione di %s in %s in corso\n"
+msgstr "Modifiche a %s:\n"
 
-#: builtin/rebase.c:1732
-#, fuzzy, c-format
+#: builtin/rebase.c:2210
+#, c-format
 msgid "Changes from %s to %s:\n"
-msgstr "Rinominazione di %s in %s in corso\n"
+msgstr "Modifiche da %s a %s:\n"
 
-#: builtin/rebase.c:1757
+#: builtin/rebase.c:2235
 #, c-format
 msgid "First, rewinding head to replay your work on top of it...\n"
 msgstr ""
+"Per prima cosa, ripristino l'head per riapplicare le tue modifiche su di "
+"esso...\n"
 
-#: builtin/rebase.c:1765
-#, fuzzy
+#: builtin/rebase.c:2244
 msgid "Could not detach HEAD"
-msgstr "non è stato possibile analizzare il commit HEAD"
+msgstr "Impossibile scollegare l'HEAD"
 
-#: builtin/rebase.c:1774
-#, fuzzy, c-format
+#: builtin/rebase.c:2253
+#, c-format
 msgid "Fast-forwarded %s to %s.\n"
-msgstr "Eseguo il fast forward del sottomodulo %s"
-
-#: builtin/rebase--interactive.c:25
-msgid "no HEAD?"
-msgstr ""
-
-#: builtin/rebase--interactive.c:52
-#, fuzzy, c-format
-msgid "could not create temporary %s"
-msgstr "non è stato possibile creare il file del repository '%s'"
-
-#: builtin/rebase--interactive.c:58
-#, fuzzy
-msgid "could not mark as interactive"
-msgstr "Non è stato possibile leggere index"
-
-#: builtin/rebase--interactive.c:102
-#, fuzzy, c-format
-msgid "could not open %s"
-msgstr "impossibile aprire '%s'"
-
-#: builtin/rebase--interactive.c:115
-#, fuzzy
-msgid "could not generate todo list"
-msgstr "Non è stato possibile scrivere su %s"
-
-#: builtin/rebase--interactive.c:131
-#, fuzzy
-msgid "git rebase--interactive [<options>]"
-msgstr "git apply [opzioni] [<patch>...]"
-
-#: builtin/rebase--interactive.c:150
-#, fuzzy
-msgid "keep empty commits"
-msgstr "è stato passato un set di commit vuoto"
-
-#: builtin/rebase--interactive.c:152 builtin/revert.c:125
-#, fuzzy
-msgid "allow commits with empty messages"
-msgstr "il commit ha un messaggio vuoto"
-
-#: builtin/rebase--interactive.c:153
-msgid "rebase merge commits"
-msgstr ""
-
-#: builtin/rebase--interactive.c:155
-msgid "keep original branch points of cousins"
-msgstr ""
-
-#: builtin/rebase--interactive.c:157
-msgid "move commits that begin with squash!/fixup!"
-msgstr ""
-
-#: builtin/rebase--interactive.c:158
-#, fuzzy
-msgid "sign commits"
-msgstr "nuovi commit, "
-
-#: builtin/rebase--interactive.c:160
-msgid "continue rebase"
-msgstr ""
-
-#: builtin/rebase--interactive.c:162
-#, fuzzy
-msgid "skip commit"
-msgstr "nuovi commit, "
-
-#: builtin/rebase--interactive.c:163
-#, fuzzy
-msgid "edit the todo list"
-msgstr "Non è stato possibile scrivere su %s"
-
-#: builtin/rebase--interactive.c:165
-#, fuzzy
-msgid "show the current patch"
-msgstr "Impossibile salvare lo stato attuale"
-
-#: builtin/rebase--interactive.c:168
-msgid "shorten commit ids in the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:170
-msgid "expand commit ids in the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:172
-msgid "check the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:174
-msgid "rearrange fixup/squash lines"
-msgstr ""
-
-#: builtin/rebase--interactive.c:176
-msgid "insert exec commands in todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:177
-msgid "onto"
-msgstr ""
-
-#: builtin/rebase--interactive.c:179
-msgid "restrict-revision"
-msgstr ""
-
-#: builtin/rebase--interactive.c:179
-msgid "restrict revision"
-msgstr ""
-
-#: builtin/rebase--interactive.c:180
-msgid "squash-onto"
-msgstr ""
-
-#: builtin/rebase--interactive.c:181
-msgid "squash onto"
-msgstr ""
-
-#: builtin/rebase--interactive.c:183
-msgid "the upstream commit"
-msgstr ""
-
-#: builtin/rebase--interactive.c:184
-#, fuzzy
-msgid "head-name"
-msgstr "avanti "
-
-#: builtin/rebase--interactive.c:184
-#, fuzzy
-msgid "head name"
-msgstr "avanti "
-
-#: builtin/rebase--interactive.c:189
-#, fuzzy
-msgid "rebase strategy"
-msgstr "Tentativo con la strategia di merge %s...\n"
-
-#: builtin/rebase--interactive.c:190
-msgid "strategy-opts"
-msgstr ""
-
-#: builtin/rebase--interactive.c:191
-#, fuzzy
-msgid "strategy options"
-msgstr "Tentativo con la strategia di merge %s...\n"
-
-#: builtin/rebase--interactive.c:192
-msgid "switch-to"
-msgstr ""
-
-#: builtin/rebase--interactive.c:193
-msgid "the branch or commit to checkout"
-msgstr ""
-
-#: builtin/rebase--interactive.c:194
-#, fuzzy
-msgid "onto-name"
-msgstr "* remote %s"
-
-#: builtin/rebase--interactive.c:194
-#, fuzzy
-msgid "onto name"
-msgstr "* remote %s"
-
-#: builtin/rebase--interactive.c:195
-#, fuzzy
-msgid "cmd"
-msgstr "comando"
-
-#: builtin/rebase--interactive.c:195
-#, fuzzy
-msgid "the command to run"
-msgstr "Nessun commit analizzato."
-
-#: builtin/rebase--interactive.c:224
-msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
-msgstr ""
-
-#: builtin/rebase--interactive.c:230
-msgid "a base commit must be provided with --upstream or --onto"
-msgstr ""
+msgstr "Fast forward da %s a %s eseguito.\n"
 
 #: builtin/receive-pack.c:33
 msgid "git receive-pack <git-dir>"
-msgstr ""
+msgstr "git receive-pack <directory Git>"
 
-#: builtin/receive-pack.c:830
+#: builtin/receive-pack.c:821
 msgid ""
 "By default, updating the current branch in a non-bare repository\n"
 "is denied, because it will make the index and work tree inconsistent\n"
@@ -16589,8 +19066,24 @@ msgid ""
 "To squelch this message and still keep the default behaviour, set\n"
 "'receive.denyCurrentBranch' configuration variable to 'refuse'."
 msgstr ""
+"Per impostazione predefinita, l'aggiornamento del branch corrente\n"
+"in un repository non spoglio è negato, perché renderebbe l'indice\n"
+"e l'albero di lavoro inconsistenti con i dati di cui si è eseguito\n"
+"il push e richiederebbe 'git reset --hard' per ripristinare la\n"
+"corrispondenza dell'albero di lavoro con HEAD.\n"
+"\n"
+"Puoi impostare la variabile di configurazione\n"
+"'receive.denyCurrentBranch' a 'ignore' o 'warn' nel repository\n"
+"remoto per consentire il push nel branch corrente; ciò nonostante,\n"
+"questo non è raccomandato a meno che tu non provveda ad aggiornare\n"
+"il suo albero di lavoro in modo che corrisponda a ciò di cui hai\n"
+"eseguito il push in qualche altro modo.\n"
+"\n"
+"Per non visualizzare più questo messaggio e mantenere comunque\n"
+"il comportamento predefinito, imposta la variabile di\n"
+"configurazione 'receive.denyCurrentBranch' a 'refuse'."
 
-#: builtin/receive-pack.c:850
+#: builtin/receive-pack.c:841
 msgid ""
 "By default, deleting the current branch is denied, because the next\n"
 "'git clone' won't result in any file checked out, causing confusion.\n"
@@ -16601,15 +19094,25 @@ msgid ""
 "\n"
 "To squelch this message, you can set it to 'refuse'."
 msgstr ""
+"Per impostazione predefinita, l'eliminazione del branch corrente\n"
+"è negata, perché il prossimo 'git clone' farebbe sì che non venga\n"
+"eseguito il checkout di nessun file, causando confusione.\n"
+"\n"
+"Puoi impostare la variabile di configurazione\n"
+"'receive.denyDeleteCurrent' a 'warn' o 'ignore' nel repository\n"
+"remoto per consentire l'eliminazione del branch corrente, con o\n"
+"senza un messaggio d'avviso.\n"
+"\n"
+"Per non visualizzare più questo messaggio, puoi impostarla a\n"
+"'refuse'."
 
-#: builtin/receive-pack.c:1929
+#: builtin/receive-pack.c:1938
 msgid "quiet"
-msgstr ""
+msgstr "non visualizzare messaggi"
 
-#: builtin/receive-pack.c:1943
-#, fuzzy
+#: builtin/receive-pack.c:1952
 msgid "You must specify a directory."
-msgstr "Devi specificare un repository da clonare."
+msgstr "Devi specificare una directory."
 
 #: builtin/reflog.c:17
 msgid ""
@@ -16617,141 +19120,148 @@ msgid ""
 "rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
 "<refs>..."
 msgstr ""
+"git reflog expire [--expire=<tempo>] [--expire-unreachable=<tempo>] [--"
+"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
+"<riferimenti>..."
 
 #: builtin/reflog.c:22
 msgid ""
 "git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
 "<refs>..."
 msgstr ""
+"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
+"<riferimenti>..."
 
 #: builtin/reflog.c:25
 msgid "git reflog exists <ref>"
-msgstr ""
+msgstr "git reflog exists <riferimento>"
 
-#: builtin/reflog.c:567 builtin/reflog.c:572
-#, fuzzy, c-format
+#: builtin/reflog.c:568 builtin/reflog.c:573
+#, c-format
 msgid "'%s' is not a valid timestamp"
-msgstr "'%s' non è un nome di remoto valido"
+msgstr "'%s' non è un timestamp valido"
 
-#: builtin/reflog.c:605
-#, fuzzy, c-format
+#: builtin/reflog.c:606
+#, c-format
 msgid "Marking reachable objects..."
-msgstr "Non è stato possibile leggere l'oggetto %s"
+msgstr "Contrassegno gli oggetti raggiungibili..."
 
-#: builtin/reflog.c:643
+#: builtin/reflog.c:644
 #, c-format
 msgid "%s points nowhere!"
-msgstr ""
+msgstr "%s non punta a niente!"
 
-#: builtin/reflog.c:695
-#, fuzzy
+#: builtin/reflog.c:696
 msgid "no reflog specified to delete"
-msgstr "nessun remote specificato"
+msgstr "nessun registro riferimenti da eliminare specificato"
 
-#: builtin/reflog.c:704
-#, fuzzy, c-format
+#: builtin/reflog.c:705
+#, c-format
 msgid "not a reflog: %s"
-msgstr "impossibile leggere '%s'"
+msgstr "non è un registro riferimenti: %s"
 
-#: builtin/reflog.c:709
-#, fuzzy, c-format
+#: builtin/reflog.c:710
+#, c-format
 msgid "no reflog for '%s'"
-msgstr "impossibile analizzare il log di '%s'"
+msgstr "log riferimenti non esistente per '%s'"
 
-#: builtin/reflog.c:755
-#, fuzzy, c-format
+#: builtin/reflog.c:756
+#, c-format
 msgid "invalid ref format: %s"
-msgstr "formato data non valido: %s"
+msgstr "formato riferimento non valido: %s"
 
-#: builtin/reflog.c:764
+#: builtin/reflog.c:765
 msgid "git reflog [ show | expire | delete | exists ]"
-msgstr ""
+msgstr "git reflog [ show | expire | delete | exists ]"
 
-#: builtin/remote.c:16
+#: builtin/remote.c:17
 msgid "git remote [-v | --verbose]"
-msgstr ""
+msgstr "git remote [-v | --verbose]"
 
-#: builtin/remote.c:17
+#: builtin/remote.c:18
 msgid ""
 "git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <name> <url>"
 msgstr ""
+"git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
+"mirror=<fetch|push>] <nome> <URL>"
 
-#: builtin/remote.c:18 builtin/remote.c:38
+#: builtin/remote.c:19 builtin/remote.c:39
 msgid "git remote rename <old> <new>"
-msgstr ""
+msgstr "git remote rename <vecchio> <nuovo>"
 
-#: builtin/remote.c:19 builtin/remote.c:43
+#: builtin/remote.c:20 builtin/remote.c:44
 msgid "git remote remove <name>"
-msgstr ""
+msgstr "git remote remove <nome>"
 
-#: builtin/remote.c:20 builtin/remote.c:48
+#: builtin/remote.c:21 builtin/remote.c:49
 msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
-msgstr ""
+msgstr "git remote set-head <nome> (-a | --auto | -d | --delete | <branch>)"
 
-#: builtin/remote.c:21
+#: builtin/remote.c:22
 msgid "git remote [-v | --verbose] show [-n] <name>"
-msgstr ""
+msgstr "git remote [-v | --verbose] show [-n] <nome>"
 
-#: builtin/remote.c:22
+#: builtin/remote.c:23
 msgid "git remote prune [-n | --dry-run] <name>"
-msgstr ""
+msgstr "git remote prune [-n | --dry-run] <nome>"
 
-#: builtin/remote.c:23
+#: builtin/remote.c:24
 msgid ""
 "git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
 msgstr ""
+"git remote [-v | --verbose] update [-p | --prune] [(<gruppo> | <remoto>)...]"
 
-#: builtin/remote.c:24
+#: builtin/remote.c:25
 msgid "git remote set-branches [--add] <name> <branch>..."
-msgstr ""
+msgstr "git remote set-branches [--add] <nome> <branch>..."
 
-#: builtin/remote.c:25 builtin/remote.c:74
+#: builtin/remote.c:26 builtin/remote.c:75
 msgid "git remote get-url [--push] [--all] <name>"
-msgstr ""
+msgstr "git remote get-url [--push] [--all] <nome>"
 
-#: builtin/remote.c:26 builtin/remote.c:79
+#: builtin/remote.c:27 builtin/remote.c:80
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
-msgstr ""
+msgstr "git remote set-url [--push] <nome> <nuovo URL> [<vecchio URL>]"
 
-#: builtin/remote.c:27 builtin/remote.c:80
+#: builtin/remote.c:28 builtin/remote.c:81
 msgid "git remote set-url --add <name> <newurl>"
-msgstr ""
+msgstr "git remote set-url --add <nome> <nuovo URL>"
 
-#: builtin/remote.c:28 builtin/remote.c:81
+#: builtin/remote.c:29 builtin/remote.c:82
 msgid "git remote set-url --delete <name> <url>"
-msgstr ""
+msgstr "git remote set-url --delete <nome> <URL>"
 
-#: builtin/remote.c:33
+#: builtin/remote.c:34
 msgid "git remote add [<options>] <name> <url>"
-msgstr ""
+msgstr "git remote add [<opzioni>] <nome> <URL>"
 
-#: builtin/remote.c:53
+#: builtin/remote.c:54
 msgid "git remote set-branches <name> <branch>..."
-msgstr ""
+msgstr "git remote set-branches <nome> <branch>..."
 
-#: builtin/remote.c:54
+#: builtin/remote.c:55
 msgid "git remote set-branches --add <name> <branch>..."
-msgstr ""
+msgstr "git remote set-branches --add <nome> <branch>..."
 
-#: builtin/remote.c:59
+#: builtin/remote.c:60
 msgid "git remote show [<options>] <name>"
-msgstr ""
+msgstr "git remote show [<opzioni>] <nome>"
 
-#: builtin/remote.c:64
+#: builtin/remote.c:65
 msgid "git remote prune [<options>] <name>"
-msgstr ""
+msgstr "git remote prune [<opzioni>] <nome>"
 
-#: builtin/remote.c:69
+#: builtin/remote.c:70
 msgid "git remote update [<options>] [<group> | <remote>]..."
-msgstr ""
+msgstr "git remote update [<opzioni>] [<gruppo> | <remoto>]..."
 
-#: builtin/remote.c:98
+#: builtin/remote.c:99
 #, c-format
 msgid "Updating %s"
 msgstr "Aggiornamento di %s"
 
-#: builtin/remote.c:130
+#: builtin/remote.c:131
 msgid ""
 "--mirror is dangerous and deprecated; please\n"
 "\t use --mirror=fetch or --mirror=push instead"
@@ -16759,103 +19269,125 @@ msgstr ""
 "--mirror è pericoloso e deprecato; per favore\n"
 "\t usa invece --mirror-fetch o --mirror-push"
 
-#: builtin/remote.c:147
+#: builtin/remote.c:148
 #, c-format
 msgid "unknown mirror argument: %s"
 msgstr "argomento di mirror sconosciuto: %s"
 
-#: builtin/remote.c:163
-#, fuzzy
+#: builtin/remote.c:164
 msgid "fetch the remote branches"
-msgstr "  Branch remoto:%s"
+msgstr "recupera i branch remoti"
 
-#: builtin/remote.c:165
+#: builtin/remote.c:166
 msgid "import all tags and associated objects when fetching"
-msgstr ""
+msgstr "importa tutti i tag e gli oggetti associati durante il recupero"
 
-#: builtin/remote.c:168
+#: builtin/remote.c:169
 msgid "or do not fetch any tag at all (--no-tags)"
-msgstr ""
+msgstr "o non recuperare alcun tag (--no-tags)"
 
-#: builtin/remote.c:170
+#: builtin/remote.c:171
 msgid "branch(es) to track"
-msgstr ""
+msgstr "branch da tracciare"
 
-#: builtin/remote.c:171
-#, fuzzy
+#: builtin/remote.c:172
 msgid "master branch"
-msgstr "  Branch remoto:%s"
+msgstr "branch master"
 
-#: builtin/remote.c:173
+#: builtin/remote.c:174
 msgid "set up remote as a mirror to push to or fetch from"
 msgstr ""
+"imposta il remoto come mirror su cui eseguire push o da cui recuperare dati"
 
-#: builtin/remote.c:185
+#: builtin/remote.c:186
 msgid "specifying a master branch makes no sense with --mirror"
 msgstr "specificare un branch master con --mirror non ha senso"
 
-#: builtin/remote.c:187
+#: builtin/remote.c:188
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr ""
+"specificare i branch da tracciare ha senso solo con i mirror da cui "
+"recuperare dati"
 
-#: builtin/remote.c:194 builtin/remote.c:636
+#: builtin/remote.c:195 builtin/remote.c:696
 #, c-format
 msgid "remote %s already exists."
 msgstr "il remoto %s esiste già."
 
-#: builtin/remote.c:198 builtin/remote.c:640
+#: builtin/remote.c:199 builtin/remote.c:700
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' non è un nome di remoto valido"
 
-#: builtin/remote.c:238
+#: builtin/remote.c:239
 #, c-format
 msgid "Could not setup master '%s'"
-msgstr "Non è stato possibile configurare il master '%s'"
+msgstr "Impossibile configurare il master '%s'"
 
-#: builtin/remote.c:344
+#: builtin/remote.c:354
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr ""
+"Impossibile ottenere la mappa di recupero per lo specificatore riferimento %s"
 
-#: builtin/remote.c:443 builtin/remote.c:451
+#: builtin/remote.c:453 builtin/remote.c:461
 msgid "(matching)"
 msgstr "(corrispondente)"
 
-#: builtin/remote.c:455
+#: builtin/remote.c:465
 msgid "(delete)"
 msgstr "(elimina)"
 
-#: builtin/remote.c:629 builtin/remote.c:765 builtin/remote.c:864
-#, fuzzy, c-format
+#: builtin/remote.c:653
+#, c-format
+msgid "could not set '%s'"
+msgstr "impossibile impostare '%s'"
+
+#: builtin/remote.c:658
+#, c-format
+msgid ""
+"The %s configuration remote.pushDefault in:\n"
+"\t%s:%d\n"
+"now names the non-existent remote '%s'"
+msgstr ""
+"La configurazione remote.pushDefault %s in:\n"
+"\t%s:%d\n"
+"ora dà il nome al remoto inesistente '%s'"
+
+#: builtin/remote.c:689 builtin/remote.c:832 builtin/remote.c:940
+#, c-format
 msgid "No such remote: '%s'"
-msgstr "Remote '%s' non esistente"
+msgstr "Remoto non esistente: '%s'"
 
-#: builtin/remote.c:646
+#: builtin/remote.c:706
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr ""
-"Non è stato possibile rinominare la sezione di configurazione da '%s' in '%s'"
+"Non è stato possibile ridenominare la sezione di configurazione da '%s' in "
+"'%s'"
 
-#: builtin/remote.c:666
+#: builtin/remote.c:726
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
 "\t%s\n"
 "\tPlease update the configuration manually if necessary."
 msgstr ""
+"Non aggiorno lo specificatore riferimento di recupero non predefinito\n"
+"\t%s\n"
+"\tAggiorna la configurazione manualmente se necessario."
 
-#: builtin/remote.c:702
+#: builtin/remote.c:766
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "eliminazione di '%s' non riuscita"
 
-#: builtin/remote.c:736
+#: builtin/remote.c:800
 #, c-format
 msgid "creating '%s' failed"
 msgstr "creazione di '%s' non riuscita"
 
-#: builtin/remote.c:802
+#: builtin/remote.c:876
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -16865,125 +19397,126 @@ msgid_plural ""
 msgstr[0] ""
 "Nota: un branch al di fuori della gerarchia refs/remotes/ non è stato "
 "eliminato;\n"
-"per eliminarlo, usare:"
+"per eliminarlo, usa:"
 msgstr[1] ""
 "Nota: alcuni branch al di fuori della gerarchia refs/remotes/ non sono stati "
 "eliminati;\n"
-"per eliminarli, usare:"
+"per eliminarli, usa:"
 
-#: builtin/remote.c:816
+#: builtin/remote.c:890
 #, c-format
 msgid "Could not remove config section '%s'"
-msgstr "Non è stato possibile rimuovere la sezione di configurazione '%s'"
+msgstr "Impossibile rimuovere la sezione di configurazione '%s'"
 
-#: builtin/remote.c:917
+#: builtin/remote.c:993
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
-msgstr ""
+msgstr " nuovo (il prossimo fetch lo salverà in remotes/%s)"
 
-#: builtin/remote.c:920
+#: builtin/remote.c:996
 msgid " tracked"
-msgstr ""
+msgstr " tracciato"
 
-#: builtin/remote.c:922
+#: builtin/remote.c:998
 msgid " stale (use 'git remote prune' to remove)"
-msgstr " vecchio (usare 'git remote prune' per rimuoverlo)"
+msgstr " vecchio (usa 'git remote prune' per rimuoverlo)"
 
-#: builtin/remote.c:924
+#: builtin/remote.c:1000
 msgid " ???"
-msgstr "???"
+msgstr " ???"
 
-#: builtin/remote.c:965
+#: builtin/remote.c:1041
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr ""
-"branch.%s.merge non valido; impossibile eseguire il rebase su > 1 branch"
+"valore branch.%s.merge non valido; impossibile eseguire il rebase su più di "
+"un branch"
 
-#: builtin/remote.c:974
+#: builtin/remote.c:1050
 #, c-format
 msgid "rebases interactively onto remote %s"
-msgstr ""
+msgstr "rebase interattivo sul remoto %s"
 
-#: builtin/remote.c:976
+#: builtin/remote.c:1052
 #, c-format
 msgid "rebases interactively (with merges) onto remote %s"
-msgstr ""
+msgstr "rebase interattivo (con merge) sul remoto %s"
 
-#: builtin/remote.c:979
+#: builtin/remote.c:1055
 #, c-format
 msgid "rebases onto remote %s"
-msgstr ""
+msgstr "rebase sul remoto %s"
 
-#: builtin/remote.c:983
+#: builtin/remote.c:1059
 #, c-format
 msgid " merges with remote %s"
 msgstr " merge con il remote %s"
 
-#: builtin/remote.c:986
+#: builtin/remote.c:1062
 #, c-format
 msgid "merges with remote %s"
 msgstr "merge con il remote %s"
 
-#: builtin/remote.c:989
-#, fuzzy, c-format
+#: builtin/remote.c:1065
+#, c-format
 msgid "%-*s    and with remote %s\n"
-msgstr "    e con il remote"
+msgstr "%-*s    e con il remoto %s\n"
 
-#: builtin/remote.c:1032
+#: builtin/remote.c:1108
 msgid "create"
 msgstr "crea"
 
-#: builtin/remote.c:1035
+#: builtin/remote.c:1111
 msgid "delete"
 msgstr "elimina"
 
-#: builtin/remote.c:1039
+#: builtin/remote.c:1115
 msgid "up to date"
 msgstr "aggiornato"
 
-#: builtin/remote.c:1042
+#: builtin/remote.c:1118
 msgid "fast-forwardable"
-msgstr ""
+msgstr "fast forward possibile"
 
-#: builtin/remote.c:1045
+#: builtin/remote.c:1121
 msgid "local out of date"
 msgstr "locale non aggiornato"
 
-#: builtin/remote.c:1052
+#: builtin/remote.c:1128
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
-msgstr ""
+msgstr "    %-*s esegue un aggiornamento forzato su %-*s (%s)"
 
-#: builtin/remote.c:1055
+#: builtin/remote.c:1131
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
-msgstr ""
+msgstr "    %-*s esegue il push su %-*s (%s)"
 
-#: builtin/remote.c:1059
+#: builtin/remote.c:1135
 #, c-format
 msgid "    %-*s forces to %s"
-msgstr ""
+msgstr "    %-*s esegue un aggiornamento forzato su %s"
 
-#: builtin/remote.c:1062
+#: builtin/remote.c:1138
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s esegue il push su %s"
 
-#: builtin/remote.c:1130
+#: builtin/remote.c:1206
 msgid "do not query remotes"
-msgstr ""
+msgstr "non interrogare i remoti"
 
-#: builtin/remote.c:1157
+#: builtin/remote.c:1233
 #, c-format
 msgid "* remote %s"
-msgstr "* remote %s"
+msgstr "* remoto %s"
 
-#: builtin/remote.c:1158
+#: builtin/remote.c:1234
 #, c-format
 msgid "  Fetch URL: %s"
-msgstr ""
+msgstr "  URL recupero: %s"
 
-#: builtin/remote.c:1159 builtin/remote.c:1175 builtin/remote.c:1314
+#: builtin/remote.c:1235 builtin/remote.c:1251 builtin/remote.c:1390
 msgid "(no URL)"
 msgstr "(nessun URL)"
 
@@ -16991,309 +19524,305 @@ msgstr "(nessun URL)"
 #. with the one in " Fetch URL: %s"
 #. translation.
 #.
-#: builtin/remote.c:1173 builtin/remote.c:1175
+#: builtin/remote.c:1249 builtin/remote.c:1251
 #, c-format
 msgid "  Push  URL: %s"
-msgstr ""
+msgstr "      URL push: %s"
 
-#: builtin/remote.c:1177 builtin/remote.c:1179 builtin/remote.c:1181
+#: builtin/remote.c:1253 builtin/remote.c:1255 builtin/remote.c:1257
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  branch HEAD: %s"
 
-#: builtin/remote.c:1177
+#: builtin/remote.c:1253
 msgid "(not queried)"
-msgstr ""
+msgstr "(non interrogato)"
 
-#: builtin/remote.c:1179
-#, fuzzy
+#: builtin/remote.c:1255
 msgid "(unknown)"
-msgstr "sconosciuto:    %s"
+msgstr "(sconosciuto)"
 
-#: builtin/remote.c:1183
+#: builtin/remote.c:1259
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
 msgstr ""
 "  branch HEAD (l'HEAD remoto è ambiguo, potrebbe essere uno dei seguenti):\n"
 
-#: builtin/remote.c:1195
+#: builtin/remote.c:1271
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Branch remoto:%s"
 msgstr[1] "  Branch remoti:%s"
 
-#: builtin/remote.c:1198 builtin/remote.c:1224
+#: builtin/remote.c:1274 builtin/remote.c:1300
 msgid " (status not queried)"
-msgstr ""
+msgstr " (stato non richiesto)"
 
-#: builtin/remote.c:1207
+#: builtin/remote.c:1283
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  Branch locale configurato per 'git pull':"
 msgstr[1] "  Branch locali configurati per 'git pull':"
 
-#: builtin/remote.c:1215
+#: builtin/remote.c:1291
 msgid "  Local refs will be mirrored by 'git push'"
-msgstr ""
+msgstr "  I riferimenti locali saranno copiati da 'git push'"
 
-#: builtin/remote.c:1221
+#: builtin/remote.c:1297
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  Ref locale configurato per 'git push'%s:"
 msgstr[1] "  Ref locali configurati per 'git push'%s:"
 
-#: builtin/remote.c:1242
+#: builtin/remote.c:1318
 msgid "set refs/remotes/<name>/HEAD according to remote"
-msgstr ""
+msgstr "imposta refs/remotes/<nome>/HEAD in base al remoto"
 
-#: builtin/remote.c:1244
+#: builtin/remote.c:1320
 msgid "delete refs/remotes/<name>/HEAD"
-msgstr ""
+msgstr "elimina refs/remotes/<nome>/HEAD"
 
-#: builtin/remote.c:1259
+#: builtin/remote.c:1335
 msgid "Cannot determine remote HEAD"
 msgstr "Impossibile determinare l'HEAD remoto"
 
-#: builtin/remote.c:1261
+#: builtin/remote.c:1337
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
-msgstr ""
+msgstr "Branch HEAD remoti multipli. Scegline uno esplicitamente con:"
 
-#: builtin/remote.c:1271
+#: builtin/remote.c:1347
 #, c-format
 msgid "Could not delete %s"
 msgstr "Non è stato possibile eliminare %s"
 
-#: builtin/remote.c:1279
+#: builtin/remote.c:1355
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Non è un ref valido: %s"
 
-#: builtin/remote.c:1281
+#: builtin/remote.c:1357
 #, c-format
 msgid "Could not setup %s"
 msgstr "Non è stato possibile configurare %s"
 
-#: builtin/remote.c:1299
+#: builtin/remote.c:1375
 #, c-format
 msgid " %s will become dangling!"
-msgstr ""
+msgstr " %s diventerà pendente!"
 
-#: builtin/remote.c:1300
+#: builtin/remote.c:1376
 #, c-format
 msgid " %s has become dangling!"
-msgstr ""
+msgstr " %s è diventato pendente!"
 
-#: builtin/remote.c:1310
+#: builtin/remote.c:1386
 #, c-format
 msgid "Pruning %s"
-msgstr ""
+msgstr "Eliminazione di %s in corso"
 
-#: builtin/remote.c:1311
+#: builtin/remote.c:1387
 #, c-format
 msgid "URL: %s"
 msgstr "URL: %s"
 
-#: builtin/remote.c:1327
+#: builtin/remote.c:1403
 #, c-format
 msgid " * [would prune] %s"
-msgstr ""
+msgstr " * [sarebbe eliminato] %s"
 
-#: builtin/remote.c:1330
+#: builtin/remote.c:1406
 #, c-format
 msgid " * [pruned] %s"
-msgstr ""
+msgstr " * [eliminato] %s"
 
-#: builtin/remote.c:1375
+#: builtin/remote.c:1451
 msgid "prune remotes after fetching"
-msgstr ""
+msgstr "elimina remoti dopo il fetch"
 
-#: builtin/remote.c:1438 builtin/remote.c:1492 builtin/remote.c:1560
+#: builtin/remote.c:1514 builtin/remote.c:1568 builtin/remote.c:1636
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Remote '%s' non esistente"
 
-#: builtin/remote.c:1454
-#, fuzzy
+#: builtin/remote.c:1530
 msgid "add branch"
-msgstr "Sul branch "
+msgstr "aggiungi branch"
 
-#: builtin/remote.c:1461
+#: builtin/remote.c:1537
 msgid "no remote specified"
 msgstr "nessun remote specificato"
 
-#: builtin/remote.c:1478
+#: builtin/remote.c:1554
 msgid "query push URLs rather than fetch URLs"
-msgstr ""
+msgstr "interroga gli URL per il push anziché gli URL per il fetch"
 
-#: builtin/remote.c:1480
+#: builtin/remote.c:1556
 msgid "return all URLs"
-msgstr ""
+msgstr "restituisci tutti gli URL"
 
-#: builtin/remote.c:1508
-#, fuzzy, c-format
+#: builtin/remote.c:1584
+#, c-format
 msgid "no URLs configured for remote '%s'"
-msgstr "Nessun upstream configurato per il branch '%s'"
+msgstr "nessun URL configurato per il remoto '%s'"
 
-#: builtin/remote.c:1534
+#: builtin/remote.c:1610
 msgid "manipulate push URLs"
-msgstr ""
+msgstr "manipola gli URL per il push"
 
-#: builtin/remote.c:1536
+#: builtin/remote.c:1612
 msgid "add URL"
-msgstr ""
+msgstr "aggiungi URL"
 
-#: builtin/remote.c:1538
-#, fuzzy
+#: builtin/remote.c:1614
 msgid "delete URLs"
-msgstr "elimina"
+msgstr "elimina URL"
 
-#: builtin/remote.c:1545
+#: builtin/remote.c:1621
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete non ha senso"
 
-#: builtin/remote.c:1584
+#: builtin/remote.c:1660
 #, c-format
 msgid "Invalid old URL pattern: %s"
-msgstr ""
+msgstr "Pattern URL vecchio non valido: %s"
 
-#: builtin/remote.c:1592
+#: builtin/remote.c:1668
 #, c-format
 msgid "No such URL found: %s"
 msgstr "Nessuna URL trovata: %s"
 
-#: builtin/remote.c:1594
+#: builtin/remote.c:1670
 msgid "Will not delete all non-push URLs"
-msgstr ""
-
-#: builtin/remote.c:1610
-msgid "be verbose; must be placed before a subcommand"
-msgstr ""
-
-#: builtin/remote.c:1641
-#, c-format
-msgid "Unknown subcommand: %s"
-msgstr "Sottocomando sconosciuto: %s"
+msgstr "Non eliminerò tutti gli URL non push"
 
-#: builtin/repack.c:22
+#: builtin/repack.c:23
 msgid "git repack [<options>]"
-msgstr ""
+msgstr "git repack [<opzioni>]"
 
-#: builtin/repack.c:27
+#: builtin/repack.c:28
 msgid ""
 "Incremental repacks are incompatible with bitmap indexes.  Use\n"
 "--no-write-bitmap-index or disable the pack.writebitmaps configuration."
 msgstr ""
+"I repack incrementali non sono compatibili con gli indici bitmap.\n"
+"Usa --no-write-bitmap-index o disabilita l'opzione di configurazione\n"
+"pack.writebitmaps."
 
-#: builtin/repack.c:200
+#: builtin/repack.c:191
 msgid "could not start pack-objects to repack promisor objects"
 msgstr ""
+"impossibile avviare pack-objects per eseguire il repack degli oggetti "
+"promettenti"
 
-#: builtin/repack.c:239 builtin/repack.c:411
+#: builtin/repack.c:230 builtin/repack.c:416
 msgid "repack: Expecting full hex object ID lines only from pack-objects."
 msgstr ""
+"repack: Da pack-objects mi attendevo solo righe con gli ID completi "
+"esadecimali degli oggetti."
 
-#: builtin/repack.c:256
+#: builtin/repack.c:254
 msgid "could not finish pack-objects to repack promisor objects"
 msgstr ""
+"impossibile portare a termine pack-objects per eseguire il repack degli "
+"oggetti promettenti"
 
-#: builtin/repack.c:294
+#: builtin/repack.c:292
 msgid "pack everything in a single pack"
-msgstr ""
+msgstr "esegui il pack di tutto in un singolo pack"
 
-#: builtin/repack.c:296
+#: builtin/repack.c:294
 msgid "same as -a, and turn unreachable objects loose"
-msgstr ""
+msgstr "come -a e rendi sciolti gli oggetti non raggiungibili"
 
-#: builtin/repack.c:299
+#: builtin/repack.c:297
 msgid "remove redundant packs, and run git-prune-packed"
-msgstr ""
+msgstr "rimuovi i pack ridondanti ed esegui git-prune-packed"
 
-#: builtin/repack.c:301
+#: builtin/repack.c:299
 msgid "pass --no-reuse-delta to git-pack-objects"
-msgstr ""
+msgstr "fornisci l'opzione --no-reuse-delta a git-pack-objects"
 
-#: builtin/repack.c:303
+#: builtin/repack.c:301
 msgid "pass --no-reuse-object to git-pack-objects"
-msgstr ""
+msgstr "fornisci l'opzione --no-reuse-object a git-pack-objects"
 
-#: builtin/repack.c:305
+#: builtin/repack.c:303
 msgid "do not run git-update-server-info"
-msgstr ""
+msgstr "non eseguire git-update-server-info"
 
-#: builtin/repack.c:308
+#: builtin/repack.c:306
 msgid "pass --local to git-pack-objects"
-msgstr ""
+msgstr "fornisci l'opzione --local a git-pack-objects"
 
-#: builtin/repack.c:310
+#: builtin/repack.c:308
 msgid "write bitmap index"
-msgstr ""
+msgstr "scrivi l'indice bitmap"
 
-#: builtin/repack.c:312
+#: builtin/repack.c:310
 msgid "pass --delta-islands to git-pack-objects"
-msgstr ""
+msgstr "fornisci l'opzione --delta-islands a git-pack-objects"
 
-#: builtin/repack.c:313
+#: builtin/repack.c:311
 msgid "approxidate"
-msgstr ""
+msgstr "data approssimativa"
 
-#: builtin/repack.c:314
+#: builtin/repack.c:312
 msgid "with -A, do not loosen objects older than this"
-msgstr ""
+msgstr "con -A, non rendere sciolti gli oggetti meno recenti di questa data"
 
-#: builtin/repack.c:316
+#: builtin/repack.c:314
 msgid "with -a, repack unreachable objects"
-msgstr ""
+msgstr "con -a, esegui il repack degli oggetti non raggiungibili"
 
-#: builtin/repack.c:318
+#: builtin/repack.c:316
 msgid "size of the window used for delta compression"
-msgstr ""
+msgstr "dimensione della finestra usata per la compressione delta"
 
-#: builtin/repack.c:319 builtin/repack.c:325
+#: builtin/repack.c:317 builtin/repack.c:323
 msgid "bytes"
-msgstr ""
+msgstr "byte"
 
-#: builtin/repack.c:320
+#: builtin/repack.c:318
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr ""
+"come sopra, ma limita le dimensioni della memoria invece del numero di voci"
 
-#: builtin/repack.c:322
+#: builtin/repack.c:320
 msgid "limits the maximum delta depth"
-msgstr ""
+msgstr "limita la profondità massima dei delta"
 
-#: builtin/repack.c:324
+#: builtin/repack.c:322
 msgid "limits the maximum number of threads"
-msgstr ""
+msgstr "limita il numero massimo di thread"
 
-#: builtin/repack.c:326
+#: builtin/repack.c:324
 msgid "maximum size of each packfile"
-msgstr ""
+msgstr "dimensione massima di ogni file pack"
 
-#: builtin/repack.c:328
+#: builtin/repack.c:326
 msgid "repack objects in packs marked with .keep"
-msgstr ""
+msgstr "esegui il repack degli oggetti nei pack contrassegnati con .keep"
 
-#: builtin/repack.c:330
+#: builtin/repack.c:328
 msgid "do not repack this pack"
-msgstr ""
+msgstr "non eseguire il repack di questo pack"
 
-#: builtin/repack.c:340
+#: builtin/repack.c:338
 msgid "cannot delete packs in a precious-objects repo"
-msgstr ""
+msgstr "impossibile eliminare i pack in un repository 'oggetti preziosi'"
 
-#: builtin/repack.c:344
-#, fuzzy
+#: builtin/repack.c:342
 msgid "--keep-unreachable and -A are incompatible"
-msgstr "--column e -n non sono compatibili"
+msgstr "--keep-unreachable e -A non sono compatibili"
 
-#: builtin/repack.c:420
-#, fuzzy
+#: builtin/repack.c:425
 msgid "Nothing new to pack."
-msgstr "nulla da fare"
+msgstr "Non ci sono oggetti nuovi di cui eseguire il pack."
 
-#: builtin/repack.c:481
+#: builtin/repack.c:486
 #, c-format
 msgid ""
 "WARNING: Some packs in use have been renamed by\n"
@@ -17304,390 +19833,414 @@ msgid ""
 "WARNING: original names also failed.\n"
 "WARNING: Please rename them in %s manually:\n"
 msgstr ""
+"AVVISO: Alcuni pack in uso sono stati ridenominati\n"
+"AVVISO: aggiungendo il prefisso old- al loro nome\n"
+"AVVISO: per consentirne la sostituzione con la\n"
+"AVVISO: nuova versione del file. Ma l'operazione\n"
+"AVVISO: non è riuscita e anche il tentativo di\n"
+"AVVISO: ridenominarli con il loro nome originale\n"
+"AVVISO: non è riuscito. Ridenominali manualmente\n"
+"AVVISO: entro %s:\n"
 
-#: builtin/repack.c:529
-#, fuzzy, c-format
+#: builtin/repack.c:534
+#, c-format
 msgid "failed to remove '%s'"
-msgstr "rimozione di %s non riuscita"
+msgstr "eliminazione di '%s' non riuscita"
 
 #: builtin/replace.c:22
 msgid "git replace [-f] <object> <replacement>"
-msgstr ""
+msgstr "git replace [-f] <oggetto> <oggetto sostitutivo>"
 
 #: builtin/replace.c:23
 msgid "git replace [-f] --edit <object>"
-msgstr ""
+msgstr "git replace [-f] --edit <oggetto>"
 
 #: builtin/replace.c:24
 msgid "git replace [-f] --graft <commit> [<parent>...]"
-msgstr ""
+msgstr "git replace [-f] --graft <commit> [<genitore>...]"
 
 #: builtin/replace.c:25
 msgid "git replace [-f] --convert-graft-file"
-msgstr ""
+msgstr "git replace [-f] --convert-graft-file"
 
 #: builtin/replace.c:26
 msgid "git replace -d <object>..."
-msgstr ""
+msgstr "git replace -d <oggetto>..."
 
 #: builtin/replace.c:27
 msgid "git replace [--format=<format>] [-l [<pattern>]]"
-msgstr ""
-
-#: builtin/replace.c:58 builtin/replace.c:203 builtin/replace.c:206
-#, fuzzy, c-format
-msgid "failed to resolve '%s' as a valid ref"
-msgstr "rimozione di %s non riuscita"
+msgstr "git replace [--format=<formato>] [-l [<pattern>]]"
 
-#: builtin/replace.c:86
+#: builtin/replace.c:90
 #, c-format
 msgid ""
 "invalid replace format '%s'\n"
 "valid formats are 'short', 'medium' and 'long'"
 msgstr ""
+"formato sostituzione non valido: '%s'\n"
+"i formati validi sono 'short', 'medium' e 'long'"
 
-#: builtin/replace.c:121
-#, fuzzy, c-format
+#: builtin/replace.c:125
+#, c-format
 msgid "replace ref '%s' not found"
-msgstr "branch '%s' non trovato."
+msgstr "riferimento sostitutivo '%s' non trovato"
 
-#: builtin/replace.c:137
+#: builtin/replace.c:141
 #, c-format
 msgid "Deleted replace ref '%s'"
-msgstr ""
+msgstr "Eliminato riferimento sostitutivo '%s'"
 
-#: builtin/replace.c:149
-#, fuzzy, c-format
+#: builtin/replace.c:153
+#, c-format
 msgid "'%s' is not a valid ref name"
-msgstr "'%s' non è un nome di remoto valido"
+msgstr "'%s' non è un nome riferimento valido"
 
-#: builtin/replace.c:154
-#, fuzzy, c-format
+#: builtin/replace.c:158
+#, c-format
 msgid "replace ref '%s' already exists"
-msgstr "il tag '%s' esiste già"
+msgstr "il riferimento sostitutivo '%s' esiste già"
 
-#: builtin/replace.c:174
+#: builtin/replace.c:178
 #, c-format
 msgid ""
 "Objects must be of the same type.\n"
 "'%s' points to a replaced object of type '%s'\n"
 "while '%s' points to a replacement object of type '%s'."
 msgstr ""
+"Gli oggetti devono essere dello stesso tipo.\n"
+"'%s' punta a un oggetto sostituito di tipo '%s'\n"
+"mentre '%s' punta a un oggetto sostitutivo di tipo '%s'."
 
-#: builtin/replace.c:225
-#, fuzzy, c-format
+#: builtin/replace.c:229
+#, c-format
 msgid "unable to open %s for writing"
-msgstr "Non è stato possibile aprire '%s' per la scrittura"
+msgstr "impossibile aprire '%s' in scrittura"
 
-#: builtin/replace.c:238
+#: builtin/replace.c:242
 msgid "cat-file reported failure"
-msgstr ""
+msgstr "cat-file ha segnalato un errore"
 
-#: builtin/replace.c:254
-#, fuzzy, c-format
+#: builtin/replace.c:258
+#, c-format
 msgid "unable to open %s for reading"
-msgstr "impossibile aprire o leggere %s"
+msgstr "impossibile aprire %s in lettura"
 
-#: builtin/replace.c:268
-#, fuzzy
+#: builtin/replace.c:272
 msgid "unable to spawn mktree"
-msgstr "impossibile leggere il tree (%s)"
+msgstr "impossibile lanciare mktree"
 
-#: builtin/replace.c:272
-#, fuzzy
+#: builtin/replace.c:276
 msgid "unable to read from mktree"
-msgstr "impossibile leggere il tree (%s)"
+msgstr "impossibile leggere da mktree"
 
-#: builtin/replace.c:281
-#, fuzzy
+#: builtin/replace.c:285
 msgid "mktree reported failure"
-msgstr "revert non riuscito"
+msgstr "mktree ha segnalato un errore"
 
-#: builtin/replace.c:285
+#: builtin/replace.c:289
 msgid "mktree did not return an object name"
-msgstr ""
+msgstr "mktree non ha restituito un nome oggetto"
 
-#: builtin/replace.c:294
-#, fuzzy, c-format
+#: builtin/replace.c:298
+#, c-format
 msgid "unable to fstat %s"
-msgstr "non è possibile scrivere %s"
+msgstr "impossibile eseguire fstat su %s"
 
-#: builtin/replace.c:299
-#, fuzzy
+#: builtin/replace.c:303
 msgid "unable to write object to database"
-msgstr "impossibile scrivere l'oggetto nota"
+msgstr "impossibile scrivere l'oggetto nel database"
 
-#: builtin/replace.c:318 builtin/replace.c:371 builtin/replace.c:415
-#: builtin/replace.c:445
-#, fuzzy, c-format
+#: builtin/replace.c:322 builtin/replace.c:378 builtin/replace.c:424
+#: builtin/replace.c:454
+#, c-format
 msgid "not a valid object name: '%s'"
-msgstr "Non è il nome di un oggetto valido %s"
+msgstr "nome oggetto non valido: '%s'"
 
-#: builtin/replace.c:322
-#, fuzzy, c-format
+#: builtin/replace.c:326
+#, c-format
 msgid "unable to get object type for %s"
-msgstr "impossibile aggiungere la voce della cache per %s"
+msgstr "impossibile recuperare il tipo dell'oggetto %s"
 
-#: builtin/replace.c:338
-#, fuzzy
+#: builtin/replace.c:342
 msgid "editing object file failed"
-msgstr "aggiornamento dei file non riuscito"
+msgstr "modifica del file oggetto non riuscita"
 
-#: builtin/replace.c:347
+#: builtin/replace.c:351
 #, c-format
 msgid "new object is the same as the old one: '%s'"
-msgstr ""
+msgstr "il nuovo oggetto è lo stesso di quello vecchio: '%s'"
 
-#: builtin/replace.c:407
-#, fuzzy, c-format
+#: builtin/replace.c:384
+#, c-format
+msgid "could not parse %s as a commit"
+msgstr "impossibile analizzare %s come commit"
+
+#: builtin/replace.c:416
+#, c-format
 msgid "bad mergetag in commit '%s'"
-msgstr "repository '%s' errato"
+msgstr "tag merge non valido nel commit '%s'"
 
-#: builtin/replace.c:409
-#, fuzzy, c-format
+#: builtin/replace.c:418
+#, c-format
 msgid "malformed mergetag in commit '%s'"
-msgstr "nome oggetto '%s' malformato"
+msgstr "tag merge malformato nel commit '%s'"
 
-#: builtin/replace.c:421
+#: builtin/replace.c:430
 #, c-format
 msgid ""
 "original commit '%s' contains mergetag '%s' that is discarded; use --edit "
 "instead of --graft"
 msgstr ""
+"il commit originario '%s' contiene il tag merge '%s' che è stato scartato; "
+"usa --edit anziché --graft"
 
-#: builtin/replace.c:460
+#: builtin/replace.c:469
 #, c-format
 msgid "the original commit '%s' has a gpg signature"
-msgstr ""
+msgstr "il commit originario '%s' ha una firma GPG"
 
-#: builtin/replace.c:461
+#: builtin/replace.c:470
 msgid "the signature will be removed in the replacement commit!"
-msgstr ""
+msgstr "la firma sarà rimossa nel commit sostitutivo!"
 
-#: builtin/replace.c:471
-#, fuzzy, c-format
+#: builtin/replace.c:480
+#, c-format
 msgid "could not write replacement commit for: '%s'"
-msgstr "Non è stato possibile scrivere su '%s'"
+msgstr "impossibile scrivere il commit sostitutivo per '%s'"
 
-#: builtin/replace.c:479
+#: builtin/replace.c:488
 #, c-format
 msgid "graft for '%s' unnecessary"
-msgstr ""
+msgstr "graft per '%s' non necessario"
 
-#: builtin/replace.c:482
+#: builtin/replace.c:492
 #, c-format
 msgid "new commit is the same as the old one: '%s'"
-msgstr ""
+msgstr "il nuovo commit è lo stesso di quello vecchio: '%s'"
 
-#: builtin/replace.c:515
-#, fuzzy, c-format
+#: builtin/replace.c:527
+#, c-format
 msgid ""
 "could not convert the following graft(s):\n"
 "%s"
-msgstr "non è stato possibile verificare il tag '%s'"
+msgstr ""
+"impossibile convertire i seguenti graft:\n"
+"%s"
 
-#: builtin/replace.c:536
+#: builtin/replace.c:548
 msgid "list replace refs"
-msgstr ""
+msgstr "elenca i riferimenti sostitutivi"
 
-#: builtin/replace.c:537
+#: builtin/replace.c:549
 msgid "delete replace refs"
-msgstr ""
+msgstr "elimina i riferimenti sostitutivi"
 
-#: builtin/replace.c:538
-#, fuzzy
+#: builtin/replace.c:550
 msgid "edit existing object"
-msgstr "Indicizzazione degli oggetti"
+msgstr "modifica l'oggetto esistente"
 
-#: builtin/replace.c:539
-#, fuzzy
+#: builtin/replace.c:551
 msgid "change a commit's parents"
-msgstr "Nessun commit analizzato."
+msgstr "cambia i genitori di un commit"
 
-#: builtin/replace.c:540
+#: builtin/replace.c:552
 msgid "convert existing graft file"
-msgstr ""
+msgstr "converti un file graft esistente"
 
-#: builtin/replace.c:541
+#: builtin/replace.c:553
 msgid "replace the ref if it exists"
-msgstr ""
+msgstr "sostituisci il riferimento se esiste"
 
-#: builtin/replace.c:543
+#: builtin/replace.c:555
 msgid "do not pretty-print contents for --edit"
-msgstr ""
+msgstr "non stampare i contenuti in un formato leggibile (per --edit)"
 
-#: builtin/replace.c:544
+#: builtin/replace.c:556
 msgid "use this format"
-msgstr ""
+msgstr "usa questo formato"
 
-#: builtin/replace.c:557
-#, fuzzy
+#: builtin/replace.c:569
 msgid "--format cannot be used when not listing"
-msgstr "--fix-thin non può essere usato senza --stdin"
+msgstr "--format non può essere usato quando non si elencano voci"
 
-#: builtin/replace.c:565
+#: builtin/replace.c:577
 msgid "-f only makes sense when writing a replacement"
-msgstr ""
+msgstr "-f ha senso solo se si sta scrivendo un oggetto sostitutivo"
 
-#: builtin/replace.c:569
+#: builtin/replace.c:581
 msgid "--raw only makes sense with --edit"
-msgstr ""
+msgstr "--raw ha senso solo con --edit"
 
-#: builtin/replace.c:575
+#: builtin/replace.c:587
 msgid "-d needs at least one argument"
-msgstr ""
+msgstr "-d richiede almeno un argomento"
 
-#: builtin/replace.c:581
+#: builtin/replace.c:593
 msgid "bad number of arguments"
-msgstr ""
+msgstr "numero di argomenti errato"
 
-#: builtin/replace.c:587
+#: builtin/replace.c:599
 msgid "-e needs exactly one argument"
-msgstr ""
+msgstr "-e richiede esattamente un argomento"
 
-#: builtin/replace.c:593
+#: builtin/replace.c:605
 msgid "-g needs at least one argument"
-msgstr ""
+msgstr "-g richiede almeno un argomento"
 
-#: builtin/replace.c:599
+#: builtin/replace.c:611
 msgid "--convert-graft-file takes no argument"
-msgstr ""
+msgstr "--convert-graft-file non richiede argomenti"
 
-#: builtin/replace.c:605
+#: builtin/replace.c:617
 msgid "only one pattern can be given with -l"
-msgstr ""
+msgstr "con -l può essere specificato solo un pattern"
 
 #: builtin/rerere.c:13
 msgid "git rerere [clear | forget <path>... | status | remaining | diff | gc]"
 msgstr ""
+"git rerere [clear | forget <percorso>... | status | remaining | diff | gc]"
 
 #: builtin/rerere.c:60
-#, fuzzy
 msgid "register clean resolutions in index"
-msgstr "%s: esiste già in index"
+msgstr "registra le risoluzioni pulite nell'indice"
 
 #: builtin/rerere.c:79
 msgid "'git rerere forget' without paths is deprecated"
-msgstr ""
+msgstr "'git rerere forget' senza percorsi è deprecato"
 
 #: builtin/rerere.c:113
-#, fuzzy, c-format
+#, c-format
 msgid "unable to generate diff for '%s'"
-msgstr "creazione del link '%s' non riuscita"
+msgstr "impossibile generare il diff per '%s'"
 
 #: builtin/reset.c:32
 msgid ""
 "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 msgstr ""
+"git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 
 #: builtin/reset.c:33
-msgid "git reset [-q] [<tree-ish>] [--] <paths>..."
-msgstr ""
+msgid "git reset [-q] [<tree-ish>] [--] <pathspec>..."
+msgstr "git reset [-q] [<espressione albero>] [--] <specificatore percorso>..."
 
 #: builtin/reset.c:34
-msgid "git reset --patch [<tree-ish>] [--] [<paths>...]"
+msgid ""
+"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<tree-ish>]"
 msgstr ""
+"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<espressione "
+"albero>]"
 
-#: builtin/reset.c:40
-msgid "mixed"
+#: builtin/reset.c:35
+msgid "git reset --patch [<tree-ish>] [--] [<pathspec>...]"
 msgstr ""
+"git reset --patch [<espressione albero>] [--] [<specificatore percorso>...]"
 
-#: builtin/reset.c:40
+#: builtin/reset.c:41
+msgid "mixed"
+msgstr "misto"
+
+#: builtin/reset.c:41
 msgid "soft"
-msgstr ""
+msgstr "soft"
 
-#: builtin/reset.c:40
+#: builtin/reset.c:41
 msgid "hard"
-msgstr ""
+msgstr "hard"
 
-#: builtin/reset.c:40
+#: builtin/reset.c:41
 msgid "merge"
-msgstr ""
+msgstr "merge"
 
-#: builtin/reset.c:40
+#: builtin/reset.c:41
 msgid "keep"
-msgstr ""
+msgstr "keep"
 
-#: builtin/reset.c:81
+#: builtin/reset.c:82
 msgid "You do not have a valid HEAD."
-msgstr ""
+msgstr "Non hai un HEAD valido."
 
-#: builtin/reset.c:83
+#: builtin/reset.c:84
 msgid "Failed to find tree of HEAD."
-msgstr ""
+msgstr "Impossibile trovare l'albero di HEAD."
 
-#: builtin/reset.c:89
+#: builtin/reset.c:90
 #, c-format
 msgid "Failed to find tree of %s."
-msgstr ""
+msgstr "Impossibile trovare l'albero di %s."
+
+#: builtin/reset.c:115
+#, c-format
+msgid "HEAD is now at %s"
+msgstr "HEAD ora si trova a %s"
 
-#: builtin/reset.c:193
+#: builtin/reset.c:194
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "Impossibile eseguire un %s reset nel corso di un merge."
 
-#: builtin/reset.c:293
+#: builtin/reset.c:294 builtin/stash.c:520 builtin/stash.c:595
+#: builtin/stash.c:619
 msgid "be quiet, only report errors"
-msgstr ""
+msgstr "non visualizzare messaggi, segnala solo gli errori"
 
-#: builtin/reset.c:295
+#: builtin/reset.c:296
 msgid "reset HEAD and index"
-msgstr ""
+msgstr "reimposta l'HEAD e l'indice"
 
-#: builtin/reset.c:296
+#: builtin/reset.c:297
 msgid "reset only HEAD"
-msgstr ""
+msgstr "reimposta solo l'HEAD"
 
-#: builtin/reset.c:298 builtin/reset.c:300
+#: builtin/reset.c:299 builtin/reset.c:301
 msgid "reset HEAD, index and working tree"
-msgstr ""
+msgstr "reimposta l'HEAD, l'indice e l'albero di lavoro"
 
-#: builtin/reset.c:302
+#: builtin/reset.c:303
 msgid "reset HEAD but keep local changes"
-msgstr ""
+msgstr "reimposta l'HEAD ma mantieni le modifiche locali"
 
-#: builtin/reset.c:308
+#: builtin/reset.c:309
 msgid "record only the fact that removed paths will be added later"
 msgstr ""
+"salva solo il fatto che i percorsi rimossi saranno aggiunti successivamente"
 
-#: builtin/reset.c:326
-#, fuzzy, c-format
+#: builtin/reset.c:343
+#, c-format
 msgid "Failed to resolve '%s' as a valid revision."
-msgstr "Verifica della versione di emacsclient non riuscita."
+msgstr "Risoluzione di '%s' come revisione valida non riuscita."
 
-#: builtin/reset.c:334
-#, fuzzy, c-format
+#: builtin/reset.c:351
+#, c-format
 msgid "Failed to resolve '%s' as a valid tree."
-msgstr "Lettura dell'oggetto '%s' non riuscita."
+msgstr "Risoluzione di '%s' come albero valido non riuscita."
 
-#: builtin/reset.c:343
+#: builtin/reset.c:360
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr "--patch non è compatibile con --{hard,mixed,soft}"
 
-#: builtin/reset.c:352
+#: builtin/reset.c:370
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr "--mixed con i path è deprecata; usa invece 'git reset -- <path>'."
 
-#: builtin/reset.c:354
+#: builtin/reset.c:372
 #, c-format
 msgid "Cannot do %s reset with paths."
-msgstr ""
+msgstr "Impossibile eseguire un %s reset con dei percorsi."
 
-#: builtin/reset.c:364
+#: builtin/reset.c:387
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr "%s reset non è consentito in un repository spoglio"
 
-#: builtin/reset.c:368
-#, fuzzy
+#: builtin/reset.c:391
 msgid "-N can only be used with --mixed"
-msgstr "-B non può essere usata con -b"
+msgstr "-N può essere usato solo con --mixed"
 
-#: builtin/reset.c:388
+#: builtin/reset.c:412
 msgid "Unstaged changes after reset:"
-msgstr ""
+msgstr "Modifiche non nell'area di staging dopo il reset:"
 
-#: builtin/reset.c:391
+#: builtin/reset.c:415
 #, c-format
 msgid ""
 "\n"
@@ -17695,53 +20248,53 @@ msgid ""
 "use '--quiet' to avoid this.  Set the config setting reset.quiet to true\n"
 "to make this the default.\n"
 msgstr ""
+"\n"
+"Ci sono voluti %.2f secondi per elencare le modifiche non nell'area di\n"
+"staging dopo il reset. Puoi usare '--quiet' per non visualizzare questo\n"
+"messaggio. Imposta l'opzione di configurazione reset.quiet a true per\n"
+"rendere tale comportamento quello predefinito.\n"
 
-#: builtin/reset.c:401
+#: builtin/reset.c:425
 #, c-format
 msgid "Could not reset index file to revision '%s'."
-msgstr "Non è stato possibile ripristinare index file alla revisione '%s'."
+msgstr "Impossibile ripristinare il file indice alla revisione '%s'."
 
-#: builtin/reset.c:405
+#: builtin/reset.c:429
 msgid "Could not write new index file."
-msgstr "Non è stato possibile scrivere il nuovo index file."
+msgstr "Impossibile scrivere il nuovo file indice."
 
-#: builtin/rev-list.c:406
+#: builtin/rev-list.c:499
 msgid "cannot combine --exclude-promisor-objects and --missing"
-msgstr ""
+msgstr "impossibile combinare --exclude-promisor-objects e --missing"
 
-#: builtin/rev-list.c:464
+#: builtin/rev-list.c:560
 msgid "object filtering requires --objects"
-msgstr ""
-
-#: builtin/rev-list.c:467
-#, fuzzy, c-format
-msgid "invalid sparse value '%s'"
-msgstr "Valore di %s errato: '%s'"
+msgstr "il filtraggio oggetti richiede --objects"
 
-#: builtin/rev-list.c:508
+#: builtin/rev-list.c:610
 msgid "rev-list does not support display of notes"
-msgstr ""
+msgstr "rev-list non supporta la visualizzazione delle note"
 
-#: builtin/rev-list.c:511
-msgid "cannot combine --use-bitmap-index with object filtering"
-msgstr ""
+#: builtin/rev-list.c:615
+msgid "marked counting is incompatible with --objects"
+msgstr "il conteggio contrassegnato non è compatibile con --objects"
 
 #: builtin/rev-parse.c:408
-#, fuzzy
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git rev-parse --parseopt [<opzioni>] -- [<argomenti>...]"
 
 #: builtin/rev-parse.c:413
 msgid "keep the `--` passed as an arg"
-msgstr ""
+msgstr "mantieni la stringa passata `--` come argomento"
 
 #: builtin/rev-parse.c:415
 msgid "stop parsing after the first non-option argument"
 msgstr ""
+"termina l'analisi dopo il primo argomento non corrispondente a un'opzione"
 
 #: builtin/rev-parse.c:418
 msgid "output in stuck long form"
-msgstr ""
+msgstr "emetti l'output in forma \"stuck long\""
 
 #: builtin/rev-parse.c:551
 msgid ""
@@ -17751,101 +20304,103 @@ msgid ""
 "\n"
 "Run \"git rev-parse --parseopt -h\" for more information on the first usage."
 msgstr ""
+"git rev-parse --parseopt [<opzioni>] -- [<argomenti>...]\n"
+"   o: git rev-parse --sq-quote [<argomento>...]\n"
+"   o: git rev-parse [<opzioni>] [<argomento>...]\n"
+"\n"
+"Esegui \"git rev-parse --parseopt -h\" per ulteriori informazioni sulla "
+"prima\n"
+"modalità d'uso."
 
 #: builtin/revert.c:24
-#, fuzzy
 msgid "git revert [<options>] <commit-ish>..."
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git revert [<opzioni>] <espressione commit>..."
 
 #: builtin/revert.c:25
 msgid "git revert <subcommand>"
-msgstr ""
+msgstr "git revert <sottocomando>"
 
 #: builtin/revert.c:30
-#, fuzzy
 msgid "git cherry-pick [<options>] <commit-ish>..."
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git cherry-pick [<opzioni>] <espressione commit>..."
 
 #: builtin/revert.c:31
-#, fuzzy
 msgid "git cherry-pick <subcommand>"
-msgstr "cherry-pick non riuscito"
+msgstr "git cherry-pick <sottocomando>"
 
 #: builtin/revert.c:72
-#, fuzzy, c-format
+#, c-format
 msgid "option `%s' expects a number greater than zero"
-msgstr "switch '%c' richiede un valore numerico"
+msgstr "l'opzione `%s' richiede un numero maggiore di zero"
 
 #: builtin/revert.c:92
 #, c-format
 msgid "%s: %s cannot be used with %s"
 msgstr "%s: %s non può essere usata con %s"
 
-#: builtin/revert.c:101
+#: builtin/revert.c:102
 msgid "end revert or cherry-pick sequence"
-msgstr ""
+msgstr "termina la sequenza revert o cherry-pick"
 
-#: builtin/revert.c:102
+#: builtin/revert.c:103
 msgid "resume revert or cherry-pick sequence"
-msgstr ""
+msgstr "riprendi la sequenza revert o cherry-pick"
 
-#: builtin/revert.c:103
+#: builtin/revert.c:104
 msgid "cancel revert or cherry-pick sequence"
-msgstr ""
+msgstr "annulla la sequenza revert o cherry-pick"
 
-#: builtin/revert.c:104
-#, fuzzy
+#: builtin/revert.c:105
+msgid "skip current commit and continue"
+msgstr "salta il commit corrente e continua"
+
+#: builtin/revert.c:107
 msgid "don't automatically commit"
-msgstr "Impossibile eseguire il revert come commit iniziale"
+msgstr "non eseguire il commit automaticamente"
 
-#: builtin/revert.c:105
-#, fuzzy
+#: builtin/revert.c:108
 msgid "edit the commit message"
-msgstr "Messaggio di commit vuoto."
+msgstr "modifica il messaggio di commit"
 
-#: builtin/revert.c:108
+#: builtin/revert.c:111
 msgid "parent-number"
-msgstr ""
+msgstr "numero-genitore"
 
-#: builtin/revert.c:109
+#: builtin/revert.c:112
 msgid "select mainline parent"
-msgstr ""
+msgstr "seleziona il genitore mainline"
 
-#: builtin/revert.c:111
-#, fuzzy
+#: builtin/revert.c:114
 msgid "merge strategy"
-msgstr "Tentativo con la strategia di merge %s...\n"
+msgstr "strategia di merge"
 
-#: builtin/revert.c:113
-#, fuzzy
+#: builtin/revert.c:116
 msgid "option for merge strategy"
-msgstr "Tentativo con la strategia di merge %s...\n"
+msgstr "opzione per la strategia di merge"
 
-#: builtin/revert.c:122
+#: builtin/revert.c:125
 msgid "append commit name"
-msgstr ""
+msgstr "aggiungi il nome del commit alla fine"
 
-#: builtin/revert.c:124
-#, fuzzy
+#: builtin/revert.c:127
 msgid "preserve initially empty commits"
-msgstr "Impossibile eseguire il revert come commit iniziale"
+msgstr "mantieni i commit inizialmente vuoti"
 
-#: builtin/revert.c:126
+#: builtin/revert.c:129
 msgid "keep redundant, empty commits"
-msgstr ""
+msgstr "mantieni i commit ridondanti e vuoti"
 
-#: builtin/revert.c:220
+#: builtin/revert.c:232
 msgid "revert failed"
 msgstr "revert non riuscito"
 
-#: builtin/revert.c:233
+#: builtin/revert.c:245
 msgid "cherry-pick failed"
 msgstr "cherry-pick non riuscito"
 
 #: builtin/rm.c:19
-#, fuzzy
 msgid "git rm [<options>] [--] <file>..."
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git rm [<opzioni>] [--] <file>..."
 
 #: builtin/rm.c:207
 msgid ""
@@ -17855,66 +20410,79 @@ msgid_plural ""
 "the following files have staged content different from both the\n"
 "file and the HEAD:"
 msgstr[0] ""
+"il seguente file ha contenuti nell'area di staging che\n"
+"differiscono sia rispetto a quelli del file sia rispetto a HEAD:"
 msgstr[1] ""
+"i seguenti file hanno contenuti nell'area di staging che\n"
+"differiscono sia rispetto a quelli del file sia rispetto a HEAD:"
 
 #: builtin/rm.c:212
 msgid ""
 "\n"
 "(use -f to force removal)"
 msgstr ""
+"\n"
+"(usa -f per forzarne la rimozione)"
 
 #: builtin/rm.c:216
 msgid "the following file has changes staged in the index:"
 msgid_plural "the following files have changes staged in the index:"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "il seguente file ha delle modifiche in staging nell'indice:"
+msgstr[1] "i seguenti file hanno delle modifiche in staging nell'indice:"
 
 #: builtin/rm.c:220 builtin/rm.c:229
-#, fuzzy
 msgid ""
 "\n"
 "(use --cached to keep the file, or -f to force removal)"
 msgstr ""
-"'%s' contiene delle modifiche locali\n"
-"(usa --cached per mantenere il file, o -f per forzare la rimozione)"
+"\n"
+"(usa --cached per mantenere il file o -f per forzarne la rimozione)"
 
 #: builtin/rm.c:226
 msgid "the following file has local modifications:"
 msgid_plural "the following files have local modifications:"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "il seguente file ha delle modifiche locali:"
+msgstr[1] "i seguenti file hanno delle modifiche locali:"
 
-#: builtin/rm.c:242
+#: builtin/rm.c:243
 msgid "do not list removed files"
-msgstr ""
+msgstr "non elencare i file rimossi"
 
-#: builtin/rm.c:243
-#, fuzzy
+#: builtin/rm.c:244
 msgid "only remove from the index"
-msgstr "impossibile rimuovere %s da index"
+msgstr "rimuovi solo dall'indice"
 
-#: builtin/rm.c:244
+#: builtin/rm.c:245
 msgid "override the up-to-date check"
-msgstr ""
+msgstr "ignora il controllo sullo stato di aggiornamento"
 
-#: builtin/rm.c:245
+#: builtin/rm.c:246
 msgid "allow recursive removal"
-msgstr ""
+msgstr "consenti rimozioni ricorsive"
 
-#: builtin/rm.c:247
+#: builtin/rm.c:248
 msgid "exit with a zero status even if nothing matched"
 msgstr ""
+"esci con codice d'uscita zero anche nel caso in cui non vi siano "
+"corrispondenze"
+
+#: builtin/rm.c:282
+msgid "No pathspec was given. Which files should I remove?"
+msgstr ""
+"Non è stato fornito uno specificatore percorso. Quali file devo rimuovere?"
 
-#: builtin/rm.c:289
+#: builtin/rm.c:305
 msgid "please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
+"esegui lo stage delle modifiche a .gitmodules o eseguine lo stash per "
+"procedere"
 
-#: builtin/rm.c:307
+#: builtin/rm.c:323
 #, c-format
 msgid "not removing '%s' recursively without -r"
-msgstr ""
+msgstr "non rimuovo '%s' ricorsivamente senza -r"
 
-#: builtin/rm.c:346
+#: builtin/rm.c:362
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr "git rm: non è possibile eliminare %s"
@@ -17926,713 +20494,1096 @@ msgid ""
 "[<ref>...]\n"
 "  --all and explicit <ref> specification are mutually exclusive."
 msgstr ""
+"git send-pack [--all | --mirror] [--dry-run] [--force] [--receive-pack=<git-"
+"receive-pack>] [--verbose] [--thin] [--atomic] [<host>:]<directory> "
+"[<riferimento>...]\n"
+"  --all e uno specificatore <riferimento> sono mutualmente esclusivi."
 
 #: builtin/send-pack.c:163
-#, fuzzy
 msgid "remote name"
-msgstr "* remote %s"
+msgstr "nome remoto"
 
 #: builtin/send-pack.c:177
 msgid "use stateless RPC protocol"
-msgstr ""
+msgstr "usa protocollo RPC senza stato"
 
 #: builtin/send-pack.c:178
 msgid "read refs from stdin"
-msgstr ""
+msgstr "leggi i riferimento dallo standard input"
 
 #: builtin/send-pack.c:179
 msgid "print status from remote helper"
-msgstr ""
-
-#: builtin/serve.c:7
-msgid "git serve [<options>]"
-msgstr ""
-
-#: builtin/serve.c:17 builtin/upload-pack.c:23
-msgid "quit after a single request/response exchange"
-msgstr ""
-
-#: builtin/serve.c:19
-msgid "exit immediately after advertising capabilities"
-msgstr ""
+msgstr "stampa lo stato dell'helper remoto"
 
 #: builtin/shortlog.c:14
 msgid "git shortlog [<options>] [<revision-range>] [[--] <path>...]"
-msgstr ""
+msgstr "git shortlog [<opzioni>] [<intervallo revisioni>] [[--] <percorso>...]"
 
 #: builtin/shortlog.c:15
 msgid "git log --pretty=short | git shortlog [<options>]"
-msgstr ""
+msgstr "git log --pretty=short | git shortlog [<opzioni>]"
 
 #: builtin/shortlog.c:264
 msgid "Group by committer rather than author"
-msgstr ""
+msgstr "Raggruppa per persona che ha eseguito il commit anziché per autore"
 
 #: builtin/shortlog.c:266
 msgid "sort output according to the number of commits per author"
-msgstr ""
+msgstr "ordina l'output in base al numero di commit per autore"
 
 #: builtin/shortlog.c:268
 msgid "Suppress commit descriptions, only provides commit count"
-msgstr ""
+msgstr "Ometti le descrizioni dei commit, fornisci solo il numero dei commit"
 
 #: builtin/shortlog.c:270
 msgid "Show the email address of each author"
+msgstr "Visualizza l'indirizzo e-mail di ogni autore"
+
+#: builtin/shortlog.c:271
+msgid "<w>[,<i1>[,<i2>]]"
+msgstr "<w>[,<i1>[,<i2>]]"
+
+#: builtin/shortlog.c:272
+msgid "Linewrap output"
+msgstr "Output a capo automatico"
+
+#: builtin/shortlog.c:301
+msgid "too many arguments given outside repository"
+msgstr "troppi argomenti forniti oltre al repository"
+
+#: builtin/show-branch.c:13
+msgid ""
+"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
+"\t\t[--current] [--color[=<when>] | --no-color] [--sparse]\n"
+"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
+"\t\t[--no-name | --sha1-name] [--topics] [(<rev> | <glob>)...]"
+msgstr ""
+"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
+"\t\t[--current] [--color[=<quando>] | --no-color] [--sparse]\n"
+"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
+"\t\t[--no-name | --sha1-name] [--topics] [(<revisione> | <glob>)...]"
+
+#: builtin/show-branch.c:17
+msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
+msgstr ""
+"git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<riferimento>]"
+
+#: builtin/show-branch.c:395
+#, c-format
+msgid "ignoring %s; cannot handle more than %d ref"
+msgid_plural "ignoring %s; cannot handle more than %d refs"
+msgstr[0] "ignoro %s; non posso gestire più di %d riferimento"
+msgstr[1] "ignoro %s; non posso gestire più di %d riferimenti"
+
+#: builtin/show-branch.c:548
+#, c-format
+msgid "no matching refs with %s"
+msgstr "nessun riferimento corrispondente a %s"
+
+#: builtin/show-branch.c:645
+msgid "show remote-tracking and local branches"
+msgstr "visualizza i branch che ne tracciano uno remoto e quelli locali"
+
+#: builtin/show-branch.c:647
+msgid "show remote-tracking branches"
+msgstr "visualizza i branch che ne tracciano uno remoto"
+
+#: builtin/show-branch.c:649
+msgid "color '*!+-' corresponding to the branch"
+msgstr "colore '*!+-' corrispondente al branch"
+
+#: builtin/show-branch.c:651
+msgid "show <n> more commits after the common ancestor"
+msgstr "visualizza <n> commit ulteriori rispetto all'antenato comune"
+
+#: builtin/show-branch.c:653
+msgid "synonym to more=-1"
+msgstr "sinonimo di more=-1"
+
+#: builtin/show-branch.c:654
+msgid "suppress naming strings"
+msgstr "non visualizzare le stringhe di denominazione"
+
+#: builtin/show-branch.c:656
+msgid "include the current branch"
+msgstr "includi il branch corrente"
+
+#: builtin/show-branch.c:658
+msgid "name commits with their object names"
+msgstr "denomina i commit con i loro nomi oggetto"
+
+#: builtin/show-branch.c:660
+msgid "show possible merge bases"
+msgstr "visualizza le basi merge possibili"
+
+#: builtin/show-branch.c:662
+msgid "show refs unreachable from any other ref"
+msgstr "visualizza i riferimenti non raggiungibili da nessun altro"
+
+#: builtin/show-branch.c:664
+msgid "show commits in topological order"
+msgstr "visualizza i commit in ordine topologico"
+
+#: builtin/show-branch.c:667
+msgid "show only commits not on the first branch"
+msgstr "visualizza solo i commit non sul primo branch"
+
+#: builtin/show-branch.c:669
+msgid "show merges reachable from only one tip"
+msgstr "visualizza i merge raggiungibili solo dall'ultimo commit di un branch"
+
+#: builtin/show-branch.c:671
+msgid "topologically sort, maintaining date order where possible"
+msgstr ""
+"esegui un ordinamento topologico mantenendo l'ordine delle date ove possibile"
+
+#: builtin/show-branch.c:674
+msgid "<n>[,<base>]"
+msgstr "<n>[,<base>]"
+
+#: builtin/show-branch.c:675
+msgid "show <n> most recent ref-log entries starting at base"
+msgstr ""
+"visualizza le <n> voci più recenti del log dei riferimenti partendo da base"
+
+#: builtin/show-branch.c:711
+msgid ""
+"--reflog is incompatible with --all, --remotes, --independent or --merge-base"
+msgstr ""
+"--reflog non è compatibile con --all, --remotes, --independent o --merge-base"
+
+#: builtin/show-branch.c:735
+msgid "no branches given, and HEAD is not valid"
+msgstr "nessun branch fornito e l'HEAD non è valido"
+
+#: builtin/show-branch.c:738
+msgid "--reflog option needs one branch name"
+msgstr "l'opzione --reflog richiede il nome di un branch"
+
+#: builtin/show-branch.c:741
+#, c-format
+msgid "only %d entry can be shown at one time."
+msgid_plural "only %d entries can be shown at one time."
+msgstr[0] "può essere visualizzata solo %d voce per volta."
+msgstr[1] "possono essere visualizzate solo %d voci per volta."
+
+#: builtin/show-branch.c:745
+#, c-format
+msgid "no such ref %s"
+msgstr "riferimento non esistente: %s"
+
+#: builtin/show-branch.c:831
+#, c-format
+msgid "cannot handle more than %d rev."
+msgid_plural "cannot handle more than %d revs."
+msgstr[0] "impossibile gestire più di %d revisione."
+msgstr[1] "impossibile gestire più di %d revisioni."
+
+#: builtin/show-branch.c:835
+#, c-format
+msgid "'%s' is not a valid ref."
+msgstr "'%s' non è un riferimento valido."
+
+#: builtin/show-branch.c:838
+#, c-format
+msgid "cannot find commit %s (%s)"
+msgstr "impossibile trovare il commit %s (%s)"
+
+#: builtin/show-ref.c:12
+msgid ""
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
+msgstr ""
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
+
+#: builtin/show-ref.c:13
+msgid "git show-ref --exclude-existing[=<pattern>]"
+msgstr "git show-ref --exclude-existing[=<pattern>]"
+
+#: builtin/show-ref.c:162
+msgid "only show tags (can be combined with heads)"
+msgstr "visualizza solo i tag (l'opzione può essere combinata con heads)"
+
+#: builtin/show-ref.c:163
+msgid "only show heads (can be combined with tags)"
+msgstr "visualizza solo le head (l'opzione può essere combinata con tags)"
+
+#: builtin/show-ref.c:164
+msgid "stricter reference checking, requires exact ref path"
+msgstr ""
+"controllo più stringente dei riferimenti, richiede un percorso esatto al "
+"riferimento"
+
+#: builtin/show-ref.c:167 builtin/show-ref.c:169
+msgid "show the HEAD reference, even if it would be filtered out"
+msgstr "visualizza il riferimento HEAD anche se filtrato"
+
+#: builtin/show-ref.c:171
+msgid "dereference tags into object IDs"
+msgstr "dereferenzia i tag in ID oggetto"
+
+#: builtin/show-ref.c:173
+msgid "only show SHA1 hash using <n> digits"
+msgstr "visualizza l'hash SHA1 usando solo <n> caratteri"
+
+#: builtin/show-ref.c:177
+msgid "do not print results to stdout (useful with --verify)"
+msgstr "non stampare i risultati sullo standard output (utile con --verify)"
+
+#: builtin/show-ref.c:179
+msgid "show refs from stdin that aren't in local repository"
+msgstr ""
+"visualizza i riferimenti dati sullo standard input che non sono nel "
+"repository locale"
+
+#: builtin/sparse-checkout.c:21
+msgid "git sparse-checkout (init|list|set|add|disable) <options>"
+msgstr "git sparse-checkout (init|list|set|add|disable) <opzioni>"
+
+#: builtin/sparse-checkout.c:64
+msgid "this worktree is not sparse (sparse-checkout file may not exist)"
 msgstr ""
+"questo albero di lavoro non è sparse (il file sparse-checkout potrebbe non "
+"esistere)"
+
+#: builtin/sparse-checkout.c:225
+msgid "failed to create directory for sparse-checkout file"
+msgstr "creazione della directory per il file sparse-checkout non riuscita"
+
+#: builtin/sparse-checkout.c:266
+msgid "failed to set extensions.worktreeConfig setting"
+msgstr "impostazione dell'opzione extensions.worktreeConfig non riuscita"
+
+#: builtin/sparse-checkout.c:283
+msgid "git sparse-checkout init [--cone]"
+msgstr "git sparse-checkout init [--cone]"
+
+#: builtin/sparse-checkout.c:302
+msgid "initialize the sparse-checkout in cone mode"
+msgstr "inizializza il checkout sparse in modalità cone"
+
+#: builtin/sparse-checkout.c:308
+msgid "initialize sparse-checkout"
+msgstr "inizializza sparse-checkout"
+
+#: builtin/sparse-checkout.c:341
+#, c-format
+msgid "failed to open '%s'"
+msgstr "apertura di '%s' non riuscita"
+
+#: builtin/sparse-checkout.c:398
+#, c-format
+msgid "could not normalize path %s"
+msgstr "impossibile normalizzare il percorso '%s'"
+
+#: builtin/sparse-checkout.c:410
+msgid "git sparse-checkout (set|add) (--stdin | <patterns>)"
+msgstr "git sparse-checkout (set|add) (--stdin | <pattern>)"
+
+#: builtin/sparse-checkout.c:435
+#, c-format
+msgid "unable to unquote C-style string '%s'"
+msgstr "impossibile rimuovere le virgolette dalla stringa in stile C '%s'"
+
+#: builtin/sparse-checkout.c:489 builtin/sparse-checkout.c:513
+msgid "unable to load existing sparse-checkout patterns"
+msgstr "impossibile caricare i pattern sparse-checkout esistenti"
+
+#: builtin/sparse-checkout.c:558
+msgid "read patterns from standard in"
+msgstr "leggi i pattern dallo standard input"
+
+#: builtin/sparse-checkout.c:564
+msgid "set sparse-checkout patterns"
+msgstr "imposta i pattern sparse-checkout"
+
+#: builtin/sparse-checkout.c:581
+msgid "disable sparse-checkout"
+msgstr "disabilita sparse-checkout"
+
+#: builtin/sparse-checkout.c:593
+msgid "error while refreshing working directory"
+msgstr "errore durante l'aggiornamento della directory di lavoro"
+
+#: builtin/stash.c:22 builtin/stash.c:38
+msgid "git stash list [<options>]"
+msgstr "git stash list [<opzioni>]"
+
+#: builtin/stash.c:23 builtin/stash.c:43
+msgid "git stash show [<options>] [<stash>]"
+msgstr "git stash show [<opzioni>] [<stash>]"
+
+#: builtin/stash.c:24 builtin/stash.c:48
+msgid "git stash drop [-q|--quiet] [<stash>]"
+msgstr "git stash drop [-q|--quiet] [<stash>]"
 
-#: builtin/shortlog.c:271
-msgid "<w>[,<i1>[,<i2>]]"
-msgstr ""
+#: builtin/stash.c:25
+msgid "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
+msgstr "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
 
-#: builtin/shortlog.c:272
-msgid "Linewrap output"
-msgstr ""
+#: builtin/stash.c:26 builtin/stash.c:63
+msgid "git stash branch <branchname> [<stash>]"
+msgstr "git stash branch <nome branch> [<stash>]"
 
-#: builtin/shortlog.c:301
-msgid "too many arguments given outside repository"
+#: builtin/stash.c:27 builtin/stash.c:68
+msgid "git stash clear"
+msgstr "git stash clear"
+
+#: builtin/stash.c:28
+msgid ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
+"          [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
+"          [--] [<pathspec>...]]"
 msgstr ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <messaggio>]\n"
+"          [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
+"          [--] [<specificatore percorso>...]]"
 
-#: builtin/show-branch.c:13
+#: builtin/stash.c:32 builtin/stash.c:85
 msgid ""
-"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
-"\t\t[--current] [--color[=<when>] | --no-color] [--sparse]\n"
-"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
-"\t\t[--no-name | --sha1-name] [--topics] [(<rev> | <glob>)...]"
+"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [<message>]"
 msgstr ""
+"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [<messaggio>]"
 
-#: builtin/show-branch.c:17
-msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
+#: builtin/stash.c:53
+msgid "git stash pop [--index] [-q|--quiet] [<stash>]"
+msgstr "git stash pop [--index] [-q|--quiet] [<stash>]"
+
+#: builtin/stash.c:58
+msgid "git stash apply [--index] [-q|--quiet] [<stash>]"
+msgstr "git stash apply [--index] [-q|--quiet] [<stash>]"
+
+#: builtin/stash.c:73
+msgid "git stash store [-m|--message <message>] [-q|--quiet] <commit>"
+msgstr "git stash store [-m|--message <messaggio>] [-q|--quiet] <commit>"
+
+#: builtin/stash.c:78
+msgid ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
+"          [--] [<pathspec>...]]"
 msgstr ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <messaggio>]\n"
+"          [--] [<specificatore percorso>...]]"
 
-#: builtin/show-branch.c:395
+#: builtin/stash.c:128
 #, c-format
-msgid "ignoring %s; cannot handle more than %d ref"
-msgid_plural "ignoring %s; cannot handle more than %d refs"
-msgstr[0] ""
-msgstr[1] ""
+msgid "'%s' is not a stash-like commit"
+msgstr "'%s' non è un commit simile a uno stash"
 
-#: builtin/show-branch.c:549
+#: builtin/stash.c:148
 #, c-format
-msgid "no matching refs with %s"
-msgstr ""
+msgid "Too many revisions specified:%s"
+msgstr "Troppe revisioni specificate:%s"
 
-#: builtin/show-branch.c:646
-msgid "show remote-tracking and local branches"
-msgstr ""
+#: builtin/stash.c:162 git-legacy-stash.sh:549
+msgid "No stash entries found."
+msgstr "Nessuna voce di stash trovata."
 
-#: builtin/show-branch.c:648
-msgid "show remote-tracking branches"
-msgstr ""
+#: builtin/stash.c:176
+#, c-format
+msgid "%s is not a valid reference"
+msgstr "%s non è un riferimento valido"
 
-#: builtin/show-branch.c:650
-msgid "color '*!+-' corresponding to the branch"
-msgstr ""
+#: builtin/stash.c:225 git-legacy-stash.sh:75
+msgid "git stash clear with parameters is unimplemented"
+msgstr "git stash clear con parametri non è implementato"
 
-#: builtin/show-branch.c:652
-msgid "show <n> more commits after the common ancestor"
-msgstr ""
+#: builtin/stash.c:404
+msgid "cannot apply a stash in the middle of a merge"
+msgstr "impossibile applicare uno stash nel mezzo di un merge"
 
-#: builtin/show-branch.c:654
-msgid "synonym to more=-1"
-msgstr ""
+#: builtin/stash.c:415
+#, c-format
+msgid "could not generate diff %s^!."
+msgstr "impossibile generare il diff %s^!"
 
-#: builtin/show-branch.c:655
-msgid "suppress naming strings"
-msgstr ""
+#: builtin/stash.c:422
+msgid "conflicts in index.Try without --index."
+msgstr "ci sono conflitti nell'indice. Prova senza --index."
 
-#: builtin/show-branch.c:657
-#, fuzzy
-msgid "include the current branch"
-msgstr "Nessun branch corrente."
+#: builtin/stash.c:428
+msgid "could not save index tree"
+msgstr "impossibile salvare l'albero indice"
 
-#: builtin/show-branch.c:659
-#, fuzzy
-msgid "name commits with their object names"
-msgstr "impossibile scrivere l'oggetto nota"
+#: builtin/stash.c:437
+msgid "could not restore untracked files from stash"
+msgstr "non è stato possibile ripristinare i file non tracciati dallo stash"
 
-#: builtin/show-branch.c:661
-msgid "show possible merge bases"
-msgstr ""
+#: builtin/stash.c:451
+#, c-format
+msgid "Merging %s with %s"
+msgstr "Merge di %s con %s in corso"
 
-#: builtin/show-branch.c:663
-msgid "show refs unreachable from any other ref"
-msgstr ""
+#: builtin/stash.c:461 git-legacy-stash.sh:681
+msgid "Index was not unstashed."
+msgstr "L'indice non è stato rimosso dallo stash."
 
-#: builtin/show-branch.c:665
-msgid "show commits in topological order"
-msgstr ""
+#: builtin/stash.c:522 builtin/stash.c:621
+msgid "attempt to recreate the index"
+msgstr "tenta di ricreare l'indice"
 
-#: builtin/show-branch.c:668
-msgid "show only commits not on the first branch"
-msgstr ""
+#: builtin/stash.c:555
+#, c-format
+msgid "Dropped %s (%s)"
+msgstr "Ho scartato %s (%s)"
 
-#: builtin/show-branch.c:670
-msgid "show merges reachable from only one tip"
-msgstr ""
+#: builtin/stash.c:558
+#, c-format
+msgid "%s: Could not drop stash entry"
+msgstr "%s: Impossibile scartare la voce di stash"
 
-#: builtin/show-branch.c:672
-msgid "topologically sort, maintaining date order where possible"
-msgstr ""
+#: builtin/stash.c:583
+#, c-format
+msgid "'%s' is not a stash reference"
+msgstr "'%s' non è un riferimento stash"
 
-#: builtin/show-branch.c:675
-msgid "<n>[,<base>]"
+#: builtin/stash.c:633 git-legacy-stash.sh:695
+msgid "The stash entry is kept in case you need it again."
 msgstr ""
+"La voce di stash è mantenuta nel caso in cui tu ne abbia nuovamente bisogno."
 
-#: builtin/show-branch.c:676
-msgid "show <n> most recent ref-log entries starting at base"
-msgstr ""
+#: builtin/stash.c:656 git-legacy-stash.sh:713
+msgid "No branch name specified"
+msgstr "Nome del branch non specificato"
 
-#: builtin/show-branch.c:712
-#, fuzzy
-msgid ""
-"--reflog is incompatible with --all, --remotes, --independent or --merge-base"
-msgstr "--delete non è compatibile con --all, --mirror e --tags"
+#: builtin/stash.c:796 builtin/stash.c:833
+#, c-format
+msgid "Cannot update %s with %s"
+msgstr "Impossibile aggiornare %s con %s"
 
-#: builtin/show-branch.c:736
-msgid "no branches given, and HEAD is not valid"
-msgstr ""
+#: builtin/stash.c:814 builtin/stash.c:1478 builtin/stash.c:1543
+msgid "stash message"
+msgstr "messaggio di stash"
 
-#: builtin/show-branch.c:739
-#, fuzzy
-msgid "--reflog option needs one branch name"
-msgstr "--track necessita del nome di un branch"
+#: builtin/stash.c:824
+msgid "\"git stash store\" requires one <commit> argument"
+msgstr "\"git stash store\" richiede un argomento <commit>"
 
-#: builtin/show-branch.c:742
-#, c-format
-msgid "only %d entry can be shown at one time."
-msgid_plural "only %d entries can be shown at one time."
-msgstr[0] ""
-msgstr[1] ""
+#: builtin/stash.c:1049 git-legacy-stash.sh:218
+msgid "No changes selected"
+msgstr "Nessuna modifica selezionata"
 
-#: builtin/show-branch.c:746
-#, fuzzy, c-format
-msgid "no such ref %s"
-msgstr "Remote non esistente: %s"
+#: builtin/stash.c:1149 git-legacy-stash.sh:150
+msgid "You do not have the initial commit yet"
+msgstr "Non hai ancora un commit iniziale"
 
-#: builtin/show-branch.c:830
-#, c-format
-msgid "cannot handle more than %d rev."
-msgid_plural "cannot handle more than %d revs."
-msgstr[0] ""
-msgstr[1] ""
+#: builtin/stash.c:1176 git-legacy-stash.sh:165
+msgid "Cannot save the current index state"
+msgstr "Impossibile salvare lo stato corrente di index"
 
-#: builtin/show-branch.c:834
-#, fuzzy, c-format
-msgid "'%s' is not a valid ref."
-msgstr "'%s' non è un nome tag valido."
+#: builtin/stash.c:1185 git-legacy-stash.sh:180
+msgid "Cannot save the untracked files"
+msgstr "Impossibile salvare i file non tracciati"
 
-#: builtin/show-branch.c:837
-#, fuzzy, c-format
-msgid "cannot find commit %s (%s)"
-msgstr "Commit %s sconosciuto"
+#: builtin/stash.c:1196 builtin/stash.c:1205 git-legacy-stash.sh:201
+#: git-legacy-stash.sh:214
+msgid "Cannot save the current worktree state"
+msgstr "Impossibile salvare lo stato corrente dell'albero di lavoro"
 
-#: builtin/show-ref.c:11
-msgid ""
-"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
-"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
-msgstr ""
+#: builtin/stash.c:1233 git-legacy-stash.sh:234
+msgid "Cannot record working tree state"
+msgstr "Impossibile registrare lo stato dell'albero di lavoro"
 
-#: builtin/show-ref.c:12
-msgid "git show-ref --exclude-existing[=<pattern>]"
+#: builtin/stash.c:1282 git-legacy-stash.sh:338
+msgid "Can't use --patch and --include-untracked or --all at the same time"
 msgstr ""
+"Impossibile usare --patch e --include-untracked o --all allo stesso tempo"
 
-#: builtin/show-ref.c:161
-msgid "only show tags (can be combined with heads)"
-msgstr ""
+#: builtin/stash.c:1298
+msgid "Did you forget to 'git add'?"
+msgstr "Ti sei scordato di eseguire 'git add'?"
 
-#: builtin/show-ref.c:162
-msgid "only show heads (can be combined with tags)"
-msgstr ""
+#: builtin/stash.c:1313 git-legacy-stash.sh:346
+msgid "No local changes to save"
+msgstr "Nessuna modifica locale da salvare"
 
-#: builtin/show-ref.c:163
-msgid "stricter reference checking, requires exact ref path"
-msgstr ""
+#: builtin/stash.c:1320 git-legacy-stash.sh:351
+msgid "Cannot initialize stash"
+msgstr "Impossibile inizializzare stash"
 
-#: builtin/show-ref.c:166 builtin/show-ref.c:168
-msgid "show the HEAD reference, even if it would be filtered out"
-msgstr ""
+#: builtin/stash.c:1335 git-legacy-stash.sh:355
+msgid "Cannot save the current status"
+msgstr "Impossibile salvare lo stato attuale"
 
-#: builtin/show-ref.c:170
-msgid "dereference tags into object IDs"
-msgstr ""
+#: builtin/stash.c:1340
+#, c-format
+msgid "Saved working directory and index state %s"
+msgstr "Directory di lavoro e stato indice salvati: %s"
 
-#: builtin/show-ref.c:172
-msgid "only show SHA1 hash using <n> digits"
-msgstr ""
+#: builtin/stash.c:1430 git-legacy-stash.sh:385
+msgid "Cannot remove worktree changes"
+msgstr "Impossibile rimuovere le modifiche all'albero di lavoro"
 
-#: builtin/show-ref.c:176
-msgid "do not print results to stdout (useful with --verify)"
-msgstr ""
+#: builtin/stash.c:1469 builtin/stash.c:1534
+msgid "keep index"
+msgstr "mantieni l'indice"
 
-#: builtin/show-ref.c:178
-msgid "show refs from stdin that aren't in local repository"
-msgstr ""
+#: builtin/stash.c:1471 builtin/stash.c:1536
+msgid "stash in patch mode"
+msgstr "esegui lo stash in modalità patch"
+
+#: builtin/stash.c:1472 builtin/stash.c:1537
+msgid "quiet mode"
+msgstr "modalità silenziosa"
+
+#: builtin/stash.c:1474 builtin/stash.c:1539
+msgid "include untracked files in stash"
+msgstr "includi i file non tracciati nello stash"
+
+#: builtin/stash.c:1476 builtin/stash.c:1541
+msgid "include ignore files"
+msgstr "includi i file ignorati"
+
+#: builtin/stash.c:1600
+#, c-format
+msgid "could not exec %s"
+msgstr "impossibile eseguire %s"
 
 #: builtin/stripspace.c:18
 msgid "git stripspace [-s | --strip-comments]"
-msgstr ""
+msgstr "git stripspace [-s | --strip-comments]"
 
 #: builtin/stripspace.c:19
 msgid "git stripspace [-c | --comment-lines]"
-msgstr ""
+msgstr "git stripspace [-c | --comment-lines]"
 
 #: builtin/stripspace.c:37
 msgid "skip and remove all lines starting with comment character"
-msgstr ""
+msgstr "salta e rimuovi tutte le righe che iniziano con un carattere commento"
 
 #: builtin/stripspace.c:40
 msgid "prepend comment character and space to each line"
-msgstr ""
+msgstr "anteponi il carattere commento e uno spazio a ogni riga"
 
-#: builtin/submodule--helper.c:45 builtin/submodule--helper.c:1943
+#: builtin/submodule--helper.c:47 builtin/submodule--helper.c:1999
 #, c-format
 msgid "Expecting a full ref name, got %s"
-msgstr ""
+msgstr "Atteso nome riferimento completo, ricevuto %s"
 
-#: builtin/submodule--helper.c:62
+#: builtin/submodule--helper.c:64
 msgid "submodule--helper print-default-remote takes no arguments"
-msgstr ""
+msgstr "submodule--helper print-default-remote non richiede argomenti"
 
-#: builtin/submodule--helper.c:100
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:102
+#, c-format
 msgid "cannot strip one component off url '%s'"
-msgstr "impossibile scrivere il file keep '%s'"
+msgstr "impossibile rimuovere un componente dall'URL '%s'"
 
-#: builtin/submodule--helper.c:408 builtin/submodule--helper.c:1367
+#: builtin/submodule--helper.c:410 builtin/submodule--helper.c:1395
 msgid "alternative anchor for relative paths"
-msgstr ""
+msgstr "ancoraggio alternativo per i percorsi relativi"
 
-#: builtin/submodule--helper.c:413
+#: builtin/submodule--helper.c:415
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
-msgstr ""
+msgstr "git submodule--helper list [--prefix=<percorso>] [<percorso>...]"
 
-#: builtin/submodule--helper.c:470 builtin/submodule--helper.c:627
-#: builtin/submodule--helper.c:650
+#: builtin/submodule--helper.c:472 builtin/submodule--helper.c:630
+#: builtin/submodule--helper.c:653
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
-msgstr ""
+msgstr "Nessun URL trovato in .gitmodules per il percorso del sottomodulo '%s'"
 
-#: builtin/submodule--helper.c:522
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:524
+#, c-format
 msgid "Entering '%s'\n"
-msgstr "sovrascrittura di %s in corso"
+msgstr "Entro in '%s'\n"
 
-#: builtin/submodule--helper.c:525
+#: builtin/submodule--helper.c:527
 #, c-format
 msgid ""
 "run_command returned non-zero status for %s\n"
 "."
 msgstr ""
+"run_command ha restituito un codice diverso da zero per %s\n"
+"."
 
-#: builtin/submodule--helper.c:546
+#: builtin/submodule--helper.c:549
 #, c-format
 msgid ""
 "run_command returned non-zero status while recursing in the nested "
 "submodules of %s\n"
 "."
 msgstr ""
+"run_command ha restituito un codice diverso da zero durante la ricorsione "
+"nei sottomoduli innestati di %s\n"
+"."
 
-#: builtin/submodule--helper.c:562
+#: builtin/submodule--helper.c:565
 msgid "Suppress output of entering each submodule command"
-msgstr ""
+msgstr "Non visualizzare l'output dei comandi eseguiti in ogni sottomodulo"
 
-#: builtin/submodule--helper.c:564 builtin/submodule--helper.c:1049
+#: builtin/submodule--helper.c:567 builtin/submodule--helper.c:1063
 msgid "Recurse into nested submodules"
-msgstr ""
+msgstr "Esegui ricorsivamente sui sottomoduli innestati"
 
-#: builtin/submodule--helper.c:569
-msgid "git submodule--helper foreach [--quiet] [--recursive] <command>"
-msgstr ""
+#: builtin/submodule--helper.c:572
+msgid "git submodule--helper foreach [--quiet] [--recursive] [--] <command>"
+msgstr "git submodule--helper foreach [--quiet] [--recursive] [--] <comando>"
 
-#: builtin/submodule--helper.c:596
+#: builtin/submodule--helper.c:599
 #, c-format
 msgid ""
 "could not look up configuration '%s'. Assuming this repository is its own "
 "authoritative upstream."
 msgstr ""
+"impossibile trovare la configurazione '%s'. Assumo che questo repository sia "
+"il proprio repository autoritativo upstream."
 
-#: builtin/submodule--helper.c:664
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:667
+#, c-format
 msgid "Failed to register url for submodule path '%s'"
-msgstr "Lettura dell'oggetto '%s' non riuscita."
+msgstr "Registrazione dell'URL per il percorso sottomodulo '%s' non riuscita"
 
-#: builtin/submodule--helper.c:668
+#: builtin/submodule--helper.c:671
 #, c-format
 msgid "Submodule '%s' (%s) registered for path '%s'\n"
-msgstr ""
+msgstr "Sottomodulo '%s' (%s) registrato per il percorso '%s'\n"
 
-#: builtin/submodule--helper.c:678
+#: builtin/submodule--helper.c:681
 #, c-format
 msgid "warning: command update mode suggested for submodule '%s'\n"
 msgstr ""
+"avviso: suggerita modalità comando aggiornamento per il sottomodulo '%s'\n"
 
-#: builtin/submodule--helper.c:685
+#: builtin/submodule--helper.c:688
 #, c-format
 msgid "Failed to register update mode for submodule path '%s'"
 msgstr ""
+"Registrazione della modalità aggiornamento per il percorso sottomodulo '%s'"
 
-#: builtin/submodule--helper.c:707
+#: builtin/submodule--helper.c:710
 msgid "Suppress output for initializing a submodule"
-msgstr ""
+msgstr "Non visualizzare l'output dell'inizializzazione del sottomodulo"
 
-#: builtin/submodule--helper.c:712
-msgid "git submodule--helper init [<path>]"
-msgstr ""
+#: builtin/submodule--helper.c:715
+msgid "git submodule--helper init [<options>] [<path>]"
+msgstr "git submodule--helper init [<opzioni>] [<percorso>]"
 
-#: builtin/submodule--helper.c:784 builtin/submodule--helper.c:910
+#: builtin/submodule--helper.c:789 builtin/submodule--helper.c:924
 #, c-format
 msgid "no submodule mapping found in .gitmodules for path '%s'"
-msgstr ""
+msgstr "mapping sottomodulo per il percorso '%s' non trovato in .gitmodules"
 
-#: builtin/submodule--helper.c:823
+#: builtin/submodule--helper.c:837
 #, c-format
 msgid "could not resolve HEAD ref inside the submodule '%s'"
-msgstr ""
+msgstr "impossibile risolvere il riferimento HEAD nel sottomodulo '%s'"
 
-#: builtin/submodule--helper.c:850 builtin/submodule--helper.c:1019
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:864 builtin/submodule--helper.c:1033
+#, c-format
 msgid "failed to recurse into submodule '%s'"
-msgstr "creazione del link '%s' non riuscita"
+msgstr "ricorsione nel sottomodulo '%s' non riuscita"
 
-#: builtin/submodule--helper.c:874 builtin/submodule--helper.c:1185
+#: builtin/submodule--helper.c:888 builtin/submodule--helper.c:1199
 msgid "Suppress submodule status output"
-msgstr ""
+msgstr "Non visualizzare l'output dello stato del sottomodulo"
 
-#: builtin/submodule--helper.c:875
+#: builtin/submodule--helper.c:889
 msgid ""
 "Use commit stored in the index instead of the one stored in the submodule "
 "HEAD"
 msgstr ""
+"Usa il commit salvato nell'indice anziché quello salvato nell'HEAD del "
+"sottomodulo"
 
-#: builtin/submodule--helper.c:876
+#: builtin/submodule--helper.c:890
 msgid "recurse into nested submodules"
-msgstr ""
+msgstr "esegui ricorsivamente sui sottomoduli innestati"
 
-#: builtin/submodule--helper.c:881
+#: builtin/submodule--helper.c:895
 msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
 msgstr ""
+"git submodule status [--quiet] [--cached] [--recursive] [<percorso>...]"
 
-#: builtin/submodule--helper.c:905
+#: builtin/submodule--helper.c:919
 msgid "git submodule--helper name <path>"
-msgstr ""
+msgstr "git submodule--helper name <percorso>"
 
-#: builtin/submodule--helper.c:969
+#: builtin/submodule--helper.c:983
 #, c-format
 msgid "Synchronizing submodule url for '%s'\n"
-msgstr ""
+msgstr "Sincronizzazione URL sottomodulo per '%s' in corso\n"
 
-#: builtin/submodule--helper.c:975
+#: builtin/submodule--helper.c:989
 #, c-format
 msgid "failed to register url for submodule path '%s'"
-msgstr ""
+msgstr "registrazione dell'URL per il percorso sottomodulo '%s' non riuscita"
 
-#: builtin/submodule--helper.c:989
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1003
+#, c-format
 msgid "failed to get the default remote for submodule '%s'"
-msgstr "creazione della directory '%s' non riuscita"
+msgstr "recupero del remoto predefinito per il sottomodulo '%s' non riuscito"
 
-#: builtin/submodule--helper.c:1000
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1014
+#, c-format
 msgid "failed to update remote for submodule '%s'"
-msgstr "creazione della directory '%s' non riuscita"
+msgstr "aggiornamento del remoto per il sottomodulo '%s' non riuscito"
 
-#: builtin/submodule--helper.c:1047
+#: builtin/submodule--helper.c:1061
 msgid "Suppress output of synchronizing submodule url"
 msgstr ""
+"Non visualizzare l'output della sincronizzazione dell'URL del sottomodulo"
 
-#: builtin/submodule--helper.c:1054
+#: builtin/submodule--helper.c:1068
 msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
-msgstr ""
+msgstr "git submodule--helper sync [--quiet] [--recursive] [<percorso>]"
 
-#: builtin/submodule--helper.c:1108
+#: builtin/submodule--helper.c:1122
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains a .git directory (use 'rm -rf' if you "
 "really want to remove it including all of its history)"
 msgstr ""
+"L'albero di lavoro del sottomodulo ('%s') contiene una directory .git (usa "
+"'rm -rf' se vuoi veramente rimuoverla, inclusa l'intera sua cronologia)"
 
-#: builtin/submodule--helper.c:1120
+#: builtin/submodule--helper.c:1134
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains local modifications; use '-f' to discard "
 "them"
 msgstr ""
+"L'albero di lavoro del sottomodulo ('%s') contiene modifiche locali; usa '-"
+"f' per scartarle"
 
-#: builtin/submodule--helper.c:1128
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1142
+#, c-format
 msgid "Cleared directory '%s'\n"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "Directory '%s' ripulita\n"
 
-#: builtin/submodule--helper.c:1130
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1144
+#, c-format
 msgid "Could not remove submodule work tree '%s'\n"
-msgstr "Non è stato possibile rimuovere il branch %s"
+msgstr "Impossibile rimuovere l'albero di lavoro del sottomodulo '%s'\n"
 
-#: builtin/submodule--helper.c:1141
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1155
+#, c-format
 msgid "could not create empty submodule directory %s"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "impossibile creare la directory vuota del sottomodulo %s"
 
-#: builtin/submodule--helper.c:1157
+#: builtin/submodule--helper.c:1171
 #, c-format
 msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
-msgstr ""
+msgstr "Rimossa registrazione sottomodulo '%s' (%s) per il percorso '%s'\n"
 
-#: builtin/submodule--helper.c:1186
+#: builtin/submodule--helper.c:1200
 msgid "Remove submodule working trees even if they contain local changes"
 msgstr ""
+"Rimuovi gli alberi di lavoro dei sottomoduli anche se contengono modifiche "
+"locali"
 
-#: builtin/submodule--helper.c:1187
+#: builtin/submodule--helper.c:1201
 msgid "Unregister all submodules"
-msgstr ""
+msgstr "Annulla la registrazione di tutti i sottomoduli"
 
-#: builtin/submodule--helper.c:1192
+#: builtin/submodule--helper.c:1206
 msgid ""
 "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
 msgstr ""
+"git submodule deinit [--quiet] [-f | --force] [--all | [--] [<percorso>...]]"
 
-#: builtin/submodule--helper.c:1206
-#, fuzzy
+#: builtin/submodule--helper.c:1220
 msgid "Use '--all' if you really want to deinitialize all submodules"
-msgstr "Usa -f se vuoi davvero aggiungerli.\n"
+msgstr "Usa '--all' se vuoi veramente deinizializzare tutti i sottomoduli"
+
+#: builtin/submodule--helper.c:1289
+msgid ""
+"An alternate computed from a superproject's alternate is invalid.\n"
+"To allow Git to clone without an alternate in such a case, set\n"
+"submodule.alternateErrorStrategy to 'info' or, equivalently, clone with\n"
+"'--reference-if-able' instead of '--reference'."
+msgstr ""
+"Un alternato calcolato a partire dall'alternato di un progetto di livello\n"
+"superiore non è valido.\n"
+"Per consentire a Git di eseguire il clone senza alternati in tal caso, "
+"imposta\n"
+"submodule.alternateErrorStrategy a 'info' o, equivalentemente, esegui il "
+"clone\n"
+"con l'opzione '--reference-if-able' anziché '--reference'."
 
-#: builtin/submodule--helper.c:1301 builtin/submodule--helper.c:1304
+#: builtin/submodule--helper.c:1328 builtin/submodule--helper.c:1331
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
-msgstr ""
+msgstr "non è possibile aggiungere un alternato per il sottomodulo '%s': %s"
 
-#: builtin/submodule--helper.c:1340
+#: builtin/submodule--helper.c:1367
 #, c-format
 msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
-msgstr ""
+msgstr "Valore '%s' per submodule.alternateErrorStrategy non riconosciuto"
 
-#: builtin/submodule--helper.c:1347
+#: builtin/submodule--helper.c:1374
 #, c-format
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
-msgstr ""
+msgstr "Valore '%s' per submodule.alternateLocation non riconosciuto"
 
-#: builtin/submodule--helper.c:1370
+#: builtin/submodule--helper.c:1398
 msgid "where the new submodule will be cloned to"
-msgstr ""
+msgstr "percorso in cui sarà clonato il nuovo sottomodulo"
 
-#: builtin/submodule--helper.c:1373
+#: builtin/submodule--helper.c:1401
 msgid "name of the new submodule"
-msgstr ""
+msgstr "nome del nuovo sottomodulo"
 
-#: builtin/submodule--helper.c:1376
+#: builtin/submodule--helper.c:1404
 msgid "url where to clone the submodule from"
-msgstr ""
+msgstr "URL da cui clonare il sottomodulo"
 
-#: builtin/submodule--helper.c:1384
+#: builtin/submodule--helper.c:1412
 msgid "depth for shallow clones"
-msgstr ""
+msgstr "profondità per i cloni shallow"
 
-#: builtin/submodule--helper.c:1387 builtin/submodule--helper.c:1872
+#: builtin/submodule--helper.c:1415 builtin/submodule--helper.c:1924
 msgid "force cloning progress"
-msgstr ""
+msgstr "forza l'indicazione d'avanzamento della clonazione"
 
-#: builtin/submodule--helper.c:1392
+#: builtin/submodule--helper.c:1417 builtin/submodule--helper.c:1926
+msgid "disallow cloning into non-empty directory"
+msgstr "disabilita il clone in una directory non vuota"
+
+#: builtin/submodule--helper.c:1424
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
-"<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
+"<repository>] [--name <name>] [--depth <depth>] [--single-branch] --url "
+"<url> --path <path>"
 msgstr ""
+"git submodule--helper clone [--prefix=<percorso>] [--quiet] [--reference "
+"<repository>] [--name <nome>] [--depth <profondità>] [--single-branch] --url "
+"<URL> --path <percorso>"
 
-#: builtin/submodule--helper.c:1423
+#: builtin/submodule--helper.c:1449
 #, c-format
-msgid "clone of '%s' into submodule path '%s' failed"
+msgid "refusing to create/use '%s' in another submodule's git dir"
 msgstr ""
+"mi rifiuto di creare/usare '%s' nella directory Git di un altro sottomodulo"
+
+#: builtin/submodule--helper.c:1460
+#, c-format
+msgid "clone of '%s' into submodule path '%s' failed"
+msgstr "clone di '%s' nel percorso del sottomodulo ('%s') non riuscito"
+
+#: builtin/submodule--helper.c:1464
+#, c-format
+msgid "directory not empty: '%s'"
+msgstr "directory non vuota: '%s'"
 
-#: builtin/submodule--helper.c:1437
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1476
+#, c-format
 msgid "could not get submodule directory for '%s'"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "impossibile recuperare la directory del sottomodulo per '%s'"
 
-#: builtin/submodule--helper.c:1473
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1512
+#, c-format
 msgid "Invalid update mode '%s' for submodule path '%s'"
-msgstr "creazione della directory '%s' non riuscita"
+msgstr ""
+"Modalità aggiornamento '%s' non valida per il percorso del sottomodulo ('%s')"
 
-#: builtin/submodule--helper.c:1477
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1516
+#, c-format
 msgid "Invalid update mode '%s' configured for submodule path '%s'"
-msgstr "Lettura dell'oggetto '%s' non riuscita."
+msgstr ""
+"È stata configurata una modalità aggiornamento '%s' non valida per il "
+"percorso del sottomodulo ('%s')"
 
-#: builtin/submodule--helper.c:1570
+#: builtin/submodule--helper.c:1617
 #, c-format
 msgid "Submodule path '%s' not initialized"
-msgstr ""
+msgstr "Percorso del sottomodulo ('%s') non inizializzato"
 
-#: builtin/submodule--helper.c:1574
-#, fuzzy
+#: builtin/submodule--helper.c:1621
 msgid "Maybe you want to use 'update --init'?"
-msgstr "Forse intendevi dire 'git add .'?\n"
+msgstr "Potresti voler usare 'update --init'."
 
-#: builtin/submodule--helper.c:1604
+#: builtin/submodule--helper.c:1651
 #, c-format
 msgid "Skipping unmerged submodule %s"
-msgstr ""
+msgstr "Ignoro il sottomodulo %s non sottoposto a merge"
 
-#: builtin/submodule--helper.c:1633
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1680
+#, c-format
 msgid "Skipping submodule '%s'"
-msgstr "Il path '%s' è nel sottomodulo '%.*s'"
+msgstr "Ignoro il sottomodulo '%s'"
 
-#: builtin/submodule--helper.c:1777
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:1830
+#, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
-msgstr "Copia delle note da '%s' a '%s' non riuscita"
+msgstr "Clone di '%s' non riuscito. Nuovo tentativo programmato"
 
-#: builtin/submodule--helper.c:1788
+#: builtin/submodule--helper.c:1841
 #, c-format
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr ""
+"Clone di '%s' non riuscito per la seconda volta, interrompo l'operazione"
 
-#: builtin/submodule--helper.c:1851 builtin/submodule--helper.c:2093
+#: builtin/submodule--helper.c:1903 builtin/submodule--helper.c:2149
 msgid "path into the working tree"
-msgstr ""
+msgstr "percorso nell'albero di lavoro"
 
-#: builtin/submodule--helper.c:1854
+#: builtin/submodule--helper.c:1906
 msgid "path into the working tree, across nested submodule boundaries"
 msgstr ""
+"percorso nell'albero di lavoro attraverso i confini dei sottomoduli innestati"
 
-#: builtin/submodule--helper.c:1858
+#: builtin/submodule--helper.c:1910
 msgid "rebase, merge, checkout or none"
-msgstr ""
+msgstr "rebase, merge, checkout o none"
 
-#: builtin/submodule--helper.c:1864
+#: builtin/submodule--helper.c:1916
 msgid "Create a shallow clone truncated to the specified number of revisions"
-msgstr ""
+msgstr "Crea un clone shallow limitato al numero di revisioni specificato"
 
-#: builtin/submodule--helper.c:1867
+#: builtin/submodule--helper.c:1919
 msgid "parallel jobs"
-msgstr ""
+msgstr "processi da eseguire in parallelo"
 
-#: builtin/submodule--helper.c:1869
+#: builtin/submodule--helper.c:1921
 msgid "whether the initial clone should follow the shallow recommendation"
-msgstr ""
+msgstr "determina se il clone iniziale sarà shallow come raccomandato"
 
-#: builtin/submodule--helper.c:1870
+#: builtin/submodule--helper.c:1922
 msgid "don't print cloning progress"
-msgstr ""
+msgstr "non stampare l'indicazione di avanzamento della clonazione"
 
-#: builtin/submodule--helper.c:1877
-msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
+#: builtin/submodule--helper.c:1933
+msgid "git submodule--helper update-clone [--prefix=<path>] [<path>...]"
 msgstr ""
+"git submodule--helper update-clone [--prefix=<percorso>] [<percorso>...]"
 
-#: builtin/submodule--helper.c:1890
-#, fuzzy
+#: builtin/submodule--helper.c:1946
 msgid "bad value for update parameter"
-msgstr "parametro --author malformato"
+msgstr "valore parametro aggiornamento errato"
 
-#: builtin/submodule--helper.c:1938
+#: builtin/submodule--helper.c:1994
 #, c-format
 msgid ""
 "Submodule (%s) branch configured to inherit branch from superproject, but "
 "the superproject is not on any branch"
 msgstr ""
+"Il branch del sottomodulo (%s) è configurato in modo da ereditare il branch "
+"dal progetto al livello superiore, ma questo non è su alcun branch"
 
-#: builtin/submodule--helper.c:2061
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:2117
+#, c-format
 msgid "could not get a repository handle for submodule '%s'"
-msgstr "non è stato possibile aprire o leggere '%s'"
+msgstr "impossibile recuperare un handle repository per il sottomodulo '%s'"
 
-#: builtin/submodule--helper.c:2094
+#: builtin/submodule--helper.c:2150
 msgid "recurse into submodules"
-msgstr ""
-
-#: builtin/submodule--helper.c:2100
-msgid "git submodule--helper embed-git-dir [<path>...]"
-msgstr ""
+msgstr "esegui ricorsivamente sui sottomoduli"
 
 #: builtin/submodule--helper.c:2156
+msgid "git submodule--helper absorb-git-dirs [<options>] [<path>...]"
+msgstr "git submodule--helper absorb-git-dirs [<opzioni>] [<percorso>...]"
+
+#: builtin/submodule--helper.c:2212
 msgid "check if it is safe to write to the .gitmodules file"
-msgstr ""
+msgstr "controlla se è sicuro scrivere sul file .gitmodules"
 
-#: builtin/submodule--helper.c:2161
-msgid "git submodule--helper config name [value]"
-msgstr ""
+#: builtin/submodule--helper.c:2215
+msgid "unset the config in the .gitmodules file"
+msgstr "rimuovi la configurazione nel file .gitmodules"
+
+#: builtin/submodule--helper.c:2220
+msgid "git submodule--helper config <name> [<value>]"
+msgstr "git submodule--helper config <nome> [<valore>]"
 
-#: builtin/submodule--helper.c:2162
+#: builtin/submodule--helper.c:2221
+msgid "git submodule--helper config --unset <name>"
+msgstr "git submodule--helper config --unset <nome>"
+
+#: builtin/submodule--helper.c:2222
 msgid "git submodule--helper config --check-writeable"
-msgstr ""
+msgstr "git submodule--helper config --check-writeable"
 
-#: builtin/submodule--helper.c:2179 git-submodule.sh:169
+#: builtin/submodule--helper.c:2241 git-submodule.sh:174
 #, sh-format
 msgid "please make sure that the .gitmodules file is in the working tree"
-msgstr ""
+msgstr "assicurati che il file .gitmodules sia nell'albero di lavoro"
 
-#: builtin/submodule--helper.c:2229 git.c:413 git.c:658
+#: builtin/submodule--helper.c:2291 git.c:433 git.c:684
 #, c-format
 msgid "%s doesn't support --super-prefix"
-msgstr ""
+msgstr "%s non supporta --super-prefix"
 
-#: builtin/submodule--helper.c:2235
-#, fuzzy, c-format
+#: builtin/submodule--helper.c:2297
+#, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
-msgstr "'%s' non è un nome di remoto valido"
+msgstr "'%s' non è un sottocomando submodule--helper valido"
 
 #: builtin/symbolic-ref.c:8
 msgid "git symbolic-ref [<options>] <name> [<ref>]"
-msgstr ""
+msgstr "git symbolic-ref [<opzioni>] <nome> [<riferimento>]"
 
 #: builtin/symbolic-ref.c:9
 msgid "git symbolic-ref -d [-q] <name>"
-msgstr ""
+msgstr "git symbolic-ref -d [-q] <nome>"
 
 #: builtin/symbolic-ref.c:40
 msgid "suppress error message for non-symbolic (detached) refs"
 msgstr ""
+"non visualizzare messaggi d'errore se ci sono riferimenti non simbolici "
+"(scollegati)"
 
 #: builtin/symbolic-ref.c:41
-#, fuzzy
 msgid "delete symbolic ref"
-msgstr "HEAD errato - strano ref simbolico"
+msgstr "elimina riferimento simbolico"
 
 #: builtin/symbolic-ref.c:42
 msgid "shorten ref output"
-msgstr ""
+msgstr "abbrevia il riferimento nell'output"
 
 #: builtin/symbolic-ref.c:43 builtin/update-ref.c:363
 msgid "reason"
-msgstr ""
+msgstr "motivo"
 
 #: builtin/symbolic-ref.c:43 builtin/update-ref.c:363
 msgid "reason of the update"
-msgstr ""
+msgstr "motivo dell'aggiornamento"
 
 #: builtin/tag.c:25
 msgid ""
-"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>] <tagname> "
-"[<head>]"
+"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]\n"
+"\t\t<tagname> [<head>]"
 msgstr ""
+"git tag [-a | -s | -u <ID chiave>] [-f] [-m <messaggio> | -F <file>]\n"
+"\t\t<nome tag> [<head>]"
 
-#: builtin/tag.c:26
+#: builtin/tag.c:27
 msgid "git tag -d <tagname>..."
-msgstr ""
+msgstr "git tag -d <nome tag>..."
 
-#: builtin/tag.c:27
+#: builtin/tag.c:28
 msgid ""
 "git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
 "points-at <object>]\n"
 "\t\t[--format=<format>] [--[no-]merged [<commit>]] [<pattern>...]"
 msgstr ""
+"git tag -l [-n[<numero>]] [--contains <commit>] [--no-contains <commit>] [--"
+"points-at <oggetto>]\n"
+"\t\t[--format=<formato>] [--[no-]merged [<commit>]] [<pattern>...]"
 
-#: builtin/tag.c:29
+#: builtin/tag.c:30
 msgid "git tag -v [--format=<format>] <tagname>..."
-msgstr ""
+msgstr "git tag -v [--format=<formato>] <nome tag>..."
 
-#: builtin/tag.c:87
+#: builtin/tag.c:89
 #, c-format
 msgid "tag '%s' not found."
 msgstr "tag '%s' non trovato."
 
-#: builtin/tag.c:103
+#: builtin/tag.c:105
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr "Tag '%s' eliminato (era %s)\n"
 
-#: builtin/tag.c:133
-#, fuzzy, c-format
+#: builtin/tag.c:135
+#, c-format
 msgid ""
 "\n"
 "Write a message for tag:\n"
@@ -18640,13 +21591,12 @@ msgid ""
 "Lines starting with '%c' will be ignored.\n"
 msgstr ""
 "\n"
-"#\n"
-"# Scrivere un messaggio associato al tag\n"
-"# Le righe che iniziano con '#' verranno ignorate.\n"
-"#\n"
+"Scrivi un messaggio per il tag:\n"
+"  %s\n"
+"Le righe che iniziano con '%c' saranno ignorate.\n"
 
-#: builtin/tag.c:137
-#, fuzzy, c-format
+#: builtin/tag.c:139
+#, c-format
 msgid ""
 "\n"
 "Write a message for tag:\n"
@@ -18655,790 +21605,868 @@ msgid ""
 "want to.\n"
 msgstr ""
 "\n"
-"#\n"
-"# Scrivere un messaggio associato al tag\n"
-"# Le righe che iniziano con '#' verranno mantenute; possono essere comunque "
-"rimosse manualmente.\n"
-"#\n"
+"Scrivi un messaggio per il tag:\n"
+"  %s\n"
+"Le righe che iniziano con '%c' saranno mantenute; puoi rimuoverle "
+"autonomamente se lo desideri.\n"
 
-#: builtin/tag.c:191
+#: builtin/tag.c:198
 msgid "unable to sign the tag"
 msgstr "impossibile firmare il tag"
 
-#: builtin/tag.c:193
+#: builtin/tag.c:200
 msgid "unable to write tag file"
-msgstr "impossibile scrivere il file di tag"
+msgstr "impossibile scrivere il file tag"
+
+#: builtin/tag.c:216
+#, c-format
+msgid ""
+"You have created a nested tag. The object referred to by your new tag is\n"
+"already a tag. If you meant to tag the object that it points to, use:\n"
+"\n"
+"\tgit tag -f %s %s^{}"
+msgstr ""
+"Hai creato un tag innestato. L'oggetto a cui si riferisce il tuo nuovo\n"
+"tag è già un tag. Se intendevi aggiungere un tag all'oggetto a cui\n"
+"punta, usa:\n"
+"\n"
+"\tgit tag -f %s %s^{}"
 
-#: builtin/tag.c:218
+#: builtin/tag.c:232
 msgid "bad object type."
-msgstr "tipo di oggetto errato."
+msgstr "tipo oggetto errato."
 
-#: builtin/tag.c:267
+#: builtin/tag.c:284
 msgid "no tag message?"
 msgstr "nessun messaggio per il tag?"
 
-#: builtin/tag.c:274
+#: builtin/tag.c:291
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr "Il messaggio del tag è stato lasciato in %s\n"
 
-#: builtin/tag.c:385
+#: builtin/tag.c:402
 msgid "list tag names"
-msgstr ""
+msgstr "elenca i nomi dei tag"
 
-#: builtin/tag.c:387
+#: builtin/tag.c:404
 msgid "print <n> lines of each tag message"
-msgstr ""
+msgstr "stampa le prime <n> righe di ogni messaggio tag"
 
-#: builtin/tag.c:389
-#, fuzzy
+#: builtin/tag.c:406
 msgid "delete tags"
-msgstr "elimina"
+msgstr "elimina tag"
 
-#: builtin/tag.c:390
+#: builtin/tag.c:407
 msgid "verify tags"
-msgstr ""
+msgstr "verifica tag"
 
-#: builtin/tag.c:392
+#: builtin/tag.c:409
 msgid "Tag creation options"
-msgstr ""
+msgstr "Opzioni creazione tag"
 
-#: builtin/tag.c:394
-#, fuzzy
+#: builtin/tag.c:411
 msgid "annotated tag, needs a message"
-msgstr "nessun messaggio per il tag?"
+msgstr "tag annotato, richiede un messaggio"
 
-#: builtin/tag.c:396
-#, fuzzy
+#: builtin/tag.c:413
 msgid "tag message"
-msgstr "nessun messaggio per il tag?"
+msgstr "messaggio tag"
 
-#: builtin/tag.c:398
-#, fuzzy
+#: builtin/tag.c:415
 msgid "force edit of tag message"
-msgstr "nessun messaggio per il tag?"
+msgstr "forza modifica del messaggio tag"
 
-#: builtin/tag.c:399
+#: builtin/tag.c:416
 msgid "annotated and GPG-signed tag"
-msgstr ""
+msgstr "tag annotato e firmato con GPG"
 
-#: builtin/tag.c:403
-#, fuzzy
+#: builtin/tag.c:419
 msgid "use another key to sign the tag"
-msgstr "impossibile firmare il tag"
+msgstr "usa un'altra chiave per firmare il tag"
 
-#: builtin/tag.c:404
+#: builtin/tag.c:420
 msgid "replace the tag if exists"
-msgstr ""
+msgstr "sostituisci il tag se esiste"
 
-#: builtin/tag.c:405 builtin/update-ref.c:369
+#: builtin/tag.c:421 builtin/update-ref.c:369
 msgid "create a reflog"
-msgstr ""
+msgstr "crea un registro riferimenti"
 
-#: builtin/tag.c:407
+#: builtin/tag.c:423
 msgid "Tag listing options"
-msgstr ""
+msgstr "Opzioni elenco tag"
 
-#: builtin/tag.c:408
+#: builtin/tag.c:424
 msgid "show tag list in columns"
-msgstr ""
+msgstr "visualizza l'elenco dei tag in colonne"
 
-#: builtin/tag.c:409 builtin/tag.c:411
+#: builtin/tag.c:425 builtin/tag.c:427
 msgid "print only tags that contain the commit"
-msgstr ""
+msgstr "stampa solo i tag che contengono il commit"
 
-#: builtin/tag.c:410 builtin/tag.c:412
+#: builtin/tag.c:426 builtin/tag.c:428
 msgid "print only tags that don't contain the commit"
-msgstr ""
+msgstr "stampa solo i tag che non contengono i commit"
 
-#: builtin/tag.c:413
+#: builtin/tag.c:429
 msgid "print only tags that are merged"
-msgstr ""
+msgstr "stampa solo i tag sottoposti a merge"
 
-#: builtin/tag.c:414
+#: builtin/tag.c:430
 msgid "print only tags that are not merged"
-msgstr ""
+msgstr "stampa solo i tag non sottoposti a merge"
 
-#: builtin/tag.c:419
+#: builtin/tag.c:434
 msgid "print only tags of the object"
-msgstr ""
+msgstr "stampa solo i tag dell'oggetto"
 
-#: builtin/tag.c:463
+#: builtin/tag.c:482
 msgid "--column and -n are incompatible"
 msgstr "--column e -n non sono compatibili"
 
-#: builtin/tag.c:485
-#, fuzzy
+#: builtin/tag.c:504
 msgid "-n option is only allowed in list mode"
-msgstr "l'opzione -n è consentita solo con -l."
+msgstr "l'opzione -n è consentita solo in modalità elenco"
 
-#: builtin/tag.c:487
-#, fuzzy
+#: builtin/tag.c:506
 msgid "--contains option is only allowed in list mode"
-msgstr "l'opzione --contains è consentita solo con -l."
+msgstr "l'opzione --contains è consentita solo in modalità elenco"
 
-#: builtin/tag.c:489
-#, fuzzy
+#: builtin/tag.c:508
 msgid "--no-contains option is only allowed in list mode"
-msgstr "l'opzione --contains è consentita solo con -l."
+msgstr "l'opzione --no-contains è consentita solo in modalità elenco"
 
-#: builtin/tag.c:491
-#, fuzzy
+#: builtin/tag.c:510
 msgid "--points-at option is only allowed in list mode"
-msgstr "l'opzione --points-at è consentita solo con -l."
+msgstr "l'opzione --points-at è consentita solo in modalità elenco"
 
-#: builtin/tag.c:493
+#: builtin/tag.c:512
 msgid "--merged and --no-merged options are only allowed in list mode"
 msgstr ""
+"le opzioni --merged e --no-merged sono consentite solo in modalità elenco"
 
-#: builtin/tag.c:504
+#: builtin/tag.c:523
 msgid "only one -F or -m option is allowed."
 msgstr "è consentita una sola opzione tra -F e -m."
 
-#: builtin/tag.c:523
+#: builtin/tag.c:542
 msgid "too many params"
 msgstr "troppi parametri"
 
-#: builtin/tag.c:529
+#: builtin/tag.c:548
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "'%s' non è un nome tag valido."
 
-#: builtin/tag.c:534
+#: builtin/tag.c:553
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "il tag '%s' esiste già"
 
-#: builtin/tag.c:565
+#: builtin/tag.c:584
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Tag '%s' aggiornato (era %s)\n"
 
-#: builtin/unpack-objects.c:500
-#, fuzzy
+#: builtin/unpack-objects.c:502
 msgid "Unpacking objects"
-msgstr "Indicizzazione degli oggetti"
+msgstr "Decompressione degli oggetti in corso"
 
-#: builtin/update-index.c:83
-#, fuzzy, c-format
+#: builtin/update-index.c:84
+#, c-format
 msgid "failed to create directory %s"
-msgstr "creazione della directory '%s' non riuscita"
+msgstr "creazione della directory %s non riuscita"
 
-#: builtin/update-index.c:99
-#, fuzzy, c-format
+#: builtin/update-index.c:100
+#, c-format
 msgid "failed to create file %s"
-msgstr "creazione del link '%s' non riuscita"
+msgstr "creazione del file %s non riuscita"
 
-#: builtin/update-index.c:107
-#, fuzzy, c-format
+#: builtin/update-index.c:108
+#, c-format
 msgid "failed to delete file %s"
-msgstr "creazione del link '%s' non riuscita"
+msgstr "eliminazione del file %s non riuscita"
 
-#: builtin/update-index.c:114 builtin/update-index.c:220
-#, fuzzy, c-format
+#: builtin/update-index.c:115 builtin/update-index.c:221
+#, c-format
 msgid "failed to delete directory %s"
-msgstr "creazione della directory '%s' non riuscita"
+msgstr "eliminazione della directory %s non riuscita"
 
-#: builtin/update-index.c:139
-#, fuzzy, c-format
+#: builtin/update-index.c:140
+#, c-format
 msgid "Testing mtime in '%s' "
-msgstr "chiusura del file '%s'"
+msgstr "Test di mtime in '%s' in corso "
 
-#: builtin/update-index.c:153
+#: builtin/update-index.c:154
 msgid "directory stat info does not change after adding a new file"
 msgstr ""
+"le informazioni stat della directory non cambiano dopo l'aggiunta di un "
+"nuovo file"
 
-#: builtin/update-index.c:166
+#: builtin/update-index.c:167
 msgid "directory stat info does not change after adding a new directory"
 msgstr ""
+"le informazioni stat della directory non cambiano dopo l'aggiunta di una "
+"nuova directory"
 
-#: builtin/update-index.c:179
+#: builtin/update-index.c:180
 msgid "directory stat info changes after updating a file"
 msgstr ""
+"le informazioni stat della directory cambiano dopo l'aggiornamento di un file"
 
-#: builtin/update-index.c:190
+#: builtin/update-index.c:191
 msgid "directory stat info changes after adding a file inside subdirectory"
 msgstr ""
+"le informazioni stat della directory cambiano dopo l'aggiunta di un file in "
+"una sottodirectory"
 
-#: builtin/update-index.c:201
+#: builtin/update-index.c:202
 msgid "directory stat info does not change after deleting a file"
 msgstr ""
+"le informazioni stat della directory non cambiano dopo l'eliminazione di un "
+"file"
 
-#: builtin/update-index.c:214
+#: builtin/update-index.c:215
 msgid "directory stat info does not change after deleting a directory"
 msgstr ""
+"le informazioni stat della directory non cambiano dopo l'eliminazione di una "
+"directory"
 
-#: builtin/update-index.c:221
+#: builtin/update-index.c:222
 msgid " OK"
-msgstr ""
+msgstr " OK"
 
-#: builtin/update-index.c:589
+#: builtin/update-index.c:591
 msgid "git update-index [<options>] [--] [<file>...]"
-msgstr ""
+msgstr "git update-index [<opzioni>] [--] [<file>...]"
 
-#: builtin/update-index.c:962
+#: builtin/update-index.c:974
 msgid "continue refresh even when index needs update"
 msgstr ""
+"continua l'aggiornamento anche nel caso in cui l'indice richieda di essere "
+"aggiornato"
 
-#: builtin/update-index.c:965
+#: builtin/update-index.c:977
 msgid "refresh: ignore submodules"
-msgstr ""
+msgstr "aggiornamento: ignora i sottomoduli"
 
-#: builtin/update-index.c:968
-#, fuzzy
+#: builtin/update-index.c:980
 msgid "do not ignore new files"
-msgstr "impossibile archiviare index file"
+msgstr "non ignorare i nuovi file"
 
-#: builtin/update-index.c:970
+#: builtin/update-index.c:982
 msgid "let files replace directories and vice-versa"
-msgstr ""
+msgstr "consenti che dei file sostituiscano delle directory e viceversa"
 
-#: builtin/update-index.c:972
+#: builtin/update-index.c:984
 msgid "notice files missing from worktree"
-msgstr ""
+msgstr "nota se dei file mancano dall'albero di lavoro"
 
-#: builtin/update-index.c:974
+#: builtin/update-index.c:986
 msgid "refresh even if index contains unmerged entries"
 msgstr ""
+"esegui l'aggiornamento anche se l'indice contiene delle voci non sottoposte "
+"a merge"
 
-#: builtin/update-index.c:977
+#: builtin/update-index.c:989
 msgid "refresh stat information"
-msgstr ""
+msgstr "aggiorna le informazioni stat"
 
-#: builtin/update-index.c:981
+#: builtin/update-index.c:993
 msgid "like --refresh, but ignore assume-unchanged setting"
-msgstr ""
+msgstr "come --refresh, ma ignora l'impostazione assume-unchanged"
 
-#: builtin/update-index.c:985
+#: builtin/update-index.c:997
 msgid "<mode>,<object>,<path>"
-msgstr ""
+msgstr "<modo>,<oggetto>,<percorso>"
 
-#: builtin/update-index.c:986
-#, fuzzy
+#: builtin/update-index.c:998
 msgid "add the specified entry to the index"
-msgstr "Aggiunge il contenuto del file a index"
+msgstr "aggiunge la voce specificata all'indice"
 
-#: builtin/update-index.c:995
+#: builtin/update-index.c:1008
 msgid "mark files as \"not changing\""
-msgstr ""
+msgstr "contrassegna i file come \"non saranno modificati\""
 
-#: builtin/update-index.c:998
+#: builtin/update-index.c:1011
 msgid "clear assumed-unchanged bit"
-msgstr ""
+msgstr "reimposta a zero il bit \"non saranno modificati\""
 
-#: builtin/update-index.c:1001
+#: builtin/update-index.c:1014
 msgid "mark files as \"index-only\""
-msgstr ""
+msgstr "contrassegna i file come \"solamente da indicizzare\""
 
-#: builtin/update-index.c:1004
+#: builtin/update-index.c:1017
 msgid "clear skip-worktree bit"
-msgstr ""
+msgstr "reimposta a zero il bit \"solamente da indicizzare\""
 
-#: builtin/update-index.c:1007
+#: builtin/update-index.c:1020
+msgid "do not touch index-only entries"
+msgstr "non eseguire il touch di voci presenti solo nell'indice"
+
+#: builtin/update-index.c:1022
 msgid "add to index only; do not add content to object database"
 msgstr ""
+"aggiungi solo all'indice; non aggiungere il contenuto al database oggetti"
 
-#: builtin/update-index.c:1009
+#: builtin/update-index.c:1024
 msgid "remove named paths even if present in worktree"
-msgstr ""
+msgstr "rimuovi i percorsi specificati anche se presenti nell'albero di lavoro"
 
-#: builtin/update-index.c:1011
+#: builtin/update-index.c:1026
 msgid "with --stdin: input lines are terminated by null bytes"
-msgstr ""
+msgstr "con --stdin: le righe di input sono terminate da byte NULL"
 
-#: builtin/update-index.c:1013
-#, fuzzy
+#: builtin/update-index.c:1028
 msgid "read list of paths to be updated from standard input"
-msgstr "(lettura del messaggio di log dallo standard input)\n"
+msgstr "leggi l'elenco dei percorsi da aggiornare dallo standard input"
 
-#: builtin/update-index.c:1017
-#, fuzzy
+#: builtin/update-index.c:1032
 msgid "add entries from standard input to the index"
-msgstr "non è stato possibile leggere il log dallo standard input"
+msgstr "aggiungi le voci specificate sullo standard input all'indice"
 
-#: builtin/update-index.c:1021
+#: builtin/update-index.c:1036
 msgid "repopulate stages #2 and #3 for the listed paths"
-msgstr ""
+msgstr "ripopola le fasi 2 e 3 per i percorsi elencati"
 
-#: builtin/update-index.c:1025
+#: builtin/update-index.c:1040
 msgid "only update entries that differ from HEAD"
-msgstr ""
+msgstr "aggiorna solo le voci differenti rispetto all'HEAD"
 
-#: builtin/update-index.c:1029
+#: builtin/update-index.c:1044
 msgid "ignore files missing from worktree"
-msgstr ""
+msgstr "ignora i file mancanti nell'albero di lavoro"
 
-#: builtin/update-index.c:1032
+#: builtin/update-index.c:1047
 msgid "report actions to standard output"
-msgstr ""
+msgstr "stampa le azioni sullo standard output"
 
-#: builtin/update-index.c:1034
+#: builtin/update-index.c:1049
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr ""
+"(per i comandi ad alto livello) dimentica i conflitti non risolti salvati"
 
-#: builtin/update-index.c:1038
+#: builtin/update-index.c:1053
 msgid "write index in this format"
-msgstr ""
+msgstr "scrivi l'indice in questo formato"
 
-#: builtin/update-index.c:1040
-#, fuzzy
+#: builtin/update-index.c:1055
 msgid "enable or disable split index"
-msgstr "Impossibile scrivere index."
+msgstr "abilita o disabilita l'indice suddiviso"
 
-#: builtin/update-index.c:1042
+#: builtin/update-index.c:1057
 msgid "enable/disable untracked cache"
-msgstr ""
+msgstr "abilita/disabilita la cache non tracciata"
 
-#: builtin/update-index.c:1044
+#: builtin/update-index.c:1059
 msgid "test if the filesystem supports untracked cache"
-msgstr ""
+msgstr "verifica se il filesystem supporta la cache non tracciata"
 
-#: builtin/update-index.c:1046
+#: builtin/update-index.c:1061
 msgid "enable untracked cache without testing the filesystem"
-msgstr ""
+msgstr "abilita la cache non tracciata senza testare il filesystem"
 
-#: builtin/update-index.c:1048
+#: builtin/update-index.c:1063
 msgid "write out the index even if is not flagged as changed"
-msgstr ""
+msgstr "scrivi l'indice anche se non è stato contrassegnato come modificato"
 
-#: builtin/update-index.c:1050
-#, fuzzy
+#: builtin/update-index.c:1065
 msgid "enable or disable file system monitor"
-msgstr "impossibile gestire il tipo di file %d"
+msgstr "abilita o disabilita il monitor del filesystem"
 
-#: builtin/update-index.c:1052
+#: builtin/update-index.c:1067
 msgid "mark files as fsmonitor valid"
-msgstr ""
+msgstr "contrassegna i file come validi rispetto al monitor del filesystem"
 
-#: builtin/update-index.c:1055
+#: builtin/update-index.c:1070
 msgid "clear fsmonitor valid bit"
 msgstr ""
+"reimposta a zero il bit \"file validi rispetto al monitor del filesystem\""
 
-#: builtin/update-index.c:1156
+#: builtin/update-index.c:1173
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
 msgstr ""
+"core.splitIndex è impostato a false; rimuovilo o modificalo se vuoi "
+"veramente abilitare l'indice suddiviso"
 
-#: builtin/update-index.c:1165
+#: builtin/update-index.c:1182
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
 msgstr ""
+"core.splitIndex è impostato a true; rimuovilo o modificalo se vuoi veramente "
+"disabilitare l'indice suddiviso"
 
-#: builtin/update-index.c:1176
+#: builtin/update-index.c:1194
 msgid ""
 "core.untrackedCache is set to true; remove or change it, if you really want "
 "to disable the untracked cache"
 msgstr ""
+"core.untrackedCache è impostato a true; rimuovilo o modificalo se vuoi "
+"veramente disabilitare la cache non tracciata"
 
-#: builtin/update-index.c:1180
+#: builtin/update-index.c:1198
 msgid "Untracked cache disabled"
-msgstr ""
+msgstr "Cache non tracciata disabilitata"
 
-#: builtin/update-index.c:1188
+#: builtin/update-index.c:1206
 msgid ""
 "core.untrackedCache is set to false; remove or change it, if you really want "
 "to enable the untracked cache"
 msgstr ""
+"core.untrackedCache è impostato a false; rimuovilo o modificalo se vuoi "
+"veramente abilitare la cache non tracciata"
 
-#: builtin/update-index.c:1192
-#, fuzzy, c-format
+#: builtin/update-index.c:1210
+#, c-format
 msgid "Untracked cache enabled for '%s'"
-msgstr "make_cache_entry non riuscito per il path '%s'"
+msgstr "Cache non tracciata abilitata per '%s'"
 
-#: builtin/update-index.c:1200
+#: builtin/update-index.c:1218
 msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
 msgstr ""
+"core.fsmonitor non è impostato; impostalo se vuoi veramente abilitare il "
+"monitor del filesystem"
 
-#: builtin/update-index.c:1204
+#: builtin/update-index.c:1222
 msgid "fsmonitor enabled"
-msgstr ""
+msgstr "monitor filesystem abilitato"
 
-#: builtin/update-index.c:1207
+#: builtin/update-index.c:1225
 msgid ""
 "core.fsmonitor is set; remove it if you really want to disable fsmonitor"
 msgstr ""
+"core.fsmonitor è impostato; rimuovi tale impostazione se vuoi veramente "
+"disabilitare il monitor del filesystem"
 
-#: builtin/update-index.c:1211
+#: builtin/update-index.c:1229
 msgid "fsmonitor disabled"
-msgstr ""
+msgstr "monitor filesystem disabilitato"
 
 #: builtin/update-ref.c:10
 msgid "git update-ref [<options>] -d <refname> [<old-val>]"
-msgstr ""
+msgstr "git update-ref [<opzioni>] -d <nome riferimento> [<vecchio valore>]"
 
 #: builtin/update-ref.c:11
 msgid "git update-ref [<options>]    <refname> <new-val> [<old-val>]"
 msgstr ""
+"git update-ref [<opzioni>]    <nome riferimento> <nuovo valore> [<vecchio "
+"valore>]"
 
 #: builtin/update-ref.c:12
 msgid "git update-ref [<options>] --stdin [-z]"
-msgstr ""
+msgstr "git update-ref [<opzioni>] --stdin [-z]"
 
 #: builtin/update-ref.c:364
 msgid "delete the reference"
-msgstr ""
+msgstr "elimina il riferimento"
 
 #: builtin/update-ref.c:366
 msgid "update <refname> not the one it points to"
-msgstr ""
+msgstr "aggiorna <nome riferimento>, non ciò a cui punta"
 
 #: builtin/update-ref.c:367
 msgid "stdin has NUL-terminated arguments"
-msgstr ""
+msgstr "lo standard input ha argomenti terminati da NUL"
 
 #: builtin/update-ref.c:368
 msgid "read updates from stdin"
-msgstr ""
+msgstr "leggi aggiornamenti dallo standard input"
 
 #: builtin/update-server-info.c:7
 msgid "git update-server-info [--force]"
-msgstr ""
+msgstr "git update-server-info [--force]"
 
 #: builtin/update-server-info.c:15
 msgid "update the info files from scratch"
-msgstr ""
+msgstr "aggiorna i file informazioni partendo da zero"
 
 #: builtin/upload-pack.c:11
 msgid "git upload-pack [<options>] <dir>"
-msgstr ""
+msgstr "git upload-pack [<opzioni>] <directory>"
+
+#: builtin/upload-pack.c:23 t/helper/test-serve-v2.c:17
+msgid "quit after a single request/response exchange"
+msgstr "esci dopo un solo scambio richiesta/risposta"
 
 #: builtin/upload-pack.c:25
 msgid "exit immediately after initial ref advertisement"
-msgstr ""
+msgstr "esci subito dopo l'annuncio iniziale del riferimento"
 
 #: builtin/upload-pack.c:27
 msgid "do not try <directory>/.git/ if <directory> is no Git directory"
 msgstr ""
+"non provare a utilizzare <directory>/.git/ se <directory> non è una "
+"directory Git"
 
 #: builtin/upload-pack.c:29
 msgid "interrupt transfer after <n> seconds of inactivity"
-msgstr ""
+msgstr "interrompi il trasferimento dopo <n> secondi di inattività"
 
-#: builtin/verify-commit.c:20
+#: builtin/verify-commit.c:19
 msgid "git verify-commit [-v | --verbose] <commit>..."
-msgstr ""
+msgstr "git verify-commit [-v | --verbose] <commit>..."
 
-#: builtin/verify-commit.c:76
-#, fuzzy
+#: builtin/verify-commit.c:68
 msgid "print commit contents"
-msgstr "Commit iniziale su "
+msgstr "stampa i contenuti del commit"
 
-#: builtin/verify-commit.c:77 builtin/verify-tag.c:38
+#: builtin/verify-commit.c:69 builtin/verify-tag.c:37
 msgid "print raw gpg status output"
-msgstr ""
+msgstr "stampa l'output grezzo dello stato di GPG"
 
 #: builtin/verify-pack.c:55
 msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
-msgstr ""
+msgstr "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
 
 #: builtin/verify-pack.c:65
-#, fuzzy
 msgid "verbose"
 msgstr "dettagliato"
 
 #: builtin/verify-pack.c:67
 msgid "show statistics only"
-msgstr ""
+msgstr "visualizza solo le statistiche"
 
-#: builtin/verify-tag.c:19
+#: builtin/verify-tag.c:18
 msgid "git verify-tag [-v | --verbose] [--format=<format>] <tag>..."
-msgstr ""
+msgstr "git verify-tag [-v | --verbose] [--format=<formato>] <tag>..."
 
-#: builtin/verify-tag.c:37
+#: builtin/verify-tag.c:36
 msgid "print tag contents"
-msgstr ""
+msgstr "stampa i contenuti del tag"
 
-#: builtin/worktree.c:18
+#: builtin/worktree.c:17
 msgid "git worktree add [<options>] <path> [<commit-ish>]"
-msgstr ""
+msgstr "git worktree add [<opzioni>] <percorso> [<espressione commit>]"
 
-#: builtin/worktree.c:19
+#: builtin/worktree.c:18
 msgid "git worktree list [<options>]"
-msgstr ""
+msgstr "git worktree list [<opzioni>]"
 
-#: builtin/worktree.c:20
-#, fuzzy
+#: builtin/worktree.c:19
 msgid "git worktree lock [<options>] <path>"
-msgstr "git apply [opzioni] [<patch>...]"
+msgstr "git worktree lock [<opzioni>] <percorso>"
 
-#: builtin/worktree.c:21
+#: builtin/worktree.c:20
 msgid "git worktree move <worktree> <new-path>"
-msgstr ""
+msgstr "git worktree move <albero di lavoro> <nuovo percorso>"
 
-#: builtin/worktree.c:22
+#: builtin/worktree.c:21
 msgid "git worktree prune [<options>]"
-msgstr ""
+msgstr "git worktree prune [<opzioni>]"
 
-#: builtin/worktree.c:23
+#: builtin/worktree.c:22
 msgid "git worktree remove [<options>] <worktree>"
-msgstr ""
+msgstr "git worktree remove [<opzioni>] <albero di lavoro>"
 
-#: builtin/worktree.c:24
+#: builtin/worktree.c:23
 msgid "git worktree unlock <path>"
-msgstr ""
+msgstr "git worktree unlock <percorso>"
 
-#: builtin/worktree.c:61 builtin/worktree.c:888
-#, fuzzy, c-format
+#: builtin/worktree.c:60 builtin/worktree.c:891
+#, c-format
 msgid "failed to delete '%s'"
-msgstr "apertura di '%s' non riuscita"
+msgstr "eliminazione di '%s' non riuscita"
 
-#: builtin/worktree.c:80
+#: builtin/worktree.c:79
 #, c-format
 msgid "Removing worktrees/%s: not a valid directory"
-msgstr ""
+msgstr "Rimuovo worktrees/%s: non è una directory valida"
 
-#: builtin/worktree.c:86
+#: builtin/worktree.c:85
 #, c-format
 msgid "Removing worktrees/%s: gitdir file does not exist"
-msgstr ""
+msgstr "Rimuovo worktrees/%s: il file gitdir non esiste"
 
-#: builtin/worktree.c:91 builtin/worktree.c:100
+#: builtin/worktree.c:90 builtin/worktree.c:99
 #, c-format
 msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
-msgstr ""
+msgstr "Rimuovo worktrees/%s: impossibile leggere il file gitdir (%s)"
 
-#: builtin/worktree.c:110
+#: builtin/worktree.c:109
 #, c-format
 msgid ""
 "Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
 "%<PRIuMAX>)"
 msgstr ""
+"Rimuovo worktrees/%s: letti meno dati del previsto (attesi %<PRIuMAX>byte, "
+"%<PRIuMAX> letti)"
 
-#: builtin/worktree.c:118
+#: builtin/worktree.c:117
 #, c-format
 msgid "Removing worktrees/%s: invalid gitdir file"
-msgstr ""
+msgstr "Rimuovo worktrees/%s: file gitdir non valido"
 
-#: builtin/worktree.c:127
+#: builtin/worktree.c:126
 #, c-format
 msgid "Removing worktrees/%s: gitdir file points to non-existent location"
-msgstr ""
+msgstr "Rimuovo worktrees/%s: il file gitdir punta a un percorso non esistente"
 
-#: builtin/worktree.c:166
+#: builtin/worktree.c:165
 msgid "report pruned working trees"
-msgstr ""
+msgstr "segnala gli alberi di lavoro eliminati"
 
-#: builtin/worktree.c:168
+#: builtin/worktree.c:167
 msgid "expire working trees older than <time>"
-msgstr ""
+msgstr "fai scadere gli alberi di lavoro più vecchi di <tempo>"
 
-#: builtin/worktree.c:235
-#, fuzzy, c-format
+#: builtin/worktree.c:234
+#, c-format
 msgid "'%s' already exists"
-msgstr "%s esiste già"
+msgstr "'%s' esiste già"
 
-#: builtin/worktree.c:252
-#, fuzzy, c-format
+#: builtin/worktree.c:244
+#, c-format
 msgid "unable to re-add worktree '%s'"
-msgstr "impossibile leggere il tree (%s)"
+msgstr "impossibile aggiungere nuovamente l'albero di lavoro '%s'"
 
-#: builtin/worktree.c:257
+#: builtin/worktree.c:249
 #, c-format
 msgid ""
 "'%s' is a missing but locked worktree;\n"
 "use 'add -f -f' to override, or 'unlock' and 'prune' or 'remove' to clear"
 msgstr ""
+"'%s' è un albero di lavoro mancante ma bloccato;\n"
+"usa 'add -f -f' per eseguire l'override, o 'unlock' e 'prune' o 'remove' per "
+"rimuoverlo"
 
-#: builtin/worktree.c:259
+#: builtin/worktree.c:251
 #, c-format
 msgid ""
 "'%s' is a missing but already registered worktree;\n"
 "use 'add -f' to override, or 'prune' or 'remove' to clear"
 msgstr ""
+"'%s' è un albero di lavoro mancante ma già registrato;\n"
+"usa 'add -f' per eseguire l'override, o 'prune' o 'remove' per rimuoverlo"
 
-#: builtin/worktree.c:310
-#, fuzzy, c-format
+#: builtin/worktree.c:301
+#, c-format
 msgid "could not create directory of '%s'"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "impossibile creare la directory di '%s'"
 
-#: builtin/worktree.c:429 builtin/worktree.c:435
-#, fuzzy, c-format
+#: builtin/worktree.c:432 builtin/worktree.c:438
+#, c-format
 msgid "Preparing worktree (new branch '%s')"
-msgstr "Errore nella rimozione del branch '%s'"
+msgstr "Preparazione dell'albero di lavoro in corso (nuovo branch '%s')"
 
-#: builtin/worktree.c:431
+#: builtin/worktree.c:434
 #, c-format
 msgid "Preparing worktree (resetting branch '%s'; was at %s)"
 msgstr ""
+"Preparazione dell'albero di lavoro in corso (reimposto il branch '%s'; era a "
+"%s)"
 
-#: builtin/worktree.c:440
+#: builtin/worktree.c:443
 #, c-format
 msgid "Preparing worktree (checking out '%s')"
-msgstr ""
+msgstr "Preparazione dell'albero di lavoro in corso (checkout di '%s')"
 
-#: builtin/worktree.c:446
+#: builtin/worktree.c:449
 #, c-format
 msgid "Preparing worktree (detached HEAD %s)"
-msgstr ""
+msgstr "Preparazione dell'albero di lavoro in corso (HEAD scollegato %s)"
 
-#: builtin/worktree.c:487
+#: builtin/worktree.c:490
 msgid "checkout <branch> even if already checked out in other worktree"
 msgstr ""
+"esegui il checkout di <branch> anche se tale operazione è stata eseguita in "
+"un altro albero di lavoro"
 
-#: builtin/worktree.c:490
-#, fuzzy
+#: builtin/worktree.c:493
 msgid "create a new branch"
-msgstr "[nuovo branch]"
+msgstr "crea un nuovo branch"
 
-#: builtin/worktree.c:492
-#, fuzzy
+#: builtin/worktree.c:495
 msgid "create or reset a branch"
-msgstr "Elenca, crea o elimina branch"
+msgstr "crea o reimposta un branch"
 
-#: builtin/worktree.c:494
+#: builtin/worktree.c:497
 msgid "populate the new working tree"
-msgstr ""
+msgstr "popola il nuovo albero di lavoro"
 
-#: builtin/worktree.c:495
+#: builtin/worktree.c:498
 msgid "keep the new working tree locked"
-msgstr ""
+msgstr "mantieni bloccato il nuovo albero di lavoro"
 
-#: builtin/worktree.c:498
+#: builtin/worktree.c:501
 msgid "set up tracking mode (see git-branch(1))"
-msgstr ""
+msgstr "imposta la modalità tracking (vedi git-branch(1))"
 
-#: builtin/worktree.c:501
+#: builtin/worktree.c:504
 msgid "try to match the new branch name with a remote-tracking branch"
 msgstr ""
+"tenta di cercare una corrispondenza fra il nome del nuovo branch e un branch "
+"remoto da tracciare"
 
-#: builtin/worktree.c:509
-#, fuzzy
+#: builtin/worktree.c:512
 msgid "-b, -B, and --detach are mutually exclusive"
-msgstr "-A e -u sono reciprocamente incompatibili"
+msgstr "le opzioni -b, -B e --detach sono mutualmente esclusive"
 
-#: builtin/worktree.c:570
+#: builtin/worktree.c:573
 msgid "--[no-]track can only be used if a new branch is created"
 msgstr ""
+"l'opzione --[no-]track può essere usata solo se viene creato un nuovo branch"
 
-#: builtin/worktree.c:670
+#: builtin/worktree.c:673
 msgid "reason for locking"
-msgstr ""
+msgstr "motivo di blocco"
 
-#: builtin/worktree.c:682 builtin/worktree.c:715 builtin/worktree.c:789
-#: builtin/worktree.c:916
-#, fuzzy, c-format
+#: builtin/worktree.c:685 builtin/worktree.c:718 builtin/worktree.c:792
+#: builtin/worktree.c:919
+#, c-format
 msgid "'%s' is not a working tree"
-msgstr "'%s' non è un commit"
+msgstr "'%s' non è un albero di lavoro"
 
-#: builtin/worktree.c:684 builtin/worktree.c:717
+#: builtin/worktree.c:687 builtin/worktree.c:720
 msgid "The main working tree cannot be locked or unlocked"
-msgstr ""
+msgstr "Non è possibile bloccare o sbloccare l'albero di lavoro principale"
 
-#: builtin/worktree.c:689
+#: builtin/worktree.c:692
 #, c-format
 msgid "'%s' is already locked, reason: %s"
-msgstr ""
+msgstr "'%s' è già bloccato per questo motivo: %s"
 
-#: builtin/worktree.c:691
-#, fuzzy, c-format
+#: builtin/worktree.c:694
+#, c-format
 msgid "'%s' is already locked"
-msgstr "il tag '%s' esiste già"
+msgstr "'%s' è già bloccato"
 
-#: builtin/worktree.c:719
-#, fuzzy, c-format
+#: builtin/worktree.c:722
+#, c-format
 msgid "'%s' is not locked"
-msgstr "'%s' non è un commit"
+msgstr "'%s' non è bloccato"
 
-#: builtin/worktree.c:760
+#: builtin/worktree.c:763
 msgid "working trees containing submodules cannot be moved or removed"
 msgstr ""
+"gli alberi di lavoro contenenti sottomoduli non possono essere spostati o "
+"rimossi"
 
-#: builtin/worktree.c:768
+#: builtin/worktree.c:771
 msgid "force move even if worktree is dirty or locked"
-msgstr ""
+msgstr "forza lo spostamento anche se l'albero di lavoro è sporco o bloccato"
 
-#: builtin/worktree.c:791 builtin/worktree.c:918
+#: builtin/worktree.c:794 builtin/worktree.c:921
 #, c-format
 msgid "'%s' is a main working tree"
-msgstr ""
+msgstr "'%s' è un albero di lavoro principale"
 
-#: builtin/worktree.c:796
-#, fuzzy, c-format
+#: builtin/worktree.c:799
+#, c-format
 msgid "could not figure out destination name from '%s'"
-msgstr "Non è stato possibile leggere da '%s'"
+msgstr "impossibile determinare il nome destinazione da '%s'"
 
-#: builtin/worktree.c:802
-#, fuzzy, c-format
+#: builtin/worktree.c:805
+#, c-format
 msgid "target '%s' already exists"
-msgstr "il tag '%s' esiste già"
+msgstr "la destinazione '%s' esiste già"
 
-#: builtin/worktree.c:810
+#: builtin/worktree.c:813
 #, c-format
 msgid ""
 "cannot move a locked working tree, lock reason: %s\n"
 "use 'move -f -f' to override or unlock first"
 msgstr ""
+"impossibile spostare un albero di lavoro bloccato, motivazione blocco: %s\n"
+"usa 'move -f -f' per eseguirne l'override o sbloccalo prima di eseguire "
+"l'operazione"
 
-#: builtin/worktree.c:812
+#: builtin/worktree.c:815
 msgid ""
 "cannot move a locked working tree;\n"
 "use 'move -f -f' to override or unlock first"
 msgstr ""
+"impossibile spostare un albero di lavoro bloccato;\n"
+"usa 'move -f -f' per eseguirne l'override o sbloccalo prima di eseguire "
+"l'operazione"
 
-#: builtin/worktree.c:815
+#: builtin/worktree.c:818
 #, c-format
 msgid "validation failed, cannot move working tree: %s"
-msgstr ""
+msgstr "validazione non riuscita, impossibile spostare l'albero di lavoro: %s"
 
-#: builtin/worktree.c:820
-#, fuzzy, c-format
+#: builtin/worktree.c:823
+#, c-format
 msgid "failed to move '%s' to '%s'"
-msgstr "impossibile spostare %s in %s"
+msgstr "spostamento di '%s' in '%s' non riuscito"
 
-#: builtin/worktree.c:868
-#, fuzzy, c-format
+#: builtin/worktree.c:871
+#, c-format
 msgid "failed to run 'git status' on '%s'"
-msgstr "stat di '%s' non riuscito"
+msgstr "esecuzione di 'git status' su '%s' non riuscita"
 
-#: builtin/worktree.c:872
+#: builtin/worktree.c:875
 #, c-format
-msgid "'%s' is dirty, use --force to delete it"
+msgid "'%s' contains modified or untracked files, use --force to delete it"
 msgstr ""
+"'%s' contiene file modificati o non tracciati, usa --force per eliminarlo"
 
-#: builtin/worktree.c:877
-#, fuzzy, c-format
+#: builtin/worktree.c:880
+#, c-format
 msgid "failed to run 'git status' on '%s', code %d"
-msgstr "stat di '%s' non riuscito"
+msgstr "esecuzione di 'git status' su '%s' non riuscita, codice %d"
 
-#: builtin/worktree.c:900
+#: builtin/worktree.c:903
 msgid "force removal even if worktree is dirty or locked"
-msgstr ""
+msgstr "forza la rimozione anche se l'albero di lavoro è sporco o bloccato"
 
-#: builtin/worktree.c:923
+#: builtin/worktree.c:926
 #, c-format
 msgid ""
 "cannot remove a locked working tree, lock reason: %s\n"
 "use 'remove -f -f' to override or unlock first"
 msgstr ""
+"impossibile rimuovere un albero di lavoro bloccato, motivazione blocco: %s\n"
+"usa 'remove -f -f' per eseguirne l'override o sbloccalo prima di eseguire "
+"l'operazione"
 
-#: builtin/worktree.c:925
+#: builtin/worktree.c:928
 msgid ""
 "cannot remove a locked working tree;\n"
 "use 'remove -f -f' to override or unlock first"
 msgstr ""
+"impossibile rimuovere un albero di lavoro bloccato;\n"
+"usa 'remove -f -f' per eseguirne l'override o sbloccalo prima di eseguire "
+"l'operazione"
 
-#: builtin/worktree.c:928
+#: builtin/worktree.c:931
 #, c-format
 msgid "validation failed, cannot remove working tree: %s"
-msgstr ""
+msgstr "validazione non riuscita, impossibile rimuovere l'albero di lavoro: %s"
 
 #: builtin/write-tree.c:15
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
-msgstr ""
+msgstr "git write-tree [--missing-ok] [--prefix=<prefisso>/]"
 
 #: builtin/write-tree.c:28
 msgid "<prefix>/"
-msgstr ""
+msgstr "<prefisso>/"
 
 #: builtin/write-tree.c:29
 msgid "write tree object for a subdirectory <prefix>"
-msgstr ""
+msgstr "scrivi l'oggetto albero per una sottodirectory <prefisso>"
 
 #: builtin/write-tree.c:31
 msgid "only useful for debugging"
-msgstr ""
+msgstr "utile solo per il debug"
+
+#: fast-import.c:3125
+#, c-format
+msgid "Expected 'mark' command, got %s"
+msgstr "Atteso comando 'mark', ricevuto %s"
+
+#: fast-import.c:3130
+#, c-format
+msgid "Expected 'to' command, got %s"
+msgstr "Atteso comando 'to', ricevuto %s"
+
+#: fast-import.c:3254
+#, c-format
+msgid "feature '%s' forbidden in input without --allow-unsafe-features"
+msgstr "funzionalità '%s' vietata nell'input senza --allow-unsafe-features"
 
 #: credential-cache--daemon.c:223
 #, c-format
@@ -19448,20 +22476,32 @@ msgid ""
 "\n"
 "\tchmod 0700 %s"
 msgstr ""
+"I permessi sulla directory del socket sono troppo laschi; altri\n"
+"utenti potrebbero essere in grado di leggere le credenziali nella\n"
+"cache. Valuta di eseguire:\n"
+"\n"
+"\tchmod 0700 %s"
 
 #: credential-cache--daemon.c:272
 msgid "print debugging messages to stderr"
-msgstr ""
+msgstr "stampa i messaggi di debug sullo standard error"
 
 #: t/helper/test-reach.c:152
-#, fuzzy, c-format
+#, c-format
 msgid "commit %s is not marked reachable"
-msgstr "il path '%s' non ha la nostra versione"
+msgstr "il commit %s non è contrassegnato come raggiungibile"
 
 #: t/helper/test-reach.c:162
-#, fuzzy
 msgid "too many commits marked reachable"
-msgstr "troppi commit da scrivere nel grafo"
+msgstr "troppi commit contrassegnati come raggiungibili"
+
+#: t/helper/test-serve-v2.c:7
+msgid "test-tool serve-v2 [<options>]"
+msgstr "test-tool serve-v2 [<opzioni>]"
+
+#: t/helper/test-serve-v2.c:19
+msgid "exit immediately after advertising capabilities"
+msgstr "esci subito dopo aver annunciato le funzionalità"
 
 #: git.c:27
 msgid ""
@@ -19472,213 +22512,392 @@ msgid ""
 "           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
 "           <command> [<args>]"
 msgstr ""
+"git [--version] [--help] [-C <percorso>] [-c <nome>=<valore>]\n"
+"           [--exec-path[=<percorso>]] [--html-path] [--man-path] [--info-"
+"path]\n"
+"           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--"
+"bare]\n"
+"           [--git-dir=<percorso>] [--work-tree=<percorso>] [--"
+"namespace=<nome>]\n"
+"           <comando> [<argomenti>]"
 
 #: git.c:34
 msgid ""
 "'git help -a' and 'git help -g' list available subcommands and some\n"
 "concept guides. See 'git help <command>' or 'git help <concept>'\n"
-"to read about a specific subcommand or concept."
+"to read about a specific subcommand or concept.\n"
+"See 'git help git' for an overview of the system."
 msgstr ""
+"'git help -a' e 'git help -g' elencano i sottocomandi disponibili e\n"
+"alcune guide concettuali. Vedi 'git help <comando>' o 'git help <concetto>'\n"
+"per leggere ulteriori informazioni su un sottocomando o su un concetto\n"
+"specifici.\n"
+"Vedi 'git help git' per una panoramica del sistema."
 
-#: git.c:174
+#: git.c:186
 #, c-format
 msgid "no directory given for --git-dir\n"
-msgstr ""
+msgstr "nessuna directory specificata per --git-dir\n"
 
-#: git.c:188
+#: git.c:200
 #, c-format
 msgid "no namespace given for --namespace\n"
-msgstr ""
+msgstr "nessuno spazio dei nomi specificato per --namespace\n"
 
-#: git.c:202
+#: git.c:214
 #, c-format
 msgid "no directory given for --work-tree\n"
-msgstr ""
+msgstr "nessuna directory specificata per --work-tree\n"
 
-#: git.c:216
+#: git.c:228
 #, c-format
 msgid "no prefix given for --super-prefix\n"
-msgstr ""
+msgstr "nessun prefisso specificato per --super-prefix\n"
 
-#: git.c:238
+#: git.c:250
 #, c-format
 msgid "-c expects a configuration string\n"
-msgstr ""
+msgstr "-c: attesa stringa di configurazione\n"
 
-#: git.c:276
+#: git.c:288
 #, c-format
 msgid "no directory given for -C\n"
-msgstr ""
+msgstr "nessuna directory specificata per -C\n"
 
-#: git.c:301
-#, fuzzy, c-format
+#: git.c:314
+#, c-format
 msgid "unknown option: %s\n"
-msgstr "sconosciuto:    %s"
+msgstr "opzione sconosciuta: %s\n"
 
-#: git.c:342
+#: git.c:360
 #, c-format
 msgid "while expanding alias '%s': '%s'"
-msgstr ""
+msgstr "durante l'espansione dell'alias '%s': '%s'"
 
-#: git.c:351
+#: git.c:369
 #, c-format
 msgid ""
 "alias '%s' changes environment variables.\n"
 "You can use '!git' in the alias to do this"
 msgstr ""
+"l'alias '%s' modifica le variabili d'ambiente.\n"
+"Puoi usare '!git' nell'alias per farlo"
 
-#: git.c:359
+#: git.c:376
 #, c-format
 msgid "empty alias for %s"
-msgstr ""
+msgstr "alias vuoto per %s"
 
-#: git.c:362
+#: git.c:379
 #, c-format
 msgid "recursive alias: %s"
-msgstr ""
+msgstr "alias ricorsivo: %s"
 
-#: git.c:437
+#: git.c:459
 msgid "write failure on standard output"
-msgstr ""
+msgstr "errore di scrittura sullo standard output"
 
-#: git.c:439
+#: git.c:461
 msgid "unknown write failure on standard output"
-msgstr ""
+msgstr "errore di scrittura sconosciuto sullo standard output"
 
-#: git.c:441
-#, fuzzy
+#: git.c:463
 msgid "close failed on standard output"
-msgstr "riga configurazione %d errata nello standard input"
+msgstr "chiusura dello standard output non riuscita"
 
-#: git.c:720
+#: git.c:793
 #, c-format
 msgid "alias loop detected: expansion of '%s' does not terminate:%s"
-msgstr ""
+msgstr "rilevato ciclo alias: l'espansione di '%s' non termina:%s"
 
-#: git.c:770
-#, fuzzy, c-format
+#: git.c:843
+#, c-format
 msgid "cannot handle %s as a builtin"
-msgstr "impossibile usare %s come file di esclusione"
+msgstr "impossibile gestire %s come comando incorporato"
 
-#: git.c:783
-#, fuzzy, c-format
+#: git.c:856
+#, c-format
 msgid ""
 "usage: %s\n"
 "\n"
-msgstr "uso: %s"
+msgstr ""
+"uso: %s\n"
+"\n"
 
-#: git.c:803
+#: git.c:876
 #, c-format
 msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
-msgstr ""
+msgstr "espansione dell'alias '%s' non riuscita; '%s' non è un comando Git\n"
 
-#: git.c:815
-#, fuzzy, c-format
+#: git.c:888
+#, c-format
 msgid "failed to run command '%s': %s\n"
-msgstr "esecuzione di '%s' non riuscita: %s"
+msgstr "esecuzione del comando '%s' non riuscita: %s\n"
 
 #: http.c:378
 #, c-format
 msgid "negative value for http.postbuffer; defaulting to %d"
-msgstr ""
+msgstr "valore negativo per http.postbuffer; uso l'impostazione predefinita %d"
 
 #: http.c:399
 msgid "Delegation control is not supported with cURL < 7.22.0"
-msgstr ""
+msgstr "Il controllo delegazione non è supportato con cURL < 7.22.0"
 
 #: http.c:408
 msgid "Public key pinning not supported with cURL < 7.44.0"
-msgstr ""
+msgstr "Il pinning delle chiavi pubbliche non è supportato con cURL < 7.44.0"
 
 #: http.c:876
 msgid "CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0"
-msgstr ""
+msgstr "CURLSSLOPT_NO_REVOKE non è supportato con cURL < 7.44.0"
 
 #: http.c:949
 msgid "Protocol restrictions not supported with cURL < 7.19.4"
-msgstr ""
+msgstr "Le restrizioni protocollo non sono supportate con cURL < 7.19.4"
 
-#: http.c:1085
+#: http.c:1086
 #, c-format
 msgid "Unsupported SSL backend '%s'. Supported SSL backends:"
-msgstr ""
+msgstr "Backend SSL '%s' non supportato. Backend SSL supportati:"
 
-#: http.c:1092
+#: http.c:1093
 #, c-format
 msgid "Could not set SSL backend to '%s': cURL was built without SSL backends"
 msgstr ""
+"Impossibile impostare il backend SSL a '%s': cURL è stato compilato senza "
+"backend SSL"
 
-#: http.c:1096
-#, fuzzy, c-format
+#: http.c:1097
+#, c-format
 msgid "Could not set SSL backend to '%s': already set"
-msgstr "Non è stato possibile rimuovere il branch %s"
+msgstr "Impossibile impostare il backend SSL a '%s': già impostato"
 
-#: http.c:1959
+#: http.c:1966
 #, c-format
 msgid ""
 "unable to update url base from redirection:\n"
 "  asked for: %s\n"
 "   redirect: %s"
 msgstr ""
+"impossibile aggiornare l'URL di base dalla redirezione:\n"
+"  richiesta: %s\n"
+"   redirect: %s"
+
+#: remote-curl.c:166
+#, c-format
+msgid "invalid quoting in push-option value: '%s'"
+msgstr "virgolette non valide nel valore push-option: '%s'"
+
+#: remote-curl.c:263
+#, c-format
+msgid "%sinfo/refs not valid: is this a git repository?"
+msgstr "%sinfo/refs non valido: è un repository Git?"
+
+#: remote-curl.c:364
+msgid "invalid server response; expected service, got flush packet"
+msgstr ""
+"risposta del server non valida; atteso servizio, ricevuto pacchetto flush"
+
+#: remote-curl.c:395
+#, c-format
+msgid "invalid server response; got '%s'"
+msgstr "risposta del server non valida; ricevuto '%s'"
 
 #: remote-curl.c:455
 #, c-format
+msgid "repository '%s' not found"
+msgstr "repository '%s' non trovato"
+
+#: remote-curl.c:459
+#, c-format
+msgid "Authentication failed for '%s'"
+msgstr "Autenticazione non riuscita per '%s'"
+
+#: remote-curl.c:463
+#, c-format
+msgid "unable to access '%s': %s"
+msgstr "impossibile accedere a '%s': %s"
+
+#: remote-curl.c:469
+#, c-format
 msgid "redirecting to %s"
+msgstr "redirezione a %s in corso"
+
+#: remote-curl.c:593
+msgid "shouldn't have EOF when not gentle on EOF"
 msgstr ""
+"non dovrebbe esserci un pacchetto fine file se non si è accomodanti con "
+"questi ultimi"
 
-#: parse-options.h:154
-msgid "expiry-date"
+#: remote-curl.c:673
+msgid "unable to rewind rpc post data - try increasing http.postBuffer"
 msgstr ""
+"impossibile ritornare a un punto precedente dei dati POST RPC - prova ad "
+"aumentare il valore di http.postBuffer"
 
-#: parse-options.h:169
-msgid "no-op (backward compatibility)"
+#: remote-curl.c:733
+#, c-format
+msgid "RPC failed; %s"
+msgstr "RPC non riuscita; %s"
+
+#: remote-curl.c:773
+msgid "cannot handle pushes this big"
+msgstr "impossibile gestire push così grandi"
+
+#: remote-curl.c:888
+#, c-format
+msgid "cannot deflate request; zlib deflate error %d"
+msgstr ""
+"impossibile eseguire il deflate della richiesta; errore deflate zlib %d"
+
+#: remote-curl.c:892
+#, c-format
+msgid "cannot deflate request; zlib end error %d"
+msgstr "impossibile eseguire il deflate della richiesta; errore fine zlib %d"
+
+#: remote-curl.c:1023
+msgid "dumb http transport does not support shallow capabilities"
+msgstr "il trasporto http stupido non supporta le funzionalità shallow"
+
+#: remote-curl.c:1038
+msgid "fetch failed."
+msgstr "recupero non riuscito."
+
+#: remote-curl.c:1086
+msgid "cannot fetch by sha1 over smart http"
 msgstr ""
+"impossibile recuperare i dati in base allo SHA1 con il trasporto HTTP "
+"intelligente"
+
+#: remote-curl.c:1130 remote-curl.c:1136
+#, c-format
+msgid "protocol error: expected sha/ref, got '%s'"
+msgstr "errore protocollo: atteso SHA/riferimento, ricevuto '%s'"
+
+#: remote-curl.c:1148 remote-curl.c:1263
+#, c-format
+msgid "http transport does not support %s"
+msgstr "il trasporto HTTP non supporta %s"
+
+#: remote-curl.c:1184
+msgid "git-http-push failed"
+msgstr "git-http-push non riuscito"
+
+#: remote-curl.c:1369
+msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
+msgstr "remote-curl: uso: git remote-curl <remoto> [<URL>]"
+
+#: remote-curl.c:1401
+msgid "remote-curl: error reading command stream from git"
+msgstr "remote-curl: errore durante la lettura del flusso dei comandi da Git"
+
+#: remote-curl.c:1408
+msgid "remote-curl: fetch attempted without a local repo"
+msgstr "remote-curl: tentato un fetch senza un repository locale"
 
-#: parse-options.h:259
+#: remote-curl.c:1448
+#, c-format
+msgid "remote-curl: unknown command '%s' from git"
+msgstr "remote-curl: ricevuto comando sconosciuto '%s' da Git"
+
+#: list-objects-filter-options.h:85
+msgid "args"
+msgstr "argomenti"
+
+#: list-objects-filter-options.h:86
+msgid "object filtering"
+msgstr "filtraggio oggetti"
+
+#: parse-options.h:183
+msgid "expiry-date"
+msgstr "data-scadenza"
+
+#: parse-options.h:197
+msgid "no-op (backward compatibility)"
+msgstr "no-op (retrocompatibilità)"
+
+#: parse-options.h:309
 msgid "be more verbose"
-msgstr "più dettagliato"
+msgstr "visualizza più dettagli"
 
-#: parse-options.h:261
+#: parse-options.h:311
 msgid "be more quiet"
-msgstr "meno dettagliato"
+msgstr "visualizza meno dettagli"
 
-#: parse-options.h:267
+#: parse-options.h:317
 msgid "use <n> digits to display SHA-1s"
-msgstr "usare <n> cifre per mostrare gli hash SHA-1"
+msgstr "usa <n> cifre per mostrare gli hash SHA-1"
+
+#: parse-options.h:336
+msgid "how to strip spaces and #comments from message"
+msgstr "come rimuovere gli spazi e i #commenti dal messaggio"
+
+#: parse-options.h:337
+msgid "read pathspec from file"
+msgstr "leggi gli specificatori percorso da un file"
+
+#: parse-options.h:338
+msgid ""
+"with --pathspec-from-file, pathspec elements are separated with NUL character"
+msgstr ""
+"con --pathspec-from-file gli elementi specificatori percorso sono separati "
+"da un carattere NUL"
+
+#: ref-filter.h:101
+msgid "key"
+msgstr "chiave"
+
+#: ref-filter.h:101
+msgid "field name to sort on"
+msgstr "nome campo in base a cui ordinare"
+
+#: rerere.h:44
+msgid "update the index with reused conflict resolution if possible"
+msgstr ""
+"aggiorna l'indice con la tecnica di risoluzione conflitti riutilizzata se "
+"possibile"
+
+#: wt-status.h:67
+msgid "HEAD detached at "
+msgstr "HEAD scollegato su "
+
+#: wt-status.h:68
+msgid "HEAD detached from "
+msgstr "HEAD scollegato da "
 
 #: command-list.h:50
 msgid "Add file contents to the index"
-msgstr "Aggiunge il contenuto del file a index"
+msgstr "Aggiunge i contenuti del file all'indice"
 
 #: command-list.h:51
 msgid "Apply a series of patches from a mailbox"
-msgstr ""
+msgstr "Applica una serie di patch da una casella di posta"
 
 #: command-list.h:52
 msgid "Annotate file lines with commit information"
-msgstr ""
+msgstr "Annota le righe dei file con le informazioni sui commit"
 
 #: command-list.h:53
 msgid "Apply a patch to files and/or to the index"
-msgstr ""
+msgstr "Applica una patch ai file e/o all'indice"
 
 #: command-list.h:54
-#, fuzzy
 msgid "Import a GNU Arch repository into Git"
-msgstr "Clona un repository in una nuova directory"
+msgstr "Importa un repository GNU Arch in Git"
 
 #: command-list.h:55
 msgid "Create an archive of files from a named tree"
-msgstr ""
+msgstr "Crea un archivio di file da un albero con nome"
 
 #: command-list.h:56
-#, fuzzy
 msgid "Use binary search to find the commit that introduced a bug"
-msgstr "Cerca mediante ricerca binaria la modifica che ha introdotto un bug"
+msgstr "Usa la ricerca binaria per trovare il commit che ha introdotto un bug"
 
 #: command-list.h:57
 msgid "Show what revision and author last modified each line of a file"
 msgstr ""
+"Visualizza quali revisione e autore hanno modificato ogni singola riga di un "
+"file per ultimi"
 
 #: command-list.h:58
 msgid "List, create, or delete branches"
@@ -19686,51 +22905,54 @@ msgstr "Elenca, crea o elimina branch"
 
 #: command-list.h:59
 msgid "Move objects and refs by archive"
-msgstr ""
+msgstr "Sposta oggetti e riferimenti in base a un archivio"
 
 #: command-list.h:60
 msgid "Provide content or type and size information for repository objects"
 msgstr ""
+"Fornisci informazioni sul contenuto o sul tipo e sulle dimensioni per gli "
+"oggetti di un repository"
 
 #: command-list.h:61
 msgid "Display gitattributes information"
-msgstr ""
+msgstr "Visualizza le informazioni sugli attributi Git"
 
 #: command-list.h:62
 msgid "Debug gitignore / exclude files"
-msgstr ""
+msgstr "Esegui il debug dei file gitignore/escludi file"
 
 #: command-list.h:63
 msgid "Show canonical names and email addresses of contacts"
-msgstr ""
+msgstr "Visualizza i nomi canonici e gli indirizzi e-mail dei contatti"
 
 #: command-list.h:64
 msgid "Switch branches or restore working tree files"
 msgstr ""
+"Passa da un branch a un altro o ripristina i file nell'albero di lavoro"
 
 #: command-list.h:65
 msgid "Copy files from the index to the working tree"
-msgstr ""
+msgstr "Copia dei file dall'indice all'albero di lavoro"
 
 #: command-list.h:66
 msgid "Ensures that a reference name is well formed"
-msgstr ""
+msgstr "Si assicura che un nome riferimento sia ben formato"
 
 #: command-list.h:67
 msgid "Find commits yet to be applied to upstream"
-msgstr ""
+msgstr "Trova commit che devono essere ancora applicati upstream"
 
 #: command-list.h:68
 msgid "Apply the changes introduced by some existing commits"
-msgstr ""
+msgstr "Applica le modifiche introdotte da alcuni commit esistenti"
 
 #: command-list.h:69
 msgid "Graphical alternative to git-commit"
-msgstr ""
+msgstr "Alternativa grafica a git-commit"
 
 #: command-list.h:70
 msgid "Remove untracked files from the working tree"
-msgstr ""
+msgstr "Rimuove i file non tracciati dall'albero di lavoro"
 
 #: command-list.h:71
 msgid "Clone a repository into a new directory"
@@ -19738,209 +22960,209 @@ msgstr "Clona un repository in una nuova directory"
 
 #: command-list.h:72
 msgid "Display data in columns"
-msgstr ""
+msgstr "Visualizza i dati in colonne"
 
 #: command-list.h:73
 msgid "Record changes to the repository"
-msgstr "Registra modifiche nel repository"
+msgstr "Registra modifiche al repository"
 
 #: command-list.h:74
 msgid "Write and verify Git commit-graph files"
-msgstr ""
+msgstr "Scrive e verifica i file grafo dei commit di Git"
 
 #: command-list.h:75
-#, fuzzy
 msgid "Create a new commit object"
-msgstr "scrittura dell'oggetto di commit non riuscita"
+msgstr "Crea un nuovo oggetto commit"
 
 #: command-list.h:76
 msgid "Get and set repository or global options"
-msgstr ""
+msgstr "Ottiene e imposta le opzioni a livello di repository o globali"
 
 #: command-list.h:77
 msgid "Count unpacked number of objects and their disk consumption"
 msgstr ""
+"Conta il numero di oggetti non in un pack e la loro occupazione di spazio su "
+"disco"
 
 #: command-list.h:78
 msgid "Retrieve and store user credentials"
-msgstr ""
+msgstr "Recupera e salva credenziali utente"
 
 #: command-list.h:79
 msgid "Helper to temporarily store passwords in memory"
-msgstr ""
+msgstr "Helper per salvare temporaneamente password in memoria"
 
 #: command-list.h:80
 msgid "Helper to store credentials on disk"
-msgstr ""
+msgstr "Helper per salvare credenziali su disco"
 
 #: command-list.h:81
 msgid "Export a single commit to a CVS checkout"
-msgstr ""
+msgstr "Esporta un singolo commit in un checkout CVS"
 
 #: command-list.h:82
 msgid "Salvage your data out of another SCM people love to hate"
 msgstr ""
+"Recupera i dati da un sistema di controllo di versione che le persone "
+"adorano odiare"
 
 #: command-list.h:83
 msgid "A CVS server emulator for Git"
-msgstr ""
+msgstr "Un emulatore di server CVS per Git"
 
 #: command-list.h:84
 msgid "A really simple server for Git repositories"
-msgstr ""
+msgstr "Un server veramente semplice per repository Git"
 
 #: command-list.h:85
 msgid "Give an object a human readable name based on an available ref"
 msgstr ""
+"Attribuisce un nome leggibile a un oggetto basandosi su un riferimento "
+"disponibile"
 
 #: command-list.h:86
 msgid "Show changes between commits, commit and working tree, etc"
 msgstr ""
+"Visualizza le modifiche fra commit, un commit e l'albero di lavoro, ecc."
 
 #: command-list.h:87
-#, fuzzy
 msgid "Compares files in the working tree and the index"
-msgstr "git %s: lettura di index non riuscita"
+msgstr "Confronta file nell'albero di lavoro e nell'indice"
 
 #: command-list.h:88
 msgid "Compare a tree to the working tree or index"
-msgstr ""
+msgstr "Confronta un albero con l'albero di lavoro o l'indice"
 
 #: command-list.h:89
 msgid "Compares the content and mode of blobs found via two tree objects"
 msgstr ""
+"Confronta il contenuto e i mode dei blob trovati tramite due oggetti albero"
 
 #: command-list.h:90
 msgid "Show changes using common diff tools"
 msgstr ""
+"Visualizza le modifiche usando tool comuni per la visualizzazione dei diff"
 
 #: command-list.h:91
 msgid "Git data exporter"
-msgstr ""
+msgstr "Esportatore di dati Git"
 
 #: command-list.h:92
 msgid "Backend for fast Git data importers"
-msgstr ""
+msgstr "Backend per importatori di dati Git veloci"
 
 #: command-list.h:93
 msgid "Download objects and refs from another repository"
-msgstr "Scarica oggetti e ref da un altro repository"
+msgstr "Scarica oggetti e riferimenti da un altro repository"
 
 #: command-list.h:94
-#, fuzzy
 msgid "Receive missing objects from another repository"
-msgstr "Scarica oggetti e ref da un altro repository"
+msgstr "Riceve oggetti mancanti da un altro repository"
 
 #: command-list.h:95
-#, fuzzy
 msgid "Rewrite branches"
-msgstr "  Branch remoto:%s"
+msgstr "Riscrive branch"
 
 #: command-list.h:96
-#, fuzzy
 msgid "Produce a merge commit message"
-msgstr "non è stato possibile leggere il messaggio di commit: %s"
+msgstr "Genera un messaggio di commit del merge"
 
 #: command-list.h:97
 msgid "Output information on each ref"
-msgstr ""
+msgstr "Visualizza in output le informazioni su ogni riferimento"
 
 #: command-list.h:98
 msgid "Prepare patches for e-mail submission"
-msgstr ""
+msgstr "Prepara patch per il loro invio tramite e-mail"
 
 #: command-list.h:99
 msgid "Verifies the connectivity and validity of the objects in the database"
-msgstr ""
+msgstr "Verifica la connessione e la validità degli oggetti nel database"
 
 #: command-list.h:100
 msgid "Cleanup unnecessary files and optimize the local repository"
-msgstr ""
+msgstr "Ripulisce file non necessari e ottimizza il repository locale"
 
 #: command-list.h:101
 msgid "Extract commit ID from an archive created using git-archive"
-msgstr ""
+msgstr "Estrae l'ID del commit da un archivio creato usando git-archive"
 
 #: command-list.h:102
 msgid "Print lines matching a pattern"
-msgstr "Stampa le righe corrispondenti ad un modello"
+msgstr "Stampa le righe corrispondenti a un'espressione regolare"
 
 #: command-list.h:103
 msgid "A portable graphical interface to Git"
-msgstr ""
+msgstr "Un'interfaccia grafica portabile per Git"
 
 #: command-list.h:104
 msgid "Compute object ID and optionally creates a blob from a file"
-msgstr ""
+msgstr "Calcola l'ID oggetto e crea facoltativamente un blob da un file"
 
 #: command-list.h:105
 msgid "Display help information about Git"
-msgstr ""
+msgstr "Visualizza una guida a Git"
 
 #: command-list.h:106
 msgid "Server side implementation of Git over HTTP"
-msgstr ""
+msgstr "Implementazione lato server di Git su HTTP"
 
 #: command-list.h:107
-#, fuzzy
 msgid "Download from a remote Git repository via HTTP"
-msgstr "Scarica oggetti e ref da un altro repository"
+msgstr "Scarica dati da un repository Git remoto tramite HTTP"
 
 #: command-list.h:108
-#, fuzzy
 msgid "Push objects over HTTP/DAV to another repository"
-msgstr "Scarica oggetti e ref da un altro repository"
+msgstr "Esegue il push di oggetti su un altro repository tramite HTTP/DAV"
 
 #: command-list.h:109
 msgid "Send a collection of patches from stdin to an IMAP folder"
-msgstr ""
+msgstr "Invia un insieme di patch dallo standard input a una cartella IMAP"
 
 #: command-list.h:110
 msgid "Build pack index file for an existing packed archive"
-msgstr ""
+msgstr "Genera il file indice pack per un archivio esistente sottoposto a pack"
 
 #: command-list.h:111
-#, fuzzy
 msgid "Create an empty Git repository or reinitialize an existing one"
-msgstr "Crea un repository git vuoto o reinizializza uno esistente"
+msgstr "Crea un repository Git vuoto o ne reinizializza uno esistente"
 
 #: command-list.h:112
 msgid "Instantly browse your working repository in gitweb"
-msgstr ""
+msgstr "Sfoglia istantaneamente il tuo repository di lavoro su gitweb"
 
 #: command-list.h:113
-msgid "add or parse structured information in commit messages"
-msgstr ""
+msgid "Add or parse structured information in commit messages"
+msgstr "Aggiunge o analizza informazioni strutturate nei messaggi di commit"
 
 #: command-list.h:114
-#, fuzzy
 msgid "The Git repository browser"
-msgstr "%s%s repository Git in %s%s\n"
+msgstr "Il browser per i repository Git"
 
 #: command-list.h:115
 msgid "Show commit logs"
-msgstr "Mostra log del commit"
+msgstr "Visualizza i log dei commit"
 
 #: command-list.h:116
 msgid "Show information about files in the index and the working tree"
-msgstr ""
+msgstr "Visualizza informazioni sui file nell'indice e nell'albero di lavoro"
 
 #: command-list.h:117
-#, fuzzy
 msgid "List references in a remote repository"
-msgstr "%s reset non è consentito in un repository spoglio"
+msgstr "Elenca i riferimenti in un repository remoto"
 
 #: command-list.h:118
 msgid "List the contents of a tree object"
-msgstr ""
+msgstr "Elenca i contenuti di un oggetto albero"
 
 #: command-list.h:119
 msgid "Extracts patch and authorship from a single e-mail message"
 msgstr ""
+"Estrae la patch e le informazioni sull'autore da un singolo messaggio e-mail"
 
 #: command-list.h:120
 msgid "Simple UNIX mbox splitter program"
-msgstr ""
+msgstr "Un semplice programma per suddividere i file UNIX mbox"
 
 #: command-list.h:121
 msgid "Join two or more development histories together"
@@ -19948,379 +23170,375 @@ msgstr "Unisce due o più cronologie di sviluppo"
 
 #: command-list.h:122
 msgid "Find as good common ancestors as possible for a merge"
-msgstr ""
+msgstr "Trova il maggior numero possibile di antenati comuni per un merge"
 
 #: command-list.h:123
 msgid "Run a three-way file merge"
-msgstr ""
+msgstr "Esegue un merge a tre vie su file"
 
 #: command-list.h:124
 msgid "Run a merge for files needing merging"
-msgstr ""
+msgstr "Esegue un merge per i file che lo richiedono"
 
 #: command-list.h:125
 msgid "The standard helper program to use with git-merge-index"
-msgstr ""
+msgstr "Il programma helper standard da usare con git-merge-index"
 
 #: command-list.h:126
 msgid "Run merge conflict resolution tools to resolve merge conflicts"
 msgstr ""
+"Esegue gli strumenti di risoluzione conflitti di merge per risolvere i "
+"conflitti di merge"
 
 #: command-list.h:127
 msgid "Show three-way merge without touching index"
-msgstr ""
+msgstr "Visualizza un merge a tre vie senza modificare l'indice"
 
 #: command-list.h:128
 msgid "Write and verify multi-pack-indexes"
-msgstr ""
+msgstr "Scrive e verifica indici multi-pack"
 
 #: command-list.h:129
 msgid "Creates a tag object"
-msgstr ""
+msgstr "Crea un oggetto tag"
 
 #: command-list.h:130
 msgid "Build a tree-object from ls-tree formatted text"
-msgstr ""
+msgstr "Genera un oggetto albero da testo in formato ls-tree"
 
 #: command-list.h:131
 msgid "Move or rename a file, a directory, or a symlink"
-msgstr "Sposta o rinomina un file, una directory o un link simbolico"
+msgstr "Sposta o rinomina un file, una directory o un collegamento simbolico"
 
 #: command-list.h:132
 msgid "Find symbolic names for given revs"
-msgstr ""
+msgstr "Trova i nomi simbolici per le revisioni date"
 
 #: command-list.h:133
 msgid "Add or inspect object notes"
-msgstr ""
+msgstr "Aggiunge o esamina le note agli oggetti"
 
 #: command-list.h:134
 msgid "Import from and submit to Perforce repositories"
-msgstr ""
+msgstr "Importa dati da, o invia dati a, repository Perforce"
 
 #: command-list.h:135
 msgid "Create a packed archive of objects"
-msgstr ""
+msgstr "Crea un archivio di oggetti sottoposto a pack"
 
 #: command-list.h:136
 msgid "Find redundant pack files"
-msgstr ""
+msgstr "Trova file pack ridondanti"
 
 #: command-list.h:137
 msgid "Pack heads and tags for efficient repository access"
-msgstr ""
+msgstr "Esegue il pack di head e tag per un accesso efficiente al repository"
 
 #: command-list.h:138
 msgid "Routines to help parsing remote repository access parameters"
 msgstr ""
+"Routine che aiutano ad analizzare i parametri di accesso ai repository remoti"
 
 #: command-list.h:139
 msgid "Compute unique ID for a patch"
-msgstr ""
+msgstr "Calcola l'ID univoco per una patch"
 
 #: command-list.h:140
 msgid "Prune all unreachable objects from the object database"
-msgstr ""
+msgstr "Elimina tutti gli oggetti non raggiungibili dal database oggetti"
 
 #: command-list.h:141
 msgid "Remove extra objects that are already in pack files"
-msgstr ""
+msgstr "Rimuove gli oggetti aggiuntivi già presenti nei file pack"
 
 #: command-list.h:142
-#, fuzzy
 msgid "Fetch from and integrate with another repository or a local branch"
-msgstr "Combina fetche + merge da un altro repository o un branch locale"
+msgstr ""
+"Esegue il fetch e l'integrazione con un altro repository o un branch locale"
 
 #: command-list.h:143
 msgid "Update remote refs along with associated objects"
-msgstr "Aggiorna i ref remoti insieme agli oggetti associati"
+msgstr "Aggiorna i riferimenti remoti insieme agli oggetti associati"
 
 #: command-list.h:144
-#, fuzzy
 msgid "Applies a quilt patchset onto the current branch"
-msgstr "Nessun upstream di default definito per il branch corrente."
+msgstr "Applica un insieme di patch quilt sul branch corrente"
 
 #: command-list.h:145
 msgid "Compare two commit ranges (e.g. two versions of a branch)"
-msgstr ""
+msgstr "Compara due intervalli di commit (ad es. due versioni di un branch)"
 
 #: command-list.h:146
 msgid "Reads tree information into the index"
-msgstr ""
+msgstr "Legge le informazioni su un albero dall'indice"
 
 #: command-list.h:147
 msgid "Reapply commits on top of another base tip"
-msgstr ""
+msgstr "Riapplica dei commit dopo l'ultimo commit di un branch"
 
 #: command-list.h:148
-#, fuzzy
 msgid "Receive what is pushed into the repository"
-msgstr "Registra modifiche nel repository"
+msgstr "Riceve quanto sottoposto a push nel repository"
 
 #: command-list.h:149
 msgid "Manage reflog information"
-msgstr ""
+msgstr "Gestisce le informazioni del registro dei riferimenti"
 
 #: command-list.h:150
-#, fuzzy
 msgid "Manage set of tracked repositories"
-msgstr "Registra modifiche nel repository"
+msgstr "Gestisce l'insieme dei repository tracciati"
 
 #: command-list.h:151
-#, fuzzy
 msgid "Pack unpacked objects in a repository"
-msgstr "--cached al di fuori di un repository"
+msgstr "Esegue il pack degli oggetti non sottoposti a pack in un repository"
 
 #: command-list.h:152
-#, fuzzy
 msgid "Create, list, delete refs to replace objects"
-msgstr "Crea, elenca, elimina o verifica un oggetto tag firmato con GPG"
+msgstr "Crea, elenca, elimina i riferimenti per sostituire oggetti"
 
 #: command-list.h:153
 msgid "Generates a summary of pending changes"
-msgstr ""
+msgstr "Genera un riassunto delle modifiche in sospeso"
 
 #: command-list.h:154
 msgid "Reuse recorded resolution of conflicted merges"
-msgstr ""
+msgstr "Riusa la risoluzione registrata dei merge che hanno generato conflitti"
 
 #: command-list.h:155
 msgid "Reset current HEAD to the specified state"
 msgstr "Ripristina l'HEAD corrente allo stato specificato"
 
 #: command-list.h:156
-#, fuzzy
-msgid "Revert some existing commits"
-msgstr "Impossibile eseguire il revert come commit iniziale"
+msgid "Restore working tree files"
+msgstr "Ripristina i file nell'albero di lavoro"
 
 #: command-list.h:157
-msgid "Lists commit objects in reverse chronological order"
-msgstr ""
+msgid "Revert some existing commits"
+msgstr "Esegue il revert di alcuni commit esistenti"
 
 #: command-list.h:158
-#, fuzzy
-msgid "Pick out and massage parameters"
-msgstr "troppi parametri"
+msgid "Lists commit objects in reverse chronological order"
+msgstr "Elenca gli oggetti commit in ordine cronologico inverso"
 
 #: command-list.h:159
-msgid "Remove files from the working tree and from the index"
-msgstr ""
+msgid "Pick out and massage parameters"
+msgstr "Sceglie e altera i parametri"
 
 #: command-list.h:160
-msgid "Send a collection of patches as emails"
-msgstr ""
+msgid "Remove files from the working tree and from the index"
+msgstr "Rimuove file dall'albero di lavoro e dall'indice"
 
 #: command-list.h:161
-#, fuzzy
-msgid "Push objects over Git protocol to another repository"
-msgstr "Scarica oggetti e ref da un altro repository"
+msgid "Send a collection of patches as emails"
+msgstr "Invia un insieme di patch come e-mail"
 
 #: command-list.h:162
-msgid "Restricted login shell for Git-only SSH access"
+msgid "Push objects over Git protocol to another repository"
 msgstr ""
+"Esegue il push di oggetti su un altro repository tramite il protocollo Git"
 
 #: command-list.h:163
-msgid "Summarize 'git log' output"
-msgstr ""
+msgid "Restricted login shell for Git-only SSH access"
+msgstr "Shell di login limitata per concedere accesso SSH solo per Git"
 
 #: command-list.h:164
-msgid "Show various types of objects"
-msgstr "Mostra vari tipi di oggetti"
+msgid "Summarize 'git log' output"
+msgstr "Riassume l'output di 'git log'"
 
 #: command-list.h:165
-#, fuzzy
-msgid "Show branches and their commits"
-msgstr "nessuna modifica aggiunta al commit%s\n"
+msgid "Show various types of objects"
+msgstr "Visualizza vari tipi di oggetti"
 
 #: command-list.h:166
-msgid "Show packed archive index"
-msgstr ""
+msgid "Show branches and their commits"
+msgstr "Visualizza i branch e i loro commit"
 
 #: command-list.h:167
-#, fuzzy
-msgid "List references in a local repository"
-msgstr "il repository di riferimento '%s' non è una directory locale."
+msgid "Show packed archive index"
+msgstr "Visualizza l'indice di un archivio sottoposto a pack"
 
 #: command-list.h:168
-msgid "Git's i18n setup code for shell scripts"
-msgstr ""
+msgid "List references in a local repository"
+msgstr "Elenca i riferimenti in un repository locale"
 
 #: command-list.h:169
-msgid "Common Git shell script setup code"
+msgid "Git's i18n setup code for shell scripts"
 msgstr ""
+"Codice di inizializzazione dell'internazionalizzazione di Git per gli script "
+"shell"
 
 #: command-list.h:170
-#, fuzzy
-msgid "Stash the changes in a dirty working directory away"
-msgstr "%s: esiste già nella directory di lavoro"
+msgid "Common Git shell script setup code"
+msgstr "Codice comune di inizializzazione di Git per gli script shell"
 
 #: command-list.h:171
-#, fuzzy
-msgid "Add file contents to the staging area"
-msgstr "Aggiunge il contenuto del file a index"
+msgid "Initialize and modify the sparse-checkout"
+msgstr "Inizializza e modifica sparse-checkout"
 
 #: command-list.h:172
-msgid "Show the working tree status"
-msgstr ""
+msgid "Stash the changes in a dirty working directory away"
+msgstr "Mette da parte le modifiche in una directory di lavoro sporca"
 
 #: command-list.h:173
-msgid "Remove unnecessary whitespace"
-msgstr ""
+msgid "Add file contents to the staging area"
+msgstr "Aggiunge i contenuti dei file all'area di staging"
 
 #: command-list.h:174
-msgid "Initialize, update or inspect submodules"
-msgstr ""
+msgid "Show the working tree status"
+msgstr "Visualizza lo stato dell'albero di lavoro"
 
 #: command-list.h:175
-msgid "Bidirectional operation between a Subversion repository and Git"
-msgstr ""
+msgid "Remove unnecessary whitespace"
+msgstr "Rimuove spazi bianchi non necessari"
 
 #: command-list.h:176
-msgid "Read, modify and delete symbolic refs"
-msgstr ""
+msgid "Initialize, update or inspect submodules"
+msgstr "Inizializza, aggiorna o esamina sottomoduli"
 
 #: command-list.h:177
-msgid "Create, list, delete or verify a tag object signed with GPG"
-msgstr "Crea, elenca, elimina o verifica un oggetto tag firmato con GPG"
+msgid "Bidirectional operation between a Subversion repository and Git"
+msgstr "Operatività bidirezionale tra un repository Subversion e Git"
 
 #: command-list.h:178
-msgid "Creates a temporary file with a blob's contents"
-msgstr ""
+msgid "Switch branches"
+msgstr "Passa da un branch a un altro"
 
 #: command-list.h:179
-msgid "Unpack objects from a packed archive"
-msgstr ""
+msgid "Read, modify and delete symbolic refs"
+msgstr "Legge, modifica ed elimina riferimenti simbolici"
 
 #: command-list.h:180
-#, fuzzy
-msgid "Register file contents in the working tree to the index"
-msgstr "Aggiunge il contenuto del file a index"
+msgid "Create, list, delete or verify a tag object signed with GPG"
+msgstr "Crea, elenca, elimina o verifica un oggetto tag firmato con GPG"
 
 #: command-list.h:181
-msgid "Update the object name stored in a ref safely"
-msgstr ""
+msgid "Creates a temporary file with a blob's contents"
+msgstr "Crea un file temporaneo con i contenuti di un blob"
 
 #: command-list.h:182
-msgid "Update auxiliary info file to help dumb servers"
-msgstr ""
+msgid "Unpack objects from a packed archive"
+msgstr "Decomprime gli oggetti da un archivio sottoposto a pack"
 
 #: command-list.h:183
-msgid "Send archive back to git-archive"
-msgstr ""
+msgid "Register file contents in the working tree to the index"
+msgstr "Registra i contenuti dei file dell'albero di lavoro nell'indice"
 
 #: command-list.h:184
-msgid "Send objects packed back to git-fetch-pack"
-msgstr ""
+msgid "Update the object name stored in a ref safely"
+msgstr "Aggiorna in modo sicuro il nome oggetto salvato in un riferimento"
 
 #: command-list.h:185
-msgid "Show a Git logical variable"
-msgstr ""
+msgid "Update auxiliary info file to help dumb servers"
+msgstr "Aggiorna il file informazioni aggiuntive per aiutare i server stupidi"
 
 #: command-list.h:186
-msgid "Check the GPG signature of commits"
-msgstr ""
+msgid "Send archive back to git-archive"
+msgstr "Reinvia l'archivio a git-archive"
 
 #: command-list.h:187
-#, fuzzy
-msgid "Validate packed Git archive files"
-msgstr "non è stato possibile creare il file del repository '%s'"
+msgid "Send objects packed back to git-fetch-pack"
+msgstr "Reinvia gli oggetti sottoposti a pack a git-fetch-pack"
 
 #: command-list.h:188
-msgid "Check the GPG signature of tags"
-msgstr ""
+msgid "Show a Git logical variable"
+msgstr "Visualizza una variabile logica di Git"
 
 #: command-list.h:189
-msgid "Git web interface (web frontend to Git repositories)"
-msgstr ""
+msgid "Check the GPG signature of commits"
+msgstr "Verifica la firma GPG dei commit"
 
 #: command-list.h:190
-msgid "Show logs with difference each commit introduces"
-msgstr ""
+msgid "Validate packed Git archive files"
+msgstr "Convalida i file archivio sottoposti a pack di Git"
 
 #: command-list.h:191
-msgid "Manage multiple working trees"
-msgstr ""
+msgid "Check the GPG signature of tags"
+msgstr "Verifica la firma GPG dei tag"
 
 #: command-list.h:192
-#, fuzzy
-msgid "Create a tree object from the current index"
-msgstr "assicura che la patch sia applicabile all'attuale index"
+msgid "Git web interface (web frontend to Git repositories)"
+msgstr "Interfaccia Web per Git (frontend Web ai repository Git)"
 
 #: command-list.h:193
-msgid "Defining attributes per path"
+msgid "Show logs with difference each commit introduces"
 msgstr ""
+"Visualizza i registri insieme alle differenze introdotte da ciascun commit"
 
 #: command-list.h:194
-msgid "Git command-line interface and conventions"
-msgstr ""
+msgid "Manage multiple working trees"
+msgstr "Gestisce alberi di lavoro multipli"
 
 #: command-list.h:195
-msgid "A Git core tutorial for developers"
-msgstr ""
+msgid "Create a tree object from the current index"
+msgstr "Crea un oggetto albero dall'indice corrente"
 
 #: command-list.h:196
-msgid "Git for CVS users"
-msgstr ""
+msgid "Defining attributes per path"
+msgstr "Definizione di attributi per percorso"
 
 #: command-list.h:197
-msgid "Tweaking diff output"
-msgstr ""
+msgid "Git command-line interface and conventions"
+msgstr "Interfaccia a riga di comando di Git e convenzioni"
 
 #: command-list.h:198
-msgid "A useful minimum set of commands for Everyday Git"
-msgstr ""
+msgid "A Git core tutorial for developers"
+msgstr "Un tutorial Git di base per gli sviluppatori"
 
 #: command-list.h:199
-msgid "A Git Glossary"
-msgstr ""
+msgid "Git for CVS users"
+msgstr "Git per utenti CVS"
 
 #: command-list.h:200
-msgid "Hooks used by Git"
-msgstr ""
+msgid "Tweaking diff output"
+msgstr "Messa a punto dell'output di diff"
 
 #: command-list.h:201
-msgid "Specifies intentionally untracked files to ignore"
-msgstr ""
+msgid "A useful minimum set of commands for Everyday Git"
+msgstr "Un insieme di comandi utile e minimale per l'uso quotidiano di Git"
 
 #: command-list.h:202
-msgid "Defining submodule properties"
-msgstr ""
+msgid "A Git Glossary"
+msgstr "Un glossario di Git"
 
 #: command-list.h:203
-msgid "Git namespaces"
-msgstr ""
+msgid "Hooks used by Git"
+msgstr "Hook usati da Git"
 
 #: command-list.h:204
-msgid "Git Repository Layout"
-msgstr ""
+msgid "Specifies intentionally untracked files to ignore"
+msgstr "Specifica i file intenzionalmente non tracciati da ignorare"
 
 #: command-list.h:205
-msgid "Specifying revisions and ranges for Git"
-msgstr ""
+msgid "Defining submodule properties"
+msgstr "Definizione proprietà sottomodulo"
 
 #: command-list.h:206
-msgid "A tutorial introduction to Git: part two"
-msgstr ""
+msgid "Git namespaces"
+msgstr "Spazi dei nomi Git"
 
 #: command-list.h:207
-msgid "A tutorial introduction to Git"
-msgstr ""
+msgid "Git Repository Layout"
+msgstr "Struttura repository Git"
 
 #: command-list.h:208
-msgid "An overview of recommended workflows with Git"
-msgstr ""
+msgid "Specifying revisions and ranges for Git"
+msgstr "Come specificare revisioni e intervalli in Git"
 
-#: list-objects-filter-options.h:63
-msgid "args"
-msgstr ""
+#: command-list.h:209
+msgid "Mounting one repository inside another"
+msgstr "Monto un repository dentro un altro"
 
-#: list-objects-filter-options.h:64
-msgid "object filtering"
-msgstr ""
+#: command-list.h:210
+msgid "A tutorial introduction to Git: part two"
+msgstr "Un tutorial introduttivo per Git: seconda parte"
 
-#: rerere.h:44
-msgid "update the index with reused conflict resolution if possible"
-msgstr ""
+#: command-list.h:211
+msgid "A tutorial introduction to Git"
+msgstr "Un tutorial introduttivo per Git"
+
+#: command-list.h:212
+msgid "An overview of recommended workflows with Git"
+msgstr "Una panoramica dei flussi di lavoro raccomandati in Git"
 
 #: git-bisect.sh:54
 msgid "You need to start by \"git bisect start\""
@@ -20336,22 +23554,22 @@ msgstr "Vuoi che me ne occupi io [Y/n]? "
 #: git-bisect.sh:101
 #, sh-format
 msgid "Bad rev input: $arg"
-msgstr ""
+msgstr "Revisione fornita non valida: $arg"
 
 #: git-bisect.sh:121
 #, sh-format
 msgid "Bad rev input: $bisected_head"
-msgstr ""
+msgstr "Revisione fornita non valida: $bisected_head"
 
 #: git-bisect.sh:130
 #, sh-format
 msgid "Bad rev input: $rev"
-msgstr ""
+msgstr "Revisione fornita non valida: $rev"
 
 #: git-bisect.sh:139
-#, fuzzy, sh-format
+#, sh-format
 msgid "'git bisect $TERM_BAD' can take only one argument."
-msgstr "'git bisect bad' può prendere un solo argomento."
+msgstr "'git bisect $TERM_BAD' richiede un solo argomento."
 
 #: git-bisect.sh:209
 msgid "No logfile given"
@@ -20360,20 +23578,20 @@ msgstr "Nessun file di log specificato"
 #: git-bisect.sh:210
 #, sh-format
 msgid "cannot read $file for replaying"
-msgstr ""
+msgstr "impossibile leggere $file per rieseguire i comandi contenuti"
 
 #: git-bisect.sh:232
 msgid "?? what are you talking about?"
-msgstr "?? di cosa si sta parlando?"
+msgstr "?? di cosa stai parlando?"
 
 #: git-bisect.sh:241
 msgid "bisect run failed: no command provided."
-msgstr ""
+msgstr "esecuzione di bisect non riuscita: nessun comando fornito."
 
 #: git-bisect.sh:246
 #, sh-format
 msgid "running $command"
-msgstr "sto eseguendo $command"
+msgstr "esecuzione di $command in corso"
 
 #: git-bisect.sh:253
 #, sh-format
@@ -20381,12 +23599,12 @@ msgid ""
 "bisect run failed:\n"
 "exit code $res from '$command' is < 0 or >= 128"
 msgstr ""
-"bisect run non riuscito:\n"
+"esecuzione di bisect non riuscita:\n"
 "il codice di uscita $res da '$command' è < 0 oppure >= 128"
 
 #: git-bisect.sh:279
 msgid "bisect run cannot continue any more"
-msgstr "bisect run non può più proseguire"
+msgstr "l'esecuzione di bisect non può più proseguire"
 
 #: git-bisect.sh:285
 #, sh-format
@@ -20394,354 +23612,184 @@ msgid ""
 "bisect run failed:\n"
 "'bisect_state $state' exited with error code $res"
 msgstr ""
-"bisect run non riuscito:\n"
-"bisect_state $state è uscito con il codice di errore $res"
+"esecuzione di bisect non riuscita:\n"
+"'bisect_state $state' è uscito con il codice di errore $res"
 
 #: git-bisect.sh:292
 msgid "bisect run success"
-msgstr "bisect run eseguito con successo"
+msgstr "esecuzione di bisect completata con successo"
 
 #: git-bisect.sh:300
 msgid "We are not bisecting."
-msgstr "Non stiamo eseguendo un bisect."
+msgstr "Non stiamo eseguendo una bisezione."
 
 #: git-merge-octopus.sh:46
-#, fuzzy
 msgid ""
 "Error: Your local changes to the following files would be overwritten by "
 "merge"
-msgstr "Le tue modifiche locali verranno sovrascritte da revert."
+msgstr ""
+"Errore: le tue modifiche locali ai seguenti file sarebbero sovrascritte dal "
+"merge"
 
 #: git-merge-octopus.sh:61
 msgid "Automated merge did not work."
-msgstr ""
+msgstr "Il merge automatico non ha funzionato."
 
 #: git-merge-octopus.sh:62
-#, fuzzy
 msgid "Should not be doing an octopus."
-msgstr "non è stato possibile redirigere l'output"
+msgstr "Non dovrebbe essere eseguito un merge octopus."
 
 #: git-merge-octopus.sh:73
 #, sh-format
 msgid "Unable to find common commit with $pretty_name"
-msgstr ""
+msgstr "Impossibile trovare un commit comune con $pretty_name"
 
 #: git-merge-octopus.sh:77
 #, sh-format
 msgid "Already up to date with $pretty_name"
-msgstr ""
+msgstr "Già aggiornato rispetto a $pretty_name"
 
 #: git-merge-octopus.sh:89
 #, sh-format
 msgid "Fast-forwarding to: $pretty_name"
-msgstr ""
+msgstr "Eseguo il fast forward a: $pretty_name"
 
 #: git-merge-octopus.sh:97
 #, sh-format
 msgid "Trying simple merge with $pretty_name"
-msgstr ""
+msgstr "Provo un merge semplice con $pretty_name"
 
 #: git-merge-octopus.sh:102
 msgid "Simple merge did not work, trying automatic merge."
-msgstr ""
-
-#: git-legacy-rebase.sh:445
-#, fuzzy, sh-format
-msgid "Could not move back to $head_name"
-msgstr "Non è stato possibile rimuovere il branch %s"
-
-#: git-legacy-rebase.sh:471
-#, sh-format
-msgid ""
-"It seems that there is already a $state_dir_base directory, and\n"
-"I wonder if you are in the middle of another rebase.  If that is the\n"
-"case, please try\n"
-"\t$cmd_live_rebase\n"
-"If that is not the case, please\n"
-"\t$cmd_clear_stale_rebase\n"
-"and run me again.  I am stopping in case you still have something\n"
-"valuable there."
-msgstr ""
-
-#: git-legacy-rebase.sh:523
-msgid ""
-"fatal: cannot combine am options with either interactive or merge options"
-msgstr ""
-
-#: git-legacy-rebase.sh:530
-#, fuzzy
-msgid "fatal: cannot combine '--signoff' with '--preserve-merges'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
-
-#: git-legacy-rebase.sh:541
-#, fuzzy
-msgid "fatal: cannot combine '--preserve-merges' with '--rebase-merges'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
-
-#: git-legacy-rebase.sh:550
-#, fuzzy
-msgid "fatal: cannot combine '--rebase-merges' with '--strategy-option'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
-
-#: git-legacy-rebase.sh:552
-#, fuzzy
-msgid "fatal: cannot combine '--rebase-merges' with '--strategy'"
-msgstr "Impossibile combinare --no-ff con --ff-only."
-
-#: git-legacy-rebase.sh:578
-#, sh-format
-msgid "invalid upstream '$upstream_name'"
-msgstr ""
-
-#: git-legacy-rebase.sh:602
-#, sh-format
-msgid "$onto_name: there are more than one merge bases"
-msgstr ""
-
-#: git-legacy-rebase.sh:605 git-legacy-rebase.sh:609
-#, sh-format
-msgid "$onto_name: there is no merge base"
-msgstr ""
-
-#: git-legacy-rebase.sh:614
-#, fuzzy, sh-format
-msgid "Does not point to a valid commit: $onto_name"
-msgstr "'%s' non punta ad un commit"
-
-#: git-legacy-rebase.sh:640
-#, sh-format
-msgid "fatal: no such branch/commit '$branch_name'"
-msgstr ""
-
-#: git-legacy-rebase.sh:678
-#, sh-format
-msgid "Created autostash: $stash_abbrev"
-msgstr ""
-
-#: git-legacy-rebase.sh:707
-#, sh-format
-msgid "Current branch $branch_name is up to date."
-msgstr ""
-
-#: git-legacy-rebase.sh:717
-#, sh-format
-msgid "Current branch $branch_name is up to date, rebase forced."
-msgstr ""
-
-#: git-legacy-rebase.sh:731
-#, fuzzy, sh-format
-msgid "Changes to $onto:"
-msgstr "Modifiche di cui verrà eseguito il commit:"
-
-#: git-legacy-rebase.sh:733
-#, sh-format
-msgid "Changes from $mb to $onto:"
-msgstr ""
-
-#: git-legacy-rebase.sh:743
-#, sh-format
-msgid "Fast-forwarded $branch_name to $onto_name."
-msgstr ""
-
-#: git-legacy-rebase.sh:757
-msgid "First, rewinding head to replay your work on top of it..."
-msgstr ""
-
-#: git-stash.sh:75
-msgid "git stash clear with parameters is unimplemented"
-msgstr "git stash clear con parametri non è implementato"
-
-#: git-stash.sh:125
-msgid "You do not have the initial commit yet"
-msgstr "Non hai ancora un commit iniziale"
-
-#: git-stash.sh:140
-msgid "Cannot save the current index state"
-msgstr "Impossibile salvare lo stato corrente di index"
-
-#: git-stash.sh:155
-#, fuzzy
-msgid "Cannot save the untracked files"
-msgstr "Impossibile salvare lo stato corrente di index"
-
-#: git-stash.sh:175 git-stash.sh:188
-msgid "Cannot save the current worktree state"
-msgstr ""
-
-#: git-stash.sh:192
-msgid "No changes selected"
-msgstr "Nessuna modifica selezionata"
+msgstr "Il merge semplice non ha funzionato, provo il merge automatico."
 
-#: git-stash.sh:195
+#: git-legacy-stash.sh:221
 msgid "Cannot remove temporary index (can't happen)"
-msgstr ""
-
-#: git-stash.sh:208
-msgid "Cannot record working tree state"
-msgstr ""
+msgstr "Impossibile rimuovere l'indice temporaneo (non può succedere)"
 
-#: git-stash.sh:246
+#: git-legacy-stash.sh:272
 #, sh-format
 msgid "Cannot update $ref_stash with $w_commit"
-msgstr ""
+msgstr "Impossibile aggiornare $ref_stash con $w_commit"
 
-#: git-stash.sh:298
+#: git-legacy-stash.sh:324
 #, sh-format
 msgid "error: unknown option for 'stash push': $option"
-msgstr ""
-
-#: git-stash.sh:312
-msgid "Can't use --patch and --include-untracked or --all at the same time"
-msgstr ""
-
-#: git-stash.sh:320
-msgid "No local changes to save"
-msgstr "Nessuna modifica locale da salvare"
-
-#: git-stash.sh:325
-msgid "Cannot initialize stash"
-msgstr "Impossibile inizializzare stash"
-
-#: git-stash.sh:329
-msgid "Cannot save the current status"
-msgstr "Impossibile salvare lo stato attuale"
+msgstr "errore: opzione sconosciuta per 'stash push': $option"
 
-#: git-stash.sh:330
+#: git-legacy-stash.sh:356
 #, sh-format
 msgid "Saved working directory and index state $stash_msg"
-msgstr ""
-
-#: git-stash.sh:359
-msgid "Cannot remove worktree changes"
-msgstr ""
+msgstr "Directory di lavoro e stato indice salvati: $stash_msg"
 
-#: git-stash.sh:507
+#: git-legacy-stash.sh:536
 #, sh-format
 msgid "unknown option: $opt"
-msgstr ""
-
-#: git-stash.sh:520
-#, fuzzy
-msgid "No stash entries found."
-msgstr "Nessuno stash trovato."
+msgstr "opzione sconosciuta: $opt"
 
-#: git-stash.sh:527
+#: git-legacy-stash.sh:556
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Troppe revisioni specificate: $REV"
 
-#: git-stash.sh:542
-#, fuzzy, sh-format
+#: git-legacy-stash.sh:571
+#, sh-format
 msgid "$reference is not a valid reference"
 msgstr "$reference non è un riferimento valido"
 
-#: git-stash.sh:570
+#: git-legacy-stash.sh:599
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr "'$args' non è un commit di tipo stash"
 
-#: git-stash.sh:581
+#: git-legacy-stash.sh:610
 #, sh-format
 msgid "'$args' is not a stash reference"
-msgstr "'$args' non è un referimento a uno stash"
+msgstr "'$args' non è un riferimento a uno stash"
 
-#: git-stash.sh:589
+#: git-legacy-stash.sh:618
 msgid "unable to refresh index"
-msgstr "impossibile aggiornare index"
+msgstr "impossibile aggiornare l'indice"
 
-#: git-stash.sh:593
+#: git-legacy-stash.sh:622
 msgid "Cannot apply a stash in the middle of a merge"
 msgstr "Impossibile applicare uno stash nel mezzo di un merge"
 
-#: git-stash.sh:601
+#: git-legacy-stash.sh:630
 msgid "Conflicts in index. Try without --index."
 msgstr "Ci sono conflitti in index. Prova senza --index."
 
-#: git-stash.sh:603
+#: git-legacy-stash.sh:632
 msgid "Could not save index tree"
-msgstr ""
+msgstr "Non è stato possibile salvare l'albero indice"
 
-#: git-stash.sh:612
-#, fuzzy
+#: git-legacy-stash.sh:641
 msgid "Could not restore untracked files from stash entry"
-msgstr "non è stato possibile leggere il log dallo standard input"
-
-#: git-stash.sh:637
-msgid "Cannot unstage modified files"
-msgstr ""
-
-#: git-stash.sh:652
-msgid "Index was not unstashed."
 msgstr ""
+"Non è stato possibile ripristinare i file non tracciati dalla voce stash"
 
-#: git-stash.sh:666
-msgid "The stash entry is kept in case you need it again."
-msgstr ""
+#: git-legacy-stash.sh:666
+msgid "Cannot unstage modified files"
+msgstr "Non è stato possibile rimuovere i file modificati dall'area di staging"
 
-#: git-stash.sh:675
+#: git-legacy-stash.sh:704
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "${REV} eliminata ($s)"
 
-#: git-stash.sh:676
+#: git-legacy-stash.sh:705
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: non è stato possibile rimuovere la voce di stash"
 
-#: git-stash.sh:684
-msgid "No branch name specified"
-msgstr "Nome del branch non specificato"
-
-#: git-stash.sh:763
+#: git-legacy-stash.sh:792
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Per ripristinarli digita \"git stash apply\")"
 
-#: git-submodule.sh:198
+#: git-submodule.sh:203
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
+"Il percorso relativo può essere usato solo dal primo livello dell'albero di "
+"lavoro"
 
-#: git-submodule.sh:208
+#: git-submodule.sh:213
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
-msgstr "repo URL: '$repo' deve essere assoluto o iniziare con ./|../"
+msgstr "URL repository:: '$repo' deve essere assoluto o iniziare con ./|../"
 
-#: git-submodule.sh:227
+#: git-submodule.sh:232
 #, sh-format
 msgid "'$sm_path' already exists in the index"
-msgstr "'$sm_path' esiste già in index"
+msgstr "'$sm_path' esiste già nell'indice"
 
-#: git-submodule.sh:230
-#, fuzzy, sh-format
+#: git-submodule.sh:235
+#, sh-format
 msgid "'$sm_path' already exists in the index and is not a submodule"
-msgstr "'$sm_path' esiste già in index"
+msgstr "'$sm_path' esiste già nell'indice e non è un sottomodulo"
 
-#: git-submodule.sh:236
+#: git-submodule.sh:242
 #, sh-format
-msgid ""
-"The following path is ignored by one of your .gitignore files:\n"
-"$sm_path\n"
-"Use -f if you really want to add it."
-msgstr ""
-"Il seguente path è ignorato da uno dei tuoi file .gitignore:\n"
-"$sm_path\n"
-"Usa -f se vuoi davvero aggiungerlo."
+msgid "'$sm_path' does not have a commit checked out"
+msgstr "'$sm_path' non ha un commit di cui è stato eseguito il checkout"
 
-#: git-submodule.sh:259
+#: git-submodule.sh:273
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
-msgstr ""
+msgstr "Aggiunta del repository esistente in '$sm_path' all'indice"
 
-#: git-submodule.sh:261
+#: git-submodule.sh:275
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
-msgstr "'$sm_path' esiste già e non è un repository git valido"
+msgstr "'$sm_path' esiste già e non è un repository Git valido"
 
-#: git-submodule.sh:269
+#: git-submodule.sh:283
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
+"È stata trovata localmente una directory Git per '$sm_name' con i seguenti "
+"remoti:"
 
-#: git-submodule.sh:271
+#: git-submodule.sh:285
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from\n"
@@ -20751,137 +23799,170 @@ msgid ""
 "or you are unsure what this means choose another name with the '--name' "
 "option."
 msgstr ""
+"Se vuoi riusare questa directory Git locale anziché clonarla nuovamente da\n"
+"  $realrepo\n"
+"usa l'opzione '--force'. Se la directory Git locale non è il repository\n"
+"corretto, o se non sei sicuro di ciò che questo voglia dire, scegli un "
+"altro\n"
+"nome con l'opzione '--name'."
 
-#: git-submodule.sh:277
+#: git-submodule.sh:291
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
-msgstr ""
+msgstr "Riattivo la directory Git locale per il sottomodulo '$sm_name'."
 
-#: git-submodule.sh:289
+#: git-submodule.sh:303
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
-msgstr ""
+msgstr "Impossibile eseguire il checkout del sottomodulo '$sm_path'"
 
-#: git-submodule.sh:294
+#: git-submodule.sh:308
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
-msgstr ""
+msgstr "Aggiunta del sottomodulo '$sm_path' non riuscita"
 
-#: git-submodule.sh:303
+#: git-submodule.sh:317
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
-msgstr ""
+msgstr "Registrazione del sottomodulo '$sm_path' non riuscita"
 
-#: git-submodule.sh:563
+#: git-submodule.sh:590
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
+"Impossibile trovare la revisione corrente nel percorso del sottomodulo "
+"'$displaypath'"
 
-#: git-submodule.sh:573
+#: git-submodule.sh:600
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
-msgstr ""
+msgstr "Impossibile eseguire il fetch nel percorso del sottomodulo '$sm_path'"
 
-#: git-submodule.sh:578
+#: git-submodule.sh:605
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
 "'$sm_path'"
 msgstr ""
+"Impossibile trovare la revisione corrente per ${remote_name}/${branch} nel "
+"percorso del sottomodulo '$sm_path'"
 
-#: git-submodule.sh:596
+#: git-submodule.sh:623
 #, sh-format
-msgid "Unable to fetch in submodule path '$displaypath'"
+msgid ""
+"Unable to fetch in submodule path '$displaypath'; trying to directly fetch "
+"$sha1:"
 msgstr ""
+"Impossibile eseguire il fetch nel percorso del sottomodulo '$displaypath'; "
+"provo a recuperare direttamente $sha1:"
 
-#: git-submodule.sh:602
+#: git-submodule.sh:629
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
 "Direct fetching of that commit failed."
 msgstr ""
+"Fetch eseguito nel percorso del sottomodulo '$displaypath', ma non conteneva "
+"$sha1. Fetch diretto di tale commit non riuscito."
 
-#: git-submodule.sh:609
+#: git-submodule.sh:636
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr ""
+"Impossibile eseguire il checkout di '$sha1' nel percorso del sottomodulo "
+"'$displaypath'"
 
-#: git-submodule.sh:610
+#: git-submodule.sh:637
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
-msgstr ""
+msgstr "Percorso del sottomodulo '$displaypath': eseguito checkout di '$sha1'"
 
-#: git-submodule.sh:614
+#: git-submodule.sh:641
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr ""
+"Impossibile eseguire il rebase di '$sha1' nel percorso del sottomodulo "
+"'$displaypath'"
 
-#: git-submodule.sh:615
+#: git-submodule.sh:642
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
-msgstr ""
+msgstr "Percorso del sottomodulo '$displaypath': eseguito rebase su '$sha1'"
 
-#: git-submodule.sh:620
+#: git-submodule.sh:647
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
+"Impossibile eseguire il merge di '$sha1' nel percorso del sottomodulo "
+"'$displaypath'"
 
-#: git-submodule.sh:621
+#: git-submodule.sh:648
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
-msgstr ""
+msgstr "Percorso del sottomodulo '$displaypath': eseguito merge in '$sha1'"
 
-#: git-submodule.sh:626
+#: git-submodule.sh:653
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
+"Esecuzione di '$command $sha1' non riuscita nel percorso del sottomodulo "
+"'$displaypath'"
 
-#: git-submodule.sh:627
+#: git-submodule.sh:654
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
-msgstr ""
+msgstr "Percorso del sottomodulo '$displaypath': '$command $sha1'"
 
-#: git-submodule.sh:658
+#: git-submodule.sh:685
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
-msgstr ""
+msgstr "Ricorsione nel percorso del sottomodulo '$displaypath' non riuscita"
 
-#: git-submodule.sh:754
-#, fuzzy
+#: git-submodule.sh:896
 msgid "The --cached option cannot be used with the --files option"
-msgstr "--cached non può essere usata con --files"
+msgstr "L'opzione --cached non può essere usata con l'opzione --files"
 
-#: git-submodule.sh:806
+#: git-submodule.sh:948
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr "modalità $mod_dst inattesa"
 
-#: git-submodule.sh:826
-#, fuzzy, sh-format
+#: git-submodule.sh:968
+#, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_src"
-msgstr "  Attenzione: $name non contiene commit $sha1_src"
+msgstr "  Attenzione: $display_name non contiene il commit $sha1_src"
 
-#: git-submodule.sh:829
-#, fuzzy, sh-format
+#: git-submodule.sh:971
+#, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
-msgstr "  Attenzione: $name non contiene commit $sha1_dst"
+msgstr "  Attenzione: $display_name non contiene il commit $sha1_dst"
 
-#: git-submodule.sh:832
-#, fuzzy, sh-format
+#: git-submodule.sh:974
+#, sh-format
 msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
-msgstr "  Attenzione: $name non contiene commit $sha1_src e $sha1_dst"
+msgstr ""
+"  Attenzione: $display_name non contiene i commit $sha1_src e $sha1_dst"
 
 #: git-parse-remote.sh:89
 #, sh-format
 msgid "See git-${cmd}(1) for details."
-msgstr ""
+msgstr "Vedi git-${cmd}(1) per ulteriori dettagli."
+
+#: git-rebase--preserve-merges.sh:109
+msgid "Applied autostash."
+msgstr "Stash automatico applicato."
+
+#: git-rebase--preserve-merges.sh:112
+#, sh-format
+msgid "Cannot store $stash_sha1"
+msgstr "Impossibile memorizzare $stash_sha1"
 
-#: git-rebase--preserve-merges.sh:136
+#: git-rebase--preserve-merges.sh:191
 #, sh-format
 msgid "Rebasing ($new_count/$total)"
-msgstr ""
+msgstr "Rebase in corso ($new_count/$total)"
 
-#: git-rebase--preserve-merges.sh:152
+#: git-rebase--preserve-merges.sh:207
 msgid ""
 "\n"
 "Commands:\n"
@@ -20901,8 +23982,29 @@ msgid ""
 "\n"
 "These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
+"\n"
+"Comandi:\n"
+"p, pick <commit> = usa il commit\n"
+"r, reword <commit> = usa il commit, ma modifica il messaggio di commit\n"
+"e, edit <commit> = usa il commit, ma fermati per modificarlo\n"
+"s, squash <commit> = usa il commit, ma fondilo con il commit precedente\n"
+"f, fixup <commit> = come \"squash\", ma scarta il messaggio di log di "
+"questo\n"
+"                    commit\n"
+"x, exec <comando> = esegui il comando (il resto della riga) usando la shell\n"
+"d, drop <commit> = elimina il commit\n"
+"l, label <etichetta> = etichetta l'HEAD corrente con un nome\n"
+"t, reset <etichetta> = reimposta HEAD a un'etichetta\n"
+"m, merge [-C <commit> | -c <commit>] <etichetta> [# <oneline>]\n"
+".       crea un commit di merge usando il messaggio del commit di merge\n"
+".       originale (o la oneline se non è stato specificato un commit di "
+"merge\n"
+".       originale). Usa -c <commit> per riformulare il messaggio di commit.\n"
+"\n"
+"Queste righe possono essere riordinate; saranno eseguite dalla prima "
+"all'ultima.\n"
 
-#: git-rebase--preserve-merges.sh:215
+#: git-rebase--preserve-merges.sh:270
 #, sh-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -20913,84 +24015,93 @@ msgid ""
 "\n"
 "\tgit rebase --continue"
 msgstr ""
+"È possibile modificare il commit ora con\n"
+"\n"
+"\tgit commit --amend $gpg_sign_opt_quoted\n"
+"\n"
+"Quando sei soddisfatto delle modifiche, esegui\n"
+"\n"
+"\tgit rebase --continue"
 
-#: git-rebase--preserve-merges.sh:240
+#: git-rebase--preserve-merges.sh:295
 #, sh-format
 msgid "$sha1: not a commit that can be picked"
-msgstr ""
+msgstr "$sha1: non è un commit che possa essere scelto"
 
-#: git-rebase--preserve-merges.sh:279
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:334
+#, sh-format
 msgid "Invalid commit name: $sha1"
-msgstr "commit non valido: %s"
+msgstr "Nome commit non valido: $sha1"
 
-#: git-rebase--preserve-merges.sh:309
+#: git-rebase--preserve-merges.sh:364
 msgid "Cannot write current commit's replacement sha1"
 msgstr ""
+"Impossibile scrivere lo SHA1 del commit che dovrebbe sostituire quello "
+"corrente"
 
-#: git-rebase--preserve-merges.sh:360
+#: git-rebase--preserve-merges.sh:415
 #, sh-format
 msgid "Fast-forward to $sha1"
-msgstr ""
+msgstr "Fast forward a $sha1"
 
-#: git-rebase--preserve-merges.sh:362
+#: git-rebase--preserve-merges.sh:417
 #, sh-format
 msgid "Cannot fast-forward to $sha1"
-msgstr ""
+msgstr "Impossibile eseguire il fast forward a $sha1"
 
-#: git-rebase--preserve-merges.sh:371
+#: git-rebase--preserve-merges.sh:426
 #, sh-format
 msgid "Cannot move HEAD to $first_parent"
-msgstr ""
+msgstr "Impossibile spostare l'HEAD a $first_parent"
 
-#: git-rebase--preserve-merges.sh:376
+#: git-rebase--preserve-merges.sh:431
 #, sh-format
 msgid "Refusing to squash a merge: $sha1"
-msgstr ""
+msgstr "Mi rifiuto di eseguire lo squash di un merge: $sha1"
 
-#: git-rebase--preserve-merges.sh:394
+#: git-rebase--preserve-merges.sh:449
 #, sh-format
 msgid "Error redoing merge $sha1"
-msgstr ""
+msgstr "Errore durante la riesecuzione del merge di $sha1"
 
-#: git-rebase--preserve-merges.sh:403
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:458
+#, sh-format
 msgid "Could not pick $sha1"
-msgstr "Non è stato possibile aprire %s"
+msgstr "Impossibile scegliere $sha1"
 
-#: git-rebase--preserve-merges.sh:412
+#: git-rebase--preserve-merges.sh:467
 #, sh-format
 msgid "This is the commit message #${n}:"
-msgstr ""
+msgstr "Questo è il messaggio di commit numero ${n}:"
 
-#: git-rebase--preserve-merges.sh:417
+#: git-rebase--preserve-merges.sh:472
 #, sh-format
 msgid "The commit message #${n} will be skipped:"
-msgstr ""
+msgstr "Il messaggio di commit numero ${n} sarà saltato:"
 
-#: git-rebase--preserve-merges.sh:428
+#: git-rebase--preserve-merges.sh:483
 #, sh-format
 msgid "This is a combination of $count commit."
 msgid_plural "This is a combination of $count commits."
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "Questa è una combinazione di $count commit."
+msgstr[1] "Questa è una combinazione di $count commit."
 
-#: git-rebase--preserve-merges.sh:437
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:492
+#, sh-format
 msgid "Cannot write $fixup_msg"
-msgstr "Impossibile sovrascrivere"
+msgstr "Impossibile scrivere $fixup_msg"
 
-#: git-rebase--preserve-merges.sh:440
+#: git-rebase--preserve-merges.sh:495
 msgid "This is a combination of 2 commits."
-msgstr ""
+msgstr "Questa è una combinazione di 2 commit."
 
-#: git-rebase--preserve-merges.sh:481 git-rebase--preserve-merges.sh:524
-#: git-rebase--preserve-merges.sh:527
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:536 git-rebase--preserve-merges.sh:579
+#: git-rebase--preserve-merges.sh:582
+#, sh-format
 msgid "Could not apply $sha1... $rest"
-msgstr "non è stato possibile applicare %s... %s"
+msgstr "Impossibile applicare $sha1... $rest"
 
-#: git-rebase--preserve-merges.sh:556
+#: git-rebase--preserve-merges.sh:611
 #, sh-format
 msgid ""
 "Could not amend commit after successfully picking $sha1... $rest\n"
@@ -20999,40 +24110,48 @@ msgid ""
 "before\n"
 "you are able to reword the commit."
 msgstr ""
+"Impossibile modificare il commit dopo la scelta di $sha1... $rest\n"
+"Molto probabilmente questo è dovuto a un messaggio di commit vuoto, oppure\n"
+"l'esecuzione dell'hook di pre-commit non è riuscita. In quest'ultimo caso,\n"
+"potrebbe essere necessario risolvere il problema evidenziato per essere in\n"
+"grado di modificare il messaggio di commit."
 
-#: git-rebase--preserve-merges.sh:571
+#: git-rebase--preserve-merges.sh:626
 #, sh-format
 msgid "Stopped at $sha1_abbrev... $rest"
-msgstr ""
+msgstr "Fermato a $sha1_abbrev... $rest"
 
-#: git-rebase--preserve-merges.sh:586
+#: git-rebase--preserve-merges.sh:641
 #, sh-format
 msgid "Cannot '$squash_style' without a previous commit"
-msgstr ""
+msgstr "Impossibile eseguire '$squash_style' senza un commit precedente"
 
-#: git-rebase--preserve-merges.sh:628
+#: git-rebase--preserve-merges.sh:683
 #, sh-format
 msgid "Executing: $rest"
-msgstr ""
+msgstr "Eseguo $rest"
 
-#: git-rebase--preserve-merges.sh:636
+#: git-rebase--preserve-merges.sh:691
 #, sh-format
 msgid "Execution failed: $rest"
-msgstr ""
+msgstr "Esecuzione non riuscita: $rest"
 
-#: git-rebase--preserve-merges.sh:638
+#: git-rebase--preserve-merges.sh:693
 msgid "and made changes to the index and/or the working tree"
-msgstr ""
+msgstr "e sono state apportate modifiche all'indice e/o all'albero di lavoro"
 
-#: git-rebase--preserve-merges.sh:640
+#: git-rebase--preserve-merges.sh:695
 msgid ""
 "You can fix the problem, and then run\n"
 "\n"
 "\tgit rebase --continue"
 msgstr ""
+"Puoi correggere il problema e quindi eseguire\n"
+"\n"
+"\tgit rebase --continue"
 
 #. TRANSLATORS: after these lines is a command to be issued by the user
-#: git-rebase--preserve-merges.sh:653
+#: git-rebase--preserve-merges.sh:708
 #, sh-format
 msgid ""
 "Execution succeeded: $rest\n"
@@ -21041,27 +24160,31 @@ msgid ""
 "\n"
 "\tgit rebase --continue"
 msgstr ""
+"Esecuzione riuscita: $rest\n"
+"ma sono state mantenute modifiche all'indice e/o all'albero di lavoro\n"
+"Esegui il commit o lo stash delle modifiche, quindi esegui\n"
+"\n"
+"\tgit rebase --continue"
 
-#: git-rebase--preserve-merges.sh:664
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:719
+#, sh-format
 msgid "Unknown command: $command $sha1 $rest"
-msgstr "Sottocomando sconosciuto: %s"
+msgstr "Comando sconosciuto: $command $sha1 $rest"
 
-#: git-rebase--preserve-merges.sh:665
+#: git-rebase--preserve-merges.sh:720
 msgid "Please fix this using 'git rebase --edit-todo'."
-msgstr ""
+msgstr "Correggi la situazione usando 'git rebase --edit-todo'."
 
-#: git-rebase--preserve-merges.sh:700
+#: git-rebase--preserve-merges.sh:755
 #, sh-format
 msgid "Successfully rebased and updated $head_name."
-msgstr ""
+msgstr "Rebase e aggiornamento di $head_name eseguiti con successo."
 
-#: git-rebase--preserve-merges.sh:757
-#, fuzzy
+#: git-rebase--preserve-merges.sh:812
 msgid "Could not remove CHERRY_PICK_HEAD"
-msgstr "Non è stato possibile risolvere il commit HEAD\n"
+msgstr "impossibile rimuovere CHERRY_PICK_HEAD"
 
-#: git-rebase--preserve-merges.sh:762
+#: git-rebase--preserve-merges.sh:817
 #, sh-format
 msgid ""
 "You have staged changes in your working tree.\n"
@@ -21078,233 +24201,208 @@ msgid ""
 "\n"
 "  git rebase --continue\n"
 msgstr ""
+"Hai modifiche in staging nell'albero di lavoro.\n"
+"Se queste modifiche devono essere sottoposte a squash nel commit\n"
+"precedente, esegui:\n"
+"\n"
+"  git commit --amend $gpg_sign_opt_quoted\n"
+"\n"
+"Se devono essere incluse in un nuovo commit, esegui:\n"
+"\n"
+"  git commit $gpg_sign_opt_quoted\n"
+"\n"
+"In entrambi i casi, una volta finito, continua con:\n"
+"\n"
+"  git rebase --continue\n"
 
-#: git-rebase--preserve-merges.sh:779
+#: git-rebase--preserve-merges.sh:834
 msgid "Error trying to find the author identity to amend commit"
 msgstr ""
+"Errore durante la ricerca dell'identità dell'autore per la modifica del "
+"commit"
 
-#: git-rebase--preserve-merges.sh:784
+#: git-rebase--preserve-merges.sh:839
 msgid ""
 "You have uncommitted changes in your working tree. Please commit them\n"
 "first and then run 'git rebase --continue' again."
 msgstr ""
+"Ci sono modifiche di cui non è stato eseguito il commit nel tuo albero\n"
+"di lavoro. Eseguine prima il commit e quindi esegui nuovamente 'git rebase\n"
+"--continue'."
 
-#: git-rebase--preserve-merges.sh:789 git-rebase--preserve-merges.sh:793
-#, fuzzy
+#: git-rebase--preserve-merges.sh:844 git-rebase--preserve-merges.sh:848
 msgid "Could not commit staged changes."
-msgstr "non è stato possibile leggere il messaggio di commit: %s"
+msgstr "Impossibile eseguire il commit delle modifiche in staging."
 
-#: git-rebase--preserve-merges.sh:824 git-rebase--preserve-merges.sh:910
-#, fuzzy
+#: git-rebase--preserve-merges.sh:879 git-rebase--preserve-merges.sh:965
 msgid "Could not execute editor"
-msgstr "Non è stato possibile eliminare %s"
+msgstr "Impossibile eseguire l'editor"
 
-#: git-rebase--preserve-merges.sh:845
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:900
+#, sh-format
 msgid "Could not checkout $switch_to"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "Impossibile eseguire il checkout di $switch_to"
 
-#: git-rebase--preserve-merges.sh:852
+#: git-rebase--preserve-merges.sh:907
 msgid "No HEAD?"
-msgstr ""
+msgstr "Nessun'HEAD?"
 
-#: git-rebase--preserve-merges.sh:853
-#, fuzzy, sh-format
+#: git-rebase--preserve-merges.sh:908
+#, sh-format
 msgid "Could not create temporary $state_dir"
-msgstr "Non è stato possibile creare la directory '%s'"
+msgstr "Impossibile creare la directory temporanea $state_dir"
 
-#: git-rebase--preserve-merges.sh:856
-#, fuzzy
+#: git-rebase--preserve-merges.sh:911
 msgid "Could not mark as interactive"
-msgstr "Non è stato possibile leggere index"
+msgstr "Impossibile contrassegnare come interattivo"
 
-#: git-rebase--preserve-merges.sh:888
+#: git-rebase--preserve-merges.sh:943
 #, sh-format
 msgid "Rebase $shortrevisions onto $shortonto ($todocount command)"
 msgid_plural "Rebase $shortrevisions onto $shortonto ($todocount commands)"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "Rebase di $shortrevisions su $shortonto ($todocount comando)"
+msgstr[1] "Rebase di $shortrevisions su $shortonto ($todocount comandi)"
 
-#: git-rebase--preserve-merges.sh:942 git-rebase--preserve-merges.sh:947
-#, fuzzy
+#: git-rebase--preserve-merges.sh:955
+msgid "Note that empty commits are commented out"
+msgstr "Nota che i commit vuoti sono commentati"
+
+#: git-rebase--preserve-merges.sh:997 git-rebase--preserve-merges.sh:1002
 msgid "Could not init rewritten commits"
-msgstr "Non è stato possibile analizzare il commit %s\n"
+msgstr "Impossibile inizializzare i commit riscritti"
 
 #: git-sh-setup.sh:89 git-sh-setup.sh:94
 #, sh-format
 msgid "usage: $dashless $USAGE"
-msgstr ""
+msgstr "uso: $dashless $USAGE"
 
-#: git-sh-setup.sh:190
+#: git-sh-setup.sh:191
 #, sh-format
 msgid "Cannot chdir to $cdup, the toplevel of the working tree"
 msgstr ""
+"Impossibile modificare la directory corrente in $cdup, il primo livello "
+"dell'albero di lavoro"
 
-#: git-sh-setup.sh:199 git-sh-setup.sh:206
+#: git-sh-setup.sh:200 git-sh-setup.sh:207
 #, sh-format
 msgid "fatal: $program_name cannot be used without a working tree."
 msgstr ""
+"errore fatale: $program_name non può essere usato senza un albero di lavoro."
 
-#: git-sh-setup.sh:220
-#, fuzzy
+#: git-sh-setup.sh:221
 msgid "Cannot rebase: You have unstaged changes."
-msgstr "Impossibile eseguire il rebase su branch multipli"
+msgstr ""
+"Impossibile eseguire il rebase: ci sono delle modifiche non in staging."
 
-#: git-sh-setup.sh:223
+#: git-sh-setup.sh:224
 msgid "Cannot rewrite branches: You have unstaged changes."
 msgstr ""
+"Impossibile riscrivere i branch: ci sono delle modifiche non in staging."
 
-#: git-sh-setup.sh:226
+#: git-sh-setup.sh:227
 msgid "Cannot pull with rebase: You have unstaged changes."
 msgstr ""
+"Impossibile eseguire un pull seguito da un rebase: ci sono delle modifiche "
+"non in staging."
 
-#: git-sh-setup.sh:229
+#: git-sh-setup.sh:230
 #, sh-format
 msgid "Cannot $action: You have unstaged changes."
-msgstr ""
+msgstr "Impossibile eseguire $action: ci sono delle modifiche non in staging."
 
-#: git-sh-setup.sh:242
+#: git-sh-setup.sh:243
 msgid "Cannot rebase: Your index contains uncommitted changes."
 msgstr ""
+"Impossibile eseguire un rebase:: l'indice contiene modifiche di cui non è "
+"stato eseguito il commit."
 
-#: git-sh-setup.sh:245
+#: git-sh-setup.sh:246
 msgid "Cannot pull with rebase: Your index contains uncommitted changes."
 msgstr ""
+"Impossibile eseguire un pull seguito da un rebase: l'indice contiene "
+"modifiche di cui non è stato eseguito il commit."
 
-#: git-sh-setup.sh:248
+#: git-sh-setup.sh:249
 #, sh-format
 msgid "Cannot $action: Your index contains uncommitted changes."
 msgstr ""
+"Impossibile eseguire $action: l'indice contiene modifiche di cui non è stato "
+"eseguito il commit."
 
-#: git-sh-setup.sh:252
+#: git-sh-setup.sh:253
 msgid "Additionally, your index contains uncommitted changes."
 msgstr ""
+"Inoltre, l'indice contiene modifiche di cui non è stato eseguito il commit."
 
-#: git-sh-setup.sh:372
+#: git-sh-setup.sh:373
 msgid "You need to run this command from the toplevel of the working tree."
-msgstr ""
+msgstr "Devi eseguire questo comando dal primo livello dell'albero di lavoro."
 
-#: git-sh-setup.sh:377
+#: git-sh-setup.sh:378
 msgid "Unable to determine absolute path of git directory"
-msgstr ""
+msgstr "Impossibile determinare il percorso assoluto della directory Git"
 
 #. TRANSLATORS: you can adjust this to align "git add -i" status menu
-#: git-add--interactive.perl:196
+#: git-add--interactive.perl:212
 #, perl-format
 msgid "%12s %12s %s"
-msgstr ""
-
-#: git-add--interactive.perl:197
-msgid "staged"
-msgstr ""
-
-#: git-add--interactive.perl:197
-msgid "unstaged"
-msgstr ""
-
-#: git-add--interactive.perl:253 git-add--interactive.perl:278
-msgid "binary"
-msgstr ""
-
-#: git-add--interactive.perl:262 git-add--interactive.perl:316
-msgid "nothing"
-msgstr ""
-
-#: git-add--interactive.perl:298 git-add--interactive.perl:313
-#, fuzzy
-msgid "unchanged"
-msgstr "Nessuna modifica"
-
-#: git-add--interactive.perl:609
-#, fuzzy, perl-format
-msgid "added %d path\n"
-msgid_plural "added %d paths\n"
-msgstr[0] "aggiunto da loro:"
-msgstr[1] "aggiunto da loro:"
-
-#: git-add--interactive.perl:612
-#, perl-format
-msgid "updated %d path\n"
-msgid_plural "updated %d paths\n"
-msgstr[0] ""
-msgstr[1] ""
-
-#: git-add--interactive.perl:615
-#, perl-format
-msgid "reverted %d path\n"
-msgid_plural "reverted %d paths\n"
-msgstr[0] ""
-msgstr[1] ""
+msgstr "%20s %32s %s"
 
-#: git-add--interactive.perl:618
+#: git-add--interactive.perl:634
 #, perl-format
 msgid "touched %d path\n"
 msgid_plural "touched %d paths\n"
-msgstr[0] ""
-msgstr[1] ""
-
-#: git-add--interactive.perl:627
-#, fuzzy
-msgid "Update"
-msgstr "aggiornato"
-
-#: git-add--interactive.perl:639
-msgid "Revert"
-msgstr ""
-
-#: git-add--interactive.perl:662
-#, perl-format
-msgid "note: %s is untracked now.\n"
-msgstr ""
-
-#: git-add--interactive.perl:673
-msgid "Add untracked"
-msgstr ""
-
-#: git-add--interactive.perl:679
-msgid "No untracked files.\n"
-msgstr ""
+msgstr[0] "eseguito touch su %d percorso\n"
+msgstr[1] "eseguito touch su %d percorsi\n"
 
-#: git-add--interactive.perl:1033
+#: git-add--interactive.perl:1053
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
 msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà\n"
+"contrassegnato immediatamente per l'aggiunta all'area di staging."
 
-#: git-add--interactive.perl:1036
+#: git-add--interactive.perl:1056
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
 msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà\n"
+"contrassegnato immediatamente per lo stash."
 
-#: git-add--interactive.perl:1039
+#: git-add--interactive.perl:1059
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
 msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà\n"
+"contrassegnato immediatamente per la rimozione dall'area di staging."
 
-#: git-add--interactive.perl:1042 git-add--interactive.perl:1051
+#: git-add--interactive.perl:1062 git-add--interactive.perl:1071
+#: git-add--interactive.perl:1077
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for applying."
 msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà\n"
+"contrassegnato immediatamente per l'applicazione."
 
-#: git-add--interactive.perl:1045 git-add--interactive.perl:1048
+#: git-add--interactive.perl:1065 git-add--interactive.perl:1068
+#: git-add--interactive.perl:1074
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for discarding."
 msgstr ""
+"Se la patch viene applicata senza problemi, l'hunk modificato sarà\n"
+"contrassegnato immediatamente per la rimozione."
 
-#: git-add--interactive.perl:1085
-#, fuzzy, perl-format
+#: git-add--interactive.perl:1111
+#, perl-format
 msgid "failed to open hunk edit file for writing: %s"
-msgstr "copia del file in '%s' non riuscita"
-
-#: git-add--interactive.perl:1086
-msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
-msgstr ""
+msgstr "apertura del file di modifica hunk in scrittura non riuscita: %s"
 
-#: git-add--interactive.perl:1092
+#: git-add--interactive.perl:1118
 #, perl-format
 msgid ""
 "---\n"
@@ -21312,32 +24410,17 @@ msgid ""
 "To remove '%s' lines, delete them.\n"
 "Lines starting with %s will be removed.\n"
 msgstr ""
+"---\n"
+"Per rimuovere '%s' righe, rendile righe ' ' (contesto).\n"
+"Per rimuovere '%s' righe, eliminale.\n"
+"Le righe che iniziano con %s saranno rimosse.\n"
 
-#. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: git-add--interactive.perl:1100
-msgid ""
-"If it does not apply cleanly, you will be given an opportunity to\n"
-"edit again.  If all lines of the hunk are removed, then the edit is\n"
-"aborted and the hunk is left unchanged.\n"
-msgstr ""
-
-#: git-add--interactive.perl:1114
-#, fuzzy, perl-format
+#: git-add--interactive.perl:1140
+#, perl-format
 msgid "failed to open hunk edit file for reading: %s"
-msgstr "impossibile aprire o leggere %s"
-
-#. TRANSLATORS: do not translate [y/n]
-#. The program will only accept that input
-#. at this point.
-#. Consider translating (saying "no" discards!) as
-#. (saying "n" for "no" discards!) if the translation
-#. of the word "no" does not start with n.
-#: git-add--interactive.perl:1213
-msgid ""
-"Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
-msgstr ""
+msgstr "apertura del file di modifica hunk in lettura non riuscita: %s"
 
-#: git-add--interactive.perl:1222
+#: git-add--interactive.perl:1248
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -21345,8 +24428,16 @@ msgid ""
 "a - stage this hunk and all later hunks in the file\n"
 "d - do not stage this hunk or any of the later hunks in the file"
 msgstr ""
+"y - aggiungi quest'hunk all'area di staging\n"
+"n - non aggiungere quest'hunk all'area di staging\n"
+"q - esci; non aggiungere né quest'hunk né quelli rimanenti all'area di "
+"staging\n"
+"a - aggiungi quest'hunk e tutti quelli successivi nel file all'area di "
+"staging\n"
+"d - non aggiungere né quest'hunk né quelli successivi nel file all'area di "
+"staging"
 
-#: git-add--interactive.perl:1228
+#: git-add--interactive.perl:1254
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -21354,8 +24445,13 @@ msgid ""
 "a - stash this hunk and all later hunks in the file\n"
 "d - do not stash this hunk or any of the later hunks in the file"
 msgstr ""
+"y - esegui lo stash di quest'hunk\n"
+"n - non eseguire lo stash di quest'hunk\n"
+"q - esci; non eseguire lo stash di quest'hunk né di quelli rimanenti\n"
+"a - esegui lo stash di quest'hunk e di tutti quelli successivi nel file\n"
+"d - non eseguire lo stash né di quest'hunk né di quelli successivi nel file"
 
-#: git-add--interactive.perl:1234
+#: git-add--interactive.perl:1260
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -21363,8 +24459,16 @@ msgid ""
 "a - unstage this hunk and all later hunks in the file\n"
 "d - do not unstage this hunk or any of the later hunks in the file"
 msgstr ""
+"y - rimuovi quest'hunk dall'area di staging\n"
+"n - non rimuovere quest'hunk dall'area di staging\n"
+"q - esci; non rimuovere né quest'hunk né quelli rimanenti dall'area di "
+"staging\n"
+"a - rimuovi quest'hunk e tutti quelli successivi nel file dall'area di "
+"staging\n"
+"d - non rimuovere né quest'hunk né quelli successivi nel file dall'area di "
+"staging"
 
-#: git-add--interactive.perl:1240
+#: git-add--interactive.perl:1266
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -21372,8 +24476,13 @@ msgid ""
 "a - apply this hunk and all later hunks in the file\n"
 "d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
+"y - applica quest'hunk all'indice\n"
+"n - non applicare quest'hunk all'indice\n"
+"q - esci; non applicare né quest'hunk né quelli rimanenti\n"
+"a - applica quest'hunk e tutti quelli successivi nel file\n"
+"d - non applicare né quest'hunk né quelli successivi nel file"
 
-#: git-add--interactive.perl:1246
+#: git-add--interactive.perl:1272 git-add--interactive.perl:1290
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -21381,8 +24490,13 @@ msgid ""
 "a - discard this hunk and all later hunks in the file\n"
 "d - do not discard this hunk or any of the later hunks in the file"
 msgstr ""
+"y - rimuovi quest'hunk dall'albero di lavoro\n"
+"n - non rimuovere quest'hunk dall'albero di lavoro\n"
+"q - esci; non rimuovere né quest'hunk né quelli rimanenti\n"
+"a - rimuovi quest'hunk e tutti quelli successivi nel file\n"
+"d - non rimuovere né quest'hunk né quelli successivi nel file"
 
-#: git-add--interactive.perl:1252
+#: git-add--interactive.perl:1278
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -21390,238 +24504,143 @@ msgid ""
 "a - discard this hunk and all later hunks in the file\n"
 "d - do not discard this hunk or any of the later hunks in the file"
 msgstr ""
+"y - rimuovi quest'hunk dall'indice e dall'albero di lavoro\n"
+"n - non rimuovere quest'hunk dall'indice e dall'albero di lavoro\n"
+"q - esci; non rimuovere né quest'hunk né quelli rimanenti\n"
+"a - rimuovi quest'hunk e tutti quelli successivi nel file\n"
+"d - non rimuovere né quest'hunk né quelli successivi nel file"
 
-#: git-add--interactive.perl:1258
+#: git-add--interactive.perl:1284
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
-"q - quit; do not apply this hunk or any of the remaining ones\n"
-"a - apply this hunk and all later hunks in the file\n"
-"d - do not apply this hunk or any of the later hunks in the file"
-msgstr ""
-
-#: git-add--interactive.perl:1273
-msgid ""
-"g - select a hunk to go to\n"
-"/ - search for a hunk matching the given regex\n"
-"j - leave this hunk undecided, see next undecided hunk\n"
-"J - leave this hunk undecided, see next hunk\n"
-"k - leave this hunk undecided, see previous undecided hunk\n"
-"K - leave this hunk undecided, see previous hunk\n"
-"s - split the current hunk into smaller hunks\n"
-"e - manually edit the current hunk\n"
-"? - print help\n"
-msgstr ""
-
-#: git-add--interactive.perl:1304
-msgid "The selected hunks do not apply to the index!\n"
-msgstr ""
-
-#: git-add--interactive.perl:1305
-msgid "Apply them to the worktree anyway? "
-msgstr ""
-
-#: git-add--interactive.perl:1308
-msgid "Nothing was applied.\n"
-msgstr ""
-
-#: git-add--interactive.perl:1319
-#, perl-format
-msgid "ignoring unmerged: %s\n"
-msgstr ""
-
-#: git-add--interactive.perl:1328
-#, fuzzy
-msgid "Only binary files changed.\n"
-msgstr " 0 file modificati\n"
-
-#: git-add--interactive.perl:1330
-#, fuzzy
-msgid "No changes.\n"
-msgstr "Nessuna modifica"
-
-#: git-add--interactive.perl:1338
-#, fuzzy
-msgid "Patch update"
-msgstr "[tag aggiornata]"
-
-#: git-add--interactive.perl:1390
-#, perl-format
-msgid "Stage mode change [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1391
-#, perl-format
-msgid "Stage deletion [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1392
-#, perl-format
-msgid "Stage this hunk [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1395
-#, perl-format
-msgid "Stash mode change [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1396
-#, perl-format
-msgid "Stash deletion [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1397
-#, perl-format
-msgid "Stash this hunk [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1400
-#, perl-format
-msgid "Unstage mode change [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1401
-#, perl-format
-msgid "Unstage deletion [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1402
-#, perl-format
-msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1405
-#, perl-format
-msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1406
-#, perl-format
-msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1407
-#, perl-format
-msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1410
-#, perl-format
-msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1411
-#, perl-format
-msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
-msgstr ""
-
-#: git-add--interactive.perl:1412
-#, perl-format
-msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
+"q - quit; do not apply this hunk or any of the remaining ones\n"
+"a - apply this hunk and all later hunks in the file\n"
+"d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
+"y - applica quest'hunk all'indice e all'albero di lavoro\n"
+"n - non applicare quest'hunk all'indice e all'albero di lavoro\n"
+"q - esci; non applicare né quest'hunk né quelli rimanenti\n"
+"a - applica quest'hunk e tutti quelli successivi nel file\n"
+"d - non applicare né quest'hunk né quelli successivi nel file"
 
-#: git-add--interactive.perl:1415
-#, perl-format
-msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
+#: git-add--interactive.perl:1296
+msgid ""
+"y - apply this hunk to worktree\n"
+"n - do not apply this hunk to worktree\n"
+"q - quit; do not apply this hunk or any of the remaining ones\n"
+"a - apply this hunk and all later hunks in the file\n"
+"d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
+"y - applica quest'hunk all'albero di lavoro\n"
+"n - non applicare quest'hunk all'albero di lavoro\n"
+"q - esci; non applicare né quest'hunk né quelli rimanenti\n"
+"a - applica quest'hunk e tutti quelli successivi nel file\n"
+"d - non applicare né quest'hunk né quelli successivi nel file"
 
-#: git-add--interactive.perl:1416
-#, perl-format
-msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
+#: git-add--interactive.perl:1311
+msgid ""
+"g - select a hunk to go to\n"
+"/ - search for a hunk matching the given regex\n"
+"j - leave this hunk undecided, see next undecided hunk\n"
+"J - leave this hunk undecided, see next hunk\n"
+"k - leave this hunk undecided, see previous undecided hunk\n"
+"K - leave this hunk undecided, see previous hunk\n"
+"s - split the current hunk into smaller hunks\n"
+"e - manually edit the current hunk\n"
+"? - print help\n"
 msgstr ""
+"g - seleziona un hunk a cui andare\n"
+"/ - cerca un hunk corrispondente all'espressione regolare data\n"
+"j - non decidere in merito a quest'hunk, vai al successivo hunk per cui non "
+"è stata presa una decisione\n"
+"J - non decidere in merito a quest'hunk, vai all'hunk successivo\n"
+"k - non decidere in merito a quest'hunk, vai al precedente hunk per cui non "
+"è stata presa una decisione\n"
+"K - non decidere in merito a quest'hunk, vai all'hunk precedente\n"
+"s - suddividi l'hunk corrente in hunk più piccoli\n"
+"e - modifica manualmente l'hunk corrente\n"
+"? - stampa una guida\n"
+
+#: git-add--interactive.perl:1342
+msgid "The selected hunks do not apply to the index!\n"
+msgstr "Gli hunk selezionati non si applicano senza problemi all'indice!\n"
 
-#: git-add--interactive.perl:1417
+#: git-add--interactive.perl:1357
 #, perl-format
-msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
-msgstr ""
+msgid "ignoring unmerged: %s\n"
+msgstr "ignoro ciò che non è stato sottoposto a merge: %s\n"
 
-#: git-add--interactive.perl:1420
+#: git-add--interactive.perl:1468
 #, perl-format
-msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
-msgstr ""
+msgid "Apply mode change to worktree [y,n,q,a,d%s,?]? "
+msgstr "Applicare la modifica modo all'albero di lavoro [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1421
+#: git-add--interactive.perl:1469
 #, perl-format
-msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
-msgstr ""
+msgid "Apply deletion to worktree [y,n,q,a,d%s,?]? "
+msgstr "Applicare l'eliminazione all'albero di lavoro [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1422
+#: git-add--interactive.perl:1470
 #, perl-format
-msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
-msgstr ""
+msgid "Apply this hunk to worktree [y,n,q,a,d%s,?]? "
+msgstr "Applicare quest'hunk all'albero di lavoro [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1522
+#: git-add--interactive.perl:1570
 msgid "No other hunks to goto\n"
-msgstr ""
+msgstr "Nessun altro hunk a cui andare\n"
 
-#: git-add--interactive.perl:1529
-msgid "go to which hunk (<ret> to see more)? "
-msgstr ""
-
-#: git-add--interactive.perl:1531
-msgid "go to which hunk? "
-msgstr ""
-
-#: git-add--interactive.perl:1540
-#, fuzzy, perl-format
+#: git-add--interactive.perl:1588
+#, perl-format
 msgid "Invalid number: '%s'\n"
-msgstr "%s non valido: '%s'"
+msgstr "Numero non valido: '%s'\n"
 
-#: git-add--interactive.perl:1545
+#: git-add--interactive.perl:1593
 #, perl-format
 msgid "Sorry, only %d hunk available.\n"
 msgid_plural "Sorry, only %d hunks available.\n"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "Mi dispiace, è disponibile solo %d hunk.\n"
+msgstr[1] "Mi dispiace, sono disponibili solo %d hunk.\n"
 
-#: git-add--interactive.perl:1571
+#: git-add--interactive.perl:1619
 msgid "No other hunks to search\n"
-msgstr ""
+msgstr "Nessun altro hunk in cui ricercare\n"
 
-#: git-add--interactive.perl:1575
-msgid "search for regex? "
-msgstr ""
-
-#: git-add--interactive.perl:1588
+#: git-add--interactive.perl:1636
 #, perl-format
 msgid "Malformed search regexp %s: %s\n"
-msgstr ""
+msgstr "Espressione regolare di ricerca %s malformata: %s\n"
 
-#: git-add--interactive.perl:1598
-#, fuzzy
+#: git-add--interactive.perl:1646
 msgid "No hunk matches the given pattern\n"
-msgstr "applica le modifiche corrispondenti al path specificato"
+msgstr "Nessun hunk corrisponde al pattern fornito\n"
 
-#: git-add--interactive.perl:1610 git-add--interactive.perl:1632
+#: git-add--interactive.perl:1658 git-add--interactive.perl:1680
 msgid "No previous hunk\n"
-msgstr ""
+msgstr "Nessun hunk precedente\n"
 
-#: git-add--interactive.perl:1619 git-add--interactive.perl:1638
+#: git-add--interactive.perl:1667 git-add--interactive.perl:1686
 msgid "No next hunk\n"
-msgstr ""
+msgstr "Nessun hunk successivo\n"
 
-#: git-add--interactive.perl:1644
+#: git-add--interactive.perl:1692
 msgid "Sorry, cannot split this hunk\n"
-msgstr ""
+msgstr "Mi dispiace, non posso suddividere quest'hunk\n"
 
-#: git-add--interactive.perl:1650
+#: git-add--interactive.perl:1698
 #, perl-format
 msgid "Split into %d hunk.\n"
 msgid_plural "Split into %d hunks.\n"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "Suddiviso in %d hunk.\n"
+msgstr[1] "Suddiviso in %d hunk.\n"
 
-#: git-add--interactive.perl:1660
+#: git-add--interactive.perl:1708
 msgid "Sorry, cannot edit this hunk\n"
-msgstr ""
-
-#: git-add--interactive.perl:1706
-msgid "Review diff"
-msgstr ""
+msgstr "Mi dispiace, non posso modificare quest'hunk\n"
 
 #. TRANSLATORS: please do not translate the command names
 #. 'status', 'update', 'revert', etc.
-#: git-add--interactive.perl:1725
+#: git-add--interactive.perl:1773
 msgid ""
 "status        - show paths with changes\n"
 "update        - add working tree state to the staged set of changes\n"
@@ -21631,93 +24650,106 @@ msgid ""
 "add untracked - add contents of untracked files to the staged set of "
 "changes\n"
 msgstr ""
-
-#: git-add--interactive.perl:1742 git-add--interactive.perl:1747
-#: git-add--interactive.perl:1750 git-add--interactive.perl:1757
-#: git-add--interactive.perl:1761 git-add--interactive.perl:1767
+"status        - visualizza i percorsi con modifiche\n"
+"update        - aggiunge lo stato dell'albero di lavoro all'insieme delle\n"
+"                modifiche nell'area di staging\n"
+"revert        - ripristina l'insieme delle modifiche nell'area di staging\n"
+"                alla versione HEAD\n"
+"patch         - seleziona e aggiorna gli hunk in modo selettivo\n"
+"diff          - visualizza le differenze fra HEAD e l'indice\n"
+"add untracked - aggiunge i contenuti dei file non tracciati all'insieme di\n"
+"                modifiche nell'area di staging\n"
+
+#: git-add--interactive.perl:1790 git-add--interactive.perl:1795
+#: git-add--interactive.perl:1798 git-add--interactive.perl:1805
+#: git-add--interactive.perl:1808 git-add--interactive.perl:1815
+#: git-add--interactive.perl:1819 git-add--interactive.perl:1825
 msgid "missing --"
-msgstr ""
+msgstr "-- mancante"
 
-#: git-add--interactive.perl:1763
-#, fuzzy, perl-format
+#: git-add--interactive.perl:1821
+#, perl-format
 msgid "unknown --patch mode: %s"
-msgstr "sconosciuto:    %s"
+msgstr "modalità --patch sconosciuta: %s"
 
-#: git-add--interactive.perl:1769 git-add--interactive.perl:1775
+#: git-add--interactive.perl:1827 git-add--interactive.perl:1833
 #, perl-format
 msgid "invalid argument %s, expecting --"
-msgstr ""
+msgstr "argomento %s non valido, atteso --"
 
 #: git-send-email.perl:138
 msgid "local zone differs from GMT by a non-minute interval\n"
 msgstr ""
+"il fuso orario locale differisce da GMT di un intervallo non multiplo di un "
+"minuto\n"
 
 #: git-send-email.perl:145 git-send-email.perl:151
 msgid "local time offset greater than or equal to 24 hours\n"
-msgstr ""
+msgstr "l'offset del fuso orario locale è maggiore o uguale a 24 ore\n"
 
-#: git-send-email.perl:219 git-send-email.perl:225
+#: git-send-email.perl:223 git-send-email.perl:229
 msgid "the editor exited uncleanly, aborting everything"
-msgstr ""
+msgstr "l'editor non è terminato regolarmente, interrompo tutte le operazioni"
 
-#: git-send-email.perl:302
+#: git-send-email.perl:310
 #, perl-format
 msgid ""
 "'%s' contains an intermediate version of the email you were composing.\n"
 msgstr ""
+"'%s' contiene una versione intermedia dell'e-mail che stavi componendo.\n"
 
-#: git-send-email.perl:307
+#: git-send-email.perl:315
 #, perl-format
 msgid "'%s.final' contains the composed email.\n"
-msgstr ""
+msgstr "'%s.final' contiene l'e-mail composta.\n"
 
-#: git-send-email.perl:326
-#, fuzzy
+#: git-send-email.perl:408
 msgid "--dump-aliases incompatible with other options\n"
-msgstr "--patch non è compatibile con tutte le altre opzioni"
+msgstr "--dump-aliases non è compatibile con altre opzioni\n"
 
-#: git-send-email.perl:395 git-send-email.perl:650
-#, fuzzy
+#: git-send-email.perl:481 git-send-email.perl:683
 msgid "Cannot run git format-patch from outside a repository\n"
-msgstr "--cached al di fuori di un repository"
+msgstr "Impossibile eseguire git format-patch al di fuori di un repository\n"
 
-#: git-send-email.perl:398
+#: git-send-email.perl:484
 msgid ""
 "`batch-size` and `relogin` must be specified together (via command-line or "
 "configuration option)\n"
 msgstr ""
+"`batch-size` e `relogin` devono essere specificati insieme (sulla riga di "
+"comando o tramite un'opzione di configurazione)\n"
 
-#: git-send-email.perl:468
+#: git-send-email.perl:497
 #, perl-format
 msgid "Unknown --suppress-cc field: '%s'\n"
-msgstr ""
+msgstr "Campo --suppress-cc sconosciuto: '%s'\n"
 
-#: git-send-email.perl:497
-#, fuzzy, perl-format
+#: git-send-email.perl:528
+#, perl-format
 msgid "Unknown --confirm setting: '%s'\n"
-msgstr "Commit %s sconosciuto"
+msgstr "Impostazione --confirm sconosciuta: '%s'\n"
 
-#: git-send-email.perl:525
+#: git-send-email.perl:556
 #, perl-format
 msgid "warning: sendmail alias with quotes is not supported: %s\n"
-msgstr ""
+msgstr "attenzione: non sono supportati alias sendmail con virgolette: %s\n"
 
-#: git-send-email.perl:527
+#: git-send-email.perl:558
 #, perl-format
 msgid "warning: `:include:` not supported: %s\n"
-msgstr ""
+msgstr "attenzione: `:include:` non supportato: %s\n"
 
-#: git-send-email.perl:529
+#: git-send-email.perl:560
 #, perl-format
 msgid "warning: `/file` or `|pipe` redirection not supported: %s\n"
-msgstr ""
+msgstr "attenzione: redirezioni `/file` o `|pipe` non supportate: %s\n"
 
-#: git-send-email.perl:534
+#: git-send-email.perl:565
 #, perl-format
 msgid "warning: sendmail line is not recognized: %s\n"
-msgstr ""
+msgstr "attenzione: riga sendmail non riconosciuta: %s\n"
 
-#: git-send-email.perl:616
+#: git-send-email.perl:649
 #, perl-format
 msgid ""
 "File '%s' exists but it could also be the range of commits\n"
@@ -21726,38 +24758,49 @@ msgid ""
 "    * Saying \"./%s\" if you mean a file; or\n"
 "    * Giving --format-patch option if you mean a range.\n"
 msgstr ""
+"Il file '%s' esiste ma tale stringa potrebbe corrispondere\n"
+"anche all'intervallo di commit per cui generare delle patch.\n"
+"Specifica qual è il caso corretto...\n"
+"\n"
+"    * ...usando \"./%s\" se intendi riferirti al file, o...\n"
+"    * ...fornendo l'opzione --format-patch se ti riferisci\n"
+"      a un intervallo.\n"
 
-#: git-send-email.perl:637
-#, fuzzy, perl-format
+#: git-send-email.perl:670
+#, perl-format
 msgid "Failed to opendir %s: %s"
-msgstr "apertura di '%s' non riuscita"
+msgstr "opendir di %s non riuscita: %s"
 
-#: git-send-email.perl:661
+#: git-send-email.perl:694
 #, perl-format
 msgid ""
 "fatal: %s: %s\n"
 "warning: no patches were sent\n"
 msgstr ""
+"errore fatale: %s: %s\n"
+"attenzione: non è stata inviata alcuna patch\n"
 
-#: git-send-email.perl:672
-#, fuzzy
+#: git-send-email.perl:705
 msgid ""
 "\n"
 "No patch files specified!\n"
 "\n"
-msgstr "Nome del branch non specificato"
+msgstr ""
+"\n"
+"Nessun file patch specificato!\n"
+"\n"
 
-#: git-send-email.perl:685
+#: git-send-email.perl:718
 #, perl-format
 msgid "No subject line in %s?"
-msgstr ""
+msgstr "Riga oggetto assente in %s?"
 
-#: git-send-email.perl:695
-#, fuzzy, perl-format
+#: git-send-email.perl:728
+#, perl-format
 msgid "Failed to open for writing %s: %s"
-msgstr "Non è stato possibile aprire '%s' per la scrittura"
+msgstr "Apertura di %s in scrittura non riuscita: %s"
 
-#: git-send-email.perl:706
+#: git-send-email.perl:739
 msgid ""
 "Lines beginning in \"GIT:\" will be removed.\n"
 "Consider including an overall diffstat or table of contents\n"
@@ -21765,38 +24808,45 @@ msgid ""
 "\n"
 "Clear the body content if you don't wish to send a summary.\n"
 msgstr ""
+"Le righe che iniziano con \"GIT:\" saranno rimosse.\n"
+"Valuta di includere un diffstat globale o un sommario per\n"
+"la patch che stai scrivendo.\n"
+"\n"
+"Rimuovi il corpo se non vuoi inviare un sommario.\n"
 
-#: git-send-email.perl:730
-#, fuzzy, perl-format
+#: git-send-email.perl:763
+#, perl-format
 msgid "Failed to open %s: %s"
-msgstr "apertura di '%s' non riuscita"
+msgstr "Apertura di %s non riuscita: %s"
 
-#: git-send-email.perl:747
-#, fuzzy, perl-format
+#: git-send-email.perl:780
+#, perl-format
 msgid "Failed to open %s.final: %s"
-msgstr "apertura di '%s' non riuscita"
+msgstr "Apertura di %s.final non riuscita: %s"
 
-#: git-send-email.perl:790
+#: git-send-email.perl:823
 msgid "Summary email is empty, skipping it\n"
-msgstr ""
+msgstr "E-mail riassuntiva vuota, la ometto\n"
 
 #. TRANSLATORS: please keep [y/N] as is.
-#: git-send-email.perl:825
+#: git-send-email.perl:858
 #, perl-format
 msgid "Are you sure you want to use <%s> [y/N]? "
-msgstr ""
+msgstr "Usare <%s> [y/N]? "
 
-#: git-send-email.perl:880
+#: git-send-email.perl:913
 msgid ""
 "The following files are 8bit, but do not declare a Content-Transfer-"
 "Encoding.\n"
 msgstr ""
+"I seguenti file sono codificati a 8 bit ma non dichiarano un Content-"
+"Transfer-Encoding.\n"
 
-#: git-send-email.perl:885
+#: git-send-email.perl:918
 msgid "Which 8bit encoding should I declare [UTF-8]? "
-msgstr ""
+msgstr "Che codifica a 8 bit devo dichiarare [UTF-8]? "
 
-#: git-send-email.perl:893
+#: git-send-email.perl:926
 #, perl-format
 msgid ""
 "Refusing to send because the patch\n"
@@ -21804,38 +24854,47 @@ msgid ""
 "has the template subject '*** SUBJECT HERE ***'. Pass --force if you really "
 "want to send.\n"
 msgstr ""
+"Mi rifiuto di eseguire l'invio perché la patch\n"
+"\t%s\n"
+"ha come oggetto nel modello '*** SUBJECT HERE ***'. Fornisci l'opzione --"
+"force se vuoi veramente procedere con l'invio.\n"
 
-#: git-send-email.perl:912
+#: git-send-email.perl:945
 msgid "To whom should the emails be sent (if anyone)?"
 msgstr ""
+"A chi dovranno essere inviate le e-mail (se devono essere inviate a "
+"qualcuno)?"
 
-#: git-send-email.perl:930
+#: git-send-email.perl:963
 #, perl-format
 msgid "fatal: alias '%s' expands to itself\n"
-msgstr ""
+msgstr "errore fatale: l'alias '%s' si espande in se stesso\n"
 
-#: git-send-email.perl:942
+#: git-send-email.perl:975
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr ""
+"Message-ID da usare nell'intestazione In-Reply-To per la prima e-mail (se "
+"dev'essere usato)? "
 
-#: git-send-email.perl:1000 git-send-email.perl:1008
+#: git-send-email.perl:1033 git-send-email.perl:1041
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
-msgstr ""
+msgstr "errore: impossibile estrarre un indirizzo valido da %s\n"
 
 #. TRANSLATORS: Make sure to include [q] [d] [e] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:1012
+#: git-send-email.perl:1045
 msgid "What to do with this address? ([q]uit|[d]rop|[e]dit): "
 msgstr ""
+"Cosa devo fare con quest'indirizzo? (Esci [q]|scarta [d]|modifica [e]): "
 
-#: git-send-email.perl:1329
-#, fuzzy, perl-format
+#: git-send-email.perl:1362
+#, perl-format
 msgid "CA path \"%s\" does not exist"
-msgstr "il repository '%s' non esiste"
+msgstr "Il percorso CA \"%s\" non esiste"
 
-#: git-send-email.perl:1412
+#: git-send-email.perl:1445
 msgid ""
 "    The Cc list above has been expanded by additional\n"
 "    addresses found in the patch commit message. By default\n"
@@ -21848,136 +24907,460 @@ msgid ""
 "    run 'git config --global sendemail.confirm auto'.\n"
 "\n"
 msgstr ""
+"    L'elenco Cc di cui sopra è stato espanso aggiungendo\n"
+"    indirizzi aggiuntivi trovati nel messaggio di commit della\n"
+"    patch. Per impostazione predefinita send-email richiede\n"
+"    come procedere prima dell'invio ogniqualvolta si verifichi\n"
+"    tale evenienza. Questo comportamento è controllato\n"
+"    dall'impostazione di configurazione sendemail.confirm.\n"
+"\n"
+"    Per ulteriori informazioni, esegui 'git send-email --help'.\n"
+"    Per mantenere il comportamento corrente, ma non\n"
+"    visualizzare più questo messaggio, esegui 'git config\n"
+"    --global sendemail.confirm auto'.\n"
+"\n"
 
 #. TRANSLATORS: Make sure to include [y] [n] [e] [q] [a] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:1427
+#: git-send-email.perl:1460
 msgid "Send this email? ([y]es|[n]o|[e]dit|[q]uit|[a]ll): "
 msgstr ""
+"Inviare quest'e-mail? (Sì [y]|[n]o|modifica [e]|esci [q]|invia tutte [a]): "
 
-#: git-send-email.perl:1430
+#: git-send-email.perl:1463
 msgid "Send this email reply required"
-msgstr ""
+msgstr "È richiesta una risposta alla richiesta di invio e-mail"
 
-#: git-send-email.perl:1458
+#: git-send-email.perl:1491
 msgid "The required SMTP server is not properly defined."
-msgstr ""
+msgstr "Il server SMTP richiesto non è definito in modo adeguato."
 
-#: git-send-email.perl:1505
+#: git-send-email.perl:1538
 #, perl-format
 msgid "Server does not support STARTTLS! %s"
-msgstr ""
+msgstr "Il server non supporta STARTTLS! %s"
 
-#: git-send-email.perl:1510 git-send-email.perl:1514
+#: git-send-email.perl:1543 git-send-email.perl:1547
 #, perl-format
 msgid "STARTTLS failed! %s"
-msgstr ""
+msgstr "STARTTLS non riuscito! %s"
 
-#: git-send-email.perl:1523
+#: git-send-email.perl:1556
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
 msgstr ""
+"Impossibile inizializzare SMTP in modo adeguato. Controlla la configurazione "
+"e usa --smtp-debug."
 
-#: git-send-email.perl:1541
-#, fuzzy, perl-format
+#: git-send-email.perl:1574
+#, perl-format
 msgid "Failed to send %s\n"
-msgstr "stat di %s non riuscito\n"
+msgstr "Invio di %s non riuscito\n"
 
-#: git-send-email.perl:1544
+#: git-send-email.perl:1577
 #, perl-format
 msgid "Dry-Sent %s\n"
-msgstr ""
+msgstr "Test invio %s riuscito\n"
 
-#: git-send-email.perl:1544
-#, fuzzy, perl-format
+#: git-send-email.perl:1577
+#, perl-format
 msgid "Sent %s\n"
-msgstr "Rimozione di %s\n"
+msgstr "%s inviato\n"
 
-#: git-send-email.perl:1546
+#: git-send-email.perl:1579
 msgid "Dry-OK. Log says:\n"
-msgstr ""
+msgstr "Esecuzione di prova riuscita. Il registro è il seguente:\n"
 
-#: git-send-email.perl:1546
+#: git-send-email.perl:1579
 msgid "OK. Log says:\n"
-msgstr ""
+msgstr "Operazione riuscita. Il registro è il seguente:\n"
 
-#: git-send-email.perl:1558
+#: git-send-email.perl:1591
 msgid "Result: "
-msgstr ""
+msgstr "Risultato: "
 
-#: git-send-email.perl:1561
+#: git-send-email.perl:1594
 msgid "Result: OK\n"
-msgstr ""
+msgstr "Risultato: OK\n"
 
-#: git-send-email.perl:1579
-#, fuzzy, perl-format
+#: git-send-email.perl:1612
+#, perl-format
 msgid "can't open file %s"
-msgstr "impossibile aprire il file pack '%s'"
+msgstr "impossibile aprire il file %s"
 
-#: git-send-email.perl:1626 git-send-email.perl:1646
+#: git-send-email.perl:1659 git-send-email.perl:1679
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
-msgstr ""
+msgstr "(mbox) Aggiungo cc: %s dalla riga '%s'\n"
 
-#: git-send-email.perl:1632
+#: git-send-email.perl:1665
 #, perl-format
 msgid "(mbox) Adding to: %s from line '%s'\n"
-msgstr ""
+msgstr "(mbox) Aggiungo to: %s dalla riga '%s'\n"
 
-#: git-send-email.perl:1685
+#: git-send-email.perl:1718
 #, perl-format
 msgid "(non-mbox) Adding cc: %s from line '%s'\n"
-msgstr ""
+msgstr "(non mbox) Aggiungo cc: %s dalla riga '%s'\n"
 
-#: git-send-email.perl:1720
+#: git-send-email.perl:1753
 #, perl-format
 msgid "(body) Adding cc: %s from line '%s'\n"
-msgstr ""
+msgstr "(corpo) Aggiungo cc: %s dalla riga '%s'\n"
 
-#: git-send-email.perl:1831
-#, fuzzy, perl-format
+#: git-send-email.perl:1864
+#, perl-format
 msgid "(%s) Could not execute '%s'"
-msgstr "Non è stato possibile impostare '%s'"
+msgstr "(%s) Impossibile eseguire '%s'"
 
-#: git-send-email.perl:1838
+#: git-send-email.perl:1871
 #, perl-format
 msgid "(%s) Adding %s: %s from: '%s'\n"
-msgstr ""
+msgstr "(%s) Aggiungo %s: %s da: '%s'\n"
 
-#: git-send-email.perl:1842
-#, fuzzy, perl-format
+#: git-send-email.perl:1875
+#, perl-format
 msgid "(%s) failed to close pipe to '%s'"
-msgstr "copia del file in '%s' non riuscita"
+msgstr "(%s) chiusura della pipe a '%s' non riuscita"
 
-#: git-send-email.perl:1872
+#: git-send-email.perl:1905
 msgid "cannot send message as 7bit"
-msgstr ""
+msgstr "impossibile inviare il messaggio con codifica a 7 bit"
 
-#: git-send-email.perl:1880
-#, fuzzy
+#: git-send-email.perl:1913
 msgid "invalid transfer encoding"
-msgstr "riferimento non valido: %s"
+msgstr "codifica di trasferimento non valida"
 
-#: git-send-email.perl:1921 git-send-email.perl:1973 git-send-email.perl:1983
-#, fuzzy, perl-format
+#: git-send-email.perl:1954 git-send-email.perl:2006 git-send-email.perl:2016
+#, perl-format
 msgid "unable to open %s: %s\n"
-msgstr "impossibile spostare %s in %s"
+msgstr "impossibile aprire %s: %s\n"
 
-#: git-send-email.perl:1924
+#: git-send-email.perl:1957
 #, perl-format
 msgid "%s: patch contains a line longer than 998 characters"
-msgstr ""
+msgstr "%s: la patch contiene una riga più lunga di 998 caratteri"
 
-#: git-send-email.perl:1941
+#: git-send-email.perl:1974
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
-msgstr ""
+msgstr "Salto %s con il suffisso di backup '%s'.\n"
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:1945
+#: git-send-email.perl:1978
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
-msgstr "Inviare %s? [y|N]:"
+msgstr "Inviare %s? [y|N]: "
+
+#~ msgid "{drop,keep,ask}"
+#~ msgstr "{drop,keep,ask}"
+
+#, c-format
+#~ msgid "Stage mode change [y,n,a,q,d%s,?]? "
+#~ msgstr "Modifica modo stage [y,n,a,q,d%s,?]? "
+
+#, c-format
+#~ msgid "Stage deletion [y,n,a,q,d%s,?]? "
+#~ msgstr "Eliminazione stage [y,n,a,q,d%s,?]? "
+
+#, c-format
+#~ msgid "Stage this hunk [y,n,a,q,d%s,?]? "
+#~ msgstr "Eseguire lo stage di quest'hunk [y,n,a,q,d%s,?]? "
+
+#~ msgid ""
+#~ "If the patch applies cleanly, the edited hunk will immediately be\n"
+#~ "marked for staging.\n"
+#~ msgstr ""
+#~ "Se la patch viene applicata senza problemi, l'hunk modificato sarà\n"
+#~ "contrassegnato immediatamente per l'aggiunta all'area di staging.\n"
+
+#~ msgid ""
+#~ "y - stage this hunk\n"
+#~ "n - do not stage this hunk\n"
+#~ "q - quit; do not stage this hunk or any of the remaining ones\n"
+#~ "a - stage this and all the remaining hunks\n"
+#~ "d - do not stage this hunk nor any of the remaining hunks\n"
+#~ msgstr ""
+#~ "y - aggiungi quest'hunk all'area di staging\n"
+#~ "n - non aggiungere quest'hunk all'area di staging\n"
+#~ "q - esci; non aggiungere né quest'hunk né quelli rimanenti all'area di "
+#~ "staging\n"
+#~ "a - aggiungi quest'hunk e tutti quelli successivi nel file all'area di "
+#~ "staging\n"
+#~ "d - non aggiungere né quest'hunk né quelli successivi nel file all'area "
+#~ "di staging\n"
+
+#, c-format
+#~ msgid "could not copy '%s' to '%s'."
+#~ msgstr "impossibile copiare '%s' in '%s'."
+
+#~ msgid "malformed ident line"
+#~ msgstr "riga ident malformata"
+
+#~ msgid "corrupted author without date information"
+#~ msgstr "informazioni sull'autore corrotte (senza data)"
+
+#, c-format
+#~ msgid "could not parse '%.*s'"
+#~ msgstr "impossibile analizzare '%.*s'"
+
+#, c-format
+#~ msgid "could not checkout %s"
+#~ msgstr "impossibile eseguire il checkout di %s"
+
+#, c-format
+#~ msgid "filename in tree entry contains backslash: '%s'"
+#~ msgstr "il nome file nella voce albero contiene una barra rovesciata: '%s'"
+
+#, c-format
+#~ msgid "Use -f if you really want to add them.\n"
+#~ msgstr "Usa -f se vuoi davvero aggiungerli.\n"
+
+#, c-format
+#~ msgid "Maybe you wanted to say 'git add .'?\n"
+#~ msgstr "Forse intendevi dire 'git add .'?\n"
+
+#, c-format
+#~ msgid "packfile is invalid: %s"
+#~ msgstr "packfile non valido: %s"
+
+#, c-format
+#~ msgid "unable to open packfile for reuse: %s"
+#~ msgstr "impossibile aprire il packfile per il suo riuso: %s"
+
+#~ msgid "unable to seek in reused packfile"
+#~ msgstr "impossibile eseguire seek nel packfile riusato"
+
+#~ msgid "unable to read from reused packfile"
+#~ msgstr "impossibile leggere dal packfile riusato"
+
+#~ msgid "no HEAD?"
+#~ msgstr "nessun'HEAD?"
+
+#~ msgid "make committer date match author date"
+#~ msgstr ""
+#~ "fai corrispondere la data della persona che ha eseguito il commit alla "
+#~ "data autore"
+
+#~ msgid "ignore author date and use current date"
+#~ msgstr "ignora la data autore e usa la data corrente"
+
+#~ msgid "synonym of --reset-author-date"
+#~ msgstr "sinonimo di --reset-author-date"
+
+#~ msgid "ignore changes in whitespace"
+#~ msgstr "ignora modifiche agli spazi bianchi"
+
+#~ msgid "preserve empty commits during rebase"
+#~ msgstr "mantieni i commit vuoti durante il rebase"
+
+#~ msgid "cannot combine --use-bitmap-index with object filtering"
+#~ msgstr "impossibile combinare --use-bitmap-index con il filtraggio oggetti"
+
+#, sh-format
+#~ msgid ""
+#~ "The following path is ignored by one of your .gitignore files:\n"
+#~ "$sm_path\n"
+#~ "Use -f if you really want to add it."
+#~ msgstr ""
+#~ "Il seguente percorso è ignorato da uno dei tuoi file .gitignore:\n"
+#~ "$sm_path\n"
+#~ "Usa -f se vuoi davvero aggiungerlo."
+
+#, c-format
+#~ msgid "unable to get tree for %s"
+#~ msgstr "impossibile recuperare l'albero per %s"
+
+#~ msgid "Use an experimental heuristic to improve diffs"
+#~ msgstr "Usa un'euristica sperimentale per migliorare i diff"
+
+#~ msgid "git commit-graph [--object-dir <objdir>]"
+#~ msgstr "git commit-graph [--object-dir <directory oggetti>]"
+
+#~ msgid "git commit-graph read [--object-dir <objdir>]"
+#~ msgstr "git commit-graph read [--object-dir <directory oggetti>]"
+
+#, c-format
+#~ msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
+#~ msgstr ""
+#~ "valore core.untrackedCache '%s' non valido; utilizzerò il valore "
+#~ "predefinito 'keep'"
+
+#~ msgid "cannot change partial clone promisor remote"
+#~ msgstr "impossibile modificare il remoto promettente del clone parziale"
+
+#~ msgid "error building trees"
+#~ msgstr "errore durante la costruzione degli alberi"
+
+#, c-format
+#~ msgid "invalid date format '%s' in '%s'"
+#~ msgstr "formato data '%s' non valido in '%s'"
+
+#~ msgid "writing root commit"
+#~ msgstr "scrittura commit radice in corso"
+
+#, 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"
+
+#~ msgid ""
+#~ "--filter can only be used with the remote configured in extensions."
+#~ "partialClone"
+#~ msgstr ""
+#~ "--filter può essere usato solo con il remoto configurato nelle estensioni."
+#~ "partialClone"
+
+#~ msgid "verify commit-msg hook"
+#~ msgstr "verifica hook commit-msg"
+
+#~ msgid "cannot combine '--rebase-merges' with '--strategy-option'"
+#~ msgstr "impossibile combinare '--rebase-merges' con '--strategy-option'"
+
+#, c-format
+#~ msgid "invalid sparse value '%s'"
+#~ msgstr "valore sparse non valido: '%s'"
+
+#~ 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."
+
+#~ 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"
+
+#~ msgid ""
+#~ "log.mailmap is not set; its implicit value will change in an\n"
+#~ "upcoming release. To squelch this message and preserve current\n"
+#~ "behaviour, set the log.mailmap configuration value to false.\n"
+#~ "\n"
+#~ "To squelch this message and adopt the new behaviour now, set the\n"
+#~ "log.mailmap configuration value to true.\n"
+#~ "\n"
+#~ "See 'git help config' and search for 'log.mailmap' for further "
+#~ "information."
+#~ msgstr ""
+#~ "log.mailmap non è impostato; il suo valore implicito sarà modificato\n"
+#~ "in una prossima versione. Per eliminare questo messaggio e mantenere\n"
+#~ "il comportamento attuale, imposta il valore di configurazione\n"
+#~ "log.mailmap a false.\n"
+#~ "\n"
+#~ "Per eliminare questo messaggio e adottare il nuovo comportamento ora,\n"
+#~ "imposta il valore di configurazione log.mailmap a true.\n"
+#~ "\n"
+#~ "Vedi 'git help config' e cerca 'log.mailmap' per ulteriori informazioni."
+
+#~ msgid "Server supports multi_ack_detailed"
+#~ msgstr "Il server supporta multi_ack_detailes"
+
+#~ msgid "Server supports no-done"
+#~ msgstr "Il server supporta no-done"
+
+#~ msgid "Server supports multi_ack"
+#~ msgstr "Il server supporta multi_ack"
+
+#~ msgid "Server supports side-band-64k"
+#~ msgstr "Il server supporta side-band-64k"
+
+#~ msgid "Server supports side-band"
+#~ msgstr "Il server supporta side-band"
+
+#~ msgid "Server supports allow-tip-sha1-in-want"
+#~ msgstr "Il server supporta allow-tip-sha1-in-want"
+
+#~ msgid "Server supports allow-reachable-sha1-in-want"
+#~ msgstr "Il server supporta allow-reachable-sha1-in-want"
+
+#~ msgid "Server supports ofs-delta"
+#~ msgstr "Il server supporta ofs-delta"
+
+#~ msgid "(HEAD detached at %s)"
+#~ msgstr "(HEAD scollegato su %s)"
+
+#~ msgid "(HEAD detached from %s)"
+#~ msgstr "(HEAD scollegato da %s)"
+
+#~ msgid "Checking out files"
+#~ msgstr "Checkout dei file in corso"
+
+#~ 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."
+
+#~ msgid "failed to stat %s\n"
+#~ msgstr "stat di %s non riuscito\n"
+
+#~ msgid ""
+#~ "If you wish to skip this commit, use:\n"
+#~ "\n"
+#~ "    git reset\n"
+#~ "\n"
+#~ "Then \"git cherry-pick --continue\" will resume cherry-picking\n"
+#~ "the remaining commits.\n"
+#~ msgstr ""
+#~ "Se vuoi ignorare questo commit, usa:\n"
+#~ "\n"
+#~ "    git reset\n"
+#~ "\n"
+#~ "Quindi il comando \"git cherry-pick --continue\" farà riprendere\n"
+#~ "il cherry picking per i commit rimanenti.\n"
+
+#~ msgid "unrecognized verb: %s"
+#~ msgstr "verbo non riconosciuto: %s"
+
+#~ msgid "hash version %X does not match version %X"
+#~ msgstr "la versione dell'hash %X non corrisponde alla versione %X"
+
+#~ msgid "option '%s' requires a value"
+#~ msgstr "l'opzione '%s' richiede un valore"
+
+#~ msgid "could not transform the todo list"
+#~ msgstr "impossibile trasformare l'elenco todo"
+
+#~ msgid "default"
+#~ msgstr "impostazione predefinita"
+
+#~ msgid "Could not create directory '%s'"
+#~ msgstr "Non è stato possibile creare la directory '%s'"
+
+#, fuzzy
+#~ msgid "could not open %s"
+#~ msgstr "impossibile aprire '%s'"
+
+#, fuzzy
+#~ msgid "Could not move back to $head_name"
+#~ msgstr "Non è stato possibile rimuovere il branch %s"
+
+#, fuzzy
+#~ msgid "fatal: cannot combine '--signoff' with '--preserve-merges'"
+#~ msgstr "Impossibile combinare --no-ff con --ff-only."
+
+#, fuzzy
+#~ msgid "fatal: cannot combine '--preserve-merges' with '--rebase-merges'"
+#~ msgstr "Impossibile combinare --no-ff con --ff-only."
+
+#, fuzzy
+#~ msgid "fatal: cannot combine '--rebase-merges' with '--strategy-option'"
+#~ msgstr "Impossibile combinare --no-ff con --ff-only."
+
+#, fuzzy
+#~ msgid "fatal: cannot combine '--rebase-merges' with '--strategy'"
+#~ msgstr "Impossibile combinare --no-ff con --ff-only."
+
+#, fuzzy
+#~ msgid "Does not point to a valid commit: $onto_name"
+#~ msgstr "'%s' non punta ad un commit"
+
+#, fuzzy
+#~ msgid "Changes to $onto:"
+#~ msgstr "Modifiche di cui verrà eseguito il commit:"
 
 #~ msgid "ignoring unknown color-moved-ws mode '%s'"
 #~ msgstr "modalità color-moved-ws sconosciuta '%s' ignorata"
@@ -22000,9 +25383,6 @@ msgstr "Inviare %s? [y|N]:"
 #~ msgid "unable to write sha1 filename %s"
 #~ msgstr "impossibile scrivere il file sha1 con nome %s"
 
-#~ msgid "unable to write sha1 file"
-#~ msgstr "impossibile scrivere il file sha1"
-
 #~ msgid "cannot read sha1_file for %s"
 #~ msgstr "impossibile leggere il file sha1 per %s"
 
@@ -22016,10 +25396,6 @@ msgstr "Inviare %s? [y|N]:"
 #~ msgid "could not parse '%s' (looking for '%s')"
 #~ msgstr "non è stato possibile leggere il file di log '%s'"
 
-#, fuzzy
-#~ msgid "bad quoting on %s value in '%s'"
-#~ msgstr "Valore di %s errato: '%s'"
-
 #, fuzzy
 #~ msgid "Can't stat %s"
 #~ msgstr "impossibile eseguire lo stat di '%s'"
@@ -22027,14 +25403,6 @@ msgstr "Inviare %s? [y|N]:"
 #~ msgid "No such remote: %s"
 #~ msgstr "Remote non esistente: %s"
 
-#, fuzzy
-#~ msgid "Applied autostash."
-#~ msgstr "Patch %s applicata correttamente."
-
-#, fuzzy
-#~ msgid "Cannot store $stash_sha1"
-#~ msgstr "Impossibile inizializzare stash"
-
 #~ msgid " %d file changed"
 #~ msgid_plural " %d files changed"
 #~ msgstr[0] " %d file modificato"