about summary refs log tree commit diff
path: root/third_party/git/po/pt_PT.po
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/po/pt_PT.po')
-rw-r--r--third_party/git/po/pt_PT.po19947
1 files changed, 14811 insertions, 5136 deletions
diff --git a/third_party/git/po/pt_PT.po b/third_party/git/po/pt_PT.po
index 8a2d55a8b666..61ff13f028cf 100644
--- a/third_party/git/po/pt_PT.po
+++ b/third_party/git/po/pt_PT.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2017-04-23 09:54+0800\n"
+"POT-Creation-Date: 2020-10-10 09:32+0800\n"
 "PO-Revision-Date: 2017-05-01 21:17+0000\n"
 "Last-Translator: Vasco Almeida <vascomalmeida@sapo.pt>\n"
 "Language-Team: Portuguese\n"
@@ -20,38 +20,797 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 "X-Generator: Virtaal 0.7.1\n"
 
-#: advice.c:55
+#: add-interactive.c:368
+#, fuzzy, c-format
+msgid "Huh (%s)?"
+msgstr "O quê (%s)?\n"
+
+#: add-interactive.c:521 add-interactive.c:822 reset.c:65 sequencer.c:3250
+#: sequencer.c:3698 sequencer.c:3840 builtin/rebase.c:1526
+#: builtin/rebase.c:1944
+msgid "could not read index"
+msgstr "não foi possível ler o índice"
+
+#: add-interactive.c:576 git-add--interactive.perl:269
+#: git-add--interactive.perl:294
+msgid "binary"
+msgstr "binário"
+
+#: add-interactive.c:634 git-add--interactive.perl:278
+#: git-add--interactive.perl:332
+msgid "nothing"
+msgstr "nada"
+
+#: add-interactive.c:635 git-add--interactive.perl:314
+#: git-add--interactive.perl:329
+msgid "unchanged"
+msgstr "não alterado"
+
+#: add-interactive.c:672 git-add--interactive.perl:643
+msgid "Update"
+msgstr "Atualizar"
+
+#: add-interactive.c:689 add-interactive.c:877
+#, fuzzy, c-format
+msgid "could not stage '%s'"
+msgstr "não foi possível obter stat de '%s'"
+
+#: add-interactive.c:695 add-interactive.c:884 reset.c:89 sequencer.c:3444
+#, fuzzy
+msgid "could not write index"
+msgstr "não foi possível ler o índice"
+
+#: 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] "%d caminho atualizado\n"
+msgstr[1] "%d caminhos atualizados\n"
+
+#: add-interactive.c:716 git-add--interactive.perl:678
+#, c-format, perl-format
+msgid "note: %s is untracked now.\n"
+msgstr "nota: %s é agora não controlado.\n"
+
+#: add-interactive.c:721 apply.c:4127 builtin/checkout.c:295
+#: builtin/reset.c:145
+#, c-format
+msgid "make_cache_entry failed for path '%s'"
+msgstr "falha ao invocar make_cache_entry em '%s'"
+
+#: add-interactive.c:751 git-add--interactive.perl:655
+msgid "Revert"
+msgstr "Reverter"
+
+#: add-interactive.c:767
+#, fuzzy
+msgid "Could not parse HEAD^{tree}"
+msgstr "não foi possível analisar o commit HEAD"
+
+#: 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] "%d caminho revertido\n"
+msgstr[1] "%d caminhos revertidos\n"
+
+#: add-interactive.c:856 git-add--interactive.perl:695
+#, c-format
+msgid "No untracked files.\n"
+msgstr "Nenhum ficheiros não controlado.\n"
+
+#: add-interactive.c:860 git-add--interactive.perl:689
+msgid "Add untracked"
+msgstr "Adicionar não controlados"
+
+#: 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] "%d caminho adicionar\n"
+msgstr[1] "%d caminhos adicionados\n"
+
+#: add-interactive.c:917
+#, fuzzy, c-format
+msgid "ignoring unmerged: %s"
+msgstr "ignorado não integrado: %s\n"
+
+#: add-interactive.c:929 add-patch.c:1738 git-add--interactive.perl:1371
+#, c-format
+msgid "Only binary files changed.\n"
+msgstr "Apenas ficheiros binários alterados.\n"
+
+#: add-interactive.c:931 add-patch.c:1736 git-add--interactive.perl:1373
+#, c-format
+msgid "No changes.\n"
+msgstr "Sem alterações.\n"
+
+#: add-interactive.c:935 git-add--interactive.perl:1381
+msgid "Patch update"
+msgstr "Atualizar patch"
+
+#: add-interactive.c:974 git-add--interactive.perl:1794
+msgid "Review diff"
+msgstr "Rever diff"
+
+#: add-interactive.c:1002
+#, fuzzy
+msgid "show paths with changes"
+msgstr "mostrar ficheiros com correspondências no paginador"
+
+#: add-interactive.c:1004
+msgid "add working tree state to the staged set of changes"
+msgstr ""
+
+#: add-interactive.c:1006
+msgid "revert staged set of changes back to the HEAD version"
+msgstr ""
+
+#: add-interactive.c:1008
+#, fuzzy
+msgid "pick hunks and update selectively"
+msgstr "selecionar blocos interativamente"
+
+#: add-interactive.c:1010
+#, fuzzy
+msgid "view diff between HEAD and index"
+msgstr "repor HEAD e índice"
+
+#: add-interactive.c:1012
+msgid "add contents of untracked files to the staged set of changes"
+msgstr ""
+
+#: add-interactive.c:1020 add-interactive.c:1069
+msgid "Prompt help:"
+msgstr ""
+
+#: add-interactive.c:1022
+#, fuzzy
+msgid "select a single item"
+msgstr "selecionar pai principal"
+
+#: add-interactive.c:1024
+#, fuzzy
+msgid "select a range of items"
+msgstr "selecionar o tratamento de tags assinadas"
+
+#: add-interactive.c:1026
+#, fuzzy
+msgid "select multiple ranges"
+msgstr "%s tem múltiplos valores"
+
+#: add-interactive.c:1028 add-interactive.c:1073
+msgid "select item based on unique prefix"
+msgstr ""
+
+#: add-interactive.c:1030
+#, fuzzy
+msgid "unselect specified items"
+msgstr "usar ficheiro de modelo especificado"
+
+#: add-interactive.c:1032
+msgid "choose all items"
+msgstr ""
+
+#: add-interactive.c:1034
+msgid "(empty) finish selecting"
+msgstr ""
+
+#: add-interactive.c:1071
+msgid "select a numbered item"
+msgstr ""
+
+#: add-interactive.c:1075
+msgid "(empty) select nothing"
+msgstr ""
+
+#: add-interactive.c:1083 builtin/clean.c:816 git-add--interactive.perl:1891
+msgid "*** Commands ***"
+msgstr "*** Comandos ***"
+
+#: add-interactive.c:1084 builtin/clean.c:817 git-add--interactive.perl:1888
+msgid "What now"
+msgstr "E agora"
+
+#: add-interactive.c:1136 git-add--interactive.perl:213
+msgid "staged"
+msgstr "preparado"
+
+#: add-interactive.c:1136 git-add--interactive.perl:213
+msgid "unstaged"
+msgstr "não preparado"
+
+#: add-interactive.c:1136 apply.c:4984 apply.c:4987 builtin/am.c:2270
+#: builtin/am.c:2273 builtin/bugreport.c:133 builtin/clone.c:123
+#: builtin/fetch.c:147 builtin/merge.c:275 builtin/pull.c:190
+#: builtin/submodule--helper.c:409 builtin/submodule--helper.c:1818
+#: builtin/submodule--helper.c:1821 builtin/submodule--helper.c:2326
+#: builtin/submodule--helper.c:2329 builtin/submodule--helper.c:2572
+#: git-add--interactive.perl:213
+msgid "path"
+msgstr "caminho"
+
+#: add-interactive.c:1143
+#, fuzzy
+msgid "could not refresh index"
+msgstr "não foi possível ler o índice"
+
+#: add-interactive.c:1157 builtin/clean.c:781 git-add--interactive.perl:1805
 #, c-format
-msgid "hint: %.*s\n"
+msgid "Bye.\n"
+msgstr "Adeus.\n"
+
+#: add-patch.c:34 git-add--interactive.perl:1433
+#, fuzzy, c-format, perl-format
+msgid "Stage mode change [y,n,q,a,d%s,?]? "
+msgstr "Preparar alteração de modo [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:35 git-add--interactive.perl:1434
+#, fuzzy, c-format, perl-format
+msgid "Stage deletion [y,n,q,a,d%s,?]? "
+msgstr "Preparar eliminação [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:36 git-add--interactive.perl:1435
+#, fuzzy, c-format, perl-format
+msgid "Stage addition [y,n,q,a,d%s,?]? "
+msgstr "Preparar eliminação [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:37 git-add--interactive.perl:1436
+#, fuzzy, c-format, perl-format
+msgid "Stage this hunk [y,n,q,a,d%s,?]? "
+msgstr "Preparar este excerto [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:39
+#, fuzzy
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"staging."
+msgstr ""
+"Se o patch se aplicar corretamente, o excerto editado será marcado\n"
+"como preparado imediatamente."
+
+#: add-patch.c:42
+#, fuzzy
+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 - preparar este excerto\n"
+"n - não preparar este excerto\n"
+"q - sair; não preparar este excerto nem os restantes\n"
+"a - preparar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não preparar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:56 git-add--interactive.perl:1439
+#, fuzzy, c-format, perl-format
+msgid "Stash mode change [y,n,q,a,d%s,?]? "
+msgstr "Esconder alteração de modo [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:57 git-add--interactive.perl:1440
+#, fuzzy, c-format, perl-format
+msgid "Stash deletion [y,n,q,a,d%s,?]? "
+msgstr "Esconder eliminação [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:58 git-add--interactive.perl:1441
+#, fuzzy, c-format, perl-format
+msgid "Stash addition [y,n,q,a,d%s,?]? "
+msgstr "Esconder eliminação [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:59 git-add--interactive.perl:1442
+#, fuzzy, c-format, perl-format
+msgid "Stash this hunk [y,n,q,a,d%s,?]? "
+msgstr "Esconder este excerto [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:61
+#, fuzzy
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"stashing."
+msgstr ""
+"Se o patch se aplicar corretamente, o excerto editado será marcado\n"
+"como escondido imediatamente."
+
+#: add-patch.c:64
+#, fuzzy
+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 - esconder este excerto\n"
+"n - não esconder este excerto\n"
+"q - sair; não esconder este excerto nem os restantes\n"
+"a - esconder este excerto e todos os seguintes no ficheiro\n"
+"d - não esconder este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:80 git-add--interactive.perl:1445
+#, fuzzy, c-format, perl-format
+msgid "Unstage mode change [y,n,q,a,d%s,?]? "
+msgstr "Não preparar alteração de modo [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:81 git-add--interactive.perl:1446
+#, fuzzy, c-format, perl-format
+msgid "Unstage deletion [y,n,q,a,d%s,?]? "
+msgstr "Não preparar eliminação [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:82 git-add--interactive.perl:1447
+#, fuzzy, c-format, perl-format
+msgid "Unstage addition [y,n,q,a,d%s,?]? "
+msgstr "Não preparar eliminação [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:83 git-add--interactive.perl:1448
+#, fuzzy, c-format, perl-format
+msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
+msgstr "Não preparar este excerto [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:85
+#, fuzzy
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"unstaging."
+msgstr ""
+"Se o patch se aplicar corretamente, o excerto editado será marcado\n"
+"como não preparado imediatamente."
+
+#: add-patch.c:88
+#, fuzzy
+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 - despreparar este excerto\n"
+"n - não despreparar este excerto\n"
+"q - sair; não despreparar este excerto nem outros restantes\n"
+"a - despreparar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não despreparar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:103 git-add--interactive.perl:1451
+#, fuzzy, c-format, perl-format
+msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
+msgstr "Aplicar alteração de modo ao índice [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:104 git-add--interactive.perl:1452
+#, fuzzy, c-format, perl-format
+msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
+msgstr "Aplicar eliminação ao índice [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:105 git-add--interactive.perl:1453
+#, fuzzy, c-format, perl-format
+msgid "Apply addition to index [y,n,q,a,d%s,?]? "
+msgstr "Aplicar eliminação ao índice [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:106 git-add--interactive.perl:1454
+#, fuzzy, c-format, perl-format
+msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
+msgstr "Aplicar este excerto ao índice [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:108 add-patch.c:176 add-patch.c:221
+#, fuzzy
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"applying."
+msgstr ""
+"Se o patch se aplicar corretamente, o excerto editado será marcado\n"
+"para ser aplicado imediatamente."
+
+#: add-patch.c:111
+#, fuzzy
+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 - aplicar este excerto ao índice\n"
+"n - não aplicar este excerto ao índice\n"
+"q - sair; não aplicar este excerto nem os restantes\n"
+"a - aplicar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não aplicar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:126 git-add--interactive.perl:1457
+#: git-add--interactive.perl:1475
+#, fuzzy, c-format, perl-format
+msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
+msgstr "Descartar alteração de modo da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:127 git-add--interactive.perl:1458
+#: git-add--interactive.perl:1476
+#, fuzzy, c-format, perl-format
+msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
+msgstr "Descartar eliminação da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:128 git-add--interactive.perl:1459
+#: git-add--interactive.perl:1477
+#, fuzzy, c-format, perl-format
+msgid "Discard addition from worktree [y,n,q,a,d%s,?]? "
+msgstr "Descartar eliminação da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:129 git-add--interactive.perl:1460
+#: git-add--interactive.perl:1478
+#, fuzzy, c-format, perl-format
+msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
+msgstr "Descartar este excerto da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:131 add-patch.c:154 add-patch.c:199
+#, fuzzy
+msgid ""
+"If the patch applies cleanly, the edited hunk will immediately be marked for "
+"discarding."
+msgstr ""
+"Se o patch se aplicar corretamente, o excerto editado será marcado\n"
+"para ser descartado imediatamente."
+
+#: add-patch.c:134 add-patch.c:202
+#, fuzzy
+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 - descartar este excerto da árvore de trabalho\n"
+"n - não descartar este excerto da árvore de trabalho\n"
+"q - sair; não descartar este excerto nem os restantes\n"
+"a - descartar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não descartar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:149 add-patch.c:194 git-add--interactive.perl:1463
+#, fuzzy, c-format, perl-format
+msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Descartar alteração de modo do índice e da árvore de trabalho [y,n,q,a,d,/"
+"%s,?]? "
+
+#: add-patch.c:150 add-patch.c:195 git-add--interactive.perl:1464
+#, fuzzy, c-format, perl-format
+msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Descartar eliminação do índice e da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:151 add-patch.c:196 git-add--interactive.perl:1465
+#, fuzzy, c-format, perl-format
+msgid "Discard addition from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Descartar eliminação do índice e da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:152 add-patch.c:197 git-add--interactive.perl:1466
+#, fuzzy, c-format, perl-format
+msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Descartar este excerto do índice e da árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:157
+#, fuzzy
+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 - descartar este excerto do índice e da árvore de trabalho\n"
+"n - não descartar este excerto do índice nem da árvore de trabalho\n"
+"q - sair; não descartar este excerto nem nenhum dos restantes\n"
+"a - descartar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não descartar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:171 add-patch.c:216 git-add--interactive.perl:1469
+#, fuzzy, c-format, perl-format
+msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Aplicar alteração de modo ao índice e à árvore de trabalho [y,n,q,a,d,/"
+"%s,?]? "
+
+#: add-patch.c:172 add-patch.c:217 git-add--interactive.perl:1470
+#, fuzzy, c-format, perl-format
+msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Aplicar eliminação ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:173 add-patch.c:218 git-add--interactive.perl:1471
+#, fuzzy, c-format, perl-format
+msgid "Apply addition to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Aplicar eliminação ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:174 add-patch.c:219 git-add--interactive.perl:1472
+#, fuzzy, c-format, perl-format
+msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Aplicar este excerto ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
+
+#: add-patch.c:179
+#, fuzzy
+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 - aplicar este excerto ao índice e à árvore de trabalho\n"
+"n - não aplicar este excerto ao índice e à árvore de trabalho\n"
+"q - sair; não aplicar este excerto ou restantes\n"
+"a - aplicar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não aplicar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:224
+#, fuzzy
+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 - aplicar este excerto ao índice e à árvore de trabalho\n"
+"n - não aplicar este excerto ao índice e à árvore de trabalho\n"
+"q - sair; não aplicar este excerto ou restantes\n"
+"a - aplicar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não aplicar este excerto nem os excertos seguintes no ficheiro"
+
+#: add-patch.c:342
+#, fuzzy, c-format
+msgid "could not parse hunk header '%.*s'"
+msgstr "não foi possível analisar o patch '%s'"
+
+#: add-patch.c:361 add-patch.c:365
+#, fuzzy, c-format
+msgid "could not parse colored hunk header '%.*s'"
+msgstr "não foi possível abrir ou ler '%s'"
+
+#: add-patch.c:419
+#, fuzzy
+msgid "could not parse diff"
+msgstr "não foi possível analisar %s"
+
+#: add-patch.c:438
+#, fuzzy
+msgid "could not parse colored diff"
+msgstr "Não foi possível analisar a linha %d."
+
+#: add-patch.c:452
+#, fuzzy, c-format
+msgid "failed to run '%s'"
+msgstr "falha ao invocar unlink de '%s'"
+
+#: add-patch.c:611
+msgid "mismatched output from interactive.diffFilter"
+msgstr ""
+
+#: add-patch.c:612
+msgid ""
+"Your filter must maintain a one-to-one correspondence\n"
+"between its input and output lines."
+msgstr ""
+
+#: add-patch.c:785
+#, fuzzy, c-format
+msgid ""
+"expected context line #%d in\n"
+"%.*s"
+msgstr "linha de configuração %d incorreta em %s"
+
+#: add-patch.c:800
+#, c-format
+msgid ""
+"hunks do not overlap:\n"
+"%.*s\n"
+"\tdoes not end with:\n"
+"%.*s"
+msgstr ""
+
+#: add-patch.c:1076 git-add--interactive.perl:1117
+msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
+msgstr "Modo de edição manual de excerto -- ver guia rápido abaixo no final.\n"
+
+#: add-patch.c:1080
+#, fuzzy, 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"
+"Para remover linhas '%s', torne-as linhas ' ' (contexto).\n"
+"Para remover linhas '%s', elimine-as.\n"
+"Linhas começadas com %s serão removidas.\n"
+
+#. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
+#: add-patch.c:1094 git-add--interactive.perl:1131
+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 não se aplicar corretamente, ser-lhe-á dada oportunidade para editar\n"
+"de novo.  Se todas as linhas do excerto forem removidas, a edição é\n"
+"abortada e o exceto é deixado inalterado.\n"
+
+#: add-patch.c:1127
+#, fuzzy
+msgid "could not parse hunk header"
+msgstr "não foi possível analisar %s"
+
+#: add-patch.c:1172
+msgid "'git apply --cached' failed"
+msgstr ""
+
+#. 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:1241 git-add--interactive.perl:1244
+msgid ""
+"Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
+msgstr ""
+"O excerto que editou não aplica.\n"
+"Edite de novo (responder \"não\" descarta!) [y/n]? "
+
+#: add-patch.c:1284
+#, fuzzy
+msgid "The selected hunks do not apply to the index!"
+msgstr "Os excertos selecionados não aplicam ao índice!\n"
+
+#: add-patch.c:1285 git-add--interactive.perl:1348
+msgid "Apply them to the worktree anyway? "
+msgstr "Aplicá-los à árvore de trabalho mesmo assim? "
+
+#: add-patch.c:1292 git-add--interactive.perl:1351
+msgid "Nothing was applied.\n"
+msgstr "Não foi aplicado nada.\n"
+
+#: add-patch.c:1349
+#, fuzzy
+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 ""
+"g - selecionar um excerto para ir\n"
+"/ - procurar por um excerto correspondendo à regex dada\n"
+"j - deixar este excerto indecidido, ver excerto seguinte indecidido\n"
+"J - deixar este excerto indecidido, ver excerto seguinte\n"
+"k - deixar este excerto indecidido, ver excerto anterior indecidido\n"
+"K - deixar este excerto indecidido, ver excerto anterior\n"
+"s - dividir o excerto atual em excertos mais pequenos\n"
+"e - editar manualmente o excerto atual\n"
+"? - imprimir ajuda\n"
+
+#: add-patch.c:1511 add-patch.c:1521
+#, fuzzy
+msgid "No previous hunk"
+msgstr "Nenhum excerto anterior\n"
+
+#: add-patch.c:1516 add-patch.c:1526
+#, fuzzy
+msgid "No next hunk"
+msgstr "Nenhum excerto seguinte\n"
+
+#: add-patch.c:1532
+msgid "No other hunks to goto"
+msgstr ""
+
+#: add-patch.c:1543 git-add--interactive.perl:1608
+msgid "go to which hunk (<ret> to see more)? "
+msgstr "ir para que excerto (<ret> para ver mais)? "
+
+#: add-patch.c:1544 git-add--interactive.perl:1610
+msgid "go to which hunk? "
+msgstr "ir para que excerto? "
+
+#: add-patch.c:1555
+#, fuzzy, c-format
+msgid "Invalid number: '%s'"
+msgstr "Número inválido: '%s'\n"
+
+#: add-patch.c:1560
+#, fuzzy, c-format
+msgid "Sorry, only %d hunk available."
+msgid_plural "Sorry, only %d hunks available."
+msgstr[0] "Lamento, apenas %d excerto disponível.\n"
+msgstr[1] "Lamento, apenas %d excertos disponíveis.\n"
+
+#: add-patch.c:1569
+msgid "No other hunks to search"
+msgstr ""
+
+#: add-patch.c:1575 git-add--interactive.perl:1663
+msgid "search for regex? "
+msgstr "procurar por regex? "
+
+#: add-patch.c:1590
+#, fuzzy, c-format
+msgid "Malformed search regexp %s: %s"
+msgstr "Regexp de pesquisa malformada %s: %s\n"
+
+#: add-patch.c:1607
+#, fuzzy
+msgid "No hunk matches the given pattern"
+msgstr "Nenhum excerto corresponde ao padrão fornecido\n"
+
+#: add-patch.c:1614
+msgid "Sorry, cannot split this hunk"
+msgstr ""
+
+#: add-patch.c:1618
+#, fuzzy, c-format
+msgid "Split into %d hunks."
+msgstr "Dividir em %d excerto.\n"
+
+#: add-patch.c:1622
+msgid "Sorry, cannot edit this hunk"
+msgstr ""
+
+#: add-patch.c:1674
+#, fuzzy
+msgid "'git apply' failed"
+msgstr "falha ao executar o comando stash"
+
+#: advice.c:140
+#, c-format
+msgid ""
+"\n"
+"Disable this message with \"git config advice.%s false\""
+msgstr ""
+
+#: advice.c:156
+#, fuzzy, c-format
+msgid "%shint: %.*s%s\n"
 msgstr "dica: %.*s\n"
 
-#: advice.c:83
+#: advice.c:247
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr ""
 "Não é possível efetuar cherry-pick porque tem ficheiros não integrados."
 
-#: advice.c:85
+#: advice.c:249
 msgid "Committing is not possible because you have unmerged files."
 msgstr "Não é possível submeter porque tem ficheiros não integrados."
 
-#: advice.c:87
+#: advice.c:251
 msgid "Merging is not possible because you have unmerged files."
 msgstr "Não é possível integrar porque tem ficheiros não integrados."
 
-#: advice.c:89
+#: advice.c:253
 msgid "Pulling is not possible because you have unmerged files."
 msgstr "Não é possível puxar porque tem ficheiros não integrados."
 
-#: advice.c:91
+#: advice.c:255
 msgid "Reverting is not possible because you have unmerged files."
 msgstr "Não é possível reverte porque tem ficheiros não integrados."
 
-#: advice.c:93
+#: advice.c:257
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr "Não é possível efetuar %s porque tem ficheiros não integrados."
 
-#: advice.c:101
+#: advice.c:265
 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."
@@ -59,35 +818,42 @@ msgstr ""
 "Corrija-os na árvore de trabalho e use 'git add/rm <ficheiro>'\n"
 "conforme apropriado para marcá-los como resolvidos e submeta."
 
-#: advice.c:109
+#: advice.c:273
 msgid "Exiting because of an unresolved conflict."
 msgstr "A terminar devido a conflito não resolvido."
 
-#: advice.c:114 builtin/merge.c:1185
+#: advice.c:278 builtin/merge.c:1349
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Não concluído a integração (MERGE_HEAD presente)."
 
-#: advice.c:116
+#: advice.c:280
 msgid "Please, commit your changes before merging."
 msgstr "Submeta as suas alterações antes de integrar."
 
-#: advice.c:117
+#: advice.c:281
 msgid "Exiting because of unfinished merge."
 msgstr "A terminar devido a integração incompleta."
 
-#: advice.c:123
-#, c-format
+#: advice.c:287
+#, fuzzy, 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: a extrair '%s'.\n"
@@ -102,88 +868,97 @@ msgstr ""
 "  git checkout -b <novo-nome-ramo>\n"
 "\n"
 
-#: apply.c:57
+#: alias.c:50
+#, fuzzy
+msgid "cmdline ends with \\"
+msgstr "terminar entradas com NUL"
+
+#: alias.c:51
+msgid "unclosed quote"
+msgstr ""
+
+#: apply.c:69
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr "opção de espaço em branco não reconhecida '%s'"
 
-#: apply.c:73
+#: apply.c:85
 #, c-format
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "opção de ignorar espaço em branco não reconhecida '%s'"
 
-#: apply.c:125
+#: apply.c:135
 msgid "--reject and --3way cannot be used together."
 msgstr "--reject e --3way não podem ser usados juntos."
 
-#: apply.c:127
+#: apply.c:137
 msgid "--cached and --3way cannot be used together."
 msgstr "--cached e --3way não podem ser usados juntos."
 
-#: apply.c:130
+#: apply.c:140
 msgid "--3way outside a repository"
 msgstr "--3way fora de um repositório"
 
-#: apply.c:141
+#: apply.c:151
 msgid "--index outside a repository"
 msgstr "--index fora de um repositório"
 
-#: apply.c:144
+#: apply.c:154
 msgid "--cached outside a repository"
 msgstr "--cached fora de um repositório"
 
-#: apply.c:845
+#: apply.c:801
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "Não é possível preparar a regexp de carimbo de data/hora %s"
 
-#: apply.c:854
+#: apply.c:810
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec retornou %d para a entra: %s"
 
-#: apply.c:938
+#: apply.c:884
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "não foi possível encontrar o nome do ficheiro no patch na linha %d"
 
-#: apply.c:977
+#: apply.c:922
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 "git apply: git-diff incorreto - esperava-se /dev/null, obteve-se %s na linha "
 "%d"
 
-#: apply.c:983
+#: apply.c:928
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr ""
 "git apply: git-diff incorreto - o nome do novo ficheiro na linha %d é "
 "inconsistente"
 
-#: apply.c:984
+#: apply.c:929
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr ""
 "git apply: git-diff incorreto - o nome do ficheiro antigo na linha %d é "
 "inconsistente"
 
-#: apply.c:990
+#: apply.c:934
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply: git-diff incorreto - esperava-se /dev/null na linha %d"
 
-#: apply.c:1488
-#, c-format
-msgid "recount: unexpected line: %.*s"
-msgstr "recontagem: linha inesperada: %.*s"
+#: apply.c:963
+#, fuzzy, c-format
+msgid "invalid mode on line %d: %s"
+msgstr "linha de identidade inválida: %s"
 
-#: apply.c:1557
+#: apply.c:1282
 #, c-format
-msgid "patch fragment without header at line %d: %.*s"
-msgstr "fragmento de patch sem cabeçalho na linha %d: %.*s"
+msgid "inconsistent header lines %d and %d"
+msgstr ""
 
-#: apply.c:1577
+#: apply.c:1372
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -198,82 +973,92 @@ msgstr[1] ""
 "o cabeçalho do git diff não revelou o nome do ficheiro depois de se remover "
 "%d componentes de caminho (linha %d)"
 
-#: apply.c:1589
+#: apply.c:1385
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr "o cabeçalho do git diff não revela o nome do ficheiro (linha %d)"
 
-#: apply.c:1759
+#: apply.c:1481
+#, c-format
+msgid "recount: unexpected line: %.*s"
+msgstr "recontagem: linha inesperada: %.*s"
+
+#: apply.c:1550
+#, c-format
+msgid "patch fragment without header at line %d: %.*s"
+msgstr "fragmento de patch sem cabeçalho na linha %d: %.*s"
+
+#: apply.c:1753
 msgid "new file depends on old contents"
 msgstr "o novo ficheiro depende de conteúdos antigos"
 
-#: apply.c:1761
+#: apply.c:1755
 msgid "deleted file still has contents"
 msgstr "o ficheiro eliminado ainda tem conteúdos"
 
-#: apply.c:1795
+#: apply.c:1789
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "patch corrompido na linha %d"
 
-#: apply.c:1832
+#: apply.c:1826
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "o novo ficheiro %s depende de conteúdos antigos"
 
-#: apply.c:1834
+#: apply.c:1828
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "o ficheiro eliminado %s ainda tem conteúdos"
 
-#: apply.c:1837
+#: apply.c:1831
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** aviso: o ficheiro %s ficará vazio, mas não será eliminado"
 
-#: apply.c:1984
+#: apply.c:1978
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "patch binário corrompido na linha %d: %.*s"
 
-#: apply.c:2021
+#: apply.c:2015
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "patch binário não reconhecido na linha %d"
 
-#: apply.c:2182
+#: apply.c:2177
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "patch incompreensível na linha %d"
 
-#: apply.c:2265
+#: apply.c:2263
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "não é possível ler a ligação simbólica %s"
 
-#: apply.c:2269
+#: apply.c:2267
 #, c-format
 msgid "unable to open or read %s"
 msgstr "não é possível abrir ou ler %s"
 
-#: apply.c:2922
+#: apply.c:2936
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "início de linha inválido: '%c'"
 
-#: apply.c:3041
+#: 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] "Excerto nº%d bem sucedido na linha %d (%d linha deslocada)."
 msgstr[1] "Excerto nº%d bem sucedido na linha %d (%d linhas deslocadas)."
 
-#: apply.c:3053
+#: apply.c:3069
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "Contexto reduzido para (%ld/%ld) para aplicar o fragmento em %d"
 
-#: apply.c:3059
+#: apply.c:3075
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -282,563 +1067,655 @@ msgstr ""
 "ao procura por:\n"
 "%.*s"
 
-#: apply.c:3081
+#: apply.c:3097
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "falta de dados do patch binário '%s'"
 
-#: apply.c:3089
+#: apply.c:3105
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 "não é possível aplicar o reverso de um patch binário a '%s' sem o excerto "
 "reverso"
 
-#: apply.c:3135
+#: apply.c:3152
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 "não é possível aplicar patch binário a '%s' sem linha de índice completa"
 
-#: apply.c:3145
+#: apply.c:3163
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
 "o patch aplica-se a '%s' (%s), que não corresponde aos conteúdos atuais."
 
-#: apply.c:3153
+#: apply.c:3171
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
 msgstr "o patch aplica-se a um '%s' vazio mas não está vazio"
 
-#: apply.c:3171
+#: apply.c:3189
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "não é possível ler a postimage necessária %s de '%s'"
 
-#: apply.c:3184
+#: apply.c:3202
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "o patch binário não foi aplicado corretamente a '%s'"
 
-#: apply.c:3190
+#: apply.c:3209
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 "o patch binário aplicado a '%s' gera resultados incorretos (esperava-se %s, "
 "obteve-se %s)"
 
-#: apply.c:3211
+#: apply.c:3230
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "falha ao aplicar o patch: %s:%ld"
 
-#: apply.c:3333
+#: apply.c:3353
 #, c-format
 msgid "cannot checkout %s"
 msgstr "não é possível extrair %s"
 
-#: apply.c:3381 apply.c:3392 apply.c:3438 setup.c:253
+#: apply.c:3405 apply.c:3416 apply.c:3462 midx.c:72 setup.c:308
 #, c-format
 msgid "failed to read %s"
 msgstr "falha ao ler %s"
 
-#: apply.c:3389
+#: apply.c:3413
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "a ler '%s' indicado por uma ligação simbólica"
 
-#: apply.c:3418 apply.c:3658
+#: apply.c:3442 apply.c:3685
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "o caminho %s foi eliminado ou mudou de nome"
 
-#: apply.c:3501 apply.c:3672
+#: apply.c:3528 apply.c:3700
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s: não existe no índice"
 
-#: apply.c:3510 apply.c:3680
+#: apply.c:3537 apply.c:3708 apply.c:3953
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s: não tem correspondência no índice"
 
-#: apply.c:3545
+#: apply.c:3572
 msgid "repository lacks the necessary blob to fall back on 3-way merge."
 msgstr ""
 "o repositório não tem o blob necessário para recorrer a integração com 3 "
 "pontos."
 
-#: apply.c:3548
+#: apply.c:3575
 #, c-format
 msgid "Falling back to three-way merge...\n"
 msgstr "A recorrer a integração com 3 pontos...\n"
 
-#: apply.c:3564 apply.c:3568
+#: apply.c:3591 apply.c:3595
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr "não é possível ler o conteúdo atual de '%s'"
 
-#: apply.c:3580
+#: apply.c:3607
 #, c-format
 msgid "Failed to fall back on three-way merge...\n"
 msgstr "Falha a recorrer a integração com 3 pontos...\n"
 
-#: apply.c:3594
+#: apply.c:3621
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr "Patch aplicado a '%s' com conflitos.\n"
 
-#: apply.c:3599
+#: apply.c:3626
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr "Patch aplicado a '%s' com sucesso.\n"
 
-#: apply.c:3625
+#: apply.c:3652
 msgid "removal patch leaves file contents"
 msgstr "patch de remoção deixa conteúdos no ficheiro"
 
-#: apply.c:3697
+#: apply.c:3725
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s: tipo errado"
 
-#: apply.c:3699
+#: apply.c:3727
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s é do tipo %o, esperado %o"
 
-#: apply.c:3850 apply.c:3852
+#: apply.c:3892 apply.c:3894 read-cache.c:832 read-cache.c:858
+#: read-cache.c:1313
 #, c-format
 msgid "invalid path '%s'"
 msgstr "caminho inválido '%s'"
 
-#: apply.c:3908
+#: apply.c:3950
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s: já existe no índice"
 
-#: apply.c:3911
+#: apply.c:3956
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s: já existe no diretório de trabalho"
 
-#: apply.c:3931
+#: apply.c:3976
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr "o novo modo (%o) de %s não corresponde ao modo antigo (%o)"
 
-#: apply.c:3936
+#: apply.c:3981
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr "o novo modo (%o) de %s não corresponde ao modo antigo (%o) de %s"
 
-#: apply.c:3956
+#: apply.c:4001
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "o ficheiro afetado '%s' é indicado por uma ligação simbólica"
 
-#: apply.c:3960
+#: apply.c:4005
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: patch não se aplica com sucesso"
 
-#: apply.c:3975
+#: apply.c:4020
 #, c-format
 msgid "Checking patch %s..."
 msgstr "A verificar o patch %s..."
 
-#: apply.c:4066
+#: apply.c:4112
 #, c-format
 msgid "sha1 information is lacking or useless for submodule %s"
 msgstr "falta informação de sha1 ou não é útil para o submódulo %s"
 
-#: apply.c:4073
+#: apply.c:4119
 #, c-format
 msgid "mode change for %s, which is not in current HEAD"
 msgstr "alteração de modo de %s que não está na HEAD atual"
 
-#: apply.c:4076
+#: apply.c:4122
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "falta informação de sha1 ou não é útil (%s)."
 
-#: apply.c:4081 builtin/checkout.c:252 builtin/reset.c:135
-#, c-format
-msgid "make_cache_entry failed for path '%s'"
-msgstr "falha ao invocar make_cache_entry em '%s'"
-
-#: apply.c:4085
+#: apply.c:4131
 #, c-format
 msgid "could not add %s to temporary index"
 msgstr "não foi possível adicionar %s ao índice temporário"
 
-#: apply.c:4095
+#: apply.c:4141
 #, c-format
 msgid "could not write temporary index to %s"
 msgstr "não foi possível escrever índice temporário para %s"
 
-#: apply.c:4233
+#: apply.c:4279
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "não é possível remover %s do índice"
 
-#: apply.c:4268
+#: apply.c:4313
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "patch corrompido no submódulo %s"
 
-#: apply.c:4274
+#: apply.c:4319
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "não é possível obter estado do novo ficheiro criado '%s'"
 
-#: apply.c:4282
+#: apply.c:4327
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr ""
 "não é possível criar armazenamento de segurança do ficheiro recém-criado %s"
 
-#: apply.c:4288 apply.c:4432
+#: apply.c:4333 apply.c:4478
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "não é possível adicionar %s à cache"
 
-#: apply.c:4329
+#: apply.c:4376 builtin/bisect--helper.c:537
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "falha ao escrever para '%s'"
 
-#: apply.c:4333
+#: apply.c:4380
 #, c-format
 msgid "closing file '%s'"
 msgstr "a fechar o ficheiro '%s'"
 
-#: apply.c:4403
+#: apply.c:4450
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "não é possível escrever o ficheiro '%s' com o modo %o"
 
-#: apply.c:4501
+#: apply.c:4548
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Patch %s aplicado com sucesso."
 
-#: apply.c:4509
+#: apply.c:4556
 msgid "internal error"
 msgstr "erro interno"
 
-#: apply.c:4512
+#: apply.c:4559
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "A aplicar patch %%s com %d rejeição..."
 msgstr[1] "A aplicar patch %%s com %d rejeições..."
 
-#: apply.c:4523
+#: apply.c:4570
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "a truncar o nome do ficheiro .rej em %.*s.rej"
 
-#: apply.c:4531 builtin/fetch.c:739 builtin/fetch.c:988
+#: apply.c:4578 builtin/fetch.c:927 builtin/fetch.c:1228
 #, c-format
 msgid "cannot open %s"
 msgstr "não é possível abrir %s"
 
-#: apply.c:4545
+#: apply.c:4592
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Excerto nº%d aplicado com sucesso."
 
-#: apply.c:4549
+#: apply.c:4596
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Excerto nº%d rejeitado."
 
-#: apply.c:4659
+#: apply.c:4715
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "Patch '%s' ignorado."
 
-#: apply.c:4667
+#: apply.c:4723
 msgid "unrecognized input"
 msgstr "entrada não reconhecida"
 
-#: apply.c:4686
+#: apply.c:4743
 msgid "unable to read index file"
 msgstr "não foi possível ler o ficheiro de índice"
 
-#: apply.c:4823
+#: apply.c:4900
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "não é possível abrir o patch '%s': %s"
 
-#: apply.c:4850
+#: apply.c:4927
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "%d erro de espaço em branco reprimido"
 msgstr[1] "%d erros de espaço em branco reprimidos"
 
-#: apply.c:4856 apply.c:4871
+#: apply.c:4933 apply.c:4948
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] "%d linha adiciona erros de espaço em branco."
 msgstr[1] "%d linhas adicionam erros de espaço em branco."
 
-#: apply.c:4864
+#: apply.c:4941
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] "%d linha aplicada depois de corrigir erros de espaço em branco."
 msgstr[1] "%d linhas aplicadas depois de corrigir erros de espaço em branco."
 
-#: apply.c:4880 builtin/add.c:463 builtin/mv.c:298 builtin/rm.c:391
+#: apply.c:4957 builtin/add.c:618 builtin/mv.c:304 builtin/rm.c:406
 msgid "Unable to write new index file"
 msgstr "Não foi possível escrever novo ficheiro de índice"
 
-#: apply.c:4911 apply.c:4914 builtin/am.c:2277 builtin/am.c:2280
-#: builtin/clone.c:113 builtin/fetch.c:98 builtin/pull.c:180
-#: builtin/submodule--helper.c:304 builtin/submodule--helper.c:629
-#: builtin/submodule--helper.c:632 builtin/submodule--helper.c:973
-#: builtin/submodule--helper.c:976 builtin/submodule--helper.c:1161
-#: git-add--interactive.perl:239
-msgid "path"
-msgstr "caminho"
-
-#: apply.c:4912
+#: apply.c:4985
 msgid "don't apply changes matching the given path"
 msgstr "não aplicar alterações que correspondam ao caminho fornecido"
 
-#: apply.c:4915
+#: apply.c:4988
 msgid "apply changes matching the given path"
 msgstr "aplicar alterações que correspondam ao caminho fornecido"
 
-#: apply.c:4917 builtin/am.c:2286
+#: apply.c:4990 builtin/am.c:2279
 msgid "num"
 msgstr "num"
 
-#: apply.c:4918
+#: apply.c:4991
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "remover <num> barras à esquerda dos caminhos de diff tradicional"
 
-#: apply.c:4921
+#: apply.c:4994
 msgid "ignore additions made by the patch"
 msgstr "ignorar adições feitas pelo patch"
 
-#: apply.c:4923
+#: apply.c:4996
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr "em vez de aplicar o patch, mostrar o diffstat da entrada"
 
-#: apply.c:4927
+#: apply.c:5000
 msgid "show number of added and deleted lines in decimal notation"
 msgstr "mostrar número de linhas adicionadas e removidas em notação decimal"
 
-#: apply.c:4929
+#: apply.c:5002
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "em vez de aplicar o patch, mostrar um resumo da entrada"
 
-#: apply.c:4931
+#: apply.c:5004
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "em vez de aplicar o patch, verificar se o patch pode ser aplicado"
 
-#: apply.c:4933
+#: apply.c:5006
 msgid "make sure the patch is applicable to the current index"
 msgstr "garantir que o patch pode ser aplicado ao índice atual"
 
-#: apply.c:4935
+#: apply.c:5008
+msgid "mark new files with `git add --intent-to-add`"
+msgstr ""
+
+#: apply.c:5010
 msgid "apply a patch without touching the working tree"
 msgstr "aplicar um patch sem tocar na árvore de trabalho"
 
-#: apply.c:4937
+#: apply.c:5012
 msgid "accept a patch that touches outside the working area"
 msgstr "aceitar patches que alteram ficheiros fora da área de trabalho"
 
-#: apply.c:4939
+#: apply.c:5015
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "aplicar o patch também (use com --stat/--summary/--check)"
 
-#: apply.c:4941
+#: apply.c:5017
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "tentar integração com três pontos se um patch não se aplica com êxito"
 
-#: apply.c:4943
+#: apply.c:5019
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 "construir um índice temporário baseado na informação incorporada do índice"
 
-#: apply.c:4946 builtin/checkout-index.c:169 builtin/ls-files.c:508
+#: apply.c:5022 builtin/checkout-index.c:173 builtin/ls-files.c:525
 msgid "paths are separated with NUL character"
 msgstr "os caminhos estão separados por caracteres NUL"
 
-#: apply.c:4948
+#: apply.c:5024
 msgid "ensure at least <n> lines of context match"
 msgstr "garantir que, pelo menos, <n> linhas de contexto coincidem"
 
-#: apply.c:4949 builtin/am.c:2265
+#: apply.c:5025 builtin/am.c:2258 builtin/interpret-trailers.c:98
+#: builtin/interpret-trailers.c:100 builtin/interpret-trailers.c:102
+#: builtin/pack-objects.c:3562 builtin/rebase.c:1340
 msgid "action"
 msgstr "ação"
 
-#: apply.c:4950
+#: apply.c:5026
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "detetar linhas novas ou modificadas que tenham espaços em branco"
 
-#: apply.c:4953 apply.c:4956
+#: apply.c:5029 apply.c:5032
 msgid "ignore changes in whitespace when finding context"
 msgstr "ignorar alterações de espaço em branco ao procurar contexto"
 
-#: apply.c:4959
+#: apply.c:5035
 msgid "apply the patch in reverse"
 msgstr "aplicar o patch em reverso"
 
-#: apply.c:4961
+#: apply.c:5037
 msgid "don't expect at least one line of context"
 msgstr "não esperar nenhuma linha de contexto"
 
-#: apply.c:4963
+#: apply.c:5039
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "deixar os excertos rejeitados nos respetivos ficheiros *.rej"
 
-#: apply.c:4965
+#: apply.c:5041
 msgid "allow overlapping hunks"
 msgstr "permitir a sobreposição de excertos"
 
-#: apply.c:4966 builtin/add.c:267 builtin/check-ignore.c:19
-#: builtin/commit.c:1337 builtin/count-objects.c:94 builtin/fsck.c:651
-#: builtin/log.c:1867 builtin/mv.c:122 builtin/read-tree.c:134
+#: apply.c:5042 builtin/add.c:329 builtin/check-ignore.c:22
+#: builtin/commit.c:1364 builtin/count-objects.c:98 builtin/fsck.c:775
+#: builtin/log.c:2270 builtin/mv.c:123 builtin/read-tree.c:128
 msgid "be verbose"
 msgstr "ser verboso"
 
-#: apply.c:4968
+#: apply.c:5044
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 "tolerar deteções incorretas de falta de nova linha no final do ficheiro"
 
-#: apply.c:4971
+#: apply.c:5047
 msgid "do not trust the line counts in the hunk headers"
 msgstr "não confiar na contagem de linhas no cabeçalho dos excertos"
 
-#: apply.c:4973 builtin/am.c:2274
+#: apply.c:5049 builtin/am.c:2267
 msgid "root"
 msgstr "raiz"
 
-#: apply.c:4974
+#: apply.c:5050
 msgid "prepend <root> to all filenames"
 msgstr "preceder <root> a todos os nomes de ficheiro"
 
-#: archive.c:12
+#: archive-tar.c:125 archive-zip.c:345
+#, fuzzy, c-format
+msgid "cannot stream blob %s"
+msgstr "não é possível guardar %s"
+
+#: archive-tar.c:265 archive-zip.c:358
+#, fuzzy, c-format
+msgid "unsupported file mode: 0%o (SHA1: %s)"
+msgstr "versão de índice %s não suportada"
+
+#: archive-tar.c:449
+#, fuzzy, c-format
+msgid "unable to start '%s' filter"
+msgstr "não foi possível criar '%s'"
+
+#: archive-tar.c:452
+#, fuzzy
+msgid "unable to redirect descriptor"
+msgstr "não foi possível refrescar o índice"
+
+#: archive-tar.c:459
+#, c-format
+msgid "'%s' filter reported error"
+msgstr ""
+
+#: archive-zip.c:318
+#, c-format
+msgid "path is not valid UTF-8: %s"
+msgstr ""
+
+#: archive-zip.c:322
+#, c-format
+msgid "path too long (%d chars, SHA1: %s): %s"
+msgstr ""
+
+#: archive-zip.c:469 builtin/pack-objects.c:244 builtin/pack-objects.c:247
+#, c-format
+msgid "deflate error (%d)"
+msgstr "erro ao compactar (%d)"
+
+#: archive-zip.c:603
+#, c-format
+msgid "timestamp too large for this system: %<PRIuMAX>"
+msgstr ""
+
+#: archive.c:14
 msgid "git archive [<options>] <tree-ish> [<path>...]"
 msgstr "git archive [<opções>] <árvore-etc> [<caminho>...]"
 
-#: archive.c:13
+#: archive.c:15
 msgid "git archive --list"
 msgstr "git archive --list"
 
-#: archive.c:14
+#: archive.c:16
 msgid ""
 "git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> [<path>...]"
 msgstr ""
 "git archive --remote <repo> [--exec <cmd>] [<opções>] <árvore-etc> "
 "[<caminho>...]"
 
-#: archive.c:15
+#: archive.c:17
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <repo> [--exec <cmd>] --list"
 
-#: archive.c:332 builtin/add.c:152 builtin/add.c:442 builtin/rm.c:300
+#: archive.c:192
+#, fuzzy, c-format
+msgid "cannot read %s"
+msgstr "não é possível ler '%s'"
+
+#: archive.c:345 sequencer.c:445 sequencer.c:1706 sequencer.c:2852
+#: sequencer.c:3293 sequencer.c:3402 builtin/am.c:263 builtin/commit.c:786
+#: builtin/merge.c:1124
+#, c-format
+msgid "could not read '%s'"
+msgstr "não foi possível ler '%s'"
+
+#: archive.c:430 builtin/add.c:181 builtin/add.c:594 builtin/rm.c:315
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "o especificador de caminho '%s' não corresponde a nenhum ficheiro"
 
-#: archive.c:417
+#: archive.c:454
+#, fuzzy, c-format
+msgid "no such ref: %.*s"
+msgstr "referência inexistente %s"
+
+#: archive.c:460
+#, fuzzy, c-format
+msgid "not a valid object name: %s"
+msgstr "%s não é um nome de objeto válido"
+
+#: archive.c:473
+#, fuzzy, c-format
+msgid "not a tree object: %s"
+msgstr "nome de objeto inválido: %s"
+
+#: archive.c:485
+#, fuzzy
+msgid "current working directory is untracked"
+msgstr "não é possível de obter o diretório de trabalho atual"
+
+#: archive.c:526
+#, fuzzy, c-format
+msgid "File not found: %s"
+msgstr "objeto não encontrado: %s"
+
+#: archive.c:528
+#, fuzzy, c-format
+msgid "Not a regular file: %s"
+msgstr "o ficheiro %s não é um ficheiro regular"
+
+#: archive.c:553
 msgid "fmt"
 msgstr "fmt"
 
-#: archive.c:417
+#: archive.c:553
 msgid "archive format"
 msgstr "formato do arquivo"
 
-#: archive.c:418 builtin/log.c:1436
+#: archive.c:554 builtin/log.c:1760
 msgid "prefix"
 msgstr "prefixo"
 
-#: archive.c:419
+#: archive.c:555
 msgid "prepend prefix to each pathname in the archive"
 msgstr "preceder o prefixo a cada nome de caminho dentro do arquivo"
 
-#: archive.c:420 builtin/blame.c:2598 builtin/blame.c:2599 builtin/config.c:59
-#: builtin/fast-export.c:987 builtin/fast-export.c:989 builtin/grep.c:1061
-#: builtin/hash-object.c:101 builtin/ls-files.c:542 builtin/ls-files.c:545
-#: builtin/notes.c:401 builtin/notes.c:564 builtin/read-tree.c:129
-#: parse-options.h:153
+#: archive.c:556 archive.c:559 builtin/blame.c:884 builtin/blame.c:888
+#: builtin/blame.c:889 builtin/commit-tree.c:117 builtin/config.c:133
+#: builtin/fast-export.c:1208 builtin/fast-export.c:1210
+#: builtin/fast-export.c:1214 builtin/grep.c:908 builtin/hash-object.c:105
+#: builtin/ls-files.c:561 builtin/ls-files.c:564 builtin/notes.c:412
+#: builtin/notes.c:578 builtin/read-tree.c:123 parse-options.h:190
 msgid "file"
 msgstr "ficheiro"
 
-#: archive.c:421 builtin/archive.c:89
+#: archive.c:557
+#, fuzzy
+msgid "add untracked file to archive"
+msgstr "Modo inválido de ficheiros não controlados '%s'"
+
+#: archive.c:560 builtin/archive.c:90
 msgid "write the archive to this file"
 msgstr "escrever o arquivo para este ficheiro"
 
-#: archive.c:423
+#: archive.c:562
 msgid "read .gitattributes in working directory"
 msgstr "ler .gitattributes do diretório de trabalho"
 
-#: archive.c:424
+#: archive.c:563
 msgid "report archived files on stderr"
 msgstr "listar ficheiros arquivados para stderr"
 
-#: archive.c:425
+#: archive.c:564
 msgid "store only"
 msgstr "armazenar apenas"
 
-#: archive.c:426
+#: archive.c:565
 msgid "compress faster"
 msgstr "compressão rápida"
 
-#: archive.c:434
+#: archive.c:573
 msgid "compress better"
 msgstr "compressão ótima"
 
-#: archive.c:437
+#: archive.c:576
 msgid "list supported archive formats"
 msgstr "listar formatos de arquivo suportados"
 
-#: archive.c:439 builtin/archive.c:90 builtin/clone.c:103 builtin/clone.c:106
-#: builtin/submodule--helper.c:641 builtin/submodule--helper.c:982
+#: archive.c:578 builtin/archive.c:91 builtin/clone.c:113 builtin/clone.c:116
+#: builtin/submodule--helper.c:1830 builtin/submodule--helper.c:2335
 msgid "repo"
 msgstr "repo"
 
-#: archive.c:440 builtin/archive.c:91
+#: archive.c:579 builtin/archive.c:92
 msgid "retrieve the archive from remote repository <repo>"
 msgstr "obter o arquivo a partir do repositório remoto <repo>"
 
-#: archive.c:441 builtin/archive.c:92 builtin/notes.c:485
+#: archive.c:580 builtin/archive.c:93 builtin/difftool.c:715
+#: builtin/notes.c:498
 msgid "command"
 msgstr "comando"
 
-#: archive.c:442 builtin/archive.c:93
+#: archive.c:581 builtin/archive.c:94
 msgid "path to the remote git-upload-archive command"
 msgstr "caminho para o comando git-upload-archive no remoto"
 
-#: archive.c:449
+#: archive.c:588
 msgid "Unexpected option --remote"
 msgstr "Opção inesperada --remote"
 
-#: archive.c:451
+#: archive.c:590
 msgid "Option --exec can only be used together with --remote"
 msgstr "A opção --exec só pode ser usada em conjunto com --remote"
 
-#: archive.c:453
+#: archive.c:592
 msgid "Unexpected option --output"
 msgstr "Opção inesperada --output"
 
-#: archive.c:475
+#: archive.c:594
+#, fuzzy
+msgid "Options --add-file and --remote cannot be used together"
+msgstr "As opções --squash e --fixup não podem ser usadas juntas"
+
+#: archive.c:616
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr "Formato de arquivo desconhecido '%s'"
 
-#: archive.c:482
+#: archive.c:623
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr "Argumento não suportado para o formato '%s': -%d"
@@ -848,7 +1725,12 @@ msgstr "Argumento não suportado para o formato '%s': -%d"
 msgid "%.*s is not a valid attribute name"
 msgstr "%.*s não é um nome de atributo válido"
 
-#: attr.c:408
+#: attr.c:369
+#, fuzzy, c-format
+msgid "%s not allowed: %s:%d"
+msgstr "falha ao aplicar o patch: %s:%ld"
+
+#: attr.c:409
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -856,27 +1738,22 @@ msgstr ""
 "Os padrões negativos são ignorados nos atributos do git\n"
 "Use '\\!' para uma exclamação literal à esquerda."
 
-#: bisect.c:443
-#, c-format
-msgid "Could not open file '%s'"
-msgstr "Não foi possível abrir o ficheiro '%s'"
-
-#: bisect.c:448
+#: bisect.c:476
 #, c-format
 msgid "Badly quoted content in file '%s': %s"
 msgstr "Conteúdo incorretamente citado no ficheiro '%s': %s"
 
-#: bisect.c:656
+#: bisect.c:686
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr "Não se está a bissetar mais!\n"
 
-#: bisect.c:709
+#: bisect.c:753
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr "%s não é um nome de commit válido"
 
-#: bisect.c:733
+#: bisect.c:778
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -885,7 +1762,7 @@ msgstr ""
 "A base de integração %s é má (bad).\n"
 "Significa que o bug foi corrigido entre %s e [%s].\n"
 
-#: bisect.c:738
+#: bisect.c:783
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -894,7 +1771,7 @@ msgstr ""
 "A base de integração %s é nova (new).\n"
 "A propriedade foi mudada entre %s e [%s].\n"
 
-#: bisect.c:743
+#: bisect.c:788
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -903,7 +1780,7 @@ msgstr ""
 "A base de integração %s é %s.\n"
 "Significa que o primeiro commit '%s' está entre %s e [%s].\n"
 
-#: bisect.c:751
+#: bisect.c:796
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -914,7 +1791,7 @@ msgstr ""
 "git bisect não pode funcionar corretamente nesta situação.\n"
 "Talvez confundiu revisões %s e %s?\n"
 
-#: bisect.c:764
+#: bisect.c:809
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -926,36 +1803,36 @@ msgstr ""
 "%s.\n"
 "Continua-se de qualquer maneira."
 
-#: bisect.c:799
+#: bisect.c:848
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "A bissetar: uma base de integração tem de ser testada\n"
 
-#: bisect.c:850
+#: bisect.c:898
 #, c-format
 msgid "a %s revision is needed"
 msgstr "precisa-se de uma revisão %s"
 
-#: bisect.c:867 builtin/notes.c:174 builtin/tag.c:255
+#: bisect.c:928 builtin/notes.c:177 builtin/tag.c:255
 #, c-format
 msgid "could not create file '%s'"
 msgstr "não foi possível criar o ficheiro '%s'"
 
-#: bisect.c:918
+#: bisect.c:974 builtin/merge.c:150
 #, c-format
 msgid "could not read file '%s'"
 msgstr "não foi possível ler o ficheiro '%s'"
 
-#: bisect.c:948
+#: bisect.c:1014
 msgid "reading bisect refs failed"
 msgstr "falha ao ler referências bissetadas"
 
-#: bisect.c:968
+#: bisect.c:1044
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s era %s e %s em simultâneo\n"
 
-#: bisect.c:976
+#: bisect.c:1053
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -964,22 +1841,60 @@ msgstr ""
 "Nenhum commit testável encontrado.\n"
 "Talvez tenha começado com parâmetros de caminho incorretos?\n"
 
-#: bisect.c:995
+#: bisect.c:1082
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
 msgstr[0] "(aproximadamente %d passo)"
 msgstr[1] "(aproximadamente %d passos)"
 
-#. TRANSLATORS: the last %s will be replaced with
-#. "(roughly %d steps)" translation
-#: bisect.c:999
+#. TRANSLATORS: the last %s will be replaced with "(roughly %d
+#. steps)" translation.
+#.
+#: bisect.c:1088
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
 msgstr[0] "A bissetar: falta %d revisão para testar depois desta %s\n"
 msgstr[1] "A bissetar: faltam %d revisões para testar depois desta %s\n"
 
+#: blame.c:2778
+msgid "--contents and --reverse do not blend well."
+msgstr "--contents e --reverse não se misturam bem."
+
+#: blame.c:2792
+msgid "cannot use --contents with final commit object name"
+msgstr "não é possível usar --contents com nome de objeto commit final"
+
+#: blame.c:2813
+msgid "--reverse and --first-parent together require specified latest commit"
+msgstr ""
+"--reverse e --first-parent juntos requer que se especifique o último commit"
+
+#: blame.c:2822 bundle.c:213 ref-filter.c:2264 remote.c:2020 sequencer.c:2105
+#: sequencer.c:4606 submodule.c:855 builtin/commit.c:1045 builtin/log.c:404
+#: builtin/log.c:1020 builtin/log.c:1622 builtin/log.c:2029 builtin/log.c:2319
+#: builtin/merge.c:414 builtin/pack-objects.c:3380 builtin/pack-objects.c:3395
+#: builtin/shortlog.c:320
+msgid "revision walk setup failed"
+msgstr "falha ao configurar percurso de revisões"
+
+#: blame.c:2840
+msgid ""
+"--reverse --first-parent together require range along first-parent chain"
+msgstr ""
+"--reverse --first-parent juntos requer intervalo ao longo do primeiro-pai"
+
+#: blame.c:2851
+#, c-format
+msgid "no such path %s in %s"
+msgstr "o caminho %s não existe em %s"
+
+#: blame.c:2862
+#, c-format
+msgid "cannot read blob %s for path %s"
+msgstr "não é possível ler o blob %s do caminho %s"
+
 #: branch.c:53
 #, c-format
 msgid ""
@@ -999,43 +1914,43 @@ msgid "Not setting branch %s as its own upstream."
 msgstr "O ramo %s não foi configurado com ramo a montante dele próprio."
 
 #: branch.c:93
-#, c-format
-msgid "Branch %s set up to track remote branch %s from %s by rebasing."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track remote branch '%s' from '%s' by rebasing."
 msgstr "Ramo %s configurado para seguir o ramo remoto %s de %s por rebase."
 
 #: branch.c:94
-#, c-format
-msgid "Branch %s set up to track remote branch %s from %s."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track remote branch '%s' from '%s'."
 msgstr "Ramo %s configurado para seguir o ramo remoto %s de %s."
 
 #: branch.c:98
-#, c-format
-msgid "Branch %s set up to track local branch %s by rebasing."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track local branch '%s' by rebasing."
 msgstr "Ramo %s configurado para seguir o ramo local %s por rebase."
 
 #: branch.c:99
-#, c-format
-msgid "Branch %s set up to track local branch %s."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track local branch '%s'."
 msgstr "Ramo %s configurado para seguir o ramo local %s."
 
 #: branch.c:104
-#, c-format
-msgid "Branch %s set up to track remote ref %s by rebasing."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track remote ref '%s' by rebasing."
 msgstr "Ramo %s configurado para seguir a referência remota %s por rebase."
 
 #: branch.c:105
-#, c-format
-msgid "Branch %s set up to track remote ref %s."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track remote ref '%s'."
 msgstr "Ramo %s configurado para seguir a referência remota %s."
 
 #: branch.c:109
-#, c-format
-msgid "Branch %s set up to track local ref %s by rebasing."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track local ref '%s' by rebasing."
 msgstr "Ramo %s configurado para seguir a referência local %s por rebase."
 
 #: branch.c:110
-#, c-format
-msgid "Branch %s set up to track local ref %s."
+#, fuzzy, c-format
+msgid "Branch '%s' set up to track local ref '%s'."
 msgstr "Ramo %s configurado para seguir a referência local %s."
 
 #: branch.c:119
@@ -1047,32 +1962,32 @@ msgstr "Não foi possível escrever a configuração do ramo a montante"
 msgid "Not tracking: ambiguous information for ref %s"
 msgstr "Não seguido: informação da referência %s ambígua"
 
-#: branch.c:185
+#: branch.c:189
 #, c-format
 msgid "'%s' is not a valid branch name."
 msgstr "'%s' não é um nome válido para um ramo."
 
-#: branch.c:190
+#: branch.c:208
 #, c-format
 msgid "A branch named '%s' already exists."
 msgstr "Já existe um ramo designado '%s'."
 
-#: branch.c:198
+#: branch.c:213
 msgid "Cannot force update the current branch."
 msgstr "Não é possível forçar a atualização do ramo atual."
 
-#: branch.c:218
+#: branch.c:233
 #, c-format
 msgid "Cannot setup tracking information; starting point '%s' is not a branch."
 msgstr ""
 "Não é possível configurar ramo a seguir; o ponto inicial '%s' não é um ramo."
 
-#: branch.c:220
+#: branch.c:235
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr "o ramo a montante solicitado '%s' não existe"
 
-#: branch.c:222
+#: branch.c:237
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -1092,127 +2007,451 @@ msgstr ""
 "o seu homólogo remoto, pode usar \"git push -u\" para configurar\n"
 "o respetivo ramo a montante, ao mesmo tempo que publica."
 
-#: branch.c:265
+#: branch.c:281
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr "Nome de objeto inválido: '%s'."
 
-#: branch.c:285
+#: branch.c:301
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr "Nome de objeto ambíguo: '%s'."
 
-#: branch.c:290
+#: branch.c:306
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr "Ponto no ramo inválido: '%s'."
 
-#: branch.c:344
+#: branch.c:365
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "'%s' foi já extraído em '%s'"
 
-#: branch.c:364
+#: branch.c:388
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr "HEAD da árvore de trabalho %s não está atualizada"
 
-#: bundle.c:34
-#, c-format
-msgid "'%s' does not look like a v2 bundle file"
+#: bundle.c:41
+#, fuzzy, c-format
+msgid "unrecognized bundle hash algorithm: %s"
+msgstr "patch binário não reconhecido na linha %d"
+
+#: bundle.c:45
+#, fuzzy, c-format
+msgid "unknown capability '%s'"
+msgstr "Commit desconhecido %s"
+
+#: bundle.c:71
+#, fuzzy, c-format
+msgid "'%s' does not look like a v2 or v3 bundle file"
 msgstr "'%s' não parece ser um ficheiro bundle v2"
 
-#: bundle.c:61
+#: bundle.c:110
 #, c-format
 msgid "unrecognized header: %s%s (%d)"
 msgstr "cabeçalho não reconhecido: %s%s (%d)"
 
-#: bundle.c:87 sequencer.c:1339 sequencer.c:1760 builtin/commit.c:777
+#: bundle.c:136 rerere.c:480 rerere.c:690 sequencer.c:2357 sequencer.c:3142
+#: builtin/commit.c:814
 #, c-format
 msgid "could not open '%s'"
 msgstr "não foi possível abrir '%s'"
 
-#: bundle.c:139
+#: bundle.c:189
 msgid "Repository lacks these prerequisite commits:"
 msgstr "O repositório não possuí estes commits pré-requisitados:"
 
-#: bundle.c:163 ref-filter.c:1852 sequencer.c:1162 sequencer.c:2299
-#: builtin/blame.c:2811 builtin/commit.c:1061 builtin/log.c:353
-#: builtin/log.c:897 builtin/log.c:1347 builtin/log.c:1673 builtin/log.c:1916
-#: builtin/merge.c:359 builtin/shortlog.c:176
-msgid "revision walk setup failed"
-msgstr "falha ao configurar percurso de revisões"
+#: bundle.c:192
+#, fuzzy
+msgid "need a repository to verify a bundle"
+msgstr "É necessário um repositório para criar um bundle."
 
-#: bundle.c:185
+#: bundle.c:243
 #, c-format
 msgid "The bundle contains this ref:"
 msgid_plural "The bundle contains these %d refs:"
 msgstr[0] "O bundle contém esta referência:"
 msgstr[1] "O bundle contém estas %d referências:"
 
-#: bundle.c:192
+#: bundle.c:250
 msgid "The bundle records a complete history."
 msgstr "O pacote regista um histórico completo."
 
-#: bundle.c:194
+#: bundle.c:252
 #, c-format
 msgid "The bundle requires this ref:"
 msgid_plural "The bundle requires these %d refs:"
 msgstr[0] "O bundle requer esta referência:"
 msgstr[1] "O bundle requer estas %d referências:"
 
-#: bundle.c:253
+#: bundle.c:319
+#, fuzzy
+msgid "unable to dup bundle descriptor"
+msgstr "não foi possível atualizar %s"
+
+#: bundle.c:326
 msgid "Could not spawn pack-objects"
 msgstr "Não foi possível lançar pack-objects"
 
-#: bundle.c:264
+#: bundle.c:337
 msgid "pack-objects died"
 msgstr "pack-objects terminou inesperadamente"
 
-#: bundle.c:304
+#: bundle.c:379
 msgid "rev-list died"
 msgstr "rev-list terminou inesperadamente"
 
-#: bundle.c:353
+#: bundle.c:428
 #, c-format
 msgid "ref '%s' is excluded by the rev-list options"
 msgstr "a referência '%s' é excluída pelas opções de rev-list"
 
-#: bundle.c:443 builtin/log.c:170 builtin/log.c:1579 builtin/shortlog.c:281
+#: bundle.c:498
+#, fuzzy, c-format
+msgid "unsupported bundle version %d"
+msgstr "versão de índice %s não suportada"
+
+#: bundle.c:500
+#, c-format
+msgid "cannot write bundle version %d with algorithm %s"
+msgstr ""
+
+#: bundle.c:522 builtin/log.c:207 builtin/log.c:1918 builtin/shortlog.c:461
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "argumento não reconhecido: %s"
 
-#: bundle.c:451
+#: bundle.c:530
 msgid "Refusing to create empty bundle."
 msgstr "Criação de bundle vazio recusada."
 
-#: bundle.c:463
+#: bundle.c:540
 #, c-format
 msgid "cannot create '%s'"
 msgstr "não é possível criar '%s'"
 
-#: bundle.c:491
+#: bundle.c:565
 msgid "index-pack died"
 msgstr "index-pack terminou inesperadamente"
 
-#: color.c:300
+#: color.c:329
 #, c-format
 msgid "invalid color value: %.*s"
 msgstr "valor de cor inválido: %.*s"
 
-#: commit.c:40 sequencer.c:1572 builtin/am.c:421 builtin/am.c:457
-#: builtin/am.c:1493 builtin/am.c:2127
+#: commit-graph.c:188 midx.c:46
+#, fuzzy
+msgid "invalid hash version"
+msgstr "especificação de caminho inválida"
+
+#: commit-graph.c:246
+msgid "commit-graph file is too small"
+msgstr ""
+
+#: commit-graph.c:311
+#, fuzzy, c-format
+msgid "commit-graph signature %X does not match signature %X"
+msgstr "O commit %s não tem uma assinatura GPG."
+
+#: commit-graph.c:318
+#, fuzzy, c-format
+msgid "commit-graph version %X does not match version %X"
+msgstr "o commit %s não tem o pai %d"
+
+#: commit-graph.c:325
+#, c-format
+msgid "commit-graph hash version %X does not match version %X"
+msgstr ""
+
+#: commit-graph.c:342
+#, c-format
+msgid "commit-graph file is too small to hold %u chunks"
+msgstr ""
+
+#: commit-graph.c:361
+#, c-format
+msgid "commit-graph improper chunk offset %08x%08x"
+msgstr ""
+
+#: commit-graph.c:433
+#, c-format
+msgid "commit-graph chunk id %08x appears multiple times"
+msgstr ""
+
+#: commit-graph.c:499
+msgid "commit-graph has no base graphs chunk"
+msgstr ""
+
+#: commit-graph.c:509
+msgid "commit-graph chain does not match"
+msgstr ""
+
+#: commit-graph.c:557
+#, c-format
+msgid "invalid commit-graph chain: line '%s' not a hash"
+msgstr ""
+
+#: commit-graph.c:581
+#, fuzzy
+msgid "unable to find all commit-graph files"
+msgstr "não foi possível analisar o commit %s"
+
+#: commit-graph.c:721 commit-graph.c:785
+msgid "invalid commit position. commit-graph is likely corrupt"
+msgstr ""
+
+#: commit-graph.c:742
+#, fuzzy, c-format
+msgid "could not find commit %s"
+msgstr "não foi possível analisar o commit %s\n"
+
+#: commit-graph.c:1042 builtin/am.c:1306
+#, c-format
+msgid "unable to parse commit %s"
+msgstr "não foi possível analisar o commit %s"
+
+#: commit-graph.c:1265 builtin/pack-objects.c:2864
+#, fuzzy, c-format
+msgid "unable to get type of object %s"
+msgstr "não foi possível analisar o objeto: %s"
+
+#: commit-graph.c:1301
+msgid "Loading known commits in commit graph"
+msgstr ""
+
+#: commit-graph.c:1318
+msgid "Expanding reachable commits in commit graph"
+msgstr ""
+
+#: commit-graph.c:1338
+msgid "Clearing commit marks in commit graph"
+msgstr ""
+
+#: commit-graph.c:1357
+msgid "Computing commit graph generation numbers"
+msgstr ""
+
+#: commit-graph.c:1424
+msgid "Computing commit changed paths Bloom filters"
+msgstr ""
+
+#: commit-graph.c:1501
+#, fuzzy
+msgid "Collecting referenced commits"
+msgstr "Não foi possível inicializar commits reescritos"
+
+#: commit-graph.c:1526
+#, c-format
+msgid "Finding commits for commit graph in %d pack"
+msgid_plural "Finding commits for commit graph in %d packs"
+msgstr[0] ""
+msgstr[1] ""
+
+#: commit-graph.c:1539
+#, fuzzy, c-format
+msgid "error adding pack %s"
+msgstr "Erro ao rematar %s."
+
+#: commit-graph.c:1543
+#, c-format
+msgid "error opening index for %s"
+msgstr ""
+
+#: commit-graph.c:1582
+msgid "Finding commits for commit graph among packed objects"
+msgstr ""
+
+#: commit-graph.c:1597
+msgid "Counting distinct commits in commit graph"
+msgstr ""
+
+#: commit-graph.c:1629
+msgid "Finding extra edges in commit graph"
+msgstr ""
+
+#: commit-graph.c:1678
+msgid "failed to write correct number of base graph ids"
+msgstr ""
+
+#: commit-graph.c:1720 midx.c:826
+#, fuzzy, c-format
+msgid "unable to create leading directories of %s"
+msgstr "não foi possível criar os diretórios superiores de '%s'"
+
+#: commit-graph.c:1733
+#, fuzzy
+msgid "unable to create temporary graph layer"
+msgstr "não foi possível criar índice temporário"
+
+#: commit-graph.c:1738
+#, fuzzy, c-format
+msgid "unable to adjust shared permissions for '%s'"
+msgstr "Não é possível adicionar os resultados da integração de '%s'"
+
+#: commit-graph.c:1808
+#, c-format
+msgid "Writing out commit graph in %d pass"
+msgid_plural "Writing out commit graph in %d passes"
+msgstr[0] ""
+msgstr[1] ""
+
+#: commit-graph.c:1853
+#, fuzzy
+msgid "unable to open commit-graph chain file"
+msgstr "não é possível abrir ou ler %s"
+
+#: commit-graph.c:1869
+#, fuzzy
+msgid "failed to rename base commit-graph file"
+msgstr "Falha ao criar os ficheiros de saída"
+
+#: commit-graph.c:1889
+#, fuzzy
+msgid "failed to rename temporary commit-graph file"
+msgstr "não é possível escrever ficheiro de índice temporário"
+
+#: commit-graph.c:2015
+#, fuzzy
+msgid "Scanning merged commits"
+msgstr "A adicionar %s integrado"
+
+#: commit-graph.c:2026
+#, fuzzy, c-format
+msgid "unexpected duplicate commit id %s"
+msgstr "não foi possível analisar o commit %s"
+
+#: commit-graph.c:2049
+msgid "Merging commit-graph"
+msgstr ""
+
+#: commit-graph.c:2259
+#, c-format
+msgid "the commit graph format cannot write %d commits"
+msgstr ""
+
+#: commit-graph.c:2270
+#, fuzzy
+msgid "too many commits to write graph"
+msgstr "mostrar apenas commits não presentes no primeiro ramo"
+
+#: commit-graph.c:2363
+msgid "the commit-graph file has incorrect checksum and is likely corrupt"
+msgstr ""
+
+#: commit-graph.c:2373
+#, c-format
+msgid "commit-graph has incorrect OID order: %s then %s"
+msgstr ""
+
+#: commit-graph.c:2383 commit-graph.c:2398
+#, c-format
+msgid "commit-graph has incorrect fanout value: fanout[%d] = %u != %u"
+msgstr ""
+
+#: commit-graph.c:2390
+#, fuzzy, c-format
+msgid "failed to parse commit %s from commit-graph"
+msgstr "não foi possível analisar o commit %s"
+
+#: commit-graph.c:2408
+msgid "Verifying commits in commit graph"
+msgstr ""
+
+#: commit-graph.c:2423
+#, c-format
+msgid "failed to parse commit %s from object database for commit-graph"
+msgstr ""
+
+#: commit-graph.c:2430
+#, c-format
+msgid "root tree OID for commit %s in commit-graph is %s != %s"
+msgstr ""
+
+#: commit-graph.c:2440
+#, c-format
+msgid "commit-graph parent list for commit %s is too long"
+msgstr ""
+
+#: commit-graph.c:2449
+#, c-format
+msgid "commit-graph parent for %s is %s != %s"
+msgstr ""
+
+#: commit-graph.c:2463
+#, c-format
+msgid "commit-graph parent list for commit %s terminates early"
+msgstr ""
+
+#: commit-graph.c:2468
+#, c-format
+msgid ""
+"commit-graph has generation number zero for commit %s, but non-zero elsewhere"
+msgstr ""
+
+#: commit-graph.c:2472
+#, c-format
+msgid ""
+"commit-graph has non-zero generation number for commit %s, but zero elsewhere"
+msgstr ""
+
+#: commit-graph.c:2488
+#, c-format
+msgid "commit-graph generation for commit %s is %u != %u"
+msgstr ""
+
+#: commit-graph.c:2494
+#, c-format
+msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
+msgstr ""
+
+#: commit.c:52 sequencer.c:2845 builtin/am.c:373 builtin/am.c:417
+#: builtin/am.c:1385 builtin/am.c:2031 builtin/replace.c:457
 #, c-format
 msgid "could not parse %s"
 msgstr "não foi possível analisar %s"
 
-#: commit.c:42
+#: commit.c:54
 #, c-format
 msgid "%s %s is not a commit!"
 msgstr "%s %s não é um commit!"
 
-#: commit.c:1511
+#: commit.c:194
+msgid ""
+"Support for <GIT_DIR>/info/grafts is deprecated\n"
+"and will be removed in a future Git version.\n"
+"\n"
+"Please use \"git replace --convert-graft-file\"\n"
+"to convert the grafts into replace refs.\n"
+"\n"
+"Turn this message off by running\n"
+"\"git config advice.graftFileDeprecated false\""
+msgstr ""
+
+#: commit.c:1172
+#, c-format
+msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
+msgstr ""
+"A assinatura GPG do commit %s, alegadamente assinada por %s, não é de "
+"confiança."
+
+#: commit.c:1176
+#, c-format
+msgid "Commit %s has a bad GPG signature allegedly by %s."
+msgstr ""
+"A assinatura GPG do commit %s, alegadamente assinada por %s, está incorreta."
+
+#: commit.c:1179
+#, c-format
+msgid "Commit %s does not have a GPG signature."
+msgstr "O commit %s não tem uma assinatura GPG."
+
+#: commit.c:1182
+#, c-format
+msgid "Commit %s has a good GPG signature by %s\n"
+msgstr "A assinatura GPG do commit %s por %s está correta\n"
+
+#: commit.c:1436
 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"
@@ -1227,167 +2466,317 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "memória esgotada"
 
-#: config.c:191
+#: config.c:125
+#, c-format
+msgid ""
+"exceeded maximum include depth (%d) while including\n"
+"\t%s\n"
+"from\n"
+"\t%s\n"
+"This might be due to circular includes."
+msgstr ""
+
+#: config.c:141
+#, fuzzy, c-format
+msgid "could not expand include path '%s'"
+msgstr "não foi possível analisar o patch '%s'"
+
+#: config.c:152
+#, fuzzy
+msgid "relative config includes must come from files"
+msgstr ""
+"configuração relativa com inclusão condicional deve provir de ficheiros"
+
+#: config.c:198
 msgid "relative config include conditionals must come from files"
-msgstr "configuração relativa com inclusão condicional deve provir de ficheiros"
+msgstr ""
+"configuração relativa com inclusão condicional deve provir de ficheiros"
+
+#: config.c:378
+#, fuzzy, c-format
+msgid "key does not contain a section: %s"
+msgstr "Não foi possível remover a secção de configuração '%s'"
+
+#: config.c:384
+#, c-format
+msgid "key does not contain variable name: %s"
+msgstr ""
 
-#: config.c:701
+#: config.c:408 sequencer.c:2547
+#, c-format
+msgid "invalid key: %s"
+msgstr "chave inválida: %s"
+
+#: config.c:414
+#, fuzzy, c-format
+msgid "invalid key (newline): %s"
+msgstr "linha de identidade inválida: %s"
+
+#: config.c:450 config.c:462
+#, fuzzy, c-format
+msgid "bogus config parameter: %s"
+msgstr "parâmetros insuficientes"
+
+#: config.c:497
+#, fuzzy, c-format
+msgid "bogus format in %s"
+msgstr "cadeia malformada %s"
+
+#: config.c:836
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr "linha de configuração %d incorreta no blob %s"
 
-#: config.c:705
+#: config.c:840
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr "linha de configuração %d incorreta no ficheiro %s"
 
-#: config.c:709
+#: config.c:844
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr "linha de configuração %d incorreta na entrada padrão"
 
-#: config.c:713
+#: config.c:848
 #, c-format
 msgid "bad config line %d in submodule-blob %s"
 msgstr "linha de configuração %d incorreta no submódulo-blob %s"
 
-#: config.c:717
+#: config.c:852
 #, c-format
 msgid "bad config line %d in command line %s"
 msgstr "linha de configuração %d incorreta na linha de comandos %s"
 
-#: config.c:721
+#: config.c:856
 #, c-format
 msgid "bad config line %d in %s"
 msgstr "linha de configuração %d incorreta em %s"
 
-#: config.c:840
+#: config.c:993
 msgid "out of range"
 msgstr "fora de intervalo"
 
-#: config.c:840
+#: config.c:993
 msgid "invalid unit"
 msgstr "unidade inválida"
 
-#: config.c:846
+#: config.c:994
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr "valor numérico '%s' da configuração '%s' incorreto: %s"
 
-#: config.c:851
+#: config.c:1013
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
 msgstr "valor numérico '%s' da configuração '%s' incorreto no blob %s: %s"
 
-#: config.c:854
+#: config.c:1016
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in file %s: %s"
 msgstr "valor numérico '%s' da configuração '%s' incorreto no ficheiro %s: %s"
 
-#: config.c:857
+#: config.c:1019
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
 "valor numérico '%s' da configuração '%s' incorreto na entrada padrão: %s"
 
-#: config.c:860
+#: config.c:1022
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 msgstr ""
 "valor numérico '%s' da configuração '%s' incorreto no submódulo-blob %s: %s"
 
-#: config.c:863
+#: config.c:1025
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr ""
 "valor numérico '%s' da configuração '%s' incorreto na linha de comandos %s: "
 "%s"
 
-#: config.c:866
+#: config.c:1028
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr "valor numérico '%s' da configuração '%s' incorreto em %s: %s"
 
-#: config.c:953
+#: config.c:1123
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr "falha ao expandir diretório de utilizador em: '%s'"
 
-#: config.c:1048 config.c:1059
+#: config.c:1132
+#, c-format
+msgid "'%s' for '%s' is not a valid timestamp"
+msgstr "'%s' em '%s' não é um carimbo de data/hora válido"
+
+#: config.c:1223
+#, c-format
+msgid "abbrev length out of range: %d"
+msgstr ""
+
+#: config.c:1237 config.c:1248
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "nível de compressão zlib %d incorreto"
 
-#: config.c:1176
+#: config.c:1340
+msgid "core.commentChar should only be one character"
+msgstr ""
+
+#: config.c:1373
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr "modo inválido para criação de objeto: %s"
 
-#: config.c:1332
+#: config.c:1445
+#, fuzzy, c-format
+msgid "malformed value for %s"
+msgstr "valor inválido de %s"
+
+#: config.c:1471
+#, fuzzy, c-format
+msgid "malformed value for %s: %s"
+msgstr "valor inválido de %s: %s"
+
+#: config.c:1472
+msgid "must be one of nothing, matching, simple, upstream or current"
+msgstr ""
+
+#: config.c:1533 builtin/pack-objects.c:3649
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "nível de compactação do pacote %d incorreto"
 
-#: config.c:1522
+#: config.c:1655
+#, fuzzy, c-format
+msgid "unable to load config blob object '%s'"
+msgstr "não foi possível iniciar o comando 'show' sobre o objeto '%s'"
+
+#: config.c:1658
+#, fuzzy, c-format
+msgid "reference '%s' does not point to a blob"
+msgstr "'%s' não aponta para um commit"
+
+#: config.c:1675
+#, fuzzy, c-format
+msgid "unable to resolve config blob '%s'"
+msgstr "não foi possível resolver revisão: %s"
+
+#: config.c:1705
+#, fuzzy, c-format
+msgid "failed to parse %s"
+msgstr "falha ao ler %s"
+
+#: config.c:1759
 msgid "unable to parse command-line config"
 msgstr "não é possível analisar configuração de linha de comandos"
 
-#: config.c:1572
+#: config.c:2122
 msgid "unknown error occurred while reading the configuration files"
 msgstr ""
 "ocorreu um erro desconhecido durante a leitura dos ficheiros de configuração"
 
-#: config.c:1931
+#: config.c:2296
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "Inválido %s: '%s'"
 
-#: config.c:1952
-#, c-format
-msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
-msgstr ""
-"valor '%s' de core.untrackedCache desconhecido; usar 'keep' valor por omissão"
-
-#: config.c:1978
+#: config.c:2341
 #, c-format
 msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
 msgstr "o valor '%d' de splitIndex.maxPercentChange deve estar entre 0 e 100"
 
-#: config.c:1989
+#: config.c:2387
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr "não é possível analisar '%s' da configuração de linha de comandos"
 
-#: config.c:1991
+#: config.c:2389
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr "variável de configuração '%s' incorreta no ficheiro '%s' na linha %d"
 
-#: config.c:2050
+#: config.c:2470
+#, fuzzy, c-format
+msgid "invalid section name '%s'"
+msgstr "conteúdo inválido: '%s'"
+
+#: config.c:2502
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s tem múltiplos valores"
 
-#: config.c:2384 config.c:2609
+#: config.c:2531
+#, fuzzy, c-format
+msgid "failed to write new configuration file %s"
+msgstr "não é possível criar o ficheiro de configuração %s"
+
+#: config.c:2783 config.c:3107
+#, fuzzy, c-format
+msgid "could not lock config file %s"
+msgstr "não é possível fechar o ficheiro %s"
+
+#: config.c:2794
+#, fuzzy, c-format
+msgid "opening %s"
+msgstr "A eliminar %s"
+
+#: config.c:2829 builtin/config.c:354
+#, fuzzy, c-format
+msgid "invalid pattern: %s"
+msgstr "opção inválida: %s"
+
+#: config.c:2854
+#, fuzzy, c-format
+msgid "invalid config file %s"
+msgstr "ficheiro inválido: '%s'"
+
+#: config.c:2867 config.c:3120
 #, c-format
 msgid "fstat on %s failed"
 msgstr "falha de fstat de %s"
 
-#: config.c:2502
+#: config.c:2878
+#, fuzzy, c-format
+msgid "unable to mmap '%s'"
+msgstr "não é possível aceder a '%s'"
+
+#: config.c:2887 config.c:3125
+#, fuzzy, c-format
+msgid "chmod on %s failed"
+msgstr "falha de fstat de %s"
+
+#: config.c:2972 config.c:3222
+#, fuzzy, c-format
+msgid "could not write config file %s"
+msgstr "não é possível ler o ficheiro de log '%s'"
+
+#: config.c:3006
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "não foi possível definir '%s' como '%s'"
 
-#: config.c:2504 builtin/remote.c:774
+#: config.c:3008 builtin/remote.c:656 builtin/remote.c:850 builtin/remote.c:858
 #, c-format
 msgid "could not unset '%s'"
 msgstr "não foi possível reiniciar '%s'"
 
-#: connect.c:49
-msgid "The remote end hung up upon initial contact"
+#: config.c:3098
+#, fuzzy, c-format
+msgid "invalid section name: %s"
+msgstr "opção inválida: %s"
+
+#: config.c:3265
+#, fuzzy, c-format
+msgid "missing value for '%s'"
+msgstr "valor inválido de %s"
+
+#: connect.c:61
+#, fuzzy
+msgid "the remote end hung up upon initial contact"
 msgstr "O remoto desligou após contacto inicial"
 
-#: connect.c:51
+#: connect.c:63
 msgid ""
 "Could not read from remote repository.\n"
 "\n"
@@ -1399,148 +2788,462 @@ msgstr ""
 "Certifica-se que tem os direitos de acesso corretos\n"
 "e que o repositório existe."
 
-#: connected.c:63 builtin/fsck.c:190 builtin/prune.c:140
+#: connect.c:81
+#, fuzzy, c-format
+msgid "server doesn't support '%s'"
+msgstr "O servidor não suporta STARTTLS! %s"
+
+#: connect.c:118
+#, fuzzy, c-format
+msgid "server doesn't support feature '%s'"
+msgstr "O servidor não suporta --deepen"
+
+#: connect.c:129
+msgid "expected flush after capabilities"
+msgstr ""
+
+#: connect.c:263
+#, c-format
+msgid "ignoring capabilities after first line '%s'"
+msgstr ""
+
+#: connect.c:284
+msgid "protocol error: unexpected capabilities^{}"
+msgstr ""
+
+#: connect.c:306
+#, fuzzy, c-format
+msgid "protocol error: expected shallow sha-1, got '%s'"
+msgstr "esperava-se raso/aprofundar, obteve-se %s"
+
+#: connect.c:308
+msgid "repository on the other end cannot be shallow"
+msgstr ""
+
+#: connect.c:347
+#, fuzzy
+msgid "invalid packet"
+msgstr "caminho inválido '%s'"
+
+#: connect.c:367
+#, fuzzy, c-format
+msgid "protocol error: unexpected '%s'"
+msgstr "erro de protocolo: cabeçalho de pacote incorreto"
+
+#: connect.c:473
+#, c-format
+msgid "unknown object format '%s' specified by server"
+msgstr ""
+
+#: connect.c:500
+#, fuzzy, c-format
+msgid "invalid ls-refs response: %s"
+msgstr "referência inválida: %s"
+
+#: connect.c:504
+msgid "expected flush after ref listing"
+msgstr ""
+
+#: connect.c:507
+msgid "expected response end packet after ref listing"
+msgstr ""
+
+#: connect.c:640
+#, fuzzy, c-format
+msgid "protocol '%s' is not supported"
+msgstr "'%s' não está trancada"
+
+#: connect.c:691
+msgid "unable to set SO_KEEPALIVE on socket"
+msgstr ""
+
+#: connect.c:731 connect.c:794
+#, fuzzy, c-format
+msgid "Looking up %s ... "
+msgstr "A verificar o patch %s..."
+
+#: connect.c:735
+#, fuzzy, c-format
+msgid "unable to look up %s (port %s) (%s)"
+msgstr "não foi possível mover %s para %s"
+
+#. TRANSLATORS: this is the end of "Looking up %s ... "
+#: connect.c:739 connect.c:810
+#, c-format
+msgid ""
+"done.\n"
+"Connecting to %s (port %s) ... "
+msgstr ""
+
+#: connect.c:761 connect.c:838
+#, fuzzy, c-format
+msgid ""
+"unable to connect to %s:\n"
+"%s"
+msgstr "não é possível abrir %s: %s\n"
+
+#. TRANSLATORS: this is the end of "Connecting to %s (port %s) ... "
+#: connect.c:767 connect.c:844
+#, fuzzy
+msgid "done."
+msgstr "concluído.\n"
+
+#: connect.c:798
+#, fuzzy, c-format
+msgid "unable to look up %s (%s)"
+msgstr "não é possível abrir %s: %s\n"
+
+#: connect.c:804
+#, fuzzy, c-format
+msgid "unknown port %s"
+msgstr "opção desconhecido %s"
+
+#: connect.c:941 connect.c:1271
+#, c-format
+msgid "strange hostname '%s' blocked"
+msgstr ""
+
+#: connect.c:943
+#, c-format
+msgid "strange port '%s' blocked"
+msgstr ""
+
+#: connect.c:953
+#, fuzzy, c-format
+msgid "cannot start proxy %s"
+msgstr "não é possível invocar stat sobre '%s'"
+
+#: connect.c:1024
+msgid "no path specified; see 'git help pull' for valid url syntax"
+msgstr ""
+
+#: connect.c:1219
+msgid "ssh variant 'simple' does not support -4"
+msgstr ""
+
+#: connect.c:1231
+msgid "ssh variant 'simple' does not support -6"
+msgstr ""
+
+#: connect.c:1248
+#, fuzzy
+msgid "ssh variant 'simple' does not support setting port"
+msgstr "o recetor não suporta publicação com --signed"
+
+#: connect.c:1360
+#, c-format
+msgid "strange pathname '%s' blocked"
+msgstr ""
+
+#: connect.c:1408
+#, fuzzy
+msgid "unable to fork"
+msgstr "não foi possível analisar o formato"
+
+#: connected.c:108 builtin/fsck.c:209 builtin/prune.c:45
 msgid "Checking connectivity"
 msgstr "A verificar conectividade"
 
-#: connected.c:75
+#: connected.c:120
 msgid "Could not run 'git rev-list'"
 msgstr "Não foi possível executar 'git rev-list'"
 
-#: connected.c:95
+#: connected.c:144
 msgid "failed write to rev-list"
 msgstr "falha ao escrever para rev-list"
 
-#: connected.c:102
+#: connected.c:149
 msgid "failed to close rev-list's stdin"
 msgstr "falha ao fechar entrada padrão de rev-list"
 
-#: convert.c:201
+#: convert.c:194
 #, c-format
+msgid "illegal crlf_action %d"
+msgstr ""
+
+#: convert.c:207
+#, fuzzy, c-format
+msgid "CRLF would be replaced by LF in %s"
+msgstr "CRLF será substituído por LF em %s."
+
+#: convert.c:209
+#, fuzzy, c-format
 msgid ""
 "CRLF will be replaced by LF in %s.\n"
-"The file will have its original line endings in your working directory."
+"The file will have its original line endings in your working directory"
 msgstr ""
 "CRLF será substituído por LF em %s.\n"
 "O final de linha original será mantido no ficheiro da sua árvore de trabalho."
 
-#: convert.c:205
+#: convert.c:217
 #, c-format
-msgid "CRLF would be replaced by LF in %s."
-msgstr "CRLF será substituído por LF em %s."
+msgid "LF would be replaced by CRLF in %s"
+msgstr "LF será substituído por CRLF em %s."
 
-#: convert.c:211
-#, c-format
+#: convert.c:219
+#, fuzzy, c-format
 msgid ""
 "LF will be replaced by CRLF in %s.\n"
-"The file will have its original line endings in your working directory."
+"The file will have its original line endings in your working directory"
 msgstr ""
 "LF será substituído por CRLF em %s.\n"
 "O final de linha original será mantido no ficheiro da sua árvore de trabalho."
 
-#: convert.c:215
+#: convert.c:284
 #, c-format
-msgid "LF would be replaced by CRLF in %s"
-msgstr "LF será substituído por CRLF em %s."
+msgid "BOM is prohibited in '%s' if encoded as %s"
+msgstr ""
 
-#: date.c:97
+#: convert.c:291
+#, c-format
+msgid ""
+"The file '%s' contains a byte order mark (BOM). Please use UTF-%.*s as "
+"working-tree-encoding."
+msgstr ""
+
+#: convert.c:304
+#, c-format
+msgid "BOM is required in '%s' if encoded as %s"
+msgstr ""
+
+#: convert.c:306
+#, c-format
+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 ""
+
+#: convert.c:419 convert.c:490
+#, fuzzy, c-format
+msgid "failed to encode '%s' from %s to %s"
+msgstr "falha ao copiar notas de '%s' para '%s'"
+
+#: convert.c:462
+#, c-format
+msgid "encoding '%s' from %s to %s and back is not the same"
+msgstr ""
+
+#: convert.c:665
+#, fuzzy, c-format
+msgid "cannot fork to run external filter '%s'"
+msgstr "não é possível escrever o ficheiro de conservação '%s'"
+
+#: convert.c:685
+#, fuzzy, c-format
+msgid "cannot feed the input to external filter '%s'"
+msgstr "não é possível ler o conteúdo atual de '%s'"
+
+#: convert.c:692
+#, fuzzy, c-format
+msgid "external filter '%s' failed %d"
+msgstr "falha ao mudar o nome de '%s'"
+
+#: convert.c:727 convert.c:730
+#, c-format
+msgid "read from external filter '%s' failed"
+msgstr ""
+
+#: convert.c:733 convert.c:788
+#, fuzzy, c-format
+msgid "external filter '%s' failed"
+msgstr "falha ao mudar o nome de '%s'"
+
+#: convert.c:837
+#, fuzzy
+msgid "unexpected filter type"
+msgstr "fim de ficheiro inesperado"
+
+#: convert.c:848
+msgid "path name too long for external filter"
+msgstr ""
+
+#: convert.c:940
+#, c-format
+msgid ""
+"external filter '%s' is not available anymore although not all paths have "
+"been filtered"
+msgstr ""
+
+#: convert.c:1240
+msgid "true/false are no valid working-tree-encodings"
+msgstr ""
+
+#: convert.c:1428 convert.c:1462
+#, fuzzy, c-format
+msgid "%s: clean filter '%s' failed"
+msgstr "falha ao criar '%s'"
+
+#: convert.c:1508
+#, fuzzy, c-format
+msgid "%s: smudge filter %s failed"
+msgstr "falha ao atualizar os ficheiros"
+
+#: credential.c:96
+#, c-format
+msgid "skipping credential lookup for key: credential.%s"
+msgstr ""
+
+#: credential.c:112
+msgid "refusing to work with credential missing host field"
+msgstr ""
+
+#: credential.c:114
+msgid "refusing to work with credential missing protocol field"
+msgstr ""
+
+#: credential.c:394
+#, c-format
+msgid "url contains a newline in its %s component: %s"
+msgstr ""
+
+#: credential.c:438
+#, fuzzy, c-format
+msgid "url has no scheme: %s"
+msgstr "Remoto inexistente: %s"
+
+#: credential.c:511
+#, fuzzy, c-format
+msgid "credential url cannot be parsed: %s"
+msgstr "não foi possível analisar %s"
+
+#: date.c:138
 msgid "in the future"
 msgstr "no futuro"
 
-#: date.c:103
-#, c-format
-msgid "%lu second ago"
-msgid_plural "%lu seconds ago"
+#: date.c:144
+#, fuzzy, c-format
+msgid "%<PRIuMAX> second ago"
+msgid_plural "%<PRIuMAX> seconds ago"
 msgstr[0] "há %lu segundo"
 msgstr[1] "há %lu segundos"
 
-#: date.c:110
-#, c-format
-msgid "%lu minute ago"
-msgid_plural "%lu minutes ago"
+#: date.c:151
+#, fuzzy, c-format
+msgid "%<PRIuMAX> minute ago"
+msgid_plural "%<PRIuMAX> minutes ago"
 msgstr[0] "há %lu minuto"
 msgstr[1] "há %lu minutos"
 
-#: date.c:117
-#, c-format
-msgid "%lu hour ago"
-msgid_plural "%lu hours ago"
+#: date.c:158
+#, fuzzy, c-format
+msgid "%<PRIuMAX> hour ago"
+msgid_plural "%<PRIuMAX> hours ago"
 msgstr[0] "há %lu hora"
 msgstr[1] "há %lu horas"
 
-#: date.c:124
-#, c-format
-msgid "%lu day ago"
-msgid_plural "%lu days ago"
+#: date.c:165
+#, fuzzy, c-format
+msgid "%<PRIuMAX> day ago"
+msgid_plural "%<PRIuMAX> days ago"
 msgstr[0] "há %lu dia"
 msgstr[1] "há %lu dias"
 
-#: date.c:130
-#, c-format
-msgid "%lu week ago"
-msgid_plural "%lu weeks ago"
+#: date.c:171
+#, fuzzy, c-format
+msgid "%<PRIuMAX> week ago"
+msgid_plural "%<PRIuMAX> weeks ago"
 msgstr[0] "há %lu semana"
 msgstr[1] "há %lu semanas"
 
-#: date.c:137
-#, c-format
-msgid "%lu month ago"
-msgid_plural "%lu months ago"
+#: date.c:178
+#, fuzzy, c-format
+msgid "%<PRIuMAX> month ago"
+msgid_plural "%<PRIuMAX> months ago"
 msgstr[0] "há %lu mês"
 msgstr[1] "há %lu meses"
 
-#: date.c:148
-#, c-format
-msgid "%lu year"
-msgid_plural "%lu years"
+#: date.c:189
+#, fuzzy, c-format
+msgid "%<PRIuMAX> year"
+msgid_plural "%<PRIuMAX> years"
 msgstr[0] "%lu ano"
 msgstr[1] "%lu anos"
 
 #. TRANSLATORS: "%s" is "<n> years"
-#: date.c:151
-#, c-format
-msgid "%s, %lu month ago"
-msgid_plural "%s, %lu months ago"
+#: date.c:192
+#, fuzzy, c-format
+msgid "%s, %<PRIuMAX> month ago"
+msgid_plural "%s, %<PRIuMAX> months ago"
 msgstr[0] "há %s e %lu mês"
 msgstr[1] "há %s e %lu meses"
 
-#: date.c:156 date.c:161
-#, c-format
-msgid "%lu year ago"
-msgid_plural "%lu years ago"
+#: date.c:197 date.c:202
+#, fuzzy, c-format
+msgid "%<PRIuMAX> year ago"
+msgid_plural "%<PRIuMAX> years ago"
 msgstr[0] "há %lu ano"
 msgstr[1] "há %lu anos"
 
-#: diffcore-order.c:24
-#, c-format
-msgid "failed to read orderfile '%s'"
-msgstr "falha ao ler o ficheiro de comando '%s'"
+#: delta-islands.c:272
+msgid "Propagating island marks"
+msgstr ""
 
-#: diffcore-rename.c:536
-msgid "Performing inexact rename detection"
-msgstr "Deteção de mudança de nome inexata em curso"
+#: delta-islands.c:290
+#, fuzzy, c-format
+msgid "bad tree object %s"
+msgstr "objeto árvore"
+
+#: delta-islands.c:334
+#, fuzzy, c-format
+msgid "failed to load island regex for '%s': %s"
+msgstr "falha ao abrir '%s': %s"
 
-#: diff.c:62
+#: delta-islands.c:390
 #, c-format
-msgid "option '%s' requires a value"
-msgstr "a opção '%s' requer um valor"
+msgid "island regex from config has too many capture groups (max=%d)"
+msgstr ""
 
-#: diff.c:124
+#: delta-islands.c:467
+#, c-format
+msgid "Marked %d islands, done.\n"
+msgstr ""
+
+#: diff-no-index.c:238
+#, fuzzy
+msgid "git diff --no-index [<options>] <path> <path>"
+msgstr "git worktree add [<opções>] <caminho> [<ramo>]"
+
+#: diff-no-index.c:263
+msgid ""
+"Not a git repository. Use --no-index to compare two paths outside a working "
+"tree"
+msgstr ""
+
+#: diff.c:156
 #, c-format
 msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
 msgstr "  Falha ao analisar percentagem limite de dirstat '%s'\n"
 
-#: diff.c:129
+#: diff.c:161
 #, c-format
 msgid "  Unknown dirstat parameter '%s'\n"
 msgstr "  Parâmetro de dirstat desconhecido '%s'\n"
 
-#: diff.c:281
+#: diff.c:297
+msgid ""
+"color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
+"'dimmed-zebra', 'plain'"
+msgstr ""
+
+#: diff.c:325
+#, 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 ""
+
+#: diff.c:333
+msgid ""
+"color-moved-ws: allow-indentation-change cannot be combined with other "
+"whitespace modes"
+msgstr ""
+
+#: diff.c:410
 #, c-format
 msgid "Unknown value for 'diff.submodule' config variable: '%s'"
 msgstr "Valor desconhecido na variável de configuração 'diff.submodule': '%s'"
 
-#: diff.c:344
+#: diff.c:470
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
@@ -1549,20 +3252,36 @@ msgstr ""
 "Erros encontrados na variável de configuração 'diff.dirstat':\n"
 "%s"
 
-#: diff.c:3102
+#: diff.c:4269
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "o diff externo terminou inesperadamente, interrompido em %s"
 
-#: diff.c:3428
+#: diff.c:4618
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr "--name-only, --name-status, --check e -s são mutuamente exclusivos"
 
-#: diff.c:3518
+#: diff.c:4621
+#, fuzzy
+msgid "-G, -S and --find-object are mutually exclusive"
+msgstr "-b, -B e --detach são mutuamente exclusivos"
+
+#: diff.c:4699
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow requer exatamente um único especificador de caminho"
 
-#: diff.c:3681
+#: diff.c:4747
+#, fuzzy, c-format
+msgid "invalid --stat value: %s"
+msgstr "valor de cor inválido: %.*s"
+
+#: diff.c:4752 diff.c:4757 diff.c:4762 diff.c:4767 diff.c:5279
+#: parse-options.c:197 parse-options.c:201 builtin/commit-graph.c:180
+#, fuzzy, c-format
+msgid "%s expects a numerical value"
+msgstr "a opção '%c' espera um valor numérico"
+
+#: diff.c:4784
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -1571,276 +3290,1012 @@ msgstr ""
 "Falha ao analisar parâmetro da opção --dirstat/-X:\n"
 "%s"
 
-#: diff.c:3695
+#: diff.c:4869
+#, c-format
+msgid "unknown change class '%c' in --diff-filter=%s"
+msgstr ""
+
+#: diff.c:4893
+#, c-format
+msgid "unknown value after ws-error-highlight=%.*s"
+msgstr ""
+
+#: diff.c:4907
+#, fuzzy, c-format
+msgid "unable to resolve '%s'"
+msgstr "não foi possível criar '%s'"
+
+#: diff.c:4957 diff.c:4963
+#, c-format
+msgid "%s expects <n>/<m> form"
+msgstr ""
+
+#: diff.c:4975
 #, c-format
-msgid "Failed to parse --submodule option parameter: '%s'"
+msgid "%s expects a character, got '%s'"
+msgstr ""
+
+#: diff.c:4996
+#, fuzzy, c-format
+msgid "bad --color-moved argument: %s"
+msgstr "argumento não reconhecido: %s"
+
+#: diff.c:5015
+#, fuzzy, c-format
+msgid "invalid mode '%s' in --color-moved-ws"
+msgstr "objeto inválido '%s' fornecido."
+
+#: diff.c:5055
+msgid ""
+"option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
+"\"histogram\""
+msgstr ""
+
+#: diff.c:5091 diff.c:5111
+#, fuzzy, c-format
+msgid "invalid argument to %s"
+msgstr "valor inválido de %s"
+
+#: diff.c:5248
+#, fuzzy, c-format
+msgid "failed to parse --submodule option parameter: '%s'"
 msgstr "Falha ao analisar parâmetro da opção --submodule: '%s'"
 
-#: diff.c:4719
+#: diff.c:5304
+#, c-format
+msgid "bad --word-diff argument: %s"
+msgstr ""
+
+#: diff.c:5327
+msgid "Diff output format options"
+msgstr ""
+
+#: diff.c:5329 diff.c:5335
+#, fuzzy
+msgid "generate patch"
+msgstr "incorporar o patch"
+
+#: diff.c:5332 builtin/log.c:176
+msgid "suppress diff output"
+msgstr "suprimir saída do diff"
+
+#: diff.c:5337 diff.c:5451 diff.c:5458
+msgid "<n>"
+msgstr ""
+
+#: diff.c:5338 diff.c:5341
+#, fuzzy
+msgid "generate diffs with <n> lines context"
+msgstr "garantir que, pelo menos, <n> linhas de contexto coincidem"
+
+#: diff.c:5343
+msgid "generate the diff in raw format"
+msgstr ""
+
+#: diff.c:5346
+#, fuzzy
+msgid "synonym for '-p --raw'"
+msgstr "(sinónimo de --stat)"
+
+#: diff.c:5350
+#, fuzzy
+msgid "synonym for '-p --stat'"
+msgstr "(sinónimo de --stat)"
+
+#: diff.c:5354
+#, fuzzy
+msgid "machine friendly --stat"
+msgstr "saída inteligível por máquina"
+
+#: diff.c:5357
+msgid "output only the last line of --stat"
+msgstr ""
+
+#: diff.c:5359 diff.c:5367
+msgid "<param1,param2>..."
+msgstr ""
+
+#: diff.c:5360
+msgid ""
+"output the distribution of relative amount of changes for each sub-directory"
+msgstr ""
+
+#: diff.c:5364
+#, fuzzy
+msgid "synonym for --dirstat=cumulative"
+msgstr "sinónimo de --files-with-matches"
+
+#: diff.c:5368
+msgid "synonym for --dirstat=files,param1,param2..."
+msgstr ""
+
+#: diff.c:5372
+msgid "warn if changes introduce conflict markers or whitespace errors"
+msgstr ""
+
+#: diff.c:5375
+msgid "condensed summary such as creations, renames and mode changes"
+msgstr ""
+
+#: diff.c:5378
+#, fuzzy
+msgid "show only names of changed files"
+msgstr "mostrar apenas nomes de ficheiro em vez de linhas correspondidas"
+
+#: diff.c:5381
+#, fuzzy
+msgid "show only names and status of changed files"
+msgstr "mostrar apenas nomes de ficheiro em vez de linhas correspondidas"
+
+#: diff.c:5383
+msgid "<width>[,<name-width>[,<count>]]"
+msgstr ""
+
+#: diff.c:5384
+#, fuzzy
+msgid "generate diffstat"
+msgstr "diff status inesperado %c"
+
+#: diff.c:5386 diff.c:5389 diff.c:5392
+msgid "<width>"
+msgstr ""
+
+#: diff.c:5387
+msgid "generate diffstat with a given width"
+msgstr ""
+
+#: diff.c:5390
+msgid "generate diffstat with a given name width"
+msgstr ""
+
+#: diff.c:5393
+msgid "generate diffstat with a given graph width"
+msgstr ""
+
+#: diff.c:5395
+msgid "<count>"
+msgstr ""
+
+#: diff.c:5396
+msgid "generate diffstat with limited lines"
+msgstr ""
+
+#: diff.c:5399
+msgid "generate compact summary in diffstat"
+msgstr ""
+
+#: diff.c:5402
+msgid "output a binary diff that can be applied"
+msgstr ""
+
+#: diff.c:5405
+msgid "show full pre- and post-image object names on the \"index\" lines"
+msgstr ""
+
+#: diff.c:5407
+#, fuzzy
+msgid "show colored diff"
+msgstr "mostrar ficheiros ignorados"
+
+#: diff.c:5408
+msgid "<kind>"
+msgstr ""
+
+#: diff.c:5409
+msgid ""
+"highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
+"diff"
+msgstr ""
+
+#: diff.c:5412
+msgid ""
+"do not munge pathnames and use NULs as output field terminators in --raw or "
+"--numstat"
+msgstr ""
+
+#: diff.c:5415 diff.c:5418 diff.c:5421 diff.c:5527
+#, fuzzy
+msgid "<prefix>"
+msgstr "<prefixo>/"
+
+#: diff.c:5416
+msgid "show the given source prefix instead of \"a/\""
+msgstr ""
+
+#: diff.c:5419
+msgid "show the given destination prefix instead of \"b/\""
+msgstr ""
+
+#: diff.c:5422
+#, fuzzy
+msgid "prepend an additional prefix to every line of output"
+msgstr "preceder o nomebase do projeto pai na saída"
+
+#: diff.c:5425
+msgid "do not show any source or destination prefix"
+msgstr ""
+
+#: diff.c:5428
+#, fuzzy
+msgid "show context between diff hunks up to the specified number of lines"
+msgstr "criar um clone raso, truncado ao número especificado de revisões"
+
+#: diff.c:5432 diff.c:5437 diff.c:5442
+msgid "<char>"
+msgstr ""
+
+#: diff.c:5433
+msgid "specify the character to indicate a new line instead of '+'"
+msgstr ""
+
+#: diff.c:5438
+msgid "specify the character to indicate an old line instead of '-'"
+msgstr ""
+
+#: diff.c:5443
+msgid "specify the character to indicate a context instead of ' '"
+msgstr ""
+
+#: diff.c:5446
+#, fuzzy
+msgid "Diff rename options"
+msgstr "Opções genéricas"
+
+#: diff.c:5447
+#, fuzzy
+msgid "<n>[/<m>]"
+msgstr "<n>[,<base>]"
+
+#: diff.c:5448
+msgid "break complete rewrite changes into pairs of delete and create"
+msgstr ""
+
+#: diff.c:5452
+#, fuzzy
+msgid "detect renames"
+msgstr "nome do remoto"
+
+#: diff.c:5456
+msgid "omit the preimage for deletes"
+msgstr ""
+
+#: diff.c:5459
+msgid "detect copies"
+msgstr ""
+
+#: diff.c:5463
+msgid "use unmodified files as source to find copies"
+msgstr ""
+
+#: diff.c:5465
+#, fuzzy
+msgid "disable rename detection"
+msgstr "Deteção de mudança de nome inexata em curso"
+
+#: diff.c:5468
+msgid "use empty blobs as rename source"
+msgstr ""
+
+#: diff.c:5470
+msgid "continue listing the history of a file beyond renames"
+msgstr ""
+
+#: diff.c:5473
+msgid ""
+"prevent rename/copy detection if the number of rename/copy targets exceeds "
+"given limit"
+msgstr ""
+
+#: diff.c:5475
+#, fuzzy
+msgid "Diff algorithm options"
+msgstr "opção inválida: %s"
+
+#: diff.c:5477
+msgid "produce the smallest possible diff"
+msgstr ""
+
+#: diff.c:5480
+#, fuzzy
+msgid "ignore whitespace when comparing lines"
+msgstr "ignorar alterações de espaço em branco ao procurar contexto"
+
+#: diff.c:5483
+#, fuzzy
+msgid "ignore changes in amount of whitespace"
+msgstr "ignorar alterações de espaço em branco ao procurar contexto"
+
+#: diff.c:5486
+#, fuzzy
+msgid "ignore changes in whitespace at EOL"
+msgstr "ignorar alterações de espaço em branco ao procurar contexto"
+
+#: diff.c:5489
+msgid "ignore carrier-return at the end of line"
+msgstr ""
+
+#: diff.c:5492
+msgid "ignore changes whose lines are all blank"
+msgstr ""
+
+#: diff.c:5495
+msgid "heuristic to shift diff hunk boundaries for easy reading"
+msgstr ""
+
+#: diff.c:5498
+msgid "generate diff using the \"patience diff\" algorithm"
+msgstr ""
+
+#: diff.c:5502
+msgid "generate diff using the \"histogram diff\" algorithm"
+msgstr ""
+
+#: diff.c:5504
+msgid "<algorithm>"
+msgstr ""
+
+#: diff.c:5505
+msgid "choose a diff algorithm"
+msgstr ""
+
+#: diff.c:5507
+#, fuzzy
+msgid "<text>"
+msgstr "texto"
+
+#: diff.c:5508
+msgid "generate diff using the \"anchored diff\" algorithm"
+msgstr ""
+
+#: diff.c:5510 diff.c:5519 diff.c:5522
+#, fuzzy
+msgid "<mode>"
+msgstr "modo"
+
+#: diff.c:5511
+msgid "show word diff, using <mode> to delimit changed words"
+msgstr ""
+
+#: diff.c:5513 diff.c:5516 diff.c:5561
+msgid "<regex>"
+msgstr ""
+
+#: diff.c:5514
+msgid "use <regex> to decide what a word is"
+msgstr ""
+
+#: diff.c:5517
+msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
+msgstr ""
+
+#: diff.c:5520
+msgid "moved lines of code are colored differently"
+msgstr ""
+
+#: diff.c:5523
+msgid "how white spaces are ignored in --color-moved"
+msgstr ""
+
+#: diff.c:5526
+#, fuzzy
+msgid "Other diff options"
+msgstr "Opções genéricas"
+
+#: diff.c:5528
+msgid "when run from subdir, exclude changes outside and show relative paths"
+msgstr ""
+
+#: diff.c:5532
+#, fuzzy
+msgid "treat all files as text"
+msgstr "processar ficheiros binários como texto"
+
+#: diff.c:5534
+msgid "swap two inputs, reverse the diff"
+msgstr ""
+
+#: diff.c:5536
+msgid "exit with 1 if there were differences, 0 otherwise"
+msgstr ""
+
+#: diff.c:5538
+msgid "disable all output of the program"
+msgstr ""
+
+#: diff.c:5540
+msgid "allow an external diff helper to be executed"
+msgstr ""
+
+#: diff.c:5542
+msgid "run external text conversion filters when comparing binary files"
+msgstr ""
+
+#: diff.c:5544
+#, fuzzy
+msgid "<when>"
+msgstr "quando"
+
+#: diff.c:5545
+#, fuzzy
+msgid "ignore changes to submodules in the diff generation"
+msgstr ""
+"ignorar alterações em submódulos, quando é opcional: all, dirty, untracked. "
+"(Predefinição: all)"
+
+#: diff.c:5548
+#, fuzzy
+msgid "<format>"
+msgstr "formato"
+
+#: diff.c:5549
+msgid "specify how differences in submodules are shown"
+msgstr ""
+
+#: diff.c:5553
+#, fuzzy
+msgid "hide 'git add -N' entries from the index"
+msgstr "usar .gitattributes apenas a partir do índice"
+
+#: diff.c:5556
+msgid "treat 'git add -N' entries as real in the index"
+msgstr ""
+
+#: diff.c:5558
+#, fuzzy
+msgid "<string>"
+msgstr "cadeia"
+
+#: diff.c:5559
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"string"
+msgstr ""
+
+#: diff.c:5562
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"regex"
+msgstr ""
+
+#: diff.c:5565
+#, fuzzy
+msgid "show all changes in the changeset with -S or -G"
+msgstr "mostrar ficheiros com correspondências no paginador"
+
+#: diff.c:5568
+#, fuzzy
+msgid "treat <string> in -S as extended POSIX regular expression"
+msgstr "usar expressões regulares estendidas do POSIX"
+
+#: diff.c:5571
+#, fuzzy
+msgid "control the order in which files appear in the output"
+msgstr "mostrar outros ficheiros na saída"
+
+#: diff.c:5572
+#, fuzzy
+msgid "<object-id>"
+msgstr "objeto"
+
+#: diff.c:5573
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"object"
+msgstr ""
+
+#: diff.c:5575
+msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
+msgstr ""
+
+#: diff.c:5576
+msgid "select files by diff type"
+msgstr ""
+
+#: diff.c:5578
+#, fuzzy
+msgid "<file>"
+msgstr "ficheiro"
+
+#: diff.c:5579
+#, fuzzy
+msgid "Output to a specific file"
+msgstr "submeter somente os ficheiros especificados"
+
+#: diff.c:6236
 msgid "inexact rename detection was skipped due to too many files."
 msgstr ""
 "a deteção mudança de nome inexata foi omitida devido a demasiados ficheiros."
 
-#: diff.c:4722
+#: diff.c:6239
 msgid "only found copies from modified paths due to too many files."
 msgstr ""
 "só foram encontradas cópias de caminhos modificados devido a demasiados "
 "ficheiros."
 
-#: diff.c:4725
+#: diff.c:6242
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
 msgstr ""
 "pode tentar definir a variável %s para, pelo menos, %d e repetir o comando."
 
-#: dir.c:1899
+#: diffcore-order.c:24
+#, c-format
+msgid "failed to read orderfile '%s'"
+msgstr "falha ao ler o ficheiro de comando '%s'"
+
+#: diffcore-rename.c:592
+msgid "Performing inexact rename detection"
+msgstr "Deteção de mudança de nome inexata em curso"
+
+#: dir.c:578
+#, fuzzy, c-format
+msgid "pathspec '%s' did not match any file(s) known to git"
+msgstr "o especificador de caminho '%s' não corresponde a nenhum ficheiro"
+
+#: dir.c:718 dir.c:747 dir.c:760
+#, fuzzy, c-format
+msgid "unrecognized pattern: '%s'"
+msgstr "argumento não reconhecido: %s"
+
+#: dir.c:777 dir.c:791
+#, fuzzy, c-format
+msgid "unrecognized negative pattern: '%s'"
+msgstr "opção de espaço em branco não reconhecida '%s'"
+
+#: dir.c:809
+#, c-format
+msgid "your sparse-checkout file may have issues: pattern '%s' is repeated"
+msgstr ""
+
+#: dir.c:819
+msgid "disabling cone pattern matching"
+msgstr ""
+
+#: dir.c:1198
+#, fuzzy, c-format
+msgid "cannot use %s as an exclude file"
+msgstr "não é possível guardar o ficheiro índice"
+
+#: dir.c:2305
+#, fuzzy, c-format
+msgid "could not open directory '%s'"
+msgstr "não foi possível criar o diretório '%s'"
+
+#: dir.c:2605
 msgid "failed to get kernel name and information"
 msgstr "falha ao obter nome e informação do kernel"
 
-#: dir.c:2018
-msgid "Untracked cache is disabled on this system or location."
+#: dir.c:2729
+#, fuzzy
+msgid "untracked cache is disabled on this system or location"
 msgstr "A cache não controlada está desativada neste sistema ou localização."
 
-#: dir.c:2776 dir.c:2781
+#: dir.c:3520
+#, fuzzy, c-format
+msgid "index file corrupt in repo %s"
+msgstr "ficheiro de índice corrompido"
+
+#: dir.c:3565 dir.c:3570
 #, c-format
 msgid "could not create directories for %s"
 msgstr "não foi possível criar o diretórios para %s"
 
-#: dir.c:2806
+#: dir.c:3599
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr "não foi possível migrar o diretório git de '%s' para '%s'"
 
-#: entry.c:280
+#: editor.c:74
+#, c-format
+msgid "hint: Waiting for your editor to close the file...%c"
+msgstr ""
+
+#: entry.c:177
+#, fuzzy
+msgid "Filtering content"
+msgstr "imprimir conteúdo da tag"
+
+#: entry.c:478
 #, c-format
 msgid "could not stat file '%s'"
 msgstr "não foi possível obter stat do ficheiro '%s'"
 
-#: fetch-pack.c:249
+#: environment.c:150
+#, c-format
+msgid "bad git namespace path \"%s\""
+msgstr ""
+
+#: environment.c:337
+#, fuzzy, c-format
+msgid "could not set GIT_DIR to '%s'"
+msgstr "não foi possível definir '%s' como '%s'"
+
+#: exec-cmd.c:363
+#, fuzzy, c-format
+msgid "too many args to run %s"
+msgstr "Demasiados argumentos."
+
+#: fetch-pack.c:176
 msgid "git fetch-pack: expected shallow list"
 msgstr "git fetch-pack: esperava-se lista rasa"
 
-#: fetch-pack.c:261
-msgid "git fetch-pack: expected ACK/NAK, got EOF"
-msgstr "git fetch-pack: esperava-se ACK/NAK, obteve-se EOF"
+#: fetch-pack.c:179
+#, fuzzy
+msgid "git fetch-pack: expected a flush packet after shallow list"
+msgstr "git fetch-pack: esperava-se lista rasa"
+
+#: fetch-pack.c:190
+#, fuzzy
+msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
+msgstr "git fetch-pack: esperava-se ACK/NAK, obteve-se '%s'"
 
-#: fetch-pack.c:279
+#: fetch-pack.c:210
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr "git fetch-pack: esperava-se ACK/NAK, obteve-se '%s'"
 
-#: fetch-pack.c:331
+#: fetch-pack.c:221
+#, fuzzy
+msgid "unable to write to remote"
+msgstr "não foi possível escrever o ficheiro da tag"
+
+#: fetch-pack.c:282
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc requer multi_ack_detailed"
 
-#: fetch-pack.c:417
+#: fetch-pack.c:375 fetch-pack.c:1397
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "linha rasa inválida: %s"
 
-#: fetch-pack.c:423
+#: fetch-pack.c:381 fetch-pack.c:1403
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "linha para aprofundar inválida: %s"
 
-#: fetch-pack.c:425
+#: fetch-pack.c:383 fetch-pack.c:1405
 #, c-format
 msgid "object not found: %s"
 msgstr "objeto não encontrado: %s"
 
-#: fetch-pack.c:428
+#: fetch-pack.c:386 fetch-pack.c:1408
 #, c-format
 msgid "error in object: %s"
 msgstr "erro no objeto: %s"
 
-#: fetch-pack.c:430
+#: fetch-pack.c:388 fetch-pack.c:1410
 #, c-format
 msgid "no shallow found: %s"
 msgstr "raso não encontrado: %s"
 
-#: fetch-pack.c:433
+#: fetch-pack.c:391 fetch-pack.c:1414
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "esperava-se raso/aprofundar, obteve-se %s"
 
-#: fetch-pack.c:472
+#: fetch-pack.c:431
 #, c-format
 msgid "got %s %d %s"
 msgstr "obteve-se %s %d %s"
 
-#: fetch-pack.c:486
+#: fetch-pack.c:448
 #, c-format
 msgid "invalid commit %s"
 msgstr "commit inválido %s"
 
-#: fetch-pack.c:519
+#: fetch-pack.c:479
 msgid "giving up"
 msgstr "desistência"
 
-#: fetch-pack.c:529 progress.c:235
+#: fetch-pack.c:492 progress.c:339
 msgid "done"
 msgstr "concluído"
 
-#: fetch-pack.c:541
+#: fetch-pack.c:504
 #, c-format
 msgid "got %s (%d) %s"
 msgstr "obteve-se %s (%d) %s"
 
-#: fetch-pack.c:587
+#: fetch-pack.c:540
 #, c-format
 msgid "Marking %s as complete"
 msgstr "Marcado %s como completo"
 
-#: fetch-pack.c:735
+#: fetch-pack.c:755
 #, c-format
 msgid "already have %s (%s)"
 msgstr "já se tem %s (%s)"
 
-#: fetch-pack.c:773
+#: fetch-pack.c:824
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr "fetch-pack: não é possível efetuar fork de sideband demultiplexer"
 
-#: fetch-pack.c:781
+#: fetch-pack.c:832
 msgid "protocol error: bad pack header"
 msgstr "erro de protocolo: cabeçalho de pacote incorreto"
 
-#: fetch-pack.c:837
+#: fetch-pack.c:916
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack: não é possível criar processo filho %s"
 
-#: fetch-pack.c:853
+#: fetch-pack.c:933
 #, c-format
 msgid "%s failed"
 msgstr "%s falhou"
 
-#: fetch-pack.c:855
+#: fetch-pack.c:935
 msgid "error in sideband demultiplexer"
 msgstr "erro no sideband demultiplexer"
 
-#: fetch-pack.c:882
-msgid "Server does not support shallow clients"
-msgstr "O servidor não suporta clientes rasos"
-
-#: fetch-pack.c:886
-msgid "Server supports multi_ack_detailed"
-msgstr "O servidor suporta multi_ack_detailed"
-
-#: fetch-pack.c:889
-msgid "Server supports no-done"
-msgstr "O servidor suporta no-done"
-
-#: fetch-pack.c:895
-msgid "Server supports multi_ack"
-msgstr "O servidor suporta muilti_ack"
-
-#: fetch-pack.c:899
-msgid "Server supports side-band-64k"
-msgstr "O servidor suporta side-band-64k"
-
-#: fetch-pack.c:903
-msgid "Server supports side-band"
-msgstr "O servidor suporta side-band"
-
-#: fetch-pack.c:907
-msgid "Server supports allow-tip-sha1-in-want"
-msgstr "O servidor suporta allow-tip-sha1-in-want"
-
-#: fetch-pack.c:911
-msgid "Server supports allow-reachable-sha1-in-want"
-msgstr "O servidor suporta allow-reachable-sha1-in-want"
-
-#: fetch-pack.c:921
-msgid "Server supports ofs-delta"
-msgstr "O servidor suporta ofs-delta"
-
-#: fetch-pack.c:928
+#: fetch-pack.c:978
 #, c-format
 msgid "Server version is %.*s"
 msgstr "A versão do servidor é %.*s"
 
-#: fetch-pack.c:934
+#: fetch-pack.c:983 fetch-pack.c:989 fetch-pack.c:992 fetch-pack.c:998
+#: fetch-pack.c:1002 fetch-pack.c:1006 fetch-pack.c:1010 fetch-pack.c:1014
+#: fetch-pack.c:1018 fetch-pack.c:1022 fetch-pack.c:1026 fetch-pack.c:1030
+#: fetch-pack.c:1036 fetch-pack.c:1042 fetch-pack.c:1047 fetch-pack.c:1052
+#, fuzzy, c-format
+msgid "Server supports %s"
+msgstr "O servidor suporta side-band"
+
+#: fetch-pack.c:985
+msgid "Server does not support shallow clients"
+msgstr "O servidor não suporta clientes rasos"
+
+#: fetch-pack.c:1045
 msgid "Server does not support --shallow-since"
 msgstr "O servidor não suporta --shallow-since"
 
-#: fetch-pack.c:938
+#: fetch-pack.c:1050
 msgid "Server does not support --shallow-exclude"
 msgstr "O servidor não suporta --shallow-exclude"
 
-#: fetch-pack.c:940
+#: fetch-pack.c:1054
 msgid "Server does not support --deepen"
 msgstr "O servidor não suporta --deepen"
 
-#: fetch-pack.c:951
+#: fetch-pack.c:1056
+#, fuzzy
+msgid "Server does not support this repository's object format"
+msgstr "O servidor não suporta --deepen"
+
+#: fetch-pack.c:1069
 msgid "no common commits"
 msgstr "nenhum commit em comum"
 
-#: fetch-pack.c:963
+#: fetch-pack.c:1081 fetch-pack.c:1619
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack: falha ao obter."
 
-#: fetch-pack.c:1125
+#: fetch-pack.c:1205
+#, c-format
+msgid "mismatched algorithms: client %s; server %s"
+msgstr ""
+
+#: fetch-pack.c:1209
+#, fuzzy, c-format
+msgid "the server does not support algorithm '%s'"
+msgstr "O servidor não suporta clientes rasos"
+
+#: fetch-pack.c:1229
+#, fuzzy
+msgid "Server does not support shallow requests"
+msgstr "O servidor não suporta clientes rasos"
+
+#: fetch-pack.c:1236
+#, fuzzy
+msgid "Server supports filter"
+msgstr "O servidor suporta ofs-delta"
+
+#: fetch-pack.c:1275
+#, fuzzy
+msgid "unable to write request to remote"
+msgstr "não foi possível escrever os parâmetros no ficheiro de configuração"
+
+#: fetch-pack.c:1293
+#, c-format
+msgid "error reading section header '%s'"
+msgstr ""
+
+#: fetch-pack.c:1299
+#, fuzzy, c-format
+msgid "expected '%s', received '%s'"
+msgstr "blob para %s '%s' esperado"
+
+#: fetch-pack.c:1360
+#, c-format
+msgid "unexpected acknowledgment line: '%s'"
+msgstr ""
+
+#: fetch-pack.c:1365
+#, c-format
+msgid "error processing acks: %d"
+msgstr ""
+
+#: fetch-pack.c:1375
+msgid "expected packfile to be sent after 'ready'"
+msgstr ""
+
+#: fetch-pack.c:1377
+msgid "expected no other sections to be sent after no 'ready'"
+msgstr ""
+
+#: fetch-pack.c:1419
+#, c-format
+msgid "error processing shallow info: %d"
+msgstr ""
+
+#: fetch-pack.c:1466
+#, fuzzy, c-format
+msgid "expected wanted-ref, got '%s'"
+msgstr "esperava-se raso/aprofundar, obteve-se %s"
+
+#: fetch-pack.c:1471
+#, fuzzy, c-format
+msgid "unexpected wanted-ref: '%s'"
+msgstr "fim de ficheiro inesperado"
+
+#: fetch-pack.c:1476
+#, c-format
+msgid "error processing wanted refs: %d"
+msgstr ""
+
+#: fetch-pack.c:1506
+#, fuzzy
+msgid "git fetch-pack: expected response end packet"
+msgstr "git fetch-pack: esperava-se lista rasa"
+
+#: fetch-pack.c:1887
 msgid "no matching remote head"
 msgstr "nenhuma cabeça remota correspondente"
 
-#: fetch-pack.c:1147
+#: fetch-pack.c:1910 builtin/clone.c:692
+msgid "remote did not send all necessary objects"
+msgstr "o remoto não enviou todos os objetos necessários"
+
+#: fetch-pack.c:1937
 #, c-format
 msgid "no such remote ref %s"
 msgstr "referência remota %s inexistente"
 
-#: fetch-pack.c:1150
+#: fetch-pack.c:1940
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr "O servidor não permite pedido do objeto não anunciado %s"
 
-#: gpg-interface.c:185
-msgid "gpg failed to sign the data"
-msgstr "gpg não assinou os dados"
-
-#: gpg-interface.c:215
+#: gpg-interface.c:272
 msgid "could not create temporary file"
 msgstr "não foi possível criar ficheiro temporário"
 
-#: gpg-interface.c:217
+#: gpg-interface.c:275
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr "falha ao escrever assinatura destacada em '%s'"
 
-#: graph.c:96
+#: gpg-interface.c:457
+msgid "gpg failed to sign the data"
+msgstr "gpg não assinou os dados"
+
+#: graph.c:98
 #, c-format
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr "ignorar cor inválida '%.*s' em log.graphColors"
 
-#: grep.c:1796
+#: grep.c:668
+msgid ""
+"given pattern contains NULL byte (via -f <file>). This is only supported "
+"with -P under PCRE v2"
+msgstr ""
+
+#: grep.c:2128
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "'%s': não foi possível ler %s"
 
-#: grep.c:1813 builtin/clone.c:399 builtin/diff.c:81 builtin/rm.c:133
+#: grep.c:2145 setup.c:176 builtin/clone.c:411 builtin/diff.c:89
+#: builtin/rm.c:135
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "falha ao invocar stat de '%s'"
 
-#: grep.c:1824
+#: grep.c:2156
 #, c-format
 msgid "'%s': short read"
 msgstr "'%s': leitura truncada"
 
-#: help.c:218
+#: help.c:23
+msgid "start a working area (see also: git help tutorial)"
+msgstr "iniciar uma área de trabalho (consulte também: git help tutorial)"
+
+#: help.c:24
+msgid "work on the current change (see also: git help everyday)"
+msgstr "trabalhar na alteração atual (consulte também: git help everyday)"
+
+#: help.c:25
+msgid "examine the history and state (see also: git help revisions)"
+msgstr "examinar o histórico e estado (consulte também: git help revisions)"
+
+#: help.c:26
+msgid "grow, mark and tweak your common history"
+msgstr "aumentar, marcar e ajustar o seu histórico comum"
+
+#: help.c:27
+msgid "collaborate (see also: git help workflows)"
+msgstr "colaborar (consulte também: git help workflows)"
+
+#: help.c:31
+msgid "Main Porcelain Commands"
+msgstr ""
+
+#: help.c:32
+msgid "Ancillary Commands / Manipulators"
+msgstr ""
+
+#: help.c:33
+msgid "Ancillary Commands / Interrogators"
+msgstr ""
+
+#: help.c:34
+msgid "Interacting with Others"
+msgstr ""
+
+#: help.c:35
+msgid "Low-level Commands / Manipulators"
+msgstr ""
+
+#: help.c:36
+msgid "Low-level Commands / Interrogators"
+msgstr ""
+
+#: help.c:37
+msgid "Low-level Commands / Syncing Repositories"
+msgstr ""
+
+#: help.c:38
+msgid "Low-level Commands / Internal Helpers"
+msgstr ""
+
+#: help.c:300
 #, c-format
 msgid "available git commands in '%s'"
 msgstr "comandos do git disponível em '%s'"
 
-#: help.c:225
+#: help.c:307
 msgid "git commands available from elsewhere on your $PATH"
 msgstr "comandos do git disponíveis noutras localizações em $PATH"
 
-#: help.c:256
+#: help.c:316
 msgid "These are common Git commands used in various situations:"
 msgstr "Estes são comandos do Git comuns usados em diversas situações:"
 
-#: help.c:321
+#: help.c:365 git.c:99
+#, fuzzy, c-format
+msgid "unsupported command listing type '%s'"
+msgstr "versão de índice %s não suportada"
+
+#: help.c:405
+#, fuzzy
+msgid "The Git concept guides are:"
+msgstr "Os guias comuns do Git:\n"
+
+#: help.c:429
+msgid "See 'git help <command>' to read about a specific subcommand"
+msgstr ""
+
+#: help.c:434
+#, fuzzy
+msgid "External commands"
+msgstr "a executar $command"
+
+#: help.c:449
+msgid "Command aliases"
+msgstr ""
+
+#: help.c:513
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -1849,30 +4304,53 @@ msgstr ""
 "'%s' parece ser um comando do git, mas não é possível\n"
 "executá-lo. Talvez git-%s esteja danificado?"
 
-#: help.c:376
+#: help.c:572
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "Oh não. Não há nenhum comando do Git disponível no sistema."
 
-#: help.c:398
-#, c-format
-msgid ""
-"WARNING: You called a Git command named '%s', which does not exist.\n"
-"Continuing under the assumption that you meant '%s'"
+#: help.c:594
+#, fuzzy, c-format
+msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr ""
 "AVISO: Invocou um comando do Git designado '%s' que não existe.\n"
 "Continuando, assumindo que queria dizer '%s'"
 
-#: help.c:403
+#: help.c:599
 #, c-format
-msgid "in %0.1f seconds automatically..."
-msgstr "automaticamente em %0.1f..."
+msgid "Continuing under the assumption that you meant '%s'."
+msgstr ""
 
-#: help.c:410
+#: help.c:604
+#, c-format
+msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
+msgstr ""
+
+#: help.c:612
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr "git: '%s' não é um comando do git. Consulte 'git --help'."
 
-#: help.c:414 help.c:480
+#: help.c:616
+msgid ""
+"\n"
+"The most similar command is"
+msgid_plural ""
+"\n"
+"The most similar commands are"
+msgstr[0] ""
+msgstr[1] ""
+
+#: help.c:656
+#, fuzzy
+msgid "git version [<options>]"
+msgstr "git column [<opções>]"
+
+#: help.c:711
+#, c-format
+msgid "%s: %s - %s"
+msgstr "%s: %s - %s"
+
+#: help.c:715
 msgid ""
 "\n"
 "Did you mean this?"
@@ -1886,12 +4364,15 @@ msgstr[1] ""
 "\n"
 "Queria dizer deste?"
 
-#: help.c:476
-#, c-format
-msgid "%s: %s - %s"
-msgstr "%s: %s - %s"
+#: ident.c:353
+msgid "Author identity unknown\n"
+msgstr ""
 
-#: ident.c:343
+#: ident.c:356
+msgid "Committer identity unknown\n"
+msgstr ""
+
+#: ident.c:362
 msgid ""
 "\n"
 "*** Please tell me who you are.\n"
@@ -1917,40 +4398,95 @@ msgstr ""
 "Omita --global para definir a identidade apenas neste repositório.\n"
 "\n"
 
-#: ident.c:367
+#: ident.c:397
 msgid "no email was given and auto-detection is disabled"
 msgstr "nenhum e-mail indicado e a deteção automática está desativada"
 
-#: ident.c:372
+#: ident.c:402
 #, c-format
 msgid "unable to auto-detect email address (got '%s')"
 msgstr ""
 "não é possível detetar automaticamente endereço de e-mail (obteve-se '%s')"
 
-#: ident.c:382
+#: ident.c:419
 msgid "no name was given and auto-detection is disabled"
 msgstr "nenhum nome indicado e a deteção automática está desativada"
 
-#: ident.c:388
+#: ident.c:425
 #, c-format
 msgid "unable to auto-detect name (got '%s')"
 msgstr "não é possível detetar automaticamente o nome (obteve-se '%s')"
 
-#: ident.c:396
+#: ident.c:433
 #, c-format
 msgid "empty ident name (for <%s>) not allowed"
 msgstr "nome de identificação vazio (de <%s>) não é permitido"
 
-#: ident.c:402
+#: ident.c:439
 #, c-format
 msgid "name consists only of disallowed characters: %s"
 msgstr "nome consiste apenas de caracteres não permitidos: %s"
 
-#: ident.c:417 builtin/commit.c:611
+#: ident.c:454 builtin/commit.c:634
 #, c-format
 msgid "invalid date format: %s"
 msgstr "formato de data inválido: %s"
 
+#: list-objects-filter-options.c:81
+msgid "expected 'tree:<depth>'"
+msgstr ""
+
+#: list-objects-filter-options.c:96
+msgid "sparse:path filters support has been dropped"
+msgstr ""
+
+#: list-objects-filter-options.c:109
+#, fuzzy, c-format
+msgid "invalid filter-spec '%s'"
+msgstr "ficheiro inválido: '%s'"
+
+#: list-objects-filter-options.c:125
+#, c-format
+msgid "must escape char in sub-filter-spec: '%c'"
+msgstr ""
+
+#: list-objects-filter-options.c:167
+msgid "expected something after combine:"
+msgstr ""
+
+#: list-objects-filter-options.c:249
+msgid "multiple filter-specs cannot be combined"
+msgstr ""
+
+#: list-objects-filter-options.c:361
+msgid "unable to upgrade repository format to support partial clone"
+msgstr ""
+
+#: list-objects-filter.c:492
+#, fuzzy, c-format
+msgid "unable to access sparse blob in '%s'"
+msgstr "não é possível aceder a '%s'"
+
+#: list-objects-filter.c:495
+#, fuzzy, c-format
+msgid "unable to parse sparse filter data in %s"
+msgstr "não foi possível analisar o formato de --pretty"
+
+#: list-objects.c:127
+#, c-format
+msgid "entry '%s' in tree %s has tree mode, but is not a tree"
+msgstr ""
+
+#: list-objects.c:140
+#, c-format
+msgid "entry '%s' in tree %s has blob mode, but is not a blob"
+msgstr ""
+
+#: list-objects.c:375
+#, fuzzy, c-format
+msgid "unable to load root tree for commit %s"
+msgstr "não foi possível analisar o commit %s"
+
 #: lockfile.c:152
 #, c-format
 msgid ""
@@ -1975,82 +4511,143 @@ msgstr ""
 msgid "Unable to create '%s.lock': %s"
 msgstr "Não é foi possível criar '%s.lock': %s"
 
-#: merge.c:41
-msgid "failed to read the cache"
-msgstr "falha ao ler a cache"
-
-#: merge.c:96 builtin/am.c:2000 builtin/am.c:2035 builtin/checkout.c:393
-#: builtin/checkout.c:607 builtin/clone.c:749
-msgid "unable to write new index file"
-msgstr "não foi possível escrever novo ficheiro de índice"
+#: ls-refs.c:109
+msgid "expected flush after ls-refs arguments"
+msgstr ""
 
-#: merge-recursive.c:209
+#: merge-recursive.c:356
 msgid "(bad commit)\n"
 msgstr "(commit incorreto)\n"
 
-#: merge-recursive.c:231 merge-recursive.c:239
-#, c-format
-msgid "addinfo_cache failed for path '%s'"
+#: merge-recursive.c:379
+#, fuzzy, c-format
+msgid "add_cacheinfo failed for path '%s'; merge aborting."
 msgstr "addinfo_cache falhou no caminho '%s'"
 
-#: merge-recursive.c:303
-msgid "error building trees"
-msgstr "erro ao construir árvores"
+#: merge-recursive.c:388
+#, fuzzy, c-format
+msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
+msgstr "addinfo_cache falhou no caminho '%s'"
 
-#: merge-recursive.c:727
+#: merge-recursive.c:874
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "falha ao criar o caminho '%s'%s"
 
-#: merge-recursive.c:738
+#: merge-recursive.c:885
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr "A remover %s para criar espaço para o subdiretório\n"
 
-#: merge-recursive.c:752 merge-recursive.c:771
+#: merge-recursive.c:899 merge-recursive.c:918
 msgid ": perhaps a D/F conflict?"
 msgstr ": talvez um conflito D/F?"
 
-#: merge-recursive.c:761
+#: merge-recursive.c:908
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "perda de ficheiro não controlado em '%s' recusada"
 
-#: merge-recursive.c:803 builtin/cat-file.c:34
+#: merge-recursive.c:949 builtin/cat-file.c:41
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "não é possível ler o objeto %s: '%s'"
 
-#: merge-recursive.c:805
+#: merge-recursive.c:954
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "blob para %s '%s' esperado"
 
-#: merge-recursive.c:829
+#: merge-recursive.c:979
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr "falha ao abrir '%s': %s"
 
-#: merge-recursive.c:840
+#: merge-recursive.c:990
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr "falha ao criar a ligação simbólica '%s': %s"
 
-#: merge-recursive.c:845
+#: merge-recursive.c:995
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "não sei o que fazer com %06o %s '%s'"
 
-#: merge-recursive.c:985
+#: merge-recursive.c:1191
+#, fuzzy, c-format
+msgid "Failed to merge submodule %s (not checked out)"
+msgstr "Falha ao registar o submódulo '$sm_path'"
+
+#: merge-recursive.c:1198
+#, fuzzy, c-format
+msgid "Failed to merge submodule %s (commits not present)"
+msgstr "Falha ao registar o submódulo '$sm_path'"
+
+#: merge-recursive.c:1205
+#, c-format
+msgid "Failed to merge submodule %s (commits don't follow merge-base)"
+msgstr ""
+
+#: merge-recursive.c:1213 merge-recursive.c:1225
+#, c-format
+msgid "Fast-forwarding submodule %s to the following commit:"
+msgstr ""
+
+#: merge-recursive.c:1216 merge-recursive.c:1228
+#, fuzzy, c-format
+msgid "Fast-forwarding submodule %s"
+msgstr "Avanço-rápido para $sha1"
+
+#: merge-recursive.c:1251
+#, c-format
+msgid "Failed to merge submodule %s (merge following commits not found)"
+msgstr ""
+
+#: merge-recursive.c:1255
+#, fuzzy, c-format
+msgid "Failed to merge submodule %s (not fast-forward)"
+msgstr "Falha ao registar o submódulo '$sm_path'"
+
+#: merge-recursive.c:1256
+msgid "Found a possible merge resolution for the submodule:\n"
+msgstr ""
+
+#: merge-recursive.c:1259
+#, c-format
+msgid ""
+"If this is correct simply add it to the index for example\n"
+"by using:\n"
+"\n"
+"  git update-index --cacheinfo 160000 %s \"%s\"\n"
+"\n"
+"which will accept this suggestion.\n"
+msgstr ""
+
+#: merge-recursive.c:1268
+#, c-format
+msgid "Failed to merge submodule %s (multiple merges found)"
+msgstr ""
+
+#: merge-recursive.c:1341
 msgid "Failed to execute internal merge"
 msgstr "Falha ao executar integração interna"
 
-#: merge-recursive.c:989
+#: merge-recursive.c:1346
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Não é possível adicionar %s à base de dados"
 
-#: merge-recursive.c:1092
+#: merge-recursive.c:1378
+#, c-format
+msgid "Auto-merging %s"
+msgstr "A integrar automaticamente %s"
+
+#: merge-recursive.c:1402
+#, fuzzy, c-format
+msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
+msgstr "perda de ficheiro não controlado em '%s' recusada"
+
+#: merge-recursive.c:1474
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -2059,7 +4656,7 @@ msgstr ""
 "CONFLITO (%s/eliminar): %s eliminado em %s e %s em %s. Versão de %s de %s "
 "deixada na árvore."
 
-#: merge-recursive.c:1097
+#: merge-recursive.c:1479
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -2068,7 +4665,7 @@ msgstr ""
 "CONFLITO (%s/eliminar): %s eliminado em %s e %s para %s em %s. Versão de %s "
 "de %s deixada na árvore."
 
-#: merge-recursive.c:1104
+#: merge-recursive.c:1486
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -2077,7 +4674,7 @@ msgstr ""
 "CONFLITO (%s/eliminar): %s eliminado em %s e %s em %s. Versão de %s de %s "
 "deixada na árvore em %s."
 
-#: merge-recursive.c:1109
+#: merge-recursive.c:1491
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -2086,20 +4683,42 @@ msgstr ""
 "CONFLITO (%s/eliminar): %s eliminado em %s e %s para %s em %s. Versão de %s "
 "de %s deixada na árvore em %s."
 
-#: merge-recursive.c:1143
+#: merge-recursive.c:1526
 msgid "rename"
 msgstr "mudar nome"
 
-#: merge-recursive.c:1143
+#: merge-recursive.c:1526
 msgid "renamed"
 msgstr "nome mudado"
 
-#: merge-recursive.c:1200
+#: merge-recursive.c:1577 merge-recursive.c:2484 merge-recursive.c:3129
+#, fuzzy, c-format
+msgid "Refusing to lose dirty file at %s"
+msgstr "perda de ficheiro não controlado em '%s' recusada"
+
+#: merge-recursive.c:1587
+#, fuzzy, c-format
+msgid "Refusing to lose untracked file at %s, even though it's in the way."
+msgstr "perda de ficheiro não controlado em '%s' recusada"
+
+#: merge-recursive.c:1645
+#, fuzzy, c-format
+msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
+msgstr ""
+"CONFLITO (mudar nome/adicionar): Mudar o nome %s->%s em %s. %s adicionado em "
+"%s"
+
+#: merge-recursive.c:1676
 #, c-format
 msgid "%s is a directory in %s adding as %s instead"
 msgstr "%s é um diretório em %s adicionando %s no seu lugar"
 
-#: merge-recursive.c:1225
+#: merge-recursive.c:1681
+#, fuzzy, c-format
+msgid "Refusing to lose untracked file at %s; adding as %s instead"
+msgstr "perda de ficheiro não controlado em '%s' recusada"
+
+#: merge-recursive.c:1708
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -2108,142 +4727,398 @@ msgstr ""
 "CONFLITO (mudar nome/mudar nome): Mudar o nome \"%s\"->\"%s\" no ramo \"%s\" "
 "mudar o nome \"%s\"->\"%s\" em \"%s\"%s"
 
-#: merge-recursive.c:1230
+#: merge-recursive.c:1713
 msgid " (left unresolved)"
 msgstr " (por resolver)"
 
-#: merge-recursive.c:1292
+#: merge-recursive.c:1805
 #, c-format
 msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
 "CONFLITO (mudar nome/mudar nome): Mudar de nome %s->%s em %s. Mudar o nome "
 "%s->%s em %s"
 
-#: merge-recursive.c:1325
+#: merge-recursive.c:2068
 #, c-format
-msgid "Renaming %s to %s and %s to %s instead"
-msgstr "A mudar o nome de %s para %s e de %s para %s, em alternativa"
+msgid ""
+"CONFLICT (directory rename split): Unclear where to place %s because "
+"directory %s was renamed to multiple other directories, with no destination "
+"getting a majority of the files."
+msgstr ""
 
-#: merge-recursive.c:1528
+#: merge-recursive.c:2100
 #, c-format
-msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
+msgid ""
+"CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
+"implicit directory rename(s) putting the following path(s) there: %s."
 msgstr ""
-"CONFLITO (mudar nome/adicionar): Mudar o nome %s->%s em %s. %s adicionado em "
-"%s"
 
-#: merge-recursive.c:1543
+#: merge-recursive.c:2110
 #, c-format
-msgid "Adding merged %s"
-msgstr "A adicionar %s integrado"
+msgid ""
+"CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
+"implicit directory renames tried to put these paths there: %s"
+msgstr ""
+
+#: merge-recursive.c:2202
+#, fuzzy, c-format
+msgid ""
+"CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
+">%s in %s"
+msgstr ""
+"CONFLITO (mudar nome/mudar nome): Mudar de nome %s->%s em %s. Mudar o nome "
+"%s->%s em %s"
 
-#: merge-recursive.c:1550 merge-recursive.c:1780
+#: merge-recursive.c:2447
 #, c-format
-msgid "Adding as %s instead"
-msgstr "A adicionar como %s, em alternativa."
+msgid ""
+"WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
+"renamed."
+msgstr ""
 
-#: merge-recursive.c:1607
+#: merge-recursive.c:2973
 #, c-format
 msgid "cannot read object %s"
 msgstr "não foi possível ler o objeto %s"
 
-#: merge-recursive.c:1610
+#: merge-recursive.c:2976
 #, c-format
 msgid "object %s is not a blob"
 msgstr "o objeto %s não é um blob"
 
-#: merge-recursive.c:1679
+#: merge-recursive.c:3040
 msgid "modify"
 msgstr "modificar"
 
-#: merge-recursive.c:1679
+#: merge-recursive.c:3040
 msgid "modified"
 msgstr "modificado"
 
-#: merge-recursive.c:1689
+#: merge-recursive.c:3052
 msgid "content"
 msgstr "conteúdo"
 
-#: merge-recursive.c:1696
+#: merge-recursive.c:3056
 msgid "add/add"
 msgstr "adicionar/adicionar"
 
-#: merge-recursive.c:1732
+#: merge-recursive.c:3079
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "%s ignorado (integrado é igual ao existente)"
 
-#: merge-recursive.c:1746
-#, c-format
-msgid "Auto-merging %s"
-msgstr "A integrar automaticamente %s"
-
-#: merge-recursive.c:1750 git-submodule.sh:944
+#: merge-recursive.c:3101
 msgid "submodule"
 msgstr "submódulo"
 
-#: merge-recursive.c:1751
+#: merge-recursive.c:3102
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "CONFLITO (%s): conflito de integração em %s"
 
-#: merge-recursive.c:1845
+#: merge-recursive.c:3132
+#, c-format
+msgid "Adding as %s instead"
+msgstr "A adicionar como %s, em alternativa."
+
+#: merge-recursive.c:3215
+#, c-format
+msgid ""
+"Path updated: %s added in %s inside a directory that was renamed in %s; "
+"moving it to %s."
+msgstr ""
+
+#: merge-recursive.c:3218
+#, 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 ""
+
+#: merge-recursive.c:3222
+#, c-format
+msgid ""
+"Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
+"%s; moving it to %s."
+msgstr ""
+
+#: merge-recursive.c:3225
+#, 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 ""
+
+#: merge-recursive.c:3339
 #, c-format
 msgid "Removing %s"
 msgstr "A remover %s"
 
-#: merge-recursive.c:1871
+#: merge-recursive.c:3362
 msgid "file/directory"
 msgstr "ficheiro/diretório"
 
-#: merge-recursive.c:1877
+#: merge-recursive.c:3367
 msgid "directory/file"
 msgstr "diretório/ficheiro"
 
-#: merge-recursive.c:1883
+#: merge-recursive.c:3374
 #, c-format
 msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr ""
 "CONFLITO (%s): Há um diretório designado %s em %s. A adicionar %s como %s"
 
-#: merge-recursive.c:1892
+#: merge-recursive.c:3383
 #, c-format
 msgid "Adding %s"
 msgstr "A adicionar %s"
 
-#: merge-recursive.c:1929
-msgid "Already up-to-date!"
+#: merge-recursive.c:3392
+#, fuzzy, c-format
+msgid "CONFLICT (add/add): Merge conflict in %s"
+msgstr "CONFLITO (%s): conflito de integração em %s"
+
+#: merge-recursive.c:3436
+#, fuzzy
+msgid "Already up to date!"
 msgstr "Já está atualizado!"
 
-#: merge-recursive.c:1938
+#: merge-recursive.c:3445
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "falha ao integrar as árvores %s e %s"
 
-#: merge-recursive.c:2021
+#: merge-recursive.c:3550
 msgid "Merging:"
 msgstr "A integrar:"
 
-#: merge-recursive.c:2034
+#: merge-recursive.c:3563
 #, c-format
 msgid "found %u common ancestor:"
 msgid_plural "found %u common ancestors:"
 msgstr[0] "%u antecessor comum encontrado:"
 msgstr[1] "%u antecessores comuns encontrados:"
 
-#: merge-recursive.c:2073
+#: merge-recursive.c:3613
 msgid "merge returned no commit"
 msgstr "a integração não retornou nenhum commit"
 
-#: merge-recursive.c:2136
+#: merge-recursive.c:3672
+#, fuzzy, c-format
+msgid ""
+"Your local changes to the following files would be overwritten by merge:\n"
+"  %s"
+msgstr ""
+"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
+"integrar:\n"
+"%%s"
+
+#: merge-recursive.c:3769
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Não foi possível analisar o objeto '%s'"
 
-#: merge-recursive.c:2150 builtin/merge.c:645 builtin/merge.c:792
+#: merge-recursive.c:3787 builtin/merge.c:702 builtin/merge.c:881
 msgid "Unable to write index."
 msgstr "Não é possível escrever no índice."
 
-#: notes-merge.c:273
+#: merge.c:41
+msgid "failed to read the cache"
+msgstr "falha ao ler a cache"
+
+#: merge.c:109 rerere.c:720 builtin/am.c:1896 builtin/am.c:1930
+#: builtin/checkout.c:560 builtin/checkout.c:816 builtin/clone.c:816
+#: builtin/stash.c:265
+msgid "unable to write new index file"
+msgstr "não foi possível escrever novo ficheiro de índice"
+
+#: midx.c:79
+#, c-format
+msgid "multi-pack-index file %s is too small"
+msgstr ""
+
+#: midx.c:95
+#, c-format
+msgid "multi-pack-index signature 0x%08x does not match signature 0x%08x"
+msgstr ""
+
+#: midx.c:100
+#, c-format
+msgid "multi-pack-index version %d not recognized"
+msgstr ""
+
+#: midx.c:105
+#, c-format
+msgid "multi-pack-index hash version %u does not match version %u"
+msgstr ""
+
+#: midx.c:122
+msgid "invalid chunk offset (too large)"
+msgstr ""
+
+#: midx.c:146
+msgid "terminating multi-pack-index chunk id appears earlier than expected"
+msgstr ""
+
+#: midx.c:159
+msgid "multi-pack-index missing required pack-name chunk"
+msgstr ""
+
+#: midx.c:161
+msgid "multi-pack-index missing required OID fanout chunk"
+msgstr ""
+
+#: midx.c:163
+msgid "multi-pack-index missing required OID lookup chunk"
+msgstr ""
+
+#: midx.c:165
+msgid "multi-pack-index missing required object offsets chunk"
+msgstr ""
+
+#: midx.c:179
+#, c-format
+msgid "multi-pack-index pack names out of order: '%s' before '%s'"
+msgstr ""
+
+#: midx.c:222
+#, c-format
+msgid "bad pack-int-id: %u (%u total packs)"
+msgstr ""
+
+#: midx.c:272
+msgid "multi-pack-index stores a 64-bit offset, but off_t is too small"
+msgstr ""
+
+#: midx.c:300
+msgid "error preparing packfile from multi-pack-index"
+msgstr ""
+
+#: midx.c:485
+#, fuzzy, c-format
+msgid "failed to add packfile '%s'"
+msgstr "falha ao ler o ficheiro de comando '%s'"
+
+#: midx.c:491
+#, fuzzy, c-format
+msgid "failed to open pack-index '%s'"
+msgstr "falha ao abrir '%s'"
+
+#: midx.c:551
+#, fuzzy, c-format
+msgid "failed to locate object %d in packfile"
+msgstr "Falha ao criar os ficheiros de saída"
+
+#: midx.c:853
+msgid "Adding packfiles to multi-pack-index"
+msgstr ""
+
+#: midx.c:886
+#, c-format
+msgid "did not see pack-file %s to drop"
+msgstr ""
+
+#: midx.c:938
+#, fuzzy
+msgid "no pack files to index."
+msgstr "Não é possível escrever no índice."
+
+#: midx.c:990
+msgid "Writing chunks to multi-pack-index"
+msgstr ""
+
+#: midx.c:1068
+#, fuzzy, c-format
+msgid "failed to clear multi-pack-index at %s"
+msgstr "falha ao limpar o índice"
+
+#: midx.c:1124
+msgid "multi-pack-index file exists, but failed to parse"
+msgstr ""
+
+#: midx.c:1132
+msgid "Looking for referenced packfiles"
+msgstr ""
+
+#: midx.c:1147
+#, c-format
+msgid ""
+"oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
+msgstr ""
+
+#: midx.c:1152
+msgid "the midx contains no oid"
+msgstr ""
+
+#: midx.c:1161
+msgid "Verifying OID order in multi-pack-index"
+msgstr ""
+
+#: midx.c:1170
+#, c-format
+msgid "oid lookup out of order: oid[%d] = %s >= %s = oid[%d]"
+msgstr ""
+
+#: midx.c:1190
+#, fuzzy
+msgid "Sorting objects by packfile"
+msgstr "A escrever objetos"
+
+#: midx.c:1197
+#, fuzzy
+msgid "Verifying object offsets"
+msgstr "A escrever objetos"
+
+#: midx.c:1213
+#, fuzzy, c-format
+msgid "failed to load pack entry for oid[%d] = %s"
+msgstr "não é possível adicionar %s à cache"
+
+#: midx.c:1219
+#, fuzzy, c-format
+msgid "failed to load pack-index for packfile %s"
+msgstr "falha ao ler o ficheiro de comando '%s'"
+
+#: midx.c:1228
+#, c-format
+msgid "incorrect object offset for oid[%d] = %s: %<PRIx64> != %<PRIx64>"
+msgstr ""
+
+#: midx.c:1253
+#, fuzzy
+msgid "Counting referenced objects"
+msgstr "eliminar ficheiros não referenciados"
+
+#: midx.c:1263
+msgid "Finding and deleting unreferenced packfiles"
+msgstr ""
+
+#: midx.c:1454
+#, fuzzy
+msgid "could not start pack-objects"
+msgstr "Não foi possível lançar pack-objects"
+
+#: midx.c:1474
+#, fuzzy
+msgid "could not finish pack-objects"
+msgstr "Não foi possível lançar pack-objects"
+
+#: name-hash.c:537
+#, fuzzy, c-format
+msgid "unable to create lazy_dir thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: name-hash.c:559
+#, fuzzy, c-format
+msgid "unable to create lazy_name thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: name-hash.c:565
+#, fuzzy, c-format
+msgid "unable to join lazy_name thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: notes-merge.c:277
 #, c-format
 msgid ""
 "You have not concluded your previous notes merge (%s exists).\n"
@@ -2254,99 +5129,216 @@ msgstr ""
 "Use 'git notes merge --commit' ou 'git notes merge --abort' para submeter/"
 "abortar a integração anterior antes de começar uma nova integração de notas."
 
-#: notes-merge.c:280
+#: notes-merge.c:284
 #, c-format
 msgid "You have not concluded your notes merge (%s exists)."
 msgstr "Não concluído a integração de integração de notas (%s presente)."
 
-#: notes-utils.c:41
+#: notes-utils.c:46
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr ""
 "Não é possível submeter árvore de notas não inicializada ou não referenciada"
 
-#: notes-utils.c:100
+#: notes-utils.c:105
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr "Valor de notes.rewriteMode incorreto: '%s'"
 
-#: notes-utils.c:110
+#: notes-utils.c:115
 #, c-format
 msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
 msgstr "Reescrita de notas em %s (fora de refs/notes/) recusada"
 
-#. TRANSLATORS: The first %s is the name of the
-#. environment variable, the second %s is its value
-#: notes-utils.c:137
+#. TRANSLATORS: The first %s is the name of
+#. the environment variable, the second %s is
+#. its value.
+#.
+#: notes-utils.c:145
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr "Valor incorreto de %s: '%s'"
 
-#: object.c:240
+#: object.c:53
+#, fuzzy, c-format
+msgid "invalid object type \"%s\""
+msgstr "objeto blob inválido %s"
+
+#: object.c:173
+#, fuzzy, c-format
+msgid "object %s is a %s, not a %s"
+msgstr "o objeto %s não é um blob"
+
+#: object.c:233
+#, fuzzy, c-format
+msgid "object %s has unknown type id %d"
+msgstr "objeto de tipo desconhecido"
+
+#: object.c:246
 #, c-format
 msgid "unable to parse object: %s"
 msgstr "não foi possível analisar o objeto: %s"
 
-#: parse-options.c:572
+#: object.c:266 object.c:278
+#, c-format
+msgid "hash mismatch %s"
+msgstr ""
+
+#: pack-bitmap.c:815 pack-bitmap.c:821 builtin/pack-objects.c:2216
+#, fuzzy, c-format
+msgid "unable to get size of %s"
+msgstr "não foi possível mover %s para %s"
+
+#: packfile.c:630
+msgid "offset before end of packfile (broken .idx?)"
+msgstr "offset antes do fim do ficheiro de pacote (.idx danificado?)"
+
+#: packfile.c:1922
+#, c-format
+msgid "offset before start of pack index for %s (corrupt index?)"
+msgstr "offset antes do início do índice do pacote %s (índice corrompido?)"
+
+#: packfile.c:1926
+#, c-format
+msgid "offset beyond end of pack index for %s (truncated index?)"
+msgstr "offset depois do fim do índice do pacote %s (índice truncado?)"
+
+#: parse-options-cb.c:20 parse-options-cb.c:24
+#, fuzzy, c-format
+msgid "option `%s' expects a numerical value"
+msgstr "a opção '%c' espera um valor numérico"
+
+#: parse-options-cb.c:41
+#, fuzzy, c-format
+msgid "malformed expiration date '%s'"
+msgstr "folha de opções malformada: '%s'"
+
+#: parse-options-cb.c:54
+#, c-format
+msgid "option `%s' expects \"always\", \"auto\", or \"never\""
+msgstr ""
+
+#: parse-options-cb.c:132 parse-options-cb.c:149
+#, c-format
+msgid "malformed object name '%s'"
+msgstr "nome do objeto malformado '%s'"
+
+#: parse-options.c:38
+#, fuzzy, c-format
+msgid "%s requires a value"
+msgstr "a opção '%s' requer um valor"
+
+#: parse-options.c:73
+#, fuzzy, c-format
+msgid "%s is incompatible with %s"
+msgstr "--long é incompatível com --abbrev=0"
+
+#: parse-options.c:78
+#, fuzzy, c-format
+msgid "%s : incompatible with something else"
+msgstr "--dirty é incompatível com commits ou semelhantes"
+
+#: parse-options.c:92 parse-options.c:96 parse-options.c:317
+#, fuzzy, c-format
+msgid "%s takes no value"
+msgstr "%s tem múltiplos valores"
+
+#: parse-options.c:94
+#, fuzzy, c-format
+msgid "%s isn't available"
+msgstr "a tag anotada %s não está disponível"
+
+#: parse-options.c:217
+#, c-format
+msgid "%s expects a non-negative integer value with an optional k/m/g suffix"
+msgstr ""
+
+#: parse-options.c:386
+#, c-format
+msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
+msgstr ""
+
+#: parse-options.c:420 parse-options.c:428
+#, c-format
+msgid "did you mean `--%s` (with two dashes)?"
+msgstr ""
+
+#: parse-options.c:666 parse-options.c:971
+#, c-format
+msgid "alias of --%s"
+msgstr ""
+
+#: parse-options.c:862
+#, fuzzy, c-format
+msgid "unknown option `%s'"
+msgstr "opção desconhecido %s"
+
+#: parse-options.c:864
+#, fuzzy, c-format
+msgid "unknown switch `%c'"
+msgstr "opção desconhecido %s"
+
+#: parse-options.c:866
+#, fuzzy, c-format
+msgid "unknown non-ascii option in string: `%s'"
+msgstr "Definidição --confirm desconhecida: '%s'\n"
+
+#: parse-options.c:890
 msgid "..."
 msgstr "..."
 
-#: parse-options.c:590
+#: parse-options.c:909
 #, c-format
 msgid "usage: %s"
 msgstr "utilização: %s"
 
 #. TRANSLATORS: the colon here should align with the
-#. one in "usage: %s" translation
-#: parse-options.c:594
+#. one in "usage: %s" translation.
+#.
+#: parse-options.c:915
 #, c-format
 msgid "   or: %s"
 msgstr "        ou: %s"
 
-#: parse-options.c:597
+#: parse-options.c:918
 #, c-format
 msgid "    %s"
 msgstr "         %s"
 
-#: parse-options.c:631
+#: parse-options.c:957
 msgid "-NUM"
 msgstr "-NUM"
 
-#: parse-options-cb.c:108
-#, c-format
-msgid "malformed object name '%s'"
-msgstr "nome do objeto malformado '%s'"
-
-#: path.c:805
+#: path.c:915
 #, c-format
 msgid "Could not make %s writable by group"
 msgstr "Não foi possível dar permissão de escrita ao grupo a %s"
 
-#: pathspec.c:125
+#: pathspec.c:130
 msgid "Escape character '\\' not allowed as last character in attr value"
 msgstr ""
 "O carácter de escape '\\' não pode ser usado como último carácter no valor "
 "de attr"
 
-#: pathspec.c:143
+#: pathspec.c:148
 msgid "Only one 'attr:' specification is allowed."
 msgstr "Só se pode especificar um 'attr:'."
 
-#: pathspec.c:146
+#: pathspec.c:151
 msgid "attr spec must not be empty"
 msgstr "especificador attr não pode estar vazio"
 
-#: pathspec.c:189
+#: pathspec.c:194
 #, c-format
 msgid "invalid attribute name %s"
 msgstr "nome de atributo inválido %s"
 
-#: pathspec.c:254
+#: pathspec.c:259
 msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
 msgstr ""
 "as definições globais 'glob' e 'noglob' de especificador de caminho "
 "(pathspec) são incompatíveis"
 
-#: pathspec.c:261
+#: pathspec.c:266
 msgid ""
 "global 'literal' pathspec setting is incompatible with all other global "
 "pathspec settings"
@@ -2354,69 +5346,237 @@ msgstr ""
 "a definição global de especificador de caminho 'literal' é incompatível com "
 "todas as outras definições globais de especificador de caminho (pathspec)"
 
-#: pathspec.c:301
+#: pathspec.c:306
 msgid "invalid parameter for pathspec magic 'prefix'"
 msgstr "parâmetro inválido na mágica 'prefix' do especificador de caminho"
 
-#: pathspec.c:322
+#: pathspec.c:327
 #, c-format
 msgid "Invalid pathspec magic '%.*s' in '%s'"
 msgstr "Mágica do especificador de caminho '%.*s' inválida em '%s'"
 
-#: pathspec.c:327
+#: pathspec.c:332
 #, c-format
 msgid "Missing ')' at the end of pathspec magic in '%s'"
 msgstr "Falta um ')' no final da mágica do especificador de caminho em '%s'"
 
-#: pathspec.c:365
+#: pathspec.c:370
 #, c-format
 msgid "Unimplemented pathspec magic '%c' in '%s'"
 msgstr "Mágica de especificador de caminho '%c' em '%s' não implementada"
 
-#: pathspec.c:421 pathspec.c:443
-#, c-format
-msgid "Pathspec '%s' is in submodule '%.*s'"
-msgstr "O caminho '%s' está dentro do submódulo '%.*s'"
-
-#: pathspec.c:483
+#: pathspec.c:429
 #, c-format
 msgid "%s: 'literal' and 'glob' are incompatible"
 msgstr "%s: 'literal' e 'glob' são incompatíveis"
 
-#: pathspec.c:496
-#, c-format
-msgid "%s: '%s' is outside repository"
+#: pathspec.c:445
+#, fuzzy, c-format
+msgid "%s: '%s' is outside repository at '%s'"
 msgstr "%s: '%s' está fora do repositório"
 
-#: pathspec.c:584
+#: pathspec.c:521
 #, c-format
 msgid "'%s' (mnemonic: '%c')"
 msgstr "'%s' (mnemónica: '%c')"
 
-#: pathspec.c:594
+#: pathspec.c:531
 #, c-format
 msgid "%s: pathspec magic not supported by this command: %s"
 msgstr ""
 "%s: mágica de especificador de caminho não suportada por este comando: %s"
 
-#: pathspec.c:644
-msgid ""
-"empty strings as pathspecs will be made invalid in upcoming releases. please "
-"use . instead if you meant to match all paths"
-msgstr ""
-"cadeias de caracteres vazias como especificadores de caminho tornar-se-ão "
-"inválidas nas próximas versões. Use . para corresponder a todos os caminhos"
-
-#: pathspec.c:668
+#: pathspec.c:598
 #, c-format
 msgid "pathspec '%s' is beyond a symbolic link"
 msgstr "o especificador de caminho '%s' é indicado por uma ligação simbólica"
 
-#: pretty.c:982
+#: pathspec.c:643
+#, c-format
+msgid "line is badly quoted: %s"
+msgstr ""
+
+#: pkt-line.c:92
+#, fuzzy
+msgid "unable to write flush packet"
+msgstr "não foi possível escrever %s"
+
+#: pkt-line.c:99
+#, fuzzy
+msgid "unable to write delim packet"
+msgstr "não é possível escrever o ficheiro de índice"
+
+#: pkt-line.c:106
+#, fuzzy
+msgid "unable to write stateless separator packet"
+msgstr "não é possível escrever o objeto de nota"
+
+#: pkt-line.c:113
+#, fuzzy
+msgid "flush packet write failed"
+msgstr "não foi possível escrever o ficheiro da tag"
+
+#: pkt-line.c:153 pkt-line.c:239
+msgid "protocol error: impossibly long line"
+msgstr ""
+
+#: pkt-line.c:169 pkt-line.c:171
+#, fuzzy
+msgid "packet write with format failed"
+msgstr "não foi possível escrever o ficheiro da tag"
+
+#: pkt-line.c:203
+msgid "packet write failed - data exceeds max packet size"
+msgstr ""
+
+#: pkt-line.c:210 pkt-line.c:217
+#, fuzzy
+msgid "packet write failed"
+msgstr "não foi possível escrever o ficheiro da tag"
+
+#: pkt-line.c:302
+#, fuzzy
+msgid "read error"
+msgstr "erro do programa"
+
+#: pkt-line.c:310
+#, fuzzy
+msgid "the remote end hung up unexpectedly"
+msgstr "O remoto desligou após contacto inicial"
+
+#: pkt-line.c:338
+#, fuzzy, c-format
+msgid "protocol error: bad line length character: %.4s"
+msgstr "erro de protocolo: cabeçalho de pacote incorreto"
+
+#: pkt-line.c:352 pkt-line.c:357
+#, fuzzy, c-format
+msgid "protocol error: bad line length %d"
+msgstr "erro de protocolo: cabeçalho de pacote incorreto"
+
+#: pkt-line.c:373 sideband.c:150
+#, c-format
+msgid "remote error: %s"
+msgstr "erro remoto: %s"
+
+#: preload-index.c:119
+#, fuzzy
+msgid "Refreshing index"
+msgstr "não foi possível refrescar o índice"
+
+#: preload-index.c:138
+#, fuzzy, c-format
+msgid "unable to create threaded lstat: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: pretty.c:983
 msgid "unable to parse --pretty format"
 msgstr "não foi possível analisar o formato de --pretty"
 
-#: read-cache.c:1307
+#: promisor-remote.c:30
+msgid "promisor-remote: unable to fork off fetch subprocess"
+msgstr ""
+
+#: promisor-remote.c:35 promisor-remote.c:37
+msgid "promisor-remote: could not write to fetch subprocess"
+msgstr ""
+
+#: promisor-remote.c:41
+msgid "promisor-remote: could not close stdin to fetch subprocess"
+msgstr ""
+
+#: promisor-remote.c:53
+#, c-format
+msgid "promisor remote name cannot begin with '/': %s"
+msgstr ""
+
+#: prune-packed.c:35
+msgid "Removing duplicate objects"
+msgstr "A remover objetos duplicados"
+
+#: range-diff.c:77
+#, fuzzy
+msgid "could not start `log`"
+msgstr "não foi possível obter stat de %s"
+
+#: range-diff.c:79
+#, fuzzy
+msgid "could not read `log` output"
+msgstr "não foi possível ler a saída do comando 'show'"
+
+#: range-diff.c:98 sequencer.c:5283
+#, fuzzy, c-format
+msgid "could not parse commit '%s'"
+msgstr "não foi possível analisar o commit %s\n"
+
+#: range-diff.c:112
+#, c-format
+msgid ""
+"could not parse first line of `log` output: did not start with 'commit ': "
+"'%s'"
+msgstr ""
+
+#: range-diff.c:137
+#, fuzzy, c-format
+msgid "could not parse git header '%.*s'"
+msgstr "não foi possível analisar o patch '%s'"
+
+#: range-diff.c:301
+#, fuzzy
+msgid "failed to generate diff"
+msgstr "falha ao criar o ficheiro %s"
+
+#: range-diff.c:534 range-diff.c:536
+#, fuzzy, c-format
+msgid "could not parse log for '%s'"
+msgstr "não é possível ler o ficheiro de log '%s'"
+
+#: read-cache.c:682
+#, fuzzy, c-format
+msgid "will not add file alias '%s' ('%s' already exists in index)"
+msgstr "%s: já existe no índice"
+
+#: read-cache.c:698
+#, fuzzy
+msgid "cannot create an empty blob in the object database"
+msgstr "escrever o objeto na base de dados de objetos"
+
+#: read-cache.c:720
+#, c-format
+msgid "%s: can only add regular files, symbolic links or git-directories"
+msgstr ""
+
+#: read-cache.c:725
+#, fuzzy, c-format
+msgid "'%s' does not have a commit checked out"
+msgstr "'%s' não aponta para um commit"
+
+#: read-cache.c:777
+#, fuzzy, c-format
+msgid "unable to index file '%s'"
+msgstr "não foi possível ler o ficheiro de índice"
+
+#: read-cache.c:796
+#, fuzzy, c-format
+msgid "unable to add '%s' to index"
+msgstr "Não é possível adicionar %s à base de dados"
+
+#: read-cache.c:807
+#, fuzzy, c-format
+msgid "unable to stat '%s'"
+msgstr "não foi possível criar '%s'"
+
+#: read-cache.c:1318
+#, fuzzy, c-format
+msgid "'%s' appears as both a file and as a directory"
+msgstr "%s existe e não é um diretório"
+
+#: read-cache.c:1524
+#, fuzzy
+msgid "Refresh index"
+msgstr "não foi possível refrescar o índice"
+
+#: read-cache.c:1639
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -2425,7 +5585,7 @@ msgstr ""
 "index.version definido, mas com valor inválido.\n"
 "A usar a versão %i"
 
-#: read-cache.c:1317
+#: read-cache.c:1649
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -2434,360 +5594,838 @@ msgstr ""
 "GIT_INDEX_VERSION definido, mas com valor inválido.\n"
 "A usar a versão %i"
 
-#: read-cache.c:2232
+#: read-cache.c:1705
+#, fuzzy, c-format
+msgid "bad signature 0x%08x"
+msgstr "adicionar uma assinatura"
+
+#: read-cache.c:1708
+#, fuzzy, c-format
+msgid "bad index version %d"
+msgstr "versão de índice '%s' incorreta"
+
+#: read-cache.c:1717
+#, fuzzy
+msgid "bad index file sha1 signature"
+msgstr "adicionar uma assinatura"
+
+#: read-cache.c:1747
+#, c-format
+msgid "index uses %.4s extension, which we do not understand"
+msgstr ""
+
+#: read-cache.c:1749
+#, fuzzy, c-format
+msgid "ignoring %.4s extension"
+msgstr "modelo %s ignorado"
+
+#: read-cache.c:1786
+#, fuzzy, c-format
+msgid "unknown index entry format 0x%08x"
+msgstr "formato de %.*s desconhecido %s"
+
+#: read-cache.c:1802
+#, c-format
+msgid "malformed name field in the index, near path '%s'"
+msgstr ""
+
+#: read-cache.c:1859
+msgid "unordered stage entries in index"
+msgstr ""
+
+#: read-cache.c:1862
+#, fuzzy, c-format
+msgid "multiple stage entries for merged file '%s'"
+msgstr "extrair a versão deles dos ficheiros não integrados"
+
+#: read-cache.c:1865
+#, fuzzy, c-format
+msgid "unordered stage entries for '%s'"
+msgstr "não foi possível criar o diretórios para %s"
+
+#: read-cache.c:1971 read-cache.c:2262 rerere.c:565 rerere.c:599 rerere.c:1111
+#: submodule.c:1628 builtin/add.c:538 builtin/check-ignore.c:181
+#: builtin/checkout.c:489 builtin/checkout.c:675 builtin/clean.c:991
+#: builtin/commit.c:364 builtin/diff-tree.c:121 builtin/grep.c:507
+#: builtin/mv.c:146 builtin/reset.c:247 builtin/rm.c:290
+#: builtin/submodule--helper.c:332
+msgid "index file corrupt"
+msgstr "ficheiro de índice corrompido"
+
+#: read-cache.c:2115
+#, fuzzy, c-format
+msgid "unable to create load_cache_entries thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: read-cache.c:2128
+#, fuzzy, c-format
+msgid "unable to join load_cache_entries thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: read-cache.c:2161
+#, fuzzy, c-format
+msgid "%s: index file open failed"
+msgstr "falha ao adicionar ficheiros"
+
+#: read-cache.c:2165
+#, fuzzy, c-format
+msgid "%s: cannot stat the open index"
+msgstr "não é possível ler o índice"
+
+#: read-cache.c:2169
 #, c-format
-msgid "could not stat '%s"
+msgid "%s: index file smaller than expected"
+msgstr ""
+
+#: read-cache.c:2173
+#, fuzzy, c-format
+msgid "%s: unable to map index file"
+msgstr "não foi possível ler o ficheiro de índice"
+
+#: read-cache.c:2215
+#, fuzzy, c-format
+msgid "unable to create load_index_extensions thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: read-cache.c:2242
+#, fuzzy, c-format
+msgid "unable to join load_index_extensions thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: read-cache.c:2274
+#, fuzzy, c-format
+msgid "could not freshen shared index '%s'"
+msgstr "não foi possível ler o ficheiro '%s'"
+
+#: read-cache.c:2321
+#, c-format
+msgid "broken index, expect %s in %s, got %s"
+msgstr ""
+
+#: read-cache.c:3017 strbuf.c:1171 wrapper.c:633 builtin/merge.c:1126
+#, c-format
+msgid "could not close '%s'"
+msgstr "não foi possível fechar '%s'"
+
+#: read-cache.c:3120 sequencer.c:2446 sequencer.c:4185
+#, fuzzy, c-format
+msgid "could not stat '%s'"
 msgstr "não foi possível obter stat de '%s'"
 
-#: read-cache.c:2245
+#: read-cache.c:3133
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr "não é possível diretório git: %s"
 
-#: read-cache.c:2257
+#: read-cache.c:3145
 #, c-format
 msgid "unable to unlink: %s"
 msgstr "não é possível invocar unlink: %s"
 
-#: refs.c:619 builtin/merge.c:844
-#, c-format
-msgid "Could not open '%s' for writing"
-msgstr "Não foi possível abrir '%s' para escrita"
+#: read-cache.c:3170
+#, fuzzy, c-format
+msgid "cannot fix permission bits on '%s'"
+msgstr "não é possível abrir o ficheiro '%s'"
 
-#: refs/files-backend.c:2531
-#, c-format
-msgid "could not delete reference %s: %s"
-msgstr "não foi possível eliminar a referência %s: %s"
+#: read-cache.c:3319
+#, fuzzy, c-format
+msgid "%s: cannot drop to stage #0"
+msgstr "não é possível mudar para o diretório %s"
 
-#: refs/files-backend.c:2534
-#, c-format
-msgid "could not delete references: %s"
-msgstr "não foi possível eliminar as referências: %s"
+#: rebase-interactive.c:11
+#, fuzzy
+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 ""
+"Pode corrí-lo com 'git rebase --edit-todo' e depois executar 'git rebase --"
+"continue'."
+
+#: rebase-interactive.c:33
+#, fuzzy, c-format
+msgid ""
+"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
+msgstr ""
+"Definição $check_level desconhecida da opção rebase.missingCommitsCheck. "
+"Ignorado."
 
-#: refs/files-backend.c:2543
+#: rebase-interactive.c:42
+#, fuzzy
+msgid ""
+"\n"
+"Commands:\n"
+"p, pick <commit> = use commit\n"
+"r, reword <commit> = use commit, but edit the commit message\n"
+"e, edit <commit> = use commit, but stop for amending\n"
+"s, squash <commit> = use commit, but meld into previous commit\n"
+"f, fixup <commit> = like \"squash\", but discard this commit's log message\n"
+"x, exec <command> = run command (the rest of the line) using shell\n"
+"b, break = stop here (continue rebase later with 'git rebase --continue')\n"
+"d, drop <commit> = remove commit\n"
+"l, label <label> = label current HEAD with a name\n"
+"t, reset <label> = reset HEAD to a label\n"
+"m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]\n"
+".       create a merge commit using the original merge commit's\n"
+".       message (or the oneline, if no original merge commit was\n"
+".       specified). Use -c <commit> to reword the commit message.\n"
+"\n"
+"These lines can be re-ordered; they are executed from top to bottom.\n"
+msgstr ""
+"\n"
+"Comandos:\n"
+" p, pick = usar commit\n"
+" r, reword = usar commit, mas editar a mensagem de commit\n"
+" e, edit = usar commit, mas parar para emendar\n"
+" s, squash = usar commit, mas fundir com o commit anterior\n"
+" f, fixup = como \"squash\", mas descartar a mensagem deste commit\n"
+" x, exec = executar o comando (o resto da linha) usando a shell\n"
+" d, drop = remover commit\n"
+"\n"
+"Estas linhas pode ser reordenadas; são executadas de cima para baixo.\n"
+
+#: rebase-interactive.c:63
+#, fuzzy, c-format
+msgid "Rebase %s onto %s (%d command)"
+msgid_plural "Rebase %s onto %s (%d commands)"
+msgstr[0] "Rebase $shortrevisions sobre $shortonto ($todocount comando)"
+msgstr[1] "Rebase $shortrevisions sobre $shortonto ($todocount comandos)"
+
+#: rebase-interactive.c:72 git-rebase--preserve-merges.sh:218
+msgid ""
+"\n"
+"Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
+msgstr ""
+"\n"
+"Não remover nenhum linha. Use 'drop' explicitamente para remover um commit.\n"
+
+#: rebase-interactive.c:75 git-rebase--preserve-merges.sh:222
+msgid ""
+"\n"
+"If you remove a line here THAT COMMIT WILL BE LOST.\n"
+msgstr ""
+"\n"
+"Se remover uma linha daqui AQUELE COMMIT SERÁ PERDIDO.\n"
+
+#: rebase-interactive.c:81 git-rebase--preserve-merges.sh:861
+msgid ""
+"\n"
+"You are editing the todo file of an ongoing interactive rebase.\n"
+"To continue rebase after editing, run:\n"
+"    git rebase --continue\n"
+"\n"
+msgstr ""
+"\n"
+"Está a editar o ficheiro de tarefa de um rebase interativo em curso.\n"
+"Para continuar o rebase depois de editar, execute:\n"
+"    git rebase --continue\n"
+"\n"
+
+#: rebase-interactive.c:86 git-rebase--preserve-merges.sh:938
+msgid ""
+"\n"
+"However, if you remove everything, the rebase will be aborted.\n"
+"\n"
+msgstr ""
+"\n"
+"No entanto, se remover tudo, o rebase será abortado.\n"
+"\n"
+
+#: rebase-interactive.c:110 rerere.c:485 rerere.c:692 sequencer.c:3571
+#: sequencer.c:3597 sequencer.c:5389 builtin/fsck.c:347 builtin/rebase.c:264
+#, fuzzy, c-format
+msgid "could not write '%s'"
+msgstr "não foi possível escrever em '%s'"
+
+#: rebase-interactive.c:116 builtin/rebase.c:196 builtin/rebase.c:222
+#: builtin/rebase.c:246
+#, fuzzy, c-format
+msgid "could not write '%s'."
+msgstr "não foi possível escrever em '%s'"
+
+#: rebase-interactive.c:193
+#, fuzzy, c-format
+msgid ""
+"Warning: some commits may have been dropped accidentally.\n"
+"Dropped commits (newer to older):\n"
+msgstr ""
+"Aviso: alguns commits podem ter sido descartados acidentalmente.\n"
+"Commits descartados (mais novo para o mais velho):"
+
+#: rebase-interactive.c:200
+#, fuzzy, 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 ""
+"Para evitar esta mensagem, use \"drop\" para remover um commit "
+"explicitamente.\n"
+"\n"
+"Use 'git config rebase.missingCommitsCheck' para mudar o nível de avisos.\n"
+"O comportamentos possíveis são: ignore, warn, error."
+
+#: rebase-interactive.c:233 rebase-interactive.c:238 sequencer.c:2361
+#: builtin/rebase.c:182 builtin/rebase.c:207 builtin/rebase.c:233
+#: builtin/rebase.c:258
 #, c-format
-msgid "could not remove reference %s"
-msgstr "não foi possível eliminar a referência %s"
+msgid "could not read '%s'."
+msgstr "não foi possível ler '%s'."
 
-#: ref-filter.c:35 wt-status.c:1780
+#: ref-filter.c:42 wt-status.c:1973
 msgid "gone"
 msgstr "desaparecido"
 
-#: ref-filter.c:36
+#: ref-filter.c:43
 #, c-format
 msgid "ahead %d"
 msgstr "à frente %d"
 
-#: ref-filter.c:37
+#: ref-filter.c:44
 #, c-format
 msgid "behind %d"
 msgstr "atrás %d"
 
-#: ref-filter.c:38
+#: ref-filter.c:45
 #, c-format
 msgid "ahead %d, behind %d"
 msgstr "à frente %d, atrás %d"
 
-#: ref-filter.c:104
+#: ref-filter.c:169
 #, c-format
 msgid "expected format: %%(color:<color>)"
 msgstr "formato esperado: %%(color:<cor>)"
 
-#: ref-filter.c:106
+#: ref-filter.c:171
 #, c-format
 msgid "unrecognized color: %%(color:%s)"
 msgstr "cor não reconhecida: %%(color:%s)"
 
-#: ref-filter.c:120
+#: ref-filter.c:193
 #, c-format
 msgid "Integer value expected refname:lstrip=%s"
 msgstr "valor inteiro esperado refname:lstrip=%s"
 
-#: ref-filter.c:124
+#: ref-filter.c:197
 #, c-format
 msgid "Integer value expected refname:rstrip=%s"
 msgstr "Valor inteiro esperado refname:rstrip=%s"
 
-#: ref-filter.c:126
+#: ref-filter.c:199
 #, c-format
 msgid "unrecognized %%(%s) argument: %s"
 msgstr "argumento de %%(%s) não reconhecido: %s"
 
-#: ref-filter.c:166
+#: ref-filter.c:254
+#, fuzzy, c-format
+msgid "%%(objecttype) does not take arguments"
+msgstr "%%(subject) não leva argumentos"
+
+#: ref-filter.c:276
+#, fuzzy, c-format
+msgid "unrecognized %%(objectsize) argument: %s"
+msgstr "argumento de %%(objectname) não reconhecido: %s"
+
+#: ref-filter.c:284
+#, fuzzy, c-format
+msgid "%%(deltabase) does not take arguments"
+msgstr "%%(trailers) não leva argumentos"
+
+#: ref-filter.c:296
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr "%%(body) não leva argumentos"
 
-#: ref-filter.c:173
-#, c-format
-msgid "%%(subject) does not take arguments"
-msgstr "%%(subject) não leva argumentos"
+#: ref-filter.c:309
+#, fuzzy, c-format
+msgid "unrecognized %%(subject) argument: %s"
+msgstr "argumento de %%(objectname) não reconhecido: %s"
 
-#: ref-filter.c:180
-#, c-format
-msgid "%%(trailers) does not take arguments"
-msgstr "%%(trailers) não leva argumentos"
+#: ref-filter.c:330
+#, fuzzy, c-format
+msgid "unknown %%(trailers) argument: %s"
+msgstr "argumento de mirror desconhecido: %s"
 
-#: ref-filter.c:199
+#: ref-filter.c:363
 #, c-format
 msgid "positive value expected contents:lines=%s"
 msgstr "valor positivo esperado contents:lines=%s"
 
-#: ref-filter.c:201
+#: ref-filter.c:365
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr "argumento de %%(contents) não reconhecido: %s"
 
-#: ref-filter.c:214
-#, c-format
-msgid "positive value expected objectname:short=%s"
-msgstr "valor positivo esperado objectname:short=%s"
+#: ref-filter.c:380
+#, fuzzy, c-format
+msgid "positive value expected '%s' in %%(%s)"
+msgstr "valor positivo esperado contents:lines=%s"
 
-#: ref-filter.c:218
-#, c-format
-msgid "unrecognized %%(objectname) argument: %s"
-msgstr "argumento de %%(objectname) não reconhecido: %s"
+#: ref-filter.c:384
+#, fuzzy, c-format
+msgid "unrecognized argument '%s' in %%(%s)"
+msgstr "argumento não reconhecido: %s"
+
+#: ref-filter.c:398
+#, fuzzy, c-format
+msgid "unrecognized email option: %s"
+msgstr "posição não reconhecida:%s"
 
-#: ref-filter.c:245
+#: ref-filter.c:428
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr "formato esperado: %%(align:<largura>,<posição>)"
 
-#: ref-filter.c:257
+#: ref-filter.c:440
 #, c-format
 msgid "unrecognized position:%s"
 msgstr "posição não reconhecida:%s"
 
-#: ref-filter.c:261
+#: ref-filter.c:447
 #, c-format
 msgid "unrecognized width:%s"
 msgstr "largura não reconhecida:%s"
 
-#: ref-filter.c:267
+#: ref-filter.c:456
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr "argumento de %%(align) não reconhecido: %s"
 
-#: ref-filter.c:271
+#: ref-filter.c:464
 #, c-format
 msgid "positive width expected with the %%(align) atom"
 msgstr "largura positiva esperada com o átomo %%(algn)"
 
-#: ref-filter.c:286
+#: ref-filter.c:482
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr "argumento de %%(if) não reconhecido: %s"
 
-#: ref-filter.c:371
+#: ref-filter.c:584
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr "nome de ficheiro malformado: %.*s"
 
-#: ref-filter.c:397
+#: ref-filter.c:611
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr "nome do campo desconhecido: %.*s"
 
-#: ref-filter.c:501
+#: ref-filter.c:615
+#, c-format
+msgid ""
+"not a git repository, but the field '%.*s' requires access to object data"
+msgstr ""
+
+#: ref-filter.c:739
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr "formato: átomo %%(if) utilizado sem átomo %%(then) correspondente"
 
-#: ref-filter.c:561
+#: ref-filter.c:802
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr "formato: átomo %%(then) utilizado sem átomo %%(if) correspondente"
 
-#: ref-filter.c:563
+#: ref-filter.c:804
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr "formato: átomo %%(then) utilizado mais que uma vez"
 
-#: ref-filter.c:565
+#: ref-filter.c:806
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr "formato: átomo %%(then) utilizado depois de %%(else)"
 
-#: ref-filter.c:591
+#: ref-filter.c:834
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr "formato: átomo %%(else) utilizado sem átomo %%(if) correspondente"
 
-#: ref-filter.c:593
+#: ref-filter.c:836
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr "formato: átomo %%(else) utilizado sem átomo %%(then) correspondente"
 
-#: ref-filter.c:595
+#: ref-filter.c:838
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr "formato: átomo %%(else) utilizado mais que uma vez"
 
-#: ref-filter.c:608
+#: ref-filter.c:853
 #, c-format
 msgid "format: %%(end) atom used without corresponding atom"
 msgstr "formato: átomo %%(end) utilizado sem átomo correspondente"
 
-#: ref-filter.c:663
+#: ref-filter.c:910
 #, c-format
 msgid "malformed format string %s"
 msgstr "cadeia malformada %s"
 
-#: ref-filter.c:1247
-#, c-format
-msgid "(no branch, rebasing %s)"
+#: ref-filter.c:1541
+#, fuzzy, c-format
+msgid "no branch, rebasing %s"
 msgstr "(nenhum ramo, a efetuar rebase de %s)"
 
-#: ref-filter.c:1250
-#, c-format
-msgid "(no branch, bisect started on %s)"
-msgstr "(nenhum ramo, bissecção iniciada em %s)"
-
-#. TRANSLATORS: make sure this matches
-#. "HEAD detached at " in wt-status.c
-#: ref-filter.c:1256
-#, c-format
-msgid "(HEAD detached at %s)"
-msgstr "(HEAD destacada em %s)"
+#: ref-filter.c:1544
+#, fuzzy, c-format
+msgid "no branch, rebasing detached HEAD %s"
+msgstr "(nenhum ramo, a efetuar rebase de %s)"
 
-#. TRANSLATORS: make sure this matches
-#. "HEAD detached from " in wt-status.c
-#: ref-filter.c:1261
-#, c-format
-msgid "(HEAD detached from %s)"
-msgstr "(HEAD destacada de %s)"
+#: ref-filter.c:1547
+#, fuzzy, c-format
+msgid "no branch, bisect started on %s"
+msgstr "(nenhum ramo, bissecção iniciada em %s)"
 
-#: ref-filter.c:1265
-msgid "(no branch)"
+#: ref-filter.c:1557
+#, fuzzy
+msgid "no branch"
 msgstr "(nenhum ramo)"
 
-#: ref-filter.c:1420 ref-filter.c:1451
+#: ref-filter.c:1591 ref-filter.c:1800
 #, c-format
 msgid "missing object %s for %s"
 msgstr "falta o objeto %s de %s"
 
-#: ref-filter.c:1423 ref-filter.c:1454
+#: ref-filter.c:1601
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "falha ao invocar parse_object_buffer sobre %s de %s"
 
-#: ref-filter.c:1692
+#: ref-filter.c:2054
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "objeto malformado em '%s'"
 
-#: ref-filter.c:1759
+#: ref-filter.c:2143
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "a referência %s com nome danificado foi ignorada"
 
-#: ref-filter.c:1764
+#: ref-filter.c:2148 refs.c:657
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "a referência %s danificada foi ignorada"
 
-#: ref-filter.c:2028
+#: ref-filter.c:2464
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "formato: falta átomo %%(end)"
 
-#: ref-filter.c:2109
+#: ref-filter.c:2563
 #, c-format
 msgid "malformed object name %s"
 msgstr "nome de objeto malformado %s"
 
-#: remote.c:754
+#: ref-filter.c:2568
+#, fuzzy, c-format
+msgid "option `%s' must point to a commit"
+msgstr "'%s' não aponta para um commit"
+
+#: refs.c:264
+#, fuzzy, c-format
+msgid "%s does not point to a valid object!"
+msgstr "'%s' não aponta para um commit"
+
+#: refs.c:572
+#, fuzzy, c-format
+msgid "could not retrieve `%s`"
+msgstr "não foi possível remover '%s'"
+
+#: refs.c:579
+#, fuzzy, c-format
+msgid "invalid branch name: %s = %s"
+msgstr "Nome de ramo inválido: '%s'"
+
+#: refs.c:655
+#, fuzzy, c-format
+msgid "ignoring dangling symref %s"
+msgstr "a referência %s danificada foi ignorada"
+
+#: refs.c:892
+#, c-format
+msgid "log for ref %s has gap after %s"
+msgstr ""
+
+#: refs.c:898
+#, c-format
+msgid "log for ref %s unexpectedly ended on %s"
+msgstr ""
+
+#: refs.c:957
+#, c-format
+msgid "log for %s is empty"
+msgstr ""
+
+#: refs.c:1049
+#, fuzzy, c-format
+msgid "refusing to update ref with bad name '%s'"
+msgstr "a referência %s com nome danificado foi ignorada"
+
+#: refs.c:1120
+#, fuzzy, c-format
+msgid "update_ref failed for ref '%s': %s"
+msgstr "falha ao abrir '%s': %s"
+
+#: refs.c:1944
+#, fuzzy, c-format
+msgid "multiple updates for ref '%s' not allowed"
+msgstr "nome de identificação vazio (de <%s>) não é permitido"
+
+#: refs.c:2024
+msgid "ref updates forbidden inside quarantine environment"
+msgstr ""
+
+#: refs.c:2035
+msgid "ref updates aborted by hook"
+msgstr ""
+
+#: refs.c:2135 refs.c:2165
+#, fuzzy, c-format
+msgid "'%s' exists; cannot create '%s'"
+msgstr "não é possível criar '%s'"
+
+#: refs.c:2141 refs.c:2176
+#, fuzzy, c-format
+msgid "cannot process '%s' and '%s' at the same time"
+msgstr ""
+"Não é possível atualizar os caminhos e mudar para o ramo '%s' ao mesmo tempo."
+
+#: refs/files-backend.c:1228
+#, c-format
+msgid "could not remove reference %s"
+msgstr "não foi possível eliminar a referência %s"
+
+#: refs/files-backend.c:1242 refs/packed-backend.c:1542
+#: refs/packed-backend.c:1552
+#, c-format
+msgid "could not delete reference %s: %s"
+msgstr "não foi possível eliminar a referência %s: %s"
+
+#: refs/files-backend.c:1245 refs/packed-backend.c:1555
+#, c-format
+msgid "could not delete references: %s"
+msgstr "não foi possível eliminar as referências: %s"
+
+#: refspec.c:167
+#, fuzzy, c-format
+msgid "invalid refspec '%s'"
+msgstr "ficheiro inválido: '%s'"
+
+#: remote.c:351
+#, c-format
+msgid "config remote shorthand cannot begin with '/': %s"
+msgstr ""
+
+#: remote.c:399
+msgid "more than one receivepack given, using the first"
+msgstr ""
+
+#: remote.c:407
+msgid "more than one uploadpack given, using the first"
+msgstr ""
+
+#: remote.c:590
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
 msgstr "Não é possível obter %s e %s ao mesmo tempo para %s"
 
-#: remote.c:758
+#: remote.c:594
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s geralmente segue %s, não %s"
 
-#: remote.c:762
+#: remote.c:598
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s segue %s e %s em simultâneo"
 
-#: remote.c:770
-msgid "Internal error"
-msgstr "Erro interno"
+#: remote.c:666
+#, c-format
+msgid "key '%s' of pattern had no '*'"
+msgstr ""
+
+#: remote.c:676
+#, c-format
+msgid "value '%s' of pattern has no '*'"
+msgstr ""
+
+#: remote.c:1073
+#, fuzzy, c-format
+msgid "src refspec %s does not match any"
+msgstr "%s: não tem correspondência no índice"
+
+#: remote.c:1078
+#, c-format
+msgid "src refspec %s matches more than one"
+msgstr ""
+
+#. TRANSLATORS: "matches '%s'%" is the <dst> part of "git push
+#. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
+#. the <src>.
+#.
+#: remote.c:1093
+#, c-format
+msgid ""
+"The destination you provided is not a full refname (i.e.,\n"
+"starting with \"refs/\"). We tried to guess what you meant by:\n"
+"\n"
+"- Looking for a ref that matches '%s' on the remote side.\n"
+"- Checking if the <src> being pushed ('%s')\n"
+"  is a ref in \"refs/{heads,tags}/\". If so we add a corresponding\n"
+"  refs/{heads,tags}/ prefix on the remote side.\n"
+"\n"
+"Neither worked, so we gave up. You must fully qualify the ref."
+msgstr ""
+
+#: remote.c:1113
+#, 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 ""
 
-#: remote.c:1685 remote.c:1787
+#: remote.c:1118
+#, 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 ""
+
+#: remote.c:1123
+#, 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 ""
+
+#: remote.c:1128
+#, 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 ""
+
+#: remote.c:1164
+#, fuzzy, c-format
+msgid "%s cannot be resolved to branch"
+msgstr "'%s' não pode ser usado ao mudar de ramo"
+
+#: remote.c:1175
+#, fuzzy, c-format
+msgid "unable to delete '%s': remote ref does not exist"
+msgstr "não é possível escrever o ficheiro '%s' com o modo %o"
+
+#: remote.c:1187
+#, c-format
+msgid "dst refspec %s matches more than one"
+msgstr ""
+
+#: remote.c:1194
+#, c-format
+msgid "dst ref %s receives from more than one src"
+msgstr ""
+
+#: remote.c:1703 remote.c:1804
 msgid "HEAD does not point to a branch"
 msgstr "HEAD não aponta para um ramo"
 
-#: remote.c:1694
+#: remote.c:1712
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "ramo inexistente: '%s'"
 
-#: remote.c:1697
+#: remote.c:1715
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "nenhum ramo a montante configurado para o ramo '%s'"
 
-#: remote.c:1703
+#: remote.c:1721
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
 "o ramo a montante '%s' não está guardado como um ramo de monitorização remoto"
 
-#: remote.c:1718
+#: remote.c:1736
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr ""
 "o destino de publicação '%s' no remoto '%s' não é seguido por nenhum ramo "
 "local"
 
-#: remote.c:1730
+#: remote.c:1748
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "o ramo '%s' não tem nenhum remoto para publicar"
 
-#: remote.c:1741
+#: remote.c:1758
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr ""
 "'%2$s' não faz parte dos especificadores de referência de '%1$s' para "
 "publicação"
 
-#: remote.c:1754
+#: remote.c:1771
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "publicação sem destino (push.default é 'nothing')"
 
-#: remote.c:1776
+#: remote.c:1793
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr "não é possível resolver a publicação 'simple' num único destino"
 
-#: remote.c:2081
+#: remote.c:1922
+#, fuzzy, c-format
+msgid "couldn't find remote ref %s"
+msgstr "Referência remota HEAD não encontrada"
+
+#: remote.c:1935
+#, c-format
+msgid "* Ignoring funny ref '%s' locally"
+msgstr ""
+
+#: remote.c:2098
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr "A base do seu ramo é '%s', mas o ramo a montante desapareceu.\n"
 
-#: remote.c:2085
+#: remote.c:2102
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (use \"git branch --unset-upstream\" para corrigir)\n"
 
-#: remote.c:2088
-#, c-format
-msgid "Your branch is up-to-date with '%s'.\n"
+#: remote.c:2105
+#, fuzzy, c-format
+msgid "Your branch is up to date with '%s'.\n"
 msgstr "O seu ramo está atualizado com '%s'.\n"
 
-#: remote.c:2092
+#: remote.c:2109
+#, fuzzy, c-format
+msgid "Your branch and '%s' refer to different commits.\n"
+msgstr "O seu ramo está à frente de '%s' por %d commit.\n"
+
+#: remote.c:2112
+#, c-format
+msgid "  (use \"%s\" for details)\n"
+msgstr ""
+
+#: remote.c:2116
 #, 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] "O seu ramo está à frente de '%s' por %d commit.\n"
 msgstr[1] "O seu ramo está à frente de '%s' por %d commits.\n"
 
-#: remote.c:2098
+#: remote.c:2122
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (use \"git push\" para publicar os commits locais)\n"
 
-#: remote.c:2101
+#: remote.c:2125
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -2799,11 +6437,11 @@ msgstr[1] ""
 "O seu ramo está atrás de '%s' por %d commits, podendo ser atualizado com "
 "avanço rápido.\n"
 
-#: remote.c:2109
+#: remote.c:2133
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (use \"git pull\" para atualizar o seu ramo local)\n"
 
-#: remote.c:2112
+#: remote.c:2136
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -2818,51 +6456,202 @@ msgstr[1] ""
 "O seu ramo e '%s' divergiram,\n"
 "tendo cada um %d e %d commits diferentes, respetivamente.\n"
 
-#: remote.c:2122
+#: remote.c:2146
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr "  (use \"git pull\" para integrar o ramo remoto no seu ramo)\n"
 
-#: revision.c:2158
+#: remote.c:2337
+#, fuzzy, c-format
+msgid "cannot parse expected object name '%s'"
+msgstr "não é possível ler o objeto %s: '%s'"
+
+#: replace-object.c:21
+#, fuzzy, c-format
+msgid "bad replace ref name: %s"
+msgstr "eliminar referências substituídas"
+
+#: replace-object.c:30
+#, fuzzy, c-format
+msgid "duplicate replace ref: %s"
+msgstr "eliminar referências substituídas"
+
+#: replace-object.c:82
+#, fuzzy, c-format
+msgid "replace depth too high for object %s"
+msgstr "substituir a tag se esta existir"
+
+#: rerere.c:217 rerere.c:226 rerere.c:229
+msgid "corrupt MERGE_RR"
+msgstr ""
+
+#: rerere.c:264 rerere.c:269
+#, fuzzy
+msgid "unable to write rerere record"
+msgstr "não é possível escrever o objeto de nota"
+
+#: rerere.c:495
+#, c-format
+msgid "there were errors while writing '%s' (%s)"
+msgstr ""
+
+#: rerere.c:498
+#, fuzzy, c-format
+msgid "failed to flush '%s'"
+msgstr "falha ao invocar stat de '%s'"
+
+#: rerere.c:503 rerere.c:1039
+#, fuzzy, c-format
+msgid "could not parse conflict hunks in '%s'"
+msgstr "não foi possível analisar o objeto '%s'"
+
+#: rerere.c:684
+#, fuzzy, c-format
+msgid "failed utime() on '%s'"
+msgstr "falha ao abrir '%s'"
+
+#: rerere.c:694
+#, fuzzy, c-format
+msgid "writing '%s' failed"
+msgstr "falha ao criar '%s'"
+
+#: rerere.c:714
+#, c-format
+msgid "Staged '%s' using previous resolution."
+msgstr ""
+
+#: rerere.c:753
+#, c-format
+msgid "Recorded resolution for '%s'."
+msgstr ""
+
+#: rerere.c:788
+#, c-format
+msgid "Resolved '%s' using previous resolution."
+msgstr ""
+
+#: rerere.c:803
+#, fuzzy, c-format
+msgid "cannot unlink stray '%s'"
+msgstr "não é possível criar a ligação simbólica '%s' '%s'"
+
+#: rerere.c:807
+#, c-format
+msgid "Recorded preimage for '%s'"
+msgstr ""
+
+#: rerere.c:881 submodule.c:2082 builtin/log.c:1975
+#: builtin/submodule--helper.c:1878 builtin/submodule--helper.c:1890
+#, c-format
+msgid "could not create directory '%s'"
+msgstr "não foi possível criar o diretório '%s'"
+
+#: rerere.c:1057
+#, fuzzy, c-format
+msgid "failed to update conflicted state in '%s'"
+msgstr "falha ao criar a ligação '%s'"
+
+#: rerere.c:1068 rerere.c:1075
+#, fuzzy, c-format
+msgid "no remembered resolution for '%s'"
+msgstr "Não é possível adicionar os resultados da integração de '%s'"
+
+#: rerere.c:1077
+#, fuzzy, c-format
+msgid "cannot unlink '%s'"
+msgstr "não é possível ler (readlink) '%s'"
+
+#: rerere.c:1087
+#, c-format
+msgid "Updated preimage for '%s'"
+msgstr ""
+
+#: rerere.c:1096
+#, fuzzy, c-format
+msgid "Forgot resolution for '%s'\n"
+msgstr "não foi possível resolver a referência %s"
+
+#: rerere.c:1199
+#, fuzzy
+msgid "unable to open rr-cache directory"
+msgstr "não é possível de obter o diretório de trabalho atual"
+
+#: reset.c:42
+#, fuzzy
+msgid "could not determine HEAD revision"
+msgstr "não foi possível destacar HEAD"
+
+#: reset.c:70 reset.c:76 sequencer.c:3426
+#, fuzzy, c-format
+msgid "failed to find tree of %s"
+msgstr "Falha ao procurar árvore de %s."
+
+#: revision.c:2344
+msgid "--unpacked=<packfile> no longer supported"
+msgstr ""
+
+#: revision.c:2364
+#, fuzzy, c-format
+msgid "unknown value for --diff-merges: %s"
+msgstr "valor desconhecido '%s' da chave '%s'"
+
+#: revision.c:2702
 msgid "your current branch appears to be broken"
 msgstr "o ramo atual parece estar danificado"
 
-#: revision.c:2161
+#: revision.c:2705
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr "o ramo atual '%s' ainda não contém nenhum commit"
 
-#: revision.c:2355
-msgid "--first-parent is incompatible with --bisect"
-msgstr "--first-parent é incompatível com --bisect"
+#: revision.c:2915
+msgid "-L does not yet support diff formats besides -p and -s"
+msgstr ""
 
-#: run-command.c:125
+#: run-command.c:763
 msgid "open /dev/null failed"
 msgstr "falha ao abrir /dev/null"
 
-#: run-command.c:127
+#: run-command.c:1270
+#, fuzzy, c-format
+msgid "cannot create async thread: %s"
+msgstr "não foi possível criar thread: %s"
+
+#: run-command.c:1334
 #, c-format
-msgid "dup2(%d,%d) failed"
-msgstr "dup2(%d,%d) falhou"
+msgid ""
+"The '%s' hook was ignored because it's not set as executable.\n"
+"You can disable this warning with `git config advice.ignoredHook false`."
+msgstr ""
 
-#: send-pack.c:150
+#: send-pack.c:145
+#, fuzzy
+msgid "unexpected flush packet while reading remote unpack status"
+msgstr "não é possível analisar status de descompactação remota: %s"
+
+#: send-pack.c:147
 #, c-format
 msgid "unable to parse remote unpack status: %s"
 msgstr "não é possível analisar status de descompactação remota: %s"
 
-#: send-pack.c:152
+#: send-pack.c:149
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr "descompactação remota falhou: %s"
 
-#: send-pack.c:315
+#: send-pack.c:372
 msgid "failed to sign the push certificate"
 msgstr "falha ao assinar o certificado de publicação"
 
-#: send-pack.c:428
+#: send-pack.c:460
+#, fuzzy
+msgid "the receiving end does not support this repository's hash algorithm"
+msgstr "o recetor não suporta opções de publicação"
+
+#: send-pack.c:469
 msgid "the receiving end does not support --signed push"
 msgstr "o recetor não suporta publicação com --signed"
 
-#: send-pack.c:430
+#: send-pack.c:471
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
@@ -2870,32 +6659,48 @@ msgstr ""
 "certificado de publicação não enviado uma vez que o recetor não suporta "
 "publicação com --signed"
 
-#: send-pack.c:442
+#: send-pack.c:483
 msgid "the receiving end does not support --atomic push"
 msgstr "o recetor não suporta publicação com --atomic"
 
-#: send-pack.c:447
+#: send-pack.c:488
 msgid "the receiving end does not support push options"
 msgstr "o recetor não suporta opções de publicação"
 
-#: sequencer.c:215
+#: sequencer.c:194
+#, fuzzy, c-format
+msgid "invalid commit message cleanup mode '%s'"
+msgstr "Modo de limpeza inválido %s"
+
+#: sequencer.c:308
+#, fuzzy, c-format
+msgid "could not delete '%s'"
+msgstr "Não foi possível eliminar %s"
+
+#: sequencer.c:329 builtin/rebase.c:749 builtin/rebase.c:1590 builtin/rm.c:385
+#, c-format
+msgid "could not remove '%s'"
+msgstr "não foi possível remover '%s'"
+
+#: sequencer.c:339
 msgid "revert"
 msgstr "reverter"
 
-#: sequencer.c:217
+#: sequencer.c:341
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:219
-msgid "rebase -i"
+#: sequencer.c:343
+#, fuzzy
+msgid "rebase"
 msgstr "rebase -i"
 
-#: sequencer.c:221
-#, c-format
-msgid "Unknown action: %d"
+#: sequencer.c:345
+#, fuzzy, c-format
+msgid "unknown action: %d"
 msgstr "Ação desconhecida: %d"
 
-#: sequencer.c:278
+#: sequencer.c:404
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -2903,7 +6708,7 @@ msgstr ""
 "depois de resolver os conflitos, marque os caminhos corrigidos\n"
 "com 'git add <caminhos>' ou 'git rm <caminhos>'"
 
-#: sequencer.c:281
+#: sequencer.c:407
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -2913,63 +6718,111 @@ msgstr ""
 "com 'git add <caminhos>' ou 'git rm <caminhos>'\n"
 "e submeta o resultado com 'git commit'"
 
-#: sequencer.c:294 sequencer.c:1675
+#: sequencer.c:420 sequencer.c:3028
 #, c-format
 msgid "could not lock '%s'"
 msgstr "não foi possível bloquear '%s'"
 
-#: sequencer.c:297 sequencer.c:1553 sequencer.c:1680 sequencer.c:1694
+#: sequencer.c:422 sequencer.c:2827 sequencer.c:3032 sequencer.c:3046
+#: sequencer.c:3303 sequencer.c:5299 strbuf.c:1168 wrapper.c:631
 #, c-format
 msgid "could not write to '%s'"
 msgstr "não foi possível escrever em '%s'"
 
-#: sequencer.c:301
+#: sequencer.c:427
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "não foi possível escrever fim de linha em '%s'"
 
-#: sequencer.c:305 sequencer.c:1558 sequencer.c:1682
-#, c-format
-msgid "failed to finalize '%s'."
+#: sequencer.c:432 sequencer.c:2832 sequencer.c:3034 sequencer.c:3048
+#: sequencer.c:3311
+#, fuzzy, c-format
+msgid "failed to finalize '%s'"
 msgstr "falha ao finalizar '%s'."
 
-#: sequencer.c:329 sequencer.c:814 sequencer.c:1579 builtin/am.c:259
-#: builtin/commit.c:749 builtin/merge.c:1018
-#, c-format
-msgid "could not read '%s'"
-msgstr "não foi possível ler '%s'"
-
-#: sequencer.c:355
+#: sequencer.c:471
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "as suas alterações locais serão substituídas ao %s."
 
-#: sequencer.c:359
+#: sequencer.c:475
 msgid "commit your changes or stash them to proceed."
 msgstr "submeta ou esconda as suas alterações para continuar."
 
-#: sequencer.c:388
+#: sequencer.c:507
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s: avanço rápido"
 
+#: sequencer.c:546 builtin/tag.c:566
+#, c-format
+msgid "Invalid cleanup mode %s"
+msgstr "Modo de limpeza inválido %s"
+
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
-#. * "rebase -i".
+#. "rebase".
 #.
-#: sequencer.c:470
+#: sequencer.c:640
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: Não foi possível escrever novo ficheiro de índice"
 
-#: sequencer.c:489
-msgid "could not resolve HEAD commit\n"
+#: sequencer.c:657
+#, fuzzy
+msgid "unable to update cache tree"
+msgstr "não foi possível atualizar a árvore de cache\n"
+
+#: sequencer.c:671
+#, fuzzy
+msgid "could not resolve HEAD commit"
 msgstr "não foi possível resolver o commit HEAD\n"
 
-#: sequencer.c:509
-msgid "unable to update cache tree\n"
-msgstr "não foi possível atualizar a árvore de cache\n"
+#: sequencer.c:751
+#, c-format
+msgid "no key present in '%.*s'"
+msgstr ""
+
+#: sequencer.c:762
+#, fuzzy, c-format
+msgid "unable to dequote value of '%s'"
+msgstr "não é possível detetar automaticamente o nome (obteve-se '%s')"
 
-#: sequencer.c:592
+#: sequencer.c:799 wrapper.c:201 wrapper.c:371 builtin/am.c:724
+#: builtin/am.c:816 builtin/merge.c:1121 builtin/rebase.c:902
+#, c-format
+msgid "could not open '%s' for reading"
+msgstr "não foi possível abrir '%s' para leitura"
+
+#: sequencer.c:809
+msgid "'GIT_AUTHOR_NAME' already given"
+msgstr ""
+
+#: sequencer.c:814
+msgid "'GIT_AUTHOR_EMAIL' already given"
+msgstr ""
+
+#: sequencer.c:819
+msgid "'GIT_AUTHOR_DATE' already given"
+msgstr ""
+
+#: sequencer.c:823
+#, fuzzy, c-format
+msgid "unknown variable '%s'"
+msgstr "Formato de arquivo desconhecido '%s'"
+
+#: sequencer.c:828
+msgid "missing 'GIT_AUTHOR_NAME'"
+msgstr ""
+
+#: sequencer.c:830
+msgid "missing 'GIT_AUTHOR_EMAIL'"
+msgstr ""
+
+#: sequencer.c:832
+msgid "missing 'GIT_AUTHOR_DATE'"
+msgstr ""
+
+#: sequencer.c:897
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -2998,262 +6851,458 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:694
-#, c-format
-msgid "could not parse commit %s\n"
-msgstr "não foi possível analisar o commit %s\n"
-
-#: sequencer.c:699
-#, c-format
-msgid "could not parse parent commit %s\n"
-msgstr "não foi possível analisar o commit pai %s\n"
+#: sequencer.c:1178
+msgid "'prepare-commit-msg' hook failed"
+msgstr ""
 
-#: sequencer.c:821
-#, c-format
+#: sequencer.c:1184
 msgid ""
-"unexpected 1st line of squash message:\n"
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly. Run the\n"
+"following command and follow the instructions in your editor to edit\n"
+"your configuration file:\n"
 "\n"
-"\t%.*s"
+"    git config --global --edit\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 msgstr ""
-"1ª linha inesperada da mensagem de squash:\n"
+"O seu nome e endereço de e-mail foram configurados automaticamente com base\n"
+"no seu nome de utilizador e nome de máquina. Verifique se estão corretos.\n"
+"Pode suprimir esta mensagem configurando-os explicitamente. Execute\n"
+"o seguinte comando e siga as instruções no editor para editar\n"
+"o ficheiro de configuração:\n"
 "\n"
-"\t%.*s"
+"    git config --global --edit\n"
+"\n"
+"Após fazer isto, pode corrigir a identidade usada neste commit com:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 
-#: sequencer.c:827
-#, c-format
+#: sequencer.c:1197
 msgid ""
-"invalid 1st line of squash message:\n"
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly:\n"
 "\n"
-"\t%.*s"
+"    git config --global user.name \"Your Name\"\n"
+"    git config --global user.email you@example.com\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 msgstr ""
-"1ª linha inválida da mensagem de squash:\n"
+"O seu nome e endereço de e-mail foram configurados automaticamente com base\n"
+"no seu nome de utilizador e nome de máquina. Verifique se estão corretos.\n"
+"Pode suprimir esta mensagem configurando-os explicitamente:\n"
 "\n"
-"\t%.*s"
+"    git config --global user.name \"O Seu Nome\"\n"
+"    git config --global user.email utilizador@exemplo.com\n"
+"\n"
+"Após fazer isto, pode corrigir a identidade usada neste commit com:\n"
+"\n"
+"    git commit --amend --reset-author\n"
+
+#: sequencer.c:1239
+msgid "couldn't look up newly created commit"
+msgstr "não foi possível consultar o commit recém-criado"
+
+#: sequencer.c:1241
+msgid "could not parse newly created commit"
+msgstr "não foi possível analisar o commit recém-criado"
+
+#: sequencer.c:1287
+#, fuzzy
+msgid "unable to resolve HEAD after creating commit"
+msgstr "não foi possível resolver o commit HEAD\n"
+
+#: sequencer.c:1289
+msgid "detached HEAD"
+msgstr "HEAD destacada"
+
+#: sequencer.c:1293
+msgid " (root-commit)"
+msgstr " (commit-raiz)"
+
+#: sequencer.c:1314
+#, fuzzy
+msgid "could not parse HEAD"
+msgstr "não foi possível ler HEAD"
+
+#: sequencer.c:1316
+#, fuzzy, c-format
+msgid "HEAD %s is not a commit!"
+msgstr "%s %s não é um commit!"
+
+#: sequencer.c:1320 sequencer.c:1395 builtin/commit.c:1577
+msgid "could not parse HEAD commit"
+msgstr "não foi possível analisar o commit HEAD"
 
-#: sequencer.c:833 sequencer.c:858
+#: sequencer.c:1373 sequencer.c:2067
+#, fuzzy
+msgid "unable to parse commit author"
+msgstr "não foi possível analisar o commit %s"
+
+#: sequencer.c:1384 builtin/am.c:1580 builtin/merge.c:692
+msgid "git write-tree failed to write a tree"
+msgstr "git write-tree falhou ao escrever uma árvore"
+
+#: sequencer.c:1417 sequencer.c:1535
+#, fuzzy, c-format
+msgid "unable to read commit message from '%s'"
+msgstr "não foi possível ler a mensagem de commit de %s"
+
+#: sequencer.c:1446 sequencer.c:1478
+#, fuzzy, c-format
+msgid "invalid author identity '%s'"
+msgstr "caminho inválido '%s'"
+
+#: sequencer.c:1452
+msgid "corrupt author: missing date information"
+msgstr ""
+
+#: sequencer.c:1491 builtin/am.c:1606 builtin/commit.c:1678 builtin/merge.c:890
+#: builtin/merge.c:915
+msgid "failed to write commit object"
+msgstr "falha ao escrever objeto de commit"
+
+#: sequencer.c:1518 sequencer.c:4237
+#, c-format
+msgid "could not update %s"
+msgstr "não foi possível atualizar %s"
+
+#: sequencer.c:1567
+#, fuzzy, c-format
+msgid "could not parse commit %s"
+msgstr "não foi possível analisar o commit %s\n"
+
+#: sequencer.c:1572
+#, fuzzy, c-format
+msgid "could not parse parent commit %s"
+msgstr "não foi possível analisar o commit pai %s\n"
+
+#: sequencer.c:1655 sequencer.c:1766
+#, c-format
+msgid "unknown command: %d"
+msgstr "comando desconhecido: %d"
+
+#: sequencer.c:1713 sequencer.c:1738
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Isto é a combinação de %d commits."
 
-#: sequencer.c:842
+#: sequencer.c:1723
 msgid "need a HEAD to fixup"
 msgstr "necessária uma HEAD para fixup"
 
-#: sequencer.c:844
+#: sequencer.c:1725 sequencer.c:3338
 msgid "could not read HEAD"
 msgstr "não foi possível ler HEAD"
 
-#: sequencer.c:846
+#: sequencer.c:1727
 msgid "could not read HEAD's commit message"
 msgstr "não foi possível ler a mensagem de commit de HEAD"
 
-#: sequencer.c:852
+#: sequencer.c:1733
 #, c-format
 msgid "cannot write '%s'"
 msgstr "não é possível escrever '%s'"
 
-#: sequencer.c:861 git-rebase--interactive.sh:445
+#: sequencer.c:1740 git-rebase--preserve-merges.sh:486
 msgid "This is the 1st commit message:"
 msgstr "Esta é a 1ª mensagem de commit:"
 
-#: sequencer.c:869
+#: sequencer.c:1748
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "não foi possível ler a mensagem de commit de %s"
 
-#: sequencer.c:876
+#: sequencer.c:1755
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Esta é a mensagem de commit nº%d:"
 
-#: sequencer.c:881
+#: sequencer.c:1761
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "A mensagem de commit #%d será ignorada:"
 
-#: sequencer.c:886
-#, c-format
-msgid "unknown command: %d"
-msgstr "comando desconhecido: %d"
-
-#: sequencer.c:952
+#: sequencer.c:1849
 msgid "your index file is unmerged."
 msgstr "ficheiro de índice não integrado."
 
-#: sequencer.c:970
+#: sequencer.c:1856
+#, fuzzy
+msgid "cannot fixup root commit"
+msgstr "não é possível encontrar o commit %s (%s)"
+
+#: sequencer.c:1875
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr "o commit %s é uma integração mas não foi fornecida a opção -m."
 
-#: sequencer.c:978
+#: sequencer.c:1883 sequencer.c:1891
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "o commit %s não tem o pai %d"
 
-#: sequencer.c:982
-#, c-format
-msgid "mainline was specified but commit %s is not a merge."
-msgstr ""
-"a linha principal foi especificada mas o commit %s não é uma integração."
-
-#: sequencer.c:988
+#: sequencer.c:1897
 #, c-format
 msgid "cannot get commit message for %s"
 msgstr "não é possível obter a mensagem de commit de %s"
 
 #. TRANSLATORS: The first %s will be a "todo" command like
 #. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:1009
+#: sequencer.c:1916
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s: não foi possível analisar o commit pai %s"
 
-#: sequencer.c:1071 sequencer.c:1820
+#: sequencer.c:1981
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "não foi possível mudar o nome de '%s' para '%s'"
 
-#: sequencer.c:1122
+#: sequencer.c:2038
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "não foi possível reverter %s... %s"
 
-#: sequencer.c:1123
+#: sequencer.c:2039
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "não foi possível aplicar %s... %s"
 
-#: sequencer.c:1165
-msgid "empty commit set passed"
-msgstr "o conjunto de commits especificado está vazio"
+#: sequencer.c:2059
+#, c-format
+msgid "dropping %s %s -- patch contents already upstream\n"
+msgstr ""
 
-#: sequencer.c:1175
+#: sequencer.c:2117
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s: falha ao ler o índice"
 
-#: sequencer.c:1182
+#: sequencer.c:2124
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s: falha ao atualizar o índice"
 
-#: sequencer.c:1302
+#: sequencer.c:2201
+#, fuzzy, c-format
+msgid "%s does not accept arguments: '%s'"
+msgstr "%%(body) não leva argumentos"
+
+#: sequencer.c:2210
+#, fuzzy, c-format
+msgid "missing arguments for %s"
+msgstr "falta o objeto %s de %s"
+
+#: sequencer.c:2241
+#, fuzzy, c-format
+msgid "could not parse '%s'"
+msgstr "não foi possível analisar %s"
+
+#: sequencer.c:2302
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "linha %d inválida: %.*s"
 
-#: sequencer.c:1310
+#: sequencer.c:2313
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "não é possível efetuar '%s' sem um commit anterior"
 
-#: sequencer.c:1342
-#, c-format
-msgid "could not read '%s'."
-msgstr "não foi possível ler '%s'."
+#: sequencer.c:2399
+#, fuzzy
+msgid "cancelling a cherry picking in progress"
+msgstr "nenhum cherry-pick ou revert em curso"
+
+#: sequencer.c:2408
+#, fuzzy
+msgid "cancelling a revert in progress"
+msgstr "nenhum cherry-pick ou revert em curso"
 
-#: sequencer.c:1349
+#: sequencer.c:2452
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "corrija-o usando 'git rebase --edit-todo'."
 
-#: sequencer.c:1351
+#: sequencer.c:2454
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "folha de instruções inutilizável: '%s'"
 
-#: sequencer.c:1356
+#: sequencer.c:2459
 msgid "no commits parsed."
 msgstr "nenhum commit analisado."
 
-#: sequencer.c:1367
+#: sequencer.c:2470
 msgid "cannot cherry-pick during a revert."
 msgstr "não é possível efetuar cherry-pick durante uma reversão."
 
-#: sequencer.c:1369
+#: sequencer.c:2472
 msgid "cannot revert during a cherry-pick."
 msgstr "não é possível reverter durante um cherry-pick."
 
-#: sequencer.c:1432
-#, c-format
-msgid "invalid key: %s"
-msgstr "chave inválida: %s"
-
-#: sequencer.c:1435
+#: sequencer.c:2550
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "valor inválido de %s: %s"
 
-#: sequencer.c:1492
+#: sequencer.c:2657
+msgid "unusable squash-onto"
+msgstr ""
+
+#: sequencer.c:2677
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "folha de opções malformada: '%s'"
 
-#: sequencer.c:1530
-msgid "a cherry-pick or revert is already in progress"
+#: sequencer.c:2769 sequencer.c:4609
+msgid "empty commit set passed"
+msgstr "o conjunto de commits especificado está vazio"
+
+#: sequencer.c:2786
+#, fuzzy
+msgid "revert is already in progress"
+msgstr "cherry-pick ou revert em curso"
+
+#: sequencer.c:2788
+#, fuzzy, c-format
+msgid "try \"git revert (--continue | %s--abort | --quit)\""
+msgstr "tente \"git cherry-pick (--continue | --quit |--abort)\""
+
+#: sequencer.c:2791
+#, fuzzy
+msgid "cherry-pick is already in progress"
 msgstr "cherry-pick ou revert em curso"
 
-#: sequencer.c:1531
-msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
+#: sequencer.c:2793
+#, fuzzy, c-format
+msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
 msgstr "tente \"git cherry-pick (--continue | --quit |--abort)\""
 
-#: sequencer.c:1534
+#: sequencer.c:2807
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "não foi possível criar o diretório do sequenciador '%s'"
 
-#: sequencer.c:1548
+#: sequencer.c:2822
 msgid "could not lock HEAD"
 msgstr "não foi possível bloquear HEAD"
 
-#: sequencer.c:1604 sequencer.c:2159
+#: sequencer.c:2882 sequencer.c:4325
 msgid "no cherry-pick or revert in progress"
 msgstr "nenhum cherry-pick ou revert em curso"
 
-#: sequencer.c:1606
+#: sequencer.c:2884 sequencer.c:2895
 msgid "cannot resolve HEAD"
 msgstr "não é possível resolver HEAD"
 
-#: sequencer.c:1608 sequencer.c:1642
+#: sequencer.c:2886 sequencer.c:2930
 msgid "cannot abort from a branch yet to be born"
 msgstr "não é possível abortar um ramo ainda não criado"
 
-#: sequencer.c:1628 builtin/grep.c:910
+#: sequencer.c:2916 builtin/grep.c:745
 #, c-format
 msgid "cannot open '%s'"
 msgstr "não é possível abrir '%s'"
 
-#: sequencer.c:1630
+#: sequencer.c:2918
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "não é possível ler '%s': %s"
 
-#: sequencer.c:1631
+#: sequencer.c:2919
 msgid "unexpected end of file"
 msgstr "fim de ficheiro inesperado"
 
-#: sequencer.c:1637
+#: sequencer.c:2925
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr "o ficheiro HEAD de pre-cherry-pick '%s' está corrompido"
 
-#: sequencer.c:1648
+#: sequencer.c:2936
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr "Parece que a HEAD se moveu. Não recuando, verifique a HEAD."
 
-#: sequencer.c:1785 sequencer.c:2058
+#: sequencer.c:2977
+#, fuzzy
+msgid "no revert in progress"
+msgstr "Rebase não está em curso?"
+
+#: sequencer.c:2986
+#, fuzzy
+msgid "no cherry-pick in progress"
+msgstr "nenhum cherry-pick ou revert em curso"
+
+#: sequencer.c:2996
+#, fuzzy
+msgid "failed to skip the commit"
+msgstr "falha ao escrever objeto de commit"
+
+#: sequencer.c:3003
+msgid "there is nothing to skip"
+msgstr ""
+
+#: sequencer.c:3006
+#, c-format
+msgid ""
+"have you committed already?\n"
+"try \"git %s --continue\""
+msgstr ""
+
+#: sequencer.c:3168 sequencer.c:4217
 msgid "cannot read HEAD"
 msgstr "não é possível ler HEAD"
 
-#: sequencer.c:1825 builtin/difftool.c:616
+#: sequencer.c:3185
+#, fuzzy, c-format
+msgid "unable to copy '%s' to '%s'"
+msgstr "não foi possível copiar '%s' para '%s'"
+
+#: sequencer.c:3193
+#, fuzzy, c-format
+msgid ""
+"You can amend the commit now, with\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"Once you are satisfied with your changes, run\n"
+"\n"
+"  git rebase --continue\n"
+msgstr ""
+"Pode emendar o commit agora, com\n"
+"\n"
+"\tgit commit --amend $gpg_sign_opt_quoted\n"
+"\n"
+"Assim que estiver satisfeito com as alterações, execute\n"
+"\n"
+"\tgit rebase --continue"
+
+#: sequencer.c:3203
+#, fuzzy, c-format
+msgid "Could not apply %s... %.*s"
+msgstr "não foi possível aplicar %s... %s"
+
+#: sequencer.c:3210
+#, fuzzy, c-format
+msgid "Could not merge %.*s"
+msgstr "Não foi possível ler %s."
+
+#: sequencer.c:3224 sequencer.c:3228 builtin/difftool.c:641
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "não foi possível copiar '%s' para '%s'"
 
-#: sequencer.c:1841
-msgid "could not read index"
-msgstr "não foi possível ler o índice"
+#: sequencer.c:3240
+#, fuzzy, c-format
+msgid "Executing: %s\n"
+msgstr "A executar: $rest"
 
-#: sequencer.c:1846
+#: sequencer.c:3255
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -3268,11 +7317,11 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:1852
+#: sequencer.c:3261
 msgid "and made changes to the index and/or the working tree\n"
 msgstr "e fez alterações ao índice e/ou à árvore de trabalho\n"
 
-#: sequencer.c:1858
+#: sequencer.c:3267
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -3289,20 +7338,100 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:1913 git-rebase.sh:168
-#, c-format
-msgid "Applied autostash."
+#: sequencer.c:3328
+#, fuzzy, c-format
+msgid "illegal label name: '%.*s'"
+msgstr "nome de ficheiro malformado: %.*s"
+
+#: sequencer.c:3382
+#, fuzzy
+msgid "writing fake root commit"
+msgstr "não há nada para submeter\n"
+
+#: sequencer.c:3387
+msgid "writing squash-onto"
+msgstr ""
+
+#: sequencer.c:3471
+#, fuzzy, c-format
+msgid "could not resolve '%s'"
+msgstr "não foi possível remover '%s'"
+
+#: sequencer.c:3502
+#, fuzzy
+msgid "cannot merge without a current revision"
+msgstr "não é possível efetuar '%s' sem um commit anterior"
+
+#: sequencer.c:3524
+#, fuzzy, c-format
+msgid "unable to parse '%.*s'"
+msgstr "não foi possível criar '%s'"
+
+#: sequencer.c:3533
+#, fuzzy, c-format
+msgid "nothing to merge: '%.*s'"
+msgstr "ignorado não integrado: %s\n"
+
+#: sequencer.c:3545
+msgid "octopus merge cannot be executed on top of a [new root]"
+msgstr ""
+
+#: sequencer.c:3561
+#, fuzzy, c-format
+msgid "could not get commit message of '%s'"
+msgstr "não foi possível ler a mensagem de commit de %s"
+
+#: sequencer.c:3730
+#, fuzzy, c-format
+msgid "could not even attempt to merge '%.*s'"
+msgstr "não foi possível validar a tag '%s'"
+
+#: sequencer.c:3746
+#, fuzzy
+msgid "merge: Unable to write new index file"
+msgstr "%s: Não foi possível escrever novo ficheiro de índice"
+
+#: sequencer.c:3820
+msgid "Cannot autostash"
+msgstr "Não é possível empilhar automaticamente (autostash)"
+
+#: sequencer.c:3823
+#, fuzzy, c-format
+msgid "Unexpected stash response: '%s'"
+msgstr ""
+"1ª linha inesperada da mensagem de squash:\n"
+"\n"
+"\t%.*s"
+
+#: sequencer.c:3829
+#, fuzzy, c-format
+msgid "Could not create directory for '%s'"
+msgstr "Não foi possível criar o diretório '%s'"
+
+#: sequencer.c:3832
+#, fuzzy, c-format
+msgid "Created autostash: %s\n"
+msgstr "Pilha automática (autostash) criada: $stash_abbrev"
+
+#: sequencer.c:3836
+#, fuzzy
+msgid "could not reset --hard"
+msgstr "não foi possível ler orig-head"
+
+#: sequencer.c:3861
+#, fuzzy, c-format
+msgid "Applied autostash.\n"
 msgstr "Pilha automática (autostash) aplicada."
 
-#: sequencer.c:1925
+#: sequencer.c:3873
 #, c-format
 msgid "cannot store %s"
 msgstr "não é possível guardar %s"
 
-#: sequencer.c:1927 git-rebase.sh:172
-#, c-format
+#: sequencer.c:3876
+#, fuzzy, c-format
 msgid ""
-"Applying autostash resulted in conflicts.\n"
+"%s\n"
 "Your changes are safe in the stash.\n"
 "You can run \"git stash pop\" or \"git stash drop\" at any time.\n"
 msgstr ""
@@ -3310,57 +7439,99 @@ msgstr ""
 "As suas alterações estão guardadas na pilha.\n"
 "Pode executar \"git stash pop\" ou \"git stash drop\" oportunamente.\n"
 
-#: sequencer.c:2009
+#: sequencer.c:3881
+#, fuzzy
+msgid "Applying autostash resulted in conflicts."
+msgstr "Patch aplicado a '%s' com conflitos.\n"
+
+#: sequencer.c:3882
+msgid "Autostash exists; creating a new stash entry."
+msgstr ""
+
+#: sequencer.c:3974
+#, fuzzy, c-format
+msgid "%s: not a valid OID"
+msgstr "'%s' não é uma referência válida."
+
+#: sequencer.c:3979 git-rebase--preserve-merges.sh:769
+msgid "could not detach HEAD"
+msgstr "não foi possível destacar HEAD"
+
+#: sequencer.c:3994
+#, fuzzy, c-format
+msgid "Stopped at HEAD\n"
+msgstr "Parou a %s...  %.*s\n"
+
+#: sequencer.c:3996
+#, fuzzy, c-format
+msgid "Stopped at %s\n"
+msgstr "Parou a %s...  %.*s\n"
+
+#: sequencer.c:4004
+#, c-format
+msgid ""
+"Could not execute the todo command\n"
+"\n"
+"    %.*s\n"
+"It has been rescheduled; To edit the command before continuing, please\n"
+"edit the todo list first:\n"
+"\n"
+"    git rebase --edit-todo\n"
+"    git rebase --continue\n"
+msgstr ""
+
+#: sequencer.c:4050
+#, c-format
+msgid "Rebasing (%d/%d)%s"
+msgstr ""
+
+#: sequencer.c:4095
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "Parou a %s...  %.*s\n"
 
-#: sequencer.c:2036
+#: sequencer.c:4166
 #, c-format
 msgid "unknown command %d"
 msgstr "comando desconhecido %d"
 
-#: sequencer.c:2066
+#: sequencer.c:4225
 msgid "could not read orig-head"
 msgstr "não foi possível ler orig-head"
 
-#: sequencer.c:2070
+#: sequencer.c:4230
 msgid "could not read 'onto'"
 msgstr "não foi possível ler 'onto'"
 
-#: sequencer.c:2077
-#, c-format
-msgid "could not update %s"
-msgstr "não foi possível atualizar %s"
-
-#: sequencer.c:2084
+#: sequencer.c:4244
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "não foi possível atualizar HEAD para %s"
 
-#: sequencer.c:2168
+#: sequencer.c:4304
+#, fuzzy, c-format
+msgid "Successfully rebased and updated %s.\n"
+msgstr "$head_name rebaseado e atualizado com sucesso."
+
+#: sequencer.c:4337
 msgid "cannot rebase: You have unstaged changes."
 msgstr "não é possível rebasear: tem alterações não preparadas."
 
-#: sequencer.c:2173
-msgid "could not remove CHERRY_PICK_HEAD"
-msgstr "não foi possível remover CHERRY_PICK_HEAD"
-
-#: sequencer.c:2182
+#: sequencer.c:4346
 msgid "cannot amend non-existing commit"
 msgstr "não é possível emendar commit não-existente"
 
-#: sequencer.c:2184
+#: sequencer.c:4348
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "ficheiro inválido: '%s'"
 
-#: sequencer.c:2186
+#: sequencer.c:4350
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "conteúdo inválido: '%s'"
 
-#: sequencer.c:2189
+#: sequencer.c:4353
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -3370,25 +7541,66 @@ msgstr ""
 "Tem alterações por submeter na árvore de trabalho. Submeta-as primeiro\n"
 "e execute 'git rebase --continue' de novo."
 
-#: sequencer.c:2199
+#: sequencer.c:4389 sequencer.c:4428
+#, fuzzy, c-format
+msgid "could not write file: '%s'"
+msgstr "não foi possível criar o ficheiro '%s'"
+
+#: sequencer.c:4444
+msgid "could not remove CHERRY_PICK_HEAD"
+msgstr "não foi possível remover CHERRY_PICK_HEAD"
+
+#: sequencer.c:4451
 msgid "could not commit staged changes."
 msgstr "não foi possível submeter as alterações preparadas."
 
-#: sequencer.c:2279
+#: sequencer.c:4477
+#, fuzzy, c-format
+msgid "invalid committer '%s'"
+msgstr "commit inválido %s"
+
+#: sequencer.c:4586
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s: não é possível efetuar cherry-pick de %s"
 
-#: sequencer.c:2283
+#: sequencer.c:4590
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s: revisão incorreta"
 
-#: sequencer.c:2316
+#: sequencer.c:4625
 msgid "can't revert as initial commit"
 msgstr "não é possível reverter como commit inicial"
 
-#: setup.c:165
+#: sequencer.c:5102
+msgid "make_script: unhandled options"
+msgstr ""
+
+#: sequencer.c:5105
+msgid "make_script: error preparing revisions"
+msgstr ""
+
+#: sequencer.c:5347 sequencer.c:5364
+#, fuzzy
+msgid "nothing to do"
+msgstr "não há nada para submeter\n"
+
+#: sequencer.c:5383
+#, fuzzy
+msgid "could not skip unnecessary pick commands"
+msgstr "Não foi possível saltar comandos pick desnecessários"
+
+#: sequencer.c:5480
+msgid "the script was already rearranged."
+msgstr ""
+
+#: setup.c:133
+#, fuzzy, c-format
+msgid "'%s' is outside repository at '%s'"
+msgstr "%s: '%s' está fora do repositório"
+
+#: setup.c:185
 #, c-format
 msgid ""
 "%s: no such path in the working tree.\n"
@@ -3398,7 +7610,7 @@ msgstr ""
 "Use 'git <comando> -- <caminho>...' para especificar caminhos que não "
 "existem localmente."
 
-#: setup.c:178
+#: setup.c:198
 #, c-format
 msgid ""
 "ambiguous argument '%s': unknown revision or path not in the working tree.\n"
@@ -3410,7 +7622,12 @@ msgstr ""
 "Use '--' para separar caminhos de revisões, assim:\n"
 "'git <comando> [<revisão>...] -- [<ficheiro>...]'"
 
-#: setup.c:228
+#: setup.c:264
+#, fuzzy, c-format
+msgid "option '%s' must come before non-option arguments"
+msgstr "parar de analisar depois do primeiro argumento que não seja uma opção"
+
+#: setup.c:283
 #, c-format
 msgid ""
 "ambiguous argument '%s': both revision and filename\n"
@@ -3421,109 +7638,416 @@ msgstr ""
 "Use '--' para separar caminhos de revisões, assim:\n"
 "'git <comando> [<revisão>...] -- [<ficheiro>...]'"
 
-#: setup.c:475
+#: setup.c:419
+#, fuzzy
+msgid "unable to set up work tree using invalid config"
+msgstr "não é possível de obter o diretório de trabalho atual"
+
+#: setup.c:423
+msgid "this operation must be run in a work tree"
+msgstr ""
+
+#: setup.c:661
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr "Esperava-se versão do repositório git <= %d, obteve-se %d"
 
-#: setup.c:483
+#: setup.c:669
 msgid "unknown repository extensions found:"
 msgstr "extensões de repositório desconhecidas encontradas:"
 
-#: setup.c:776
+#: setup.c:681
+#, fuzzy
+msgid "repo version is 0, but v1-only extensions found:"
+msgstr "extensões de repositório desconhecidas encontradas:"
+
+#: setup.c:700
+#, fuzzy, c-format
+msgid "error opening '%s'"
+msgstr "falha ao abrir '%s'"
+
+#: setup.c:702
+#, fuzzy, c-format
+msgid "too large to be a .git file: '%s'"
+msgstr "não foi possível ler o ficheiro de entrada '%s'"
+
+#: setup.c:704
+#, fuzzy, c-format
+msgid "error reading %s"
+msgstr "Erro ao rematar %s."
+
+#: setup.c:706
+#, fuzzy, c-format
+msgid "invalid gitfile format: %s"
+msgstr "formato de data inválido: %s"
+
+#: setup.c:708
+#, fuzzy, c-format
+msgid "no path in gitfile: %s"
+msgstr "Não é possível abrir o ficheiro de patch %s"
+
+#: setup.c:710
+#, fuzzy, c-format
+msgid "not a git repository: %s"
+msgstr "Não é um repositório git"
+
+#: setup.c:812
 #, c-format
-msgid "Not a git repository (or any of the parent directories): %s"
-msgstr "Não é um repositório git (ou um dos diretórios pai): %s"
+msgid "'$%s' too big"
+msgstr ""
 
-#: setup.c:778 builtin/index-pack.c:1646
-msgid "Cannot come back to cwd"
+#: setup.c:826
+#, fuzzy, c-format
+msgid "not a git repository: '%s'"
+msgstr "Não é um repositório git"
+
+#: setup.c:855 setup.c:857 setup.c:888
+#, fuzzy, c-format
+msgid "cannot chdir to '%s'"
+msgstr "não é possível mudar para o diretório %s"
+
+#: setup.c:860 setup.c:916 setup.c:926 setup.c:965 setup.c:973
+#, fuzzy
+msgid "cannot come back to cwd"
 msgstr "Não é possível voltar ao diretório de trabalho atual"
 
-#: setup.c:1010
+#: setup.c:987
+#, fuzzy, c-format
+msgid "failed to stat '%*s%s%s'"
+msgstr "falha ao invocar stat de '%s'"
+
+#: setup.c:1225
 msgid "Unable to read current working directory"
 msgstr "Não é possível ler o diretório de trabalho atual"
 
-#: setup.c:1022 setup.c:1028
-#, c-format
-msgid "Cannot change to '%s'"
+#: setup.c:1234 setup.c:1240
+#, fuzzy, c-format
+msgid "cannot change to '%s'"
 msgstr "não é possível mudar para '%s'"
 
-#: setup.c:1041
-#, c-format
+#: setup.c:1245
+#, fuzzy, c-format
+msgid "not a git repository (or any of the parent directories): %s"
+msgstr "Não é um repositório git (ou um dos diretórios pai): %s"
+
+#: setup.c:1251
+#, fuzzy, c-format
 msgid ""
-"Not a git repository (or any parent up to mount point %s)\n"
+"not a git repository (or any parent up to mount point %s)\n"
 "Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."
 msgstr ""
 "Não é um repositório git (ou um diretório pai até ao ponto de montagem %s)\n"
 "Interrompido no limite do sistema de ficheiros "
 "(GIT_DISCOVERY_ACROSS_FILESYSTEM não definido)."
 
-#: setup.c:1106
-#, c-format
+#: setup.c:1362
+#, fuzzy, c-format
 msgid ""
-"Problem with core.sharedRepository filemode value (0%.3o).\n"
+"problem with core.sharedRepository filemode value (0%.3o).\n"
 "The owner of files must always have read and write permissions."
 msgstr ""
 "Problema com o valor core.sharedRepository modo de ficheiro (0%.3o).\n"
 "O dono dos ficheiros tem de ter sempre permissões de leitura e escrita."
 
-#: sha1_file.c:559
+#: setup.c:1409
+#, fuzzy
+msgid "open /dev/null or dup failed"
+msgstr "falha ao abrir /dev/null"
+
+#: setup.c:1424
+#, fuzzy
+msgid "fork failed"
+msgstr "falha ao invocar fseek"
+
+#: setup.c:1429
+#, fuzzy
+msgid "setsid failed"
+msgstr "falha ao executar o comando stash"
+
+#: sha1-file.c:470
+#, c-format
+msgid "object directory %s does not exist; check .git/objects/info/alternates"
+msgstr ""
+
+#: sha1-file.c:521
+#, fuzzy, c-format
+msgid "unable to normalize alternate object path: %s"
+msgstr "não foi possível analisar o objeto: %s"
+
+#: sha1-file.c:593
+#, c-format
+msgid "%s: ignoring alternate object stores, nesting too deep"
+msgstr ""
+
+#: sha1-file.c:600
+#, fuzzy, c-format
+msgid "unable to normalize object directory: %s"
+msgstr "não foi possível analisar o objeto: %s"
+
+#: sha1-file.c:643
+#, fuzzy
+msgid "unable to fdopen alternates lockfile"
+msgstr "não foi possível escrever os parâmetros no ficheiro de configuração"
+
+#: sha1-file.c:661
+#, fuzzy
+msgid "unable to read alternates file"
+msgstr "não foi possível ler o ficheiro de índice"
+
+#: sha1-file.c:668
+#, fuzzy
+msgid "unable to move new alternates file into place"
+msgstr "não foi possível escrever novo ficheiro de índice"
+
+#: sha1-file.c:703
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "o caminho '%s' não existe"
 
-#: sha1_file.c:585
+#: sha1-file.c:724
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr ""
 "ainda não é suportada a funcionalidade que permite ter o repositório de "
 "referência '%s' como uma extração ligada."
 
-#: sha1_file.c:591
+#: sha1-file.c:730
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr "o repositório de referência '%s' não é um repositório local."
 
-#: sha1_file.c:597
+#: sha1-file.c:736
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "o repositório de referência '%s' é raso"
 
-#: sha1_file.c:605
+#: sha1-file.c:744
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "o repositório de referência '%s' está enxertado"
 
-#: sha1_file.c:1245
-msgid "offset before end of packfile (broken .idx?)"
-msgstr "offset antes do fim do ficheiro de pacote (.idx danificado?)"
+#: sha1-file.c:804
+#, c-format
+msgid "invalid line while parsing alternate refs: %s"
+msgstr ""
 
-#: sha1_file.c:2721
+#: sha1-file.c:954
 #, c-format
-msgid "offset before start of pack index for %s (corrupt index?)"
-msgstr "offset antes do início do índice do pacote %s (índice corrompido?)"
+msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
+msgstr ""
+
+#: sha1-file.c:975
+#, fuzzy
+msgid "mmap failed"
+msgstr "%s falhou"
+
+#: sha1-file.c:1139
+#, fuzzy, c-format
+msgid "object file %s is empty"
+msgstr "objeto local %s corrompido"
+
+#: sha1-file.c:1274 sha1-file.c:2467
+#, fuzzy, c-format
+msgid "corrupt loose object '%s'"
+msgstr "não foi possível analisar o objeto '%s'"
+
+#: sha1-file.c:1276 sha1-file.c:2471
+#, fuzzy, c-format
+msgid "garbage at end of loose object '%s'"
+msgstr "não foi possível analisar o objeto: %s"
 
-#: sha1_file.c:2725
+#: sha1-file.c:1318
+#, fuzzy
+msgid "invalid object type"
+msgstr "tipo de objeto incorreto."
+
+#: sha1-file.c:1402
 #, c-format
-msgid "offset beyond end of pack index for %s (truncated index?)"
-msgstr "offset depois do fim do índice do pacote %s (índice truncado?)"
+msgid "unable to unpack %s header with --allow-unknown-type"
+msgstr ""
+
+#: sha1-file.c:1405
+#, fuzzy, c-format
+msgid "unable to unpack %s header"
+msgstr "não foi possível atualizar %s"
+
+#: sha1-file.c:1411
+#, c-format
+msgid "unable to parse %s header with --allow-unknown-type"
+msgstr ""
+
+#: sha1-file.c:1414
+#, fuzzy, c-format
+msgid "unable to parse %s header"
+msgstr "não foi possível atualizar %s"
+
+#: sha1-file.c:1641
+#, fuzzy, c-format
+msgid "failed to read object %s"
+msgstr "falha ao ler o objeto '%s'."
+
+#: sha1-file.c:1645
+#, fuzzy, c-format
+msgid "replacement %s not found for %s"
+msgstr "modelos não encontrados em %s"
+
+#: sha1-file.c:1649
+#, fuzzy, c-format
+msgid "loose object %s (stored in %s) is corrupt"
+msgstr "objeto local %s corrompido"
+
+#: sha1-file.c:1653
+#, fuzzy, c-format
+msgid "packed object %s (stored in %s) is corrupt"
+msgstr "objeto local %s corrompido"
+
+#: sha1-file.c:1758
+#, fuzzy, c-format
+msgid "unable to write file %s"
+msgstr "não foi possível escrever %s"
 
-#: sha1_name.c:409
+#: sha1-file.c:1765
+#, fuzzy, c-format
+msgid "unable to set permission to '%s'"
+msgstr "não foi possível resolver revisão: %s"
+
+#: sha1-file.c:1772
+#, fuzzy
+msgid "file write error"
+msgstr "falha ao escrever para rev-list"
+
+#: sha1-file.c:1792
+#, fuzzy
+msgid "error when closing loose object file"
+msgstr "erro ao fechar ficheiro de pacote"
+
+#: sha1-file.c:1857
+#, c-format
+msgid "insufficient permission for adding an object to repository database %s"
+msgstr ""
+
+#: sha1-file.c:1859
+#, fuzzy
+msgid "unable to create temporary file"
+msgstr "não foi possível criar índice temporário"
+
+#: sha1-file.c:1883
+#, fuzzy
+msgid "unable to write loose object file"
+msgstr "não é possível escrever o objeto de nota"
+
+#: sha1-file.c:1889
+#, fuzzy, c-format
+msgid "unable to deflate new object %s (%d)"
+msgstr "não é possível compactar objeto acrescentado (%d)"
+
+#: sha1-file.c:1893
+#, fuzzy, c-format
+msgid "deflateEnd on object %s failed (%d)"
+msgstr "falha de fstat de %s"
+
+#: sha1-file.c:1897
+#, c-format
+msgid "confused by unstable object source data for %s"
+msgstr ""
+
+#: sha1-file.c:1907 builtin/pack-objects.c:1086
+#, fuzzy, c-format
+msgid "failed utime() on %s"
+msgstr "falha ao abrir '%s'"
+
+#: sha1-file.c:1984
+#, fuzzy, c-format
+msgid "cannot read object for %s"
+msgstr "não foi possível ler o objeto %s"
+
+#: sha1-file.c:2035
+#, fuzzy
+msgid "corrupt commit"
+msgstr "substituir autor do commit"
+
+#: sha1-file.c:2043
+#, fuzzy
+msgid "corrupt tag"
+msgstr "mostrar tags"
+
+#: sha1-file.c:2143
+#, c-format
+msgid "read error while indexing %s"
+msgstr ""
+
+#: sha1-file.c:2146
+#, fuzzy, c-format
+msgid "short read while indexing %s"
+msgstr "não é possível ler o índice"
+
+#: sha1-file.c:2219 sha1-file.c:2229
+#, fuzzy, c-format
+msgid "%s: failed to insert into database"
+msgstr "gpg não assinou os dados"
+
+#: sha1-file.c:2235
+#, fuzzy, c-format
+msgid "%s: unsupported file type"
+msgstr "versão de índice %s não suportada"
+
+#: sha1-file.c:2259
+#, fuzzy, c-format
+msgid "%s is not a valid object"
+msgstr "%s não é um objeto '%s' válido"
+
+#: sha1-file.c:2261
+#, c-format
+msgid "%s is not a valid '%s' object"
+msgstr "%s não é um objeto '%s' válido"
+
+#: sha1-file.c:2288 builtin/index-pack.c:192
+#, c-format
+msgid "unable to open %s"
+msgstr "não foi possível abrir %s"
+
+#: sha1-file.c:2478 sha1-file.c:2531
+#, c-format
+msgid "hash mismatch for %s (expected %s)"
+msgstr ""
+
+#: sha1-file.c:2502
+#, fuzzy, c-format
+msgid "unable to mmap %s"
+msgstr "não foi possível abrir %s"
+
+#: sha1-file.c:2507
+#, fuzzy, c-format
+msgid "unable to unpack header of %s"
+msgstr "não foi possível atualizar %s"
+
+#: sha1-file.c:2513
+#, fuzzy, c-format
+msgid "unable to parse header of %s"
+msgstr "não foi possível ler %s"
+
+#: sha1-file.c:2524
+#, fuzzy, c-format
+msgid "unable to unpack contents of %s"
+msgstr "não é possível analisar o contacto: %s"
+
+#: sha1-name.c:486
 #, c-format
 msgid "short SHA1 %s is ambiguous"
 msgstr "SHA1 curto %s é ambíguo"
 
-#: sha1_name.c:420
+#: sha1-name.c:497
 msgid "The candidates are:"
 msgstr "Os candidatos são:"
 
-#: sha1_name.c:580
+#: sha1-name.c:796
+#, fuzzy
 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"
@@ -3542,56 +8066,303 @@ msgstr ""
 "Analise estas referências e elimine-as se desejar. Desative esta\n"
 "mensagem executando \"git config advice.objectNameWarning false\""
 
-#: submodule.c:67 submodule.c:101
+#: sha1-name.c:916
+#, c-format
+msgid "log for '%.*s' only goes back to %s"
+msgstr ""
+
+#: sha1-name.c:924
+#, c-format
+msgid "log for '%.*s' only has %d entries"
+msgstr ""
+
+#: sha1-name.c:1702
+#, fuzzy, c-format
+msgid "path '%s' exists on disk, but not in '%.*s'"
+msgstr "O caminho '%s' está dentro do submódulo '%.*s'"
+
+#: sha1-name.c:1708
+#, c-format
+msgid ""
+"path '%s' exists, but not '%s'\n"
+"hint: Did you mean '%.*s:%s' aka '%.*s:./%s'?"
+msgstr ""
+
+#: sha1-name.c:1717
+#, fuzzy, c-format
+msgid "path '%s' does not exist in '%.*s'"
+msgstr "o caminho '%s' não existe"
+
+#: sha1-name.c:1745
+#, c-format
+msgid ""
+"path '%s' is in the index, but not at stage %d\n"
+"hint: Did you mean ':%d:%s'?"
+msgstr ""
+
+#: sha1-name.c:1761
+#, c-format
+msgid ""
+"path '%s' is in the index, but not '%s'\n"
+"hint: Did you mean ':%d:%s' aka ':%d:./%s'?"
+msgstr ""
+
+#: sha1-name.c:1769
+#, c-format
+msgid "path '%s' exists on disk, but not in the index"
+msgstr ""
+
+#: sha1-name.c:1771
+#, fuzzy, c-format
+msgid "path '%s' does not exist (neither on disk nor in the index)"
+msgstr "o caminho '%s' não tem a versão deles"
+
+#: sha1-name.c:1784
+#, fuzzy
+msgid "relative path syntax can't be used outside working tree"
+msgstr ""
+"Os caminhos relativos só podem ser usados a partir do topo da árvore de "
+"trabalho"
+
+#: sha1-name.c:1922
+#, fuzzy, c-format
+msgid "invalid object name '%.*s'."
+msgstr "Nome de objeto inválido: '%s'."
+
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte
+#: strbuf.c:848
+#, c-format
+msgid "%u.%2.2u GiB"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
+#: strbuf.c:850
+#, c-format
+msgid "%u.%2.2u GiB/s"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte
+#: strbuf.c:858
+#, c-format
+msgid "%u.%2.2u MiB"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
+#: strbuf.c:860
+#, c-format
+msgid "%u.%2.2u MiB/s"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte
+#: strbuf.c:867
+#, c-format
+msgid "%u.%2.2u KiB"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
+#: strbuf.c:869
+#, c-format
+msgid "%u.%2.2u KiB/s"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 byte
+#: strbuf.c:875
+#, fuzzy, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] "bytes"
+msgstr[1] "bytes"
+
+#. TRANSLATORS: IEC 80000-13:2008 byte/second
+#: strbuf.c:877
+#, fuzzy, c-format
+msgid "%u byte/s"
+msgid_plural "%u bytes/s"
+msgstr[0] "bytes"
+msgstr[1] "bytes"
+
+#: strbuf.c:1166 wrapper.c:199 wrapper.c:369 builtin/am.c:733
+#: builtin/rebase.c:858
+#, c-format
+msgid "could not open '%s' for writing"
+msgstr "não foi possível abrir '%s' para escrita"
+
+#: strbuf.c:1175
+#, fuzzy, c-format
+msgid "could not edit '%s'"
+msgstr "não foi possível ler '%s'"
+
+#: submodule-config.c:237
+#, fuzzy, c-format
+msgid "ignoring suspicious submodule name: %s"
+msgstr "a referência %s com nome danificado foi ignorada"
+
+#: submodule-config.c:304
+#, fuzzy
+msgid "negative values not allowed for submodule.fetchjobs"
+msgstr "não é permitido valores negativos em submodule.fetchJobs"
+
+#: submodule-config.c:402
+#, c-format
+msgid "ignoring '%s' which may be interpreted as a command-line option: %s"
+msgstr ""
+
+#: submodule-config.c:499
+#, c-format
+msgid "invalid value for %s"
+msgstr "valor inválido de %s"
+
+#: submodule-config.c:766
+#, c-format
+msgid "Could not update .gitmodules entry %s"
+msgstr "Não foi possível atualizar o elemento %s de .gitmodules"
+
+#: submodule.c:114 submodule.c:143
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
 "Não é possível alterar .gitmodules não integrado, resolva primeiro os "
 "conflitos de integração"
 
-#: submodule.c:71 submodule.c:105
+#: submodule.c:118 submodule.c:147
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr "Secção de .gitmodules cujo path=%s não encontrada"
 
-#: submodule.c:79
-#, c-format
-msgid "Could not update .gitmodules entry %s"
-msgstr "Não foi possível atualizar o elemento %s de .gitmodules"
-
-#: submodule.c:112
+#: submodule.c:154
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr "Não foi possível remover o elemento %s de .gitmodules"
 
-#: submodule.c:123
+#: submodule.c:165
 msgid "staging updated .gitmodules failed"
 msgstr "falha ao preparar .gitmodules atualizado"
 
-#: submodule.c:161
-msgid "negative values not allowed for submodule.fetchJobs"
-msgstr "não é permitido valores negativos em submodule.fetchJobs"
+#: submodule.c:327
+#, fuzzy, c-format
+msgid "in unpopulated submodule '%s'"
+msgstr "A ignorar submódulo '%s'"
+
+#: submodule.c:358
+#, c-format
+msgid "Pathspec '%s' is in submodule '%.*s'"
+msgstr "O caminho '%s' está dentro do submódulo '%.*s'"
+
+#: submodule.c:434
+#, fuzzy, c-format
+msgid "bad --ignore-submodules argument: %s"
+msgstr "Falha ao analisar parâmetro da opção --submodule: '%s'"
+
+#: submodule.c:816
+#, c-format
+msgid ""
+"Submodule in commit %s at path: '%s' collides with a submodule named the "
+"same. Skipping it."
+msgstr ""
+
+#: submodule.c:919
+#, fuzzy, c-format
+msgid "submodule entry '%s' (%s) is a %s, not a commit"
+msgstr "%s %s não é um commit!"
+
+#: submodule.c:1004
+#, fuzzy, c-format
+msgid ""
+"Could not run 'git rev-list <commits> --not --remotes -n 1' command in "
+"submodule %s"
+msgstr "não foi possível executar 'git status' no submódulo '%s'"
+
+#: submodule.c:1127
+#, fuzzy, c-format
+msgid "process for submodule '%s' failed"
+msgstr "falha ao clonar '%s' no caminho de submódulo '%s'"
+
+#: submodule.c:1156 builtin/branch.c:678 builtin/submodule--helper.c:2469
+msgid "Failed to resolve HEAD as a valid ref."
+msgstr "Falha ao resolver HEAD numa referência válida."
+
+#: submodule.c:1167
+#, fuzzy, c-format
+msgid "Pushing submodule '%s'\n"
+msgstr "A ignorar submódulo '%s'"
 
-#: submodule.c:1194
+#: submodule.c:1170
+#, fuzzy, c-format
+msgid "Unable to push submodule '%s'\n"
+msgstr "Não foi possível extrair o submódulo '$sm_path'"
+
+#: submodule.c:1462
+#, fuzzy, c-format
+msgid "Fetching submodule %s%s\n"
+msgstr "A ignorar submódulo '%s'"
+
+#: submodule.c:1492
+#, fuzzy, c-format
+msgid "Could not access submodule '%s'\n"
+msgstr "não foi possível percorrer recursivamente o submódulo '%s'"
+
+#: submodule.c:1646
+#, fuzzy, c-format
+msgid ""
+"Errors during submodule fetch:\n"
+"%s"
+msgstr "percorrer submódulos recursivamente"
+
+#: submodule.c:1671
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr "'%s' não é reconhecido como um repositório git"
 
-#: submodule.c:1332
+#: submodule.c:1688
+#, fuzzy, c-format
+msgid "Could not run 'git status --porcelain=2' in submodule %s"
+msgstr "não foi possível executar 'git status' no submódulo '%s'"
+
+#: submodule.c:1729
+#, fuzzy, c-format
+msgid "'git status --porcelain=2' failed in submodule %s"
+msgstr "não foi possível executar 'git status' no submódulo '%s'"
+
+#: submodule.c:1804
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr "não foi possível iniciar 'git status' no submódulo '%s'"
 
-#: submodule.c:1345
+#: submodule.c:1817
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr "não foi possível executar 'git status' no submódulo '%s'"
 
-#: submodule.c:1421
+#: submodule.c:1832
+#, fuzzy, c-format
+msgid "Could not unset core.worktree setting in submodule '%s'"
+msgstr "Não foi possível definir core.worktree em %s"
+
+#: submodule.c:1859 submodule.c:2169
+#, c-format
+msgid "could not recurse into submodule '%s'"
+msgstr "não foi possível percorrer recursivamente o submódulo '%s'"
+
+#: submodule.c:1880
+#, fuzzy
+msgid "could not reset submodule index"
+msgstr "não foi possível percorrer recursivamente o submódulo '%s'"
+
+#: submodule.c:1922
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr "o submódulo '%s' tem índice sujo"
 
-#: submodule.c:1679
+#: submodule.c:1974
+#, fuzzy, c-format
+msgid "Submodule '%s' could not be updated."
+msgstr "Submódulos alterados mas não atualizados:"
+
+#: submodule.c:2042
+#, c-format
+msgid "submodule git dir '%s' is inside git dir '%.*s'"
+msgstr ""
+
+#: submodule.c:2063
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -3599,18 +8370,17 @@ msgstr ""
 "relocate_gitdir para submodule '%s' com mais do que uma árvore de trabalho "
 "não suportado"
 
-#: submodule.c:1691 submodule.c:1747
+#: submodule.c:2075 submodule.c:2134
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "não foi possível procurar pelo submódulo '%s'"
 
-#: submodule.c:1695 builtin/submodule--helper.c:678
-#: builtin/submodule--helper.c:688
+#: submodule.c:2079
 #, c-format
-msgid "could not create directory '%s'"
-msgstr "não foi possível criar o diretório '%s'"
+msgid "refusing to move '%s' into an existing git dir"
+msgstr ""
 
-#: submodule.c:1698
+#: submodule.c:2086
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -3621,94 +8391,304 @@ msgstr ""
 "'%s' para\n"
 "'%s'\n"
 
-#: submodule.c:1782
-#, c-format
-msgid "could not recurse into submodule '%s'"
-msgstr "não foi possível percorrer recursivamente o submódulo '%s'"
-
-#: submodule.c:1826
+#: submodule.c:2214
 msgid "could not start ls-files in .."
 msgstr "não foi possível iniciar ls-files em .."
 
-#: submodule.c:1846
-msgid "BUG: returned path string doesn't match cwd?"
-msgstr "BUG: returned path string doesn't match cwd?"
-
-#: submodule.c:1865
+#: submodule.c:2254
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree retornou código de retorno inesperado %d"
 
-#: submodule-config.c:380
-#, c-format
-msgid "invalid value for %s"
-msgstr "valor inválido de %s"
-
-#: trailer.c:240
+#: trailer.c:236
 #, c-format
 msgid "running trailer command '%s' failed"
 msgstr "falha ao executar o comando trailer '%s'"
 
-#: trailer.c:473 trailer.c:477 trailer.c:481 trailer.c:535 trailer.c:539
-#: trailer.c:543
+#: trailer.c:483 trailer.c:488 trailer.c:493 trailer.c:547 trailer.c:551
+#: trailer.c:555
 #, c-format
 msgid "unknown value '%s' for key '%s'"
 msgstr "valor desconhecido '%s' da chave '%s'"
 
-#: trailer.c:525 trailer.c:530 builtin/remote.c:289
+#: trailer.c:537 trailer.c:542 builtin/remote.c:298 builtin/remote.c:323
 #, c-format
 msgid "more than one %s"
 msgstr "mais do que um %s"
 
-#: trailer.c:702
+#: trailer.c:728
 #, c-format
 msgid "empty trailer token in trailer '%.*s'"
 msgstr "token terminador vazio no terminador '%.*s'"
 
-#: trailer.c:722
+#: trailer.c:748
 #, c-format
 msgid "could not read input file '%s'"
 msgstr "não foi possível ler o ficheiro de entrada '%s'"
 
-#: trailer.c:725
+#: trailer.c:751
 msgid "could not read from stdin"
 msgstr "não foi possível ler da entrada padrão"
 
-#: trailer.c:949 builtin/am.c:44
+#: trailer.c:1009 wrapper.c:676
 #, c-format
 msgid "could not stat %s"
 msgstr "não foi possível obter stat de %s"
 
-#: trailer.c:951
+#: trailer.c:1011
 #, c-format
 msgid "file %s is not a regular file"
 msgstr "o ficheiro %s não é um ficheiro regular"
 
-#: trailer.c:953
+#: trailer.c:1013
 #, c-format
 msgid "file %s is not writable by user"
 msgstr "o ficheiro %s não pode ser escrito pelo utilizador"
 
-#: trailer.c:965
+#: trailer.c:1025
 msgid "could not open temporary file"
 msgstr "não foi possível abrir ficheiro temporário"
 
-#: trailer.c:1001
+#: trailer.c:1065
 #, c-format
 msgid "could not rename temporary file to %s"
 msgstr "não foi possível mudar o nome do ficheiro temporário para %s"
 
-#: transport.c:62
+#: transport-helper.c:62 transport-helper.c:91
+#, fuzzy
+msgid "full write to remote helper failed"
+msgstr "imprimir estado do programa auxiliar remoto"
+
+#: transport-helper.c:145
+#, fuzzy, c-format
+msgid "unable to find remote helper for '%s'"
+msgstr "Não é possível adicionar os resultados da integração de '%s'"
+
+#: transport-helper.c:161 transport-helper.c:575
+msgid "can't dup helper output fd"
+msgstr ""
+
+#: transport-helper.c:214
+#, c-format
+msgid ""
+"unknown mandatory capability %s; this remote helper probably needs newer "
+"version of Git"
+msgstr ""
+
+#: transport-helper.c:220
+msgid "this remote helper should implement refspec capability"
+msgstr ""
+
+#: transport-helper.c:287 transport-helper.c:429
+#, fuzzy, c-format
+msgid "%s unexpectedly said: '%s'"
+msgstr "blob para %s '%s' esperado"
+
+#: transport-helper.c:417
+#, fuzzy, c-format
+msgid "%s also locked %s"
+msgstr "'%s' não está trancada"
+
+#: transport-helper.c:497
+#, fuzzy
+msgid "couldn't run fast-import"
+msgstr "não foi possível executar o comando stash."
+
+#: transport-helper.c:520
+#, fuzzy
+msgid "error while running fast-import"
+msgstr "erro ao fechar ficheiro de pacote"
+
+#: transport-helper.c:549 transport-helper.c:1226
+#, fuzzy, c-format
+msgid "could not read ref %s"
+msgstr "Não foi possível ler a referência %s"
+
+#: transport-helper.c:594
+#, fuzzy, c-format
+msgid "unknown response to connect: %s"
+msgstr "Não sei como clonar %s"
+
+#: transport-helper.c:616
+msgid "setting remote service path not supported by protocol"
+msgstr ""
+
+#: transport-helper.c:618
+#, fuzzy
+msgid "invalid remote service path"
+msgstr "referência inválida: %s"
+
+#: transport-helper.c:661 transport.c:1428
+#, fuzzy
+msgid "operation not supported by protocol"
+msgstr "opção não suportada com --recurse-submodules."
+
+#: transport-helper.c:664
+#, c-format
+msgid "can't connect to subservice %s"
+msgstr ""
+
+#: transport-helper.c:745
+msgid "'option' without a matching 'ok/error' directive"
+msgstr ""
+
+#: transport-helper.c:788
+#, fuzzy, c-format
+msgid "expected ok/error, helper said '%s'"
+msgstr "blob para %s '%s' esperado"
+
+#: transport-helper.c:841
+#, fuzzy, c-format
+msgid "helper reported unexpected status of %s"
+msgstr "ls-tree retornou código de retorno inesperado %d"
+
+#: transport-helper.c:924
+#, fuzzy, c-format
+msgid "helper %s does not support dry-run"
+msgstr "O servidor não suporta --deepen"
+
+#: transport-helper.c:927
+#, fuzzy, c-format
+msgid "helper %s does not support --signed"
+msgstr "O servidor não suporta --shallow-since"
+
+#: transport-helper.c:930
+#, fuzzy, c-format
+msgid "helper %s does not support --signed=if-asked"
+msgstr "o recetor não suporta publicação com --signed"
+
+#: transport-helper.c:935
+#, fuzzy, c-format
+msgid "helper %s does not support --atomic"
+msgstr "O servidor não suporta --shallow-since"
+
+#: transport-helper.c:941
+#, fuzzy, c-format
+msgid "helper %s does not support 'push-option'"
+msgstr "o recetor não suporta opções de publicação"
+
+#: transport-helper.c:1040
+msgid "remote-helper doesn't support push; refspec needed"
+msgstr ""
+
+#: transport-helper.c:1045
+#, fuzzy, c-format
+msgid "helper %s does not support 'force'"
+msgstr "O servidor não suporta --deepen"
+
+#: transport-helper.c:1092
+#, fuzzy
+msgid "couldn't run fast-export"
+msgstr "não foi possível executar o comando stash."
+
+#: transport-helper.c:1097
+#, fuzzy
+msgid "error while running fast-export"
+msgstr "erro ao fechar ficheiro de pacote"
+
+#: transport-helper.c:1122
+#, c-format
+msgid ""
+"No refs in common and none specified; doing nothing.\n"
+"Perhaps you should specify a branch.\n"
+msgstr ""
+
+#: transport-helper.c:1203
+#, fuzzy, c-format
+msgid "unsupported object format '%s'"
+msgstr "objeto malformado em '%s'"
+
+#: transport-helper.c:1212
+#, fuzzy, c-format
+msgid "malformed response in ref list: %s"
+msgstr "folha de opções malformada: '%s'"
+
+#: transport-helper.c:1364
+#, fuzzy, c-format
+msgid "read(%s) failed"
+msgstr "%s falhou"
+
+#: transport-helper.c:1391
+#, fuzzy, c-format
+msgid "write(%s) failed"
+msgstr "%s falhou"
+
+#: transport-helper.c:1440
+#, fuzzy, c-format
+msgid "%s thread failed"
+msgstr "%s falhou"
+
+#: transport-helper.c:1444
+#, fuzzy, c-format
+msgid "%s thread failed to join: %s"
+msgstr "falha ao abrir '%s'"
+
+#: transport-helper.c:1463 transport-helper.c:1467
+#, c-format
+msgid "can't start thread for copying data: %s"
+msgstr ""
+
+#: transport-helper.c:1504
+#, c-format
+msgid "%s process failed to wait"
+msgstr ""
+
+#: transport-helper.c:1508
+#, fuzzy, c-format
+msgid "%s process failed"
+msgstr "%s falhou"
+
+#: transport-helper.c:1526 transport-helper.c:1535
+msgid "can't start thread for copying data"
+msgstr ""
+
+#: transport.c:116
 #, c-format
 msgid "Would set upstream of '%s' to '%s' of '%s'\n"
 msgstr "Iria definir o ramo a montante de '%s' como '%s' de '%s'\n"
 
-#: transport.c:151
+#: transport.c:145
+#, fuzzy, c-format
+msgid "could not read bundle '%s'"
+msgstr "não foi possível ler o ficheiro '%s'"
+
+#: transport.c:220
 #, c-format
 msgid "transport: invalid depth option '%s'"
 msgstr "transporte: opção de profundidade '%s' inválida"
 
-#: transport.c:889
+#: transport.c:269
+msgid "see protocol.version in 'git help config' for more details"
+msgstr ""
+
+#: transport.c:270
+msgid "server options require protocol version 2 or later"
+msgstr ""
+
+#: transport.c:712
+#, fuzzy
+msgid "could not parse transport.color.* config"
+msgstr "não foi possível analisar o autor do script"
+
+#: transport.c:785
+msgid "support for protocol v2 not implemented yet"
+msgstr ""
+
+#: transport.c:919
+#, fuzzy, c-format
+msgid "unknown value for config '%s': %s"
+msgstr "valor desconhecido '%s' da chave '%s'"
+
+#: transport.c:985
+#, fuzzy, c-format
+msgid "transport '%s' not allowed"
+msgstr "ramo '%s' não encontrado."
+
+#: transport.c:1038
+msgid "git-over-rsync is no longer supported"
+msgstr ""
+
+#: transport.c:1140
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
@@ -3717,7 +8697,7 @@ msgstr ""
 "Os seguintes caminhos de submódulo contêm alterações que\n"
 "não puderam ser encontradas a nenhum remoto:\n"
 
-#: transport.c:893
+#: transport.c:1144
 #, c-format
 msgid ""
 "\n"
@@ -3744,32 +8724,32 @@ msgstr ""
 "para publicá-las no remoto.\n"
 "\n"
 
-#: transport.c:901
+#: transport.c:1152
 msgid "Aborting."
 msgstr "Abortado."
 
-#: transport-helper.c:1080
-#, c-format
-msgid "Could not read ref %s"
-msgstr "Não foi possível ler a referência %s"
+#: transport.c:1297
+#, fuzzy
+msgid "failed to push all needed submodules"
+msgstr "Falha ao adicionar o submódulo '$sm_path'"
 
-#: tree-walk.c:31
+#: tree-walk.c:32
 msgid "too-short tree object"
 msgstr "objeto árvore demasiado curto"
 
-#: tree-walk.c:37
+#: tree-walk.c:38
 msgid "malformed mode in tree entry"
 msgstr "modo na entrada de árvore malformado"
 
-#: tree-walk.c:41
+#: tree-walk.c:42
 msgid "empty filename in tree entry"
 msgstr "nome de ficheiro vazio na entrada de árvore"
 
-#: tree-walk.c:113
+#: tree-walk.c:117
 msgid "too-short tree file"
 msgstr "ficheiro de árvore demasiado curto"
 
-#: unpack-trees.c:104
+#: unpack-trees.c:113
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -3779,7 +8759,7 @@ msgstr ""
 "extrair:\n"
 "%%sSubmeta as suas alterações ou esconda-as antes de trocar de ramo."
 
-#: unpack-trees.c:106
+#: unpack-trees.c:115
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -3789,7 +8769,7 @@ msgstr ""
 "extrair:\n"
 "%%s"
 
-#: unpack-trees.c:109
+#: unpack-trees.c:118
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -3799,7 +8779,7 @@ msgstr ""
 "integrar:\n"
 "%%sSubmeta as suas alterações ou esconda-as antes de integrar."
 
-#: unpack-trees.c:111
+#: unpack-trees.c:120
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -3809,7 +8789,7 @@ msgstr ""
 "integrar:\n"
 "%%s"
 
-#: unpack-trees.c:114
+#: unpack-trees.c:123
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -3819,7 +8799,7 @@ msgstr ""
 "%s:\n"
 "%%sSubmeta as suas alterações ou esconda-as antes de efetuar %s."
 
-#: unpack-trees.c:116
+#: unpack-trees.c:125
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -3829,7 +8809,7 @@ msgstr ""
 "%s:\n"
 "%%s"
 
-#: unpack-trees.c:121
+#: unpack-trees.c:130
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
@@ -3839,7 +8819,7 @@ msgstr ""
 "deles:\n"
 "%s"
 
-#: unpack-trees.c:125
+#: unpack-trees.c:134
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -3849,7 +8829,7 @@ msgstr ""
 "removidos ao extrair:\n"
 "%%sMova ou remova-os antes de trocar de ramos."
 
-#: unpack-trees.c:127
+#: unpack-trees.c:136
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -3859,7 +8839,7 @@ msgstr ""
 "removidos ao extrair:\n"
 "%%s"
 
-#: unpack-trees.c:130
+#: unpack-trees.c:139
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -3869,7 +8849,7 @@ msgstr ""
 "removidos ao integrar:\n"
 "%%sMova ou remova-os antes de integrar."
 
-#: unpack-trees.c:132
+#: unpack-trees.c:141
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -3879,7 +8859,7 @@ msgstr ""
 "removidos ao integrar:\n"
 "%%s"
 
-#: unpack-trees.c:135
+#: unpack-trees.c:144
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -3889,7 +8869,7 @@ msgstr ""
 "removidos por %s:\n"
 "%%sMova ou remova-os antes de efetuar %s."
 
-#: unpack-trees.c:137
+#: unpack-trees.c:146
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -3899,7 +8879,7 @@ msgstr ""
 "removidos por %s:\n"
 "%%s"
 
-#: unpack-trees.c:142
+#: unpack-trees.c:152
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -3910,7 +8890,7 @@ msgstr ""
 "substituídos ao extrair:\n"
 "%%sMova ou remova-os antes de trocar de ramos."
 
-#: unpack-trees.c:144
+#: unpack-trees.c:154
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -3921,7 +8901,7 @@ msgstr ""
 "substituídos ao extrair:\n"
 "%%s"
 
-#: unpack-trees.c:147
+#: unpack-trees.c:157
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -3931,7 +8911,7 @@ msgstr ""
 "substituídos ao integrar:\n"
 "%%sMova ou remova-os antes de integrar."
 
-#: unpack-trees.c:149
+#: unpack-trees.c:159
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -3941,7 +8921,7 @@ msgstr ""
 "substituídos ao integrar:\n"
 "%%s"
 
-#: unpack-trees.c:152
+#: unpack-trees.c:162
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -3951,7 +8931,7 @@ msgstr ""
 "substituídos por %s:\n"
 "%%sMova ou remova-os antes de efetuar %s."
 
-#: unpack-trees.c:154
+#: unpack-trees.c:164
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -3961,65 +8941,75 @@ msgstr ""
 "substituídos por %s:\n"
 "%%s"
 
-#: unpack-trees.c:161
+#: unpack-trees.c:172
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr "A entrada '%s' sobrepõe-se com '%s'. Não é possível vincular."
 
-#: unpack-trees.c:164
+#: unpack-trees.c:175
 #, c-format
 msgid ""
-"Cannot update sparse checkout: the following entries are not up-to-date:\n"
+"Cannot update submodule:\n"
 "%s"
 msgstr ""
-"Não é possível extrair esparsamente: as seguintes entradas não estão "
-"atualizadas:\n"
+"Não é possível atualizar submódulo:\n"
 "%s"
 
-#: unpack-trees.c:166
+#: unpack-trees.c:178
 #, c-format
 msgid ""
-"The following working tree files would be overwritten by sparse checkout "
-"update:\n"
+"The following paths are not up to date and were left despite sparse "
+"patterns:\n"
 "%s"
 msgstr ""
-"Os seguintes ficheiros na árvore de trabalho seriam substituídos ao "
-"atualizar a extração esparsa:\n"
-"%s"
 
-#: unpack-trees.c:168
-#, c-format
+#: unpack-trees.c:180
+#, fuzzy, c-format
 msgid ""
-"The following working tree files would be removed by sparse checkout "
-"update:\n"
-"%s"
-msgstr ""
-"Os seguintes ficheiros na árvore de trabalho seriam removidos ao atualizar a "
-"extração esparsa:\n"
+"The following paths are unmerged and were left despite sparse patterns:\n"
 "%s"
+msgstr "Os seguintes caminhos estão ignorados por algum ficheiro .gitignore:\n"
 
-#: unpack-trees.c:170
+#: unpack-trees.c:182
 #, c-format
 msgid ""
-"Cannot update submodule:\n"
+"The following paths were already present and thus not updated despite sparse "
+"patterns:\n"
 "%s"
 msgstr ""
-"Não é possível atualizar submódulo:\n"
-"%s"
 
-#: unpack-trees.c:247
+#: unpack-trees.c:262
 #, c-format
 msgid "Aborting\n"
 msgstr "A abortar\n"
 
-#: unpack-trees.c:272
+#: unpack-trees.c:289
 #, c-format
-msgid "submodule update strategy not supported for submodule '%s'"
-msgstr "não foi possível procurar pelo submódulo '%s'"
+msgid ""
+"After fixing the above paths, you may want to run `git sparse-checkout "
+"reapply`.\n"
+msgstr ""
 
-#: unpack-trees.c:340
-msgid "Checking out files"
-msgstr "A extrair ficheiros"
+#: unpack-trees.c:350
+#, fuzzy
+msgid "Updating files"
+msgstr "A atualizar %s"
+
+#: unpack-trees.c:382
+msgid ""
+"the following paths have collided (e.g. case-sensitive paths\n"
+"on a case-insensitive filesystem) and only one from the same\n"
+"colliding group is in the working tree:\n"
+msgstr ""
+
+#: unpack-trees.c:1498
+#, fuzzy
+msgid "Updating index flags"
+msgstr "A atualizar %s"
+
+#: upload-pack.c:1516
+msgid "expected flush after fetch arguments"
+msgstr ""
 
 #: urlmatch.c:163
 msgid "invalid URL scheme name or missing '://' suffix"
@@ -4050,299 +9040,371 @@ msgstr "número de porta inválido"
 msgid "invalid '..' path segment"
 msgstr "segmento de caminho '..' inválido"
 
-#: worktree.c:285
+#: walker.c:170
+#, fuzzy
+msgid "Fetching objects"
+msgstr "A verificar objetos"
+
+#: worktree.c:236 builtin/am.c:2116
 #, c-format
 msgid "failed to read '%s'"
 msgstr "falha ao ler '%s'"
 
-#: wrapper.c:222 wrapper.c:392
+#: worktree.c:283
 #, c-format
-msgid "could not open '%s' for reading and writing"
-msgstr "não foi possível abrir '%s' para leitura e escrita"
+msgid "'%s' at main working tree is not the repository directory"
+msgstr ""
 
-#: wrapper.c:224 wrapper.c:394 builtin/am.c:766
+#: worktree.c:294
 #, c-format
-msgid "could not open '%s' for writing"
-msgstr "não foi possível abrir '%s' para escrita"
+msgid "'%s' file does not contain absolute path to the working tree location"
+msgstr ""
+
+#: worktree.c:306
+#, fuzzy, c-format
+msgid "'%s' does not exist"
+msgstr "o caminho '%s' não existe"
+
+#: worktree.c:312
+#, fuzzy, c-format
+msgid "'%s' is not a .git file, error code %d"
+msgstr "'%s' não está trancada"
+
+#: worktree.c:321
+#, fuzzy, c-format
+msgid "'%s' does not point back to '%s'"
+msgstr "'%s' não aponta para um commit"
+
+#: worktree.c:587
+#, fuzzy
+msgid "not a directory"
+msgstr "Não é um repositório git"
+
+#: worktree.c:596
+#, fuzzy
+msgid ".git is not a file"
+msgstr "git show %s: ficheiro incorreto"
+
+#: worktree.c:598
+msgid ".git file broken"
+msgstr ""
+
+#: worktree.c:600
+#, fuzzy
+msgid ".git file incorrect"
+msgstr "ficheiro de índice corrompido"
 
-#: wrapper.c:226 wrapper.c:396 builtin/am.c:320 builtin/am.c:759
-#: builtin/am.c:847 builtin/commit.c:1700 builtin/merge.c:1015
-#: builtin/pull.c:341
+#: worktree.c:670
+#, fuzzy
+msgid "not a valid path"
+msgstr "nome de objeto inválido: %s"
+
+#: worktree.c:676
+#, fuzzy
+msgid "unable to locate repository; .git is not a file"
+msgstr "não é possível escrever ficheiro de índice temporário"
+
+#: worktree.c:679
+#, fuzzy
+msgid "unable to locate repository; .git file broken"
+msgstr "não é possível escrever ficheiro de índice temporário"
+
+#: worktree.c:685
+msgid "gitdir unreadable"
+msgstr ""
+
+#: worktree.c:689
+msgid "gitdir incorrect"
+msgstr ""
+
+#: wrapper.c:197 wrapper.c:367
 #, c-format
-msgid "could not open '%s' for reading"
-msgstr "não foi possível abrir '%s' para leitura"
+msgid "could not open '%s' for reading and writing"
+msgstr "não foi possível abrir '%s' para leitura e escrita"
 
-#: wrapper.c:581 wrapper.c:602
+#: wrapper.c:398 wrapper.c:599
 #, c-format
 msgid "unable to access '%s'"
 msgstr "não é possível aceder a '%s'"
 
-#: wrapper.c:610
+#: wrapper.c:607
 msgid "unable to get current working directory"
 msgstr "não é possível de obter o diretório de trabalho atual"
 
-#: wrapper.c:634
-#, c-format
-msgid "could not write to %s"
-msgstr "não foi possível escrever para %s"
-
-#: wrapper.c:636
-#, c-format
-msgid "could not close %s"
-msgstr "não foi possível fechar %s"
-
-#: wt-status.c:151
+#: wt-status.c:158
 msgid "Unmerged paths:"
 msgstr "Caminhos não integrados:"
 
-#: wt-status.c:178 wt-status.c:205
-#, c-format
-msgid "  (use \"git reset %s <file>...\" to unstage)"
+#: wt-status.c:187 wt-status.c:219
+#, fuzzy
+msgid "  (use \"git restore --staged <file>...\" to unstage)"
+msgstr "  (use \"git reset %s <ficheiro>...\" para despreparar)"
+
+#: wt-status.c:190 wt-status.c:222
+#, fuzzy, c-format
+msgid "  (use \"git restore --source=%s --staged <file>...\" to unstage)"
 msgstr "  (use \"git reset %s <ficheiro>...\" para despreparar)"
 
-#: wt-status.c:180 wt-status.c:207
+#: wt-status.c:193 wt-status.c:225
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr "  (use \"git rm --cached <ficheiro>...\" para despreparar)"
 
-#: wt-status.c:184
+#: wt-status.c:197
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr "  (use \"git add <ficheiro>...\" para marcar como resolvido)"
 
-#: wt-status.c:186 wt-status.c:190
+#: wt-status.c:199 wt-status.c:203
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr ""
 "  (use \"git add/rm <ficheiro>...\" conforme apropriado para marcar como "
 "resolvido)"
 
-#: wt-status.c:188
+#: wt-status.c:201
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr "  (use \"git rm <ficheiro>...\" para marcar como resolvido)"
 
-#: wt-status.c:199 wt-status.c:958
+#: wt-status.c:211 wt-status.c:1070
 msgid "Changes to be committed:"
 msgstr "Alterações para serem submetidas:"
 
-#: wt-status.c:217 wt-status.c:967
+#: wt-status.c:234 wt-status.c:1079
 msgid "Changes not staged for commit:"
 msgstr "Alterações não preparadas para submeter:"
 
-#: wt-status.c:221
+#: wt-status.c:238
 msgid "  (use \"git add <file>...\" to update what will be committed)"
 msgstr "  (use \"git add <ficheiro>...\" para atualizar o que será submetido)"
 
-#: wt-status.c:223
+#: wt-status.c:240
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 msgstr ""
 "  (use \"git add/rm <ficheiro>...\" para atualizar o que será submetido)"
 
-#: wt-status.c:224
+#: wt-status.c:241
+#, fuzzy
 msgid ""
-"  (use \"git checkout -- <file>...\" to discard changes in working directory)"
+"  (use \"git restore <file>...\" to discard changes in working directory)"
 msgstr ""
 "  (use \"git checkout -- <ficheiro>...\" para descartar alterações no "
 "diretório de trabalho)"
 
-#: wt-status.c:226
+#: wt-status.c:243
 msgid "  (commit or discard the untracked or modified content in submodules)"
 msgstr ""
 "  (submeta ou descarte o conteúdo modificado ou não controlado nos "
 "submódulos)"
 
-#: wt-status.c:238
+#: wt-status.c:254
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
 msgstr "  (use \"git %s <ficheiro>...\" para incluir no que será submetido)"
 
-#: wt-status.c:253
+#: wt-status.c:266
 msgid "both deleted:"
 msgstr "eliminado por ambos:"
 
-#: wt-status.c:255
+#: wt-status.c:268
 msgid "added by us:"
 msgstr "adicionado por nós:"
 
-#: wt-status.c:257
+#: wt-status.c:270
 msgid "deleted by them:"
 msgstr "eliminado por eles:"
 
-#: wt-status.c:259
+#: wt-status.c:272
 msgid "added by them:"
 msgstr "adicionado por eles:"
 
-#: wt-status.c:261
+#: wt-status.c:274
 msgid "deleted by us:"
 msgstr "eliminado por nós:"
 
-#: wt-status.c:263
+#: wt-status.c:276
 msgid "both added:"
 msgstr "adicionado por ambos:"
 
-#: wt-status.c:265
+#: wt-status.c:278
 msgid "both modified:"
 msgstr "modificado por ambos:"
 
-#: wt-status.c:275
+#: wt-status.c:288
 msgid "new file:"
 msgstr "novo ficheiro:"
 
-#: wt-status.c:277
+#: wt-status.c:290
 msgid "copied:"
 msgstr "copiado:"
 
-#: wt-status.c:279
+#: wt-status.c:292
 msgid "deleted:"
 msgstr "eliminado:"
 
-#: wt-status.c:281
+#: wt-status.c:294
 msgid "modified:"
 msgstr "modificado:"
 
-#: wt-status.c:283
+#: wt-status.c:296
 msgid "renamed:"
 msgstr "nome mudado:"
 
-#: wt-status.c:285
+#: wt-status.c:298
 msgid "typechange:"
 msgstr "tipo alterado:"
 
-#: wt-status.c:287
+#: wt-status.c:300
 msgid "unknown:"
 msgstr "desconhecido:"
 
-#: wt-status.c:289
+#: wt-status.c:302
 msgid "unmerged:"
 msgstr "não integrado:"
 
-#: wt-status.c:371
+#: wt-status.c:382
 msgid "new commits, "
 msgstr "novos commits, "
 
-#: wt-status.c:373
+#: wt-status.c:384
 msgid "modified content, "
 msgstr "conteúdo modificado, "
 
-#: wt-status.c:375
+#: wt-status.c:386
 msgid "untracked content, "
 msgstr "conteúdo não controlado, "
 
-#: wt-status.c:831
+#: wt-status.c:903
+#, fuzzy, c-format
+msgid "Your stash currently has %d entry"
+msgid_plural "Your stash currently has %d entries"
+msgstr[0] "Está a rebasear neste momento."
+msgstr[1] "Está a rebasear neste momento."
+
+#: wt-status.c:934
 msgid "Submodules changed but not updated:"
 msgstr "Submódulos alterados mas não atualizados:"
 
-#: wt-status.c:833
+#: wt-status.c:936
 msgid "Submodule changes to be committed:"
 msgstr "Alterações em submódulos para serem submetidas:"
 
-#: wt-status.c:914
+#: wt-status.c:1018
+#, fuzzy
 msgid ""
-"Do not touch the line above.\n"
-"Everything below will be removed."
+"Do not modify or remove the line above.\n"
+"Everything below it will be ignored."
 msgstr ""
 "Não altere a linha acima.\n"
 "Tudo o que estiver abaixo será removido."
 
-#: wt-status.c:1026
+#: wt-status.c:1110
+#, 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 ""
+
+#: wt-status.c:1140
 msgid "You have unmerged paths."
 msgstr "Há caminhos não integrados."
 
-#: wt-status.c:1029
+#: wt-status.c:1143
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (corrija os conflitos e execute \"git commit\")"
 
-#: wt-status.c:1031
+#: wt-status.c:1145
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr "  (use \"git am --abort\" para abortar a integração)"
 
-#: wt-status.c:1036
+#: wt-status.c:1149
 msgid "All conflicts fixed but you are still merging."
 msgstr "Todos os conflitos foram corrigidos mas ainda está a integrar."
 
-#: wt-status.c:1039
+#: wt-status.c:1152
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (use \"git commit\" para concluir a integração)"
 
-#: wt-status.c:1049
+#: wt-status.c:1161
 msgid "You are in the middle of an am session."
 msgstr "Sessão am em curso."
 
-#: wt-status.c:1052
+#: wt-status.c:1164
 msgid "The current patch is empty."
 msgstr "O patch atual está vazio."
 
-#: wt-status.c:1056
+#: wt-status.c:1168
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (corrija os conflitos e execute \"git am --continue\")"
 
-#: wt-status.c:1058
+#: wt-status.c:1170
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (use \"git am --skip\" para ignorar este patch)"
 
-#: wt-status.c:1060
+#: wt-status.c:1172
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (use \"git am --abort\" para restaurar o ramo original)"
 
-#: wt-status.c:1189
+#: wt-status.c:1305
 msgid "git-rebase-todo is missing."
 msgstr "git-rebase-todo não existe."
 
-#: wt-status.c:1191
+#: wt-status.c:1307
 msgid "No commands done."
 msgstr "Nenhum comando concluído."
 
-#: wt-status.c:1194
+#: wt-status.c:1310
 #, c-format
 msgid "Last command done (%d command done):"
 msgid_plural "Last commands done (%d commands done):"
 msgstr[0] "Último comando concluído (%d comando concluído):"
 msgstr[1] "Últimos comandos concluídos (%d comandos concluídos):"
 
-#: wt-status.c:1205
+#: wt-status.c:1321
 #, c-format
 msgid "  (see more in file %s)"
 msgstr "  (veja mais no ficheiro %s)"
 
-#: wt-status.c:1210
+#: wt-status.c:1326
 msgid "No commands remaining."
 msgstr "Nenhum comando por concluir."
 
-#: wt-status.c:1213
+#: wt-status.c:1329
 #, c-format
 msgid "Next command to do (%d remaining command):"
 msgid_plural "Next commands to do (%d remaining commands):"
 msgstr[0] "Próximo comando a executar (%d comando restante):"
 msgstr[1] "Próximos comandos a executar (%d comandos restantes):"
 
-#: wt-status.c:1221
+#: wt-status.c:1337
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr "  (use \"git rebase --edit-todo\" para visualizar e editar)"
 
-#: wt-status.c:1234
+#: wt-status.c:1349
 #, c-format
 msgid "You are currently rebasing branch '%s' on '%s'."
 msgstr "Está a realizar rebase do ramo '%s' sobre '%s'."
 
-#: wt-status.c:1239
+#: wt-status.c:1354
 msgid "You are currently rebasing."
 msgstr "Está a rebasear neste momento."
 
-#: wt-status.c:1253
+#: wt-status.c:1367
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (corrija os conflitos e execute \"git rebase --continue\")"
 
-#: wt-status.c:1255
+#: wt-status.c:1369
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (use \"git rebase --skip\" para ignorar este patch)"
 
-#: wt-status.c:1257
+#: wt-status.c:1371
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr "  (use \"git rebase --abort\" para restaurar o ramo original)"
 
-#: wt-status.c:1263
+#: wt-status.c:1378
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr ""
 "  (todos os conflitos foram corrigidos: execute \"git rebase --continue\")"
 
-#: wt-status.c:1267
+#: wt-status.c:1382
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
@@ -4350,126 +9412,158 @@ msgstr ""
 "Está a dividir um commit ao mesmo tempo que se efetua rebase do ramo '%s' "
 "sobre '%s'."
 
-#: wt-status.c:1272
+#: wt-status.c:1387
 msgid "You are currently splitting a commit during a rebase."
 msgstr "Está a dividir um commit durante um rebase."
 
-#: wt-status.c:1275
+#: wt-status.c:1390
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr ""
 "  (Assim que o diretório de trabalho estiver limpo, execute \"git rebase --"
 "continue\")"
 
-#: wt-status.c:1279
+#: wt-status.c:1394
 #, c-format
 msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 "Está a editar um commit ao mesmo tempo que efetua rebase do ramo '%s' sobre "
 "'%s'."
 
-#: wt-status.c:1284
+#: wt-status.c:1399
 msgid "You are currently editing a commit during a rebase."
 msgstr "Está a editar um commit durante um rebase."
 
-#: wt-status.c:1287
+#: wt-status.c:1402
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (use \"git commit --amend\" para emendar o commit atual)"
 
-#: wt-status.c:1289
+#: wt-status.c:1404
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
 "  (use \"git rebase --continue\" assim que estiver satisfeito com as "
 "alterações)"
 
-#: wt-status.c:1299
+#: wt-status.c:1415
+#, fuzzy
+msgid "Cherry-pick currently in progress."
+msgstr "nenhum cherry-pick ou revert em curso"
+
+#: wt-status.c:1418
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "Está a realizar cherry-pick do commit %s."
 
-#: wt-status.c:1304
+#: wt-status.c:1425
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (corrija os conflitos e execute \"git cherry-pick --continue\")"
 
-#: wt-status.c:1307
+#: wt-status.c:1428
+#, fuzzy
+msgid "  (run \"git cherry-pick --continue\" to continue)"
+msgstr "  (corrija os conflitos e execute \"git cherry-pick --continue\")"
+
+#: wt-status.c:1431
 msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
 msgstr ""
 "  (todos os conflitos foram corrigidos: execute \"git cherry-pick --continue"
 "\")"
 
-#: wt-status.c:1309
+#: wt-status.c:1433
+#, fuzzy
+msgid "  (use \"git cherry-pick --skip\" to skip this patch)"
+msgstr "  (use \"git am --skip\" para ignorar este patch)"
+
+#: wt-status.c:1435
 msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
 msgstr ""
 "  (use \"git cherry-pick --abort\" para cancelar a operação de cherry-pick)"
 
-#: wt-status.c:1318
+#: wt-status.c:1445
+#, fuzzy
+msgid "Revert currently in progress."
+msgstr "abortar integração em curso"
+
+#: wt-status.c:1448
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "Está a reverter o commit %s neste comento."
 
-#: wt-status.c:1323
+#: wt-status.c:1454
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (corrija dos conflitos e execute \"git revert --continue\")"
 
-#: wt-status.c:1326
+#: wt-status.c:1457
+#, fuzzy
+msgid "  (run \"git revert --continue\" to continue)"
+msgstr "  (corrija dos conflitos e execute \"git revert --continue\")"
+
+#: wt-status.c:1460
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr ""
 "  (todos os conflitos foram corrigidos: execute \"git revert --continue\")"
 
-#: wt-status.c:1328
+#: wt-status.c:1462
+#, fuzzy
+msgid "  (use \"git revert --skip\" to skip this patch)"
+msgstr "  (use \"git rebase --skip\" para ignorar este patch)"
+
+#: wt-status.c:1464
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (use \"git rever --abort\" para cancelar a operação de reversão)"
 
-#: wt-status.c:1339
+#: wt-status.c:1474
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr "Está a bissetar, iniciado a partir do ramo '%s'."
 
-#: wt-status.c:1343
+#: wt-status.c:1478
 msgid "You are currently bisecting."
 msgstr "Está a bissetar neste momento."
 
-#: wt-status.c:1346
+#: wt-status.c:1481
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr "  (use \"git bisect reset\" para voltar ao ramo original)"
 
-#: wt-status.c:1543
+#: wt-status.c:1492
+#, c-format
+msgid "You are in a sparse checkout with %d%% of tracked files present."
+msgstr ""
+
+#: wt-status.c:1731
 msgid "On branch "
 msgstr "No ramo "
 
-#: wt-status.c:1549
+#: wt-status.c:1738
 msgid "interactive rebase in progress; onto "
 msgstr "rebase interativo em curso; sobre "
 
-#: wt-status.c:1551
+#: wt-status.c:1740
 msgid "rebase in progress; onto "
 msgstr "rebase em curso; sobre "
 
-#: wt-status.c:1556
-msgid "HEAD detached at "
-msgstr "HEAD destacada em "
-
-#: wt-status.c:1558
-msgid "HEAD detached from "
-msgstr "HEAD destacada de "
-
-#: wt-status.c:1561
+#: wt-status.c:1750
 msgid "Not currently on any branch."
 msgstr "Não se encontra em nenhum ramo neste momento."
 
-#: wt-status.c:1579
+#: wt-status.c:1767
 msgid "Initial commit"
 msgstr "Commit inicial"
 
-#: wt-status.c:1593
+#: wt-status.c:1768
+#, fuzzy
+msgid "No commits yet"
+msgstr "nenhum commit analisado."
+
+#: wt-status.c:1782
 msgid "Untracked files"
 msgstr "Ficheiros não controlados"
 
-#: wt-status.c:1595
+#: wt-status.c:1784
 msgid "Ignored files"
 msgstr "Ficheiros ignorados"
 
-#: wt-status.c:1599
+#: wt-status.c:1788
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -4481,32 +9575,32 @@ msgstr ""
 "cuidado de não se esquecer de adicionar novos ficheiros\n"
 "(consulte 'git help status')."
 
-#: wt-status.c:1605
+#: wt-status.c:1794
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "Ficheiros não controlados não listados%s"
 
-#: wt-status.c:1607
+#: wt-status.c:1796
 msgid " (use -u option to show untracked files)"
 msgstr " (use a opção -u para mostrar os ficheiros não controlados)"
 
-#: wt-status.c:1613
+#: wt-status.c:1802
 msgid "No changes"
 msgstr "Sem alterações"
 
-#: wt-status.c:1618
+#: wt-status.c:1807
 #, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
 msgstr ""
 "nenhuma alteração adicionada para submeter (use \"git add\" e/ou \"git "
 "commit -a\")\n"
 
-#: wt-status.c:1621
+#: wt-status.c:1811
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "nenhuma alteração adicionada para submeter\n"
 
-#: wt-status.c:1624
+#: wt-status.c:1815
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
@@ -4515,332 +9609,393 @@ msgstr ""
 "não foi adicionado nada para submeter, mas existem ficheiros não controlados "
 "(use \"git add\" para controlá-los)\n"
 
-#: wt-status.c:1627
+#: wt-status.c:1819
 #, c-format
 msgid "nothing added to commit but untracked files present\n"
 msgstr ""
 "não foi adicionado nada para submeter, mas existem ficheiros não "
 "controlados\n"
 
-#: wt-status.c:1630
+#: wt-status.c:1823
 #, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr ""
 "não há nada para submeter (crie/copie ficheiros e use \"git add\" para "
 "controlá-los)\n"
 
-#: wt-status.c:1633 wt-status.c:1638
+#: wt-status.c:1827 wt-status.c:1833
 #, c-format
 msgid "nothing to commit\n"
 msgstr "não há nada para submeter\n"
 
-#: wt-status.c:1636
+#: wt-status.c:1830
 #, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
 msgstr ""
 "não há nada para submeter (use -u para mostrar os ficheiros não "
 "controlados)\n"
 
-#: wt-status.c:1640
+#: wt-status.c:1835
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr "não há nada para submeter, árvore de trabalho limpa\n"
 
-#: wt-status.c:1749
-msgid "Initial commit on "
-msgstr "Commit inicial em "
+#: wt-status.c:1940
+#, fuzzy
+msgid "No commits yet on "
+msgstr "Nenhum comando concluído."
 
-#: wt-status.c:1753
+#: wt-status.c:1944
 msgid "HEAD (no branch)"
 msgstr "HEAD (nenhum ramo)"
 
-#: wt-status.c:1782 wt-status.c:1790
+#: wt-status.c:1975
+msgid "different"
+msgstr ""
+
+#: wt-status.c:1977 wt-status.c:1985
 msgid "behind "
 msgstr "atrás "
 
-#: wt-status.c:1785 wt-status.c:1788
+#: wt-status.c:1980 wt-status.c:1983
 msgid "ahead "
 msgstr "à frente "
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2280
+#: wt-status.c:2505
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr "não é possível efetuar %s: tem alterações não preparadas."
 
-#: wt-status.c:2286
+#: wt-status.c:2511
 msgid "additionally, your index contains uncommitted changes."
 msgstr "além disso, o índice contém alterações não submetidas."
 
-#: wt-status.c:2288
+#: wt-status.c:2513
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr "não é possível efetuar %s: o índice contém alterações não submetidas."
 
-#: compat/precompose_utf8.c:57 builtin/clone.c:432
+#: compat/precompose_utf8.c:58 builtin/clone.c:456
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "falha ao invocar unlink de '%s'"
 
-#: builtin/add.c:22
+#: builtin/add.c:26
 msgid "git add [<options>] [--] <pathspec>..."
 msgstr "git add [<opções>] [--] <caminho>..."
 
-#: builtin/add.c:80
+#: builtin/add.c:88
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "diff status inesperado %c"
 
-#: builtin/add.c:85 builtin/commit.c:291
+#: builtin/add.c:93 builtin/commit.c:285
 msgid "updating files failed"
 msgstr "falha ao atualizar os ficheiros"
 
-#: builtin/add.c:95
+#: builtin/add.c:103
 #, c-format
 msgid "remove '%s'\n"
 msgstr "remover '%s'\n"
 
-#: builtin/add.c:149
+#: builtin/add.c:178
 msgid "Unstaged changes after refreshing the index:"
 msgstr "Alterações não preparadas depois de atualizar o índice:"
 
-#: builtin/add.c:209 builtin/rev-parse.c:872
+#: builtin/add.c:272 builtin/rev-parse.c:904
 msgid "Could not read the index"
 msgstr "Não foi possível ler o índice"
 
-#: builtin/add.c:220
+#: builtin/add.c:283
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Não foi possível abrir '%s' para escrita."
 
-#: builtin/add.c:224
+#: builtin/add.c:287
 msgid "Could not write patch"
 msgstr "Não foi possível escrever patch"
 
-#: builtin/add.c:227
+#: builtin/add.c:290
 msgid "editing patch failed"
 msgstr "falha ao editar patch"
 
-#: builtin/add.c:230
+#: builtin/add.c:293
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "Não foi possível obter stat de '%s'"
 
-#: builtin/add.c:232
+#: builtin/add.c:295
 msgid "Empty patch. Aborted."
 msgstr "Patch vazio. Abortado."
 
-#: builtin/add.c:237
+#: builtin/add.c:300
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "Não foi possível aplicar '%s'"
 
-#: builtin/add.c:247
+#: builtin/add.c:308
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr "Os seguintes caminhos estão ignorados por algum ficheiro .gitignore:\n"
 
-#: builtin/add.c:266 builtin/clean.c:876 builtin/fetch.c:115 builtin/mv.c:123
-#: builtin/prune-packed.c:55 builtin/pull.c:198 builtin/push.c:524
-#: builtin/remote.c:1328 builtin/rm.c:241 builtin/send-pack.c:163
+#: builtin/add.c:328 builtin/clean.c:904 builtin/fetch.c:166 builtin/mv.c:124
+#: builtin/prune-packed.c:14 builtin/pull.c:204 builtin/push.c:538
+#: builtin/remote.c:1422 builtin/rm.c:242 builtin/send-pack.c:184
 msgid "dry run"
 msgstr "simular ação"
 
-#: builtin/add.c:269
+#: builtin/add.c:331
 msgid "interactive picking"
 msgstr "seleção interativa"
 
-#: builtin/add.c:270 builtin/checkout.c:1177 builtin/reset.c:286
+#: builtin/add.c:332 builtin/checkout.c:1529 builtin/reset.c:308
 msgid "select hunks interactively"
 msgstr "selecionar blocos interativamente"
 
-#: builtin/add.c:271
+#: builtin/add.c:333
 msgid "edit current diff and apply"
 msgstr "editar o diff atual e aplicá-lo"
 
-#: builtin/add.c:272
+#: builtin/add.c:334
 msgid "allow adding otherwise ignored files"
 msgstr "permitir adicionar ficheiros ignorados"
 
-#: builtin/add.c:273
+#: builtin/add.c:335
 msgid "update tracked files"
 msgstr "atualizar ficheiros controlados"
 
-#: builtin/add.c:274
+#: builtin/add.c:336
+msgid "renormalize EOL of tracked files (implies -u)"
+msgstr ""
+
+#: builtin/add.c:337
 msgid "record only the fact that the path will be added later"
 msgstr "registar apenas o facto de que o caminho será adicionado mais tarde"
 
-#: builtin/add.c:275
+#: builtin/add.c:338
 msgid "add changes from all tracked and untracked files"
 msgstr ""
 "adicionar alterações de todos os ficheiros controlados ou não controlados"
 
-#: builtin/add.c:278
+#: builtin/add.c:341
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr ""
 "ignorar caminhos removidos na árvore de trabalho (o mesmo que --no-all)"
 
-#: builtin/add.c:280
+#: builtin/add.c:343
 msgid "don't add, only refresh the index"
 msgstr "não adicionar, apenas atualizar o índice"
 
-#: builtin/add.c:281
+#: builtin/add.c:344
 msgid "just skip files which cannot be added because of errors"
 msgstr "ignorar ficheiros que não podem ser adicionados por causa de erros"
 
-#: builtin/add.c:282
+#: builtin/add.c:345
 msgid "check if - even missing - files are ignored in dry run"
 msgstr "verificar quais os ficheiros ignorados na simulação"
 
-#: builtin/add.c:283 builtin/update-index.c:951
-msgid "(+/-)x"
-msgstr "(+/-)x"
-
-#: builtin/add.c:283 builtin/update-index.c:952
+#: builtin/add.c:347 builtin/update-index.c:1004
 msgid "override the executable bit of the listed files"
 msgstr "substituir o bit executável dos ficheiros listados"
 
-#: builtin/add.c:305
+#: builtin/add.c:349
+#, fuzzy
+msgid "warn when adding an embedded repository"
+msgstr "criar um repositório nu"
+
+#: builtin/add.c:351
+msgid "backend for `git stash -p`"
+msgstr ""
+
+#: builtin/add.c:369
 #, c-format
-msgid "Use -f if you really want to add them.\n"
-msgstr "Use -f se deseja mesmo adicioná-los.\n"
+msgid ""
+"You've added another git repository inside your current repository.\n"
+"Clones of the outer repository will not contain the contents of\n"
+"the embedded repository and will not know how to obtain it.\n"
+"If you meant to add a submodule, use:\n"
+"\n"
+"\tgit submodule add <url> %s\n"
+"\n"
+"If you added this path by mistake, you can remove it from the\n"
+"index with:\n"
+"\n"
+"\tgit rm --cached %s\n"
+"\n"
+"See \"git help submodule\" for more information."
+msgstr ""
 
-#: builtin/add.c:312
+#: builtin/add.c:397
+#, fuzzy, c-format
+msgid "adding embedded git repository: %s"
+msgstr "--stdin requer um repositório git"
+
+#: builtin/add.c:416
+msgid ""
+"Use -f if you really want to add them.\n"
+"Turn this message off by running\n"
+"\"git config advice.addIgnoredFile false\""
+msgstr ""
+
+#: builtin/add.c:425
 msgid "adding files failed"
 msgstr "falha ao adicionar ficheiros"
 
-#: builtin/add.c:348
+#: builtin/add.c:453 builtin/commit.c:345
+#, fuzzy
+msgid "--pathspec-from-file is incompatible with --interactive/--patch"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/add.c:470
+#, fuzzy
+msgid "--pathspec-from-file is incompatible with --edit"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/add.c:482
 msgid "-A and -u are mutually incompatible"
 msgstr "-A e -u são mutuamente incompatíveis"
 
-#: builtin/add.c:355
+#: builtin/add.c:485
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr "A opção --ignore-missing só pode ser usada em conjunto com --dry-run"
 
-#: builtin/add.c:359
+#: builtin/add.c:489
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "o parâmetro '%s' de --chmod tem de ser -x ou +x"
 
-#: builtin/add.c:374
+#: builtin/add.c:507 builtin/checkout.c:1697 builtin/commit.c:351
+#: builtin/reset.c:328 builtin/rm.c:272 builtin/stash.c:1503
+#, fuzzy
+msgid "--pathspec-from-file is incompatible with pathspec arguments"
+msgstr "--patch é incompatível com --{hard,mixed,soft}"
+
+#: builtin/add.c:514 builtin/checkout.c:1709 builtin/commit.c:357
+#: builtin/reset.c:334 builtin/rm.c:278 builtin/stash.c:1509
+msgid "--pathspec-file-nul requires --pathspec-from-file"
+msgstr ""
+
+#: builtin/add.c:518
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr "Não foi especificado nada, nada adicionado.\n"
 
-#: builtin/add.c:375
-#, c-format
-msgid "Maybe you wanted to say 'git add .'?\n"
-msgstr "Queria dizer 'git add .'?\n"
+#: builtin/add.c:520
+msgid ""
+"Maybe you wanted to say 'git add .'?\n"
+"Turn this message off by running\n"
+"\"git config advice.addEmptyPathspec false\""
+msgstr ""
 
-#: builtin/add.c:380 builtin/check-ignore.c:172 builtin/checkout.c:298
-#: builtin/checkout.c:491 builtin/clean.c:920 builtin/commit.c:350
-#: builtin/mv.c:143 builtin/reset.c:235 builtin/rm.c:271
-#: builtin/submodule--helper.c:244
-msgid "index file corrupt"
-msgstr "ficheiro de índice corrompido"
+#: builtin/am.c:160
+#, fuzzy, c-format
+msgid "invalid committer: %s"
+msgstr "commit inválido %s"
 
-#: builtin/am.c:414
+#: builtin/am.c:366
 msgid "could not parse author script"
 msgstr "não foi possível analisar o autor do script"
 
-#: builtin/am.c:491
+#: builtin/am.c:450
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr "'%s' foi eliminado pelo hook applypatch-msg"
 
-#: builtin/am.c:532
+#: builtin/am.c:492
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Linha de entrada malformada: '%s'."
 
-#: builtin/am.c:569
+#: builtin/am.c:530
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Falha ao copiar notas de '%s' para '%s'"
 
-#: builtin/am.c:595
+#: builtin/am.c:556
 msgid "fseek failed"
 msgstr "falha ao invocar fseek"
 
-#: builtin/am.c:775
+#: builtin/am.c:744
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "não foi possível analisar o patch '%s'"
 
-#: builtin/am.c:840
+#: builtin/am.c:809
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "Só pode ser aplicada uma série de patches StGIT duma só vez"
 
-#: builtin/am.c:887
+#: builtin/am.c:857
 msgid "invalid timestamp"
 msgstr "carimbo de data/hora inválido"
 
-#: builtin/am.c:890 builtin/am.c:898
+#: builtin/am.c:862 builtin/am.c:874
 msgid "invalid Date line"
 msgstr "linha de Data inválida"
 
-#: builtin/am.c:895
+#: builtin/am.c:869
 msgid "invalid timezone offset"
 msgstr "mudança de fuso horário inválida"
 
-#: builtin/am.c:984
+#: builtin/am.c:962
 msgid "Patch format detection failed."
 msgstr "Falha ao detetar o formato do patch."
 
-#: builtin/am.c:989 builtin/clone.c:397
+#: builtin/am.c:967 builtin/clone.c:409
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "falha ao criar o diretório '%s'"
 
-#: builtin/am.c:993
+#: builtin/am.c:972
 msgid "Failed to split patches."
 msgstr "Falha ao dividir patches."
 
-#: builtin/am.c:1125 builtin/commit.c:376
-msgid "unable to write index file"
-msgstr "não é possível escrever o ficheiro de índice"
-
-#: builtin/am.c:1176
+#: builtin/am.c:1103
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr "Após resolver este problema, execute \"%s --continue\"."
 
-#: builtin/am.c:1177
+#: builtin/am.c:1104
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr "Se preferir ignorar este patch, execute \"%s --skip\"."
 
-#: builtin/am.c:1178
+#: builtin/am.c:1105
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr ""
 "Para restaurar o ramo original e interromper a aplicação dos patches, "
 "execute \"%s --abort\"."
 
-#: builtin/am.c:1316
-msgid "Patch is empty. Was it split wrong?"
-msgstr "O patch está vazio. Foi dividido incorretamente?"
+#: builtin/am.c:1188
+msgid "Patch sent with format=flowed; space at the end of lines might be lost."
+msgstr ""
 
-#: builtin/am.c:1390 builtin/log.c:1557
-#, c-format
-msgid "invalid ident line: %s"
-msgstr "linha de identidade inválida: %s"
+#: builtin/am.c:1216
+#, fuzzy
+msgid "Patch is empty."
+msgstr "O patch atual está vazio."
 
-#: builtin/am.c:1417
-#, c-format
-msgid "unable to parse commit %s"
-msgstr "não foi possível analisar o commit %s"
+#: builtin/am.c:1281
+#, fuzzy, c-format
+msgid "missing author line in commit %s"
+msgstr "Autor em falta: %s"
+
+#: builtin/am.c:1284
+#, fuzzy, c-format
+msgid "invalid ident line: %.*s"
+msgstr "linha de identidade inválida: %s"
 
-#: builtin/am.c:1610
+#: builtin/am.c:1503
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr ""
 "O repositório não tem os blobs necessários para recorrer a integração com 3 "
 "pontos."
 
-#: builtin/am.c:1612
+#: builtin/am.c:1505
 msgid "Using index info to reconstruct a base tree..."
 msgstr "A usar informação do índice para reconstruir uma árvore de base..."
 
-#: builtin/am.c:1631
+#: builtin/am.c:1524
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -4848,41 +10003,26 @@ msgstr ""
 "Editou o patch manualmente?\n"
 "Não é possível aplicá-lo aos blobs registados no índice."
 
-#: builtin/am.c:1637
+#: builtin/am.c:1530
 msgid "Falling back to patching base and 3-way merge..."
 msgstr ""
 "A recorrer a uma de base para aplicação de patches e integração com 3 "
 "pontos..."
 
-#: builtin/am.c:1662
+#: builtin/am.c:1556
 msgid "Failed to merge in the changes."
 msgstr "Falha ao integrar as alterações."
 
-#: builtin/am.c:1686 builtin/merge.c:631
-msgid "git write-tree failed to write a tree"
-msgstr "git write-tree falhou ao escrever uma árvore"
-
-#: builtin/am.c:1693
+#: builtin/am.c:1588
 msgid "applying to an empty history"
 msgstr "a aplicar a um histórico vazio"
 
-#: builtin/am.c:1706 builtin/commit.c:1764 builtin/merge.c:802
-#: builtin/merge.c:827
-msgid "failed to write commit object"
-msgstr "falha ao escrever objeto de commit"
-
-#: builtin/am.c:1739 builtin/am.c:1743
+#: builtin/am.c:1639 builtin/am.c:1643
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "não é possível continuar: %s não existe."
 
-#: builtin/am.c:1759
-msgid "cannot be interactive without stdin connected to a terminal."
-msgstr ""
-"não é possível entrar em modo interativo sem um entrada padrão conectada a "
-"um terminal."
-
-#: builtin/am.c:1764
+#: builtin/am.c:1661
 msgid "Commit Body is:"
 msgstr "Corpo do commit:"
 
@@ -4890,35 +10030,39 @@ msgstr "Corpo do commit:"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1774
+#: builtin/am.c:1671
+#, c-format
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr "Aplicar? [y]sim/[n]ão/[e]ditar/[v]er patch/[a]ceitar todos: "
 
-#: builtin/am.c:1824
+#: builtin/am.c:1717 builtin/commit.c:395
+msgid "unable to write index file"
+msgstr "não é possível escrever o ficheiro de índice"
+
+#: builtin/am.c:1721
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Índice modificado: não é possível aplicar patches (modificado: %s)"
 
-#: builtin/am.c:1861 builtin/am.c:1933
+#: builtin/am.c:1761 builtin/am.c:1829
 #, c-format
 msgid "Applying: %.*s"
 msgstr "A aplicar: %.*s"
 
-#: builtin/am.c:1877
+#: builtin/am.c:1778
 msgid "No changes -- Patch already applied."
 msgstr "Nenhuma alteração -- Já foi aplicado o patch."
 
-#: builtin/am.c:1885
+#: builtin/am.c:1784
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "Falha ao aplicar o patch em %s %.*s"
 
-#: builtin/am.c:1891
-#, c-format
-msgid "The copy of the patch that failed is found in: %s"
-msgstr "A cópia do patch que falhou encontra-se em: %s"
+#: builtin/am.c:1788
+msgid "Use 'git am --show-current-patch=diff' to see the failed patch"
+msgstr ""
 
-#: builtin/am.c:1936
+#: builtin/am.c:1832
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -4928,25 +10072,25 @@ msgstr ""
 "Se não há nada por preparar, provavelmente essas mesmas alterações\n"
 "já foram introduzidas; pode querer ignorar este patch."
 
-#: builtin/am.c:1943
+#: builtin/am.c:1839
 msgid ""
 "You still have unmerged paths in your index.\n"
-"Did you forget to use 'git add'?"
+"You should 'git add' each file with resolved conflicts to mark them as "
+"such.\n"
+"You might run `git rm` on a file to accept \"deleted by them\" for it."
 msgstr ""
-"Ainda há caminhos não integrados no índice.\n"
-"Esqueceu-se de usar 'git add'?"
 
-#: builtin/am.c:2051 builtin/am.c:2055 builtin/am.c:2067 builtin/reset.c:308
-#: builtin/reset.c:316
+#: builtin/am.c:1946 builtin/am.c:1950 builtin/am.c:1962 builtin/reset.c:347
+#: builtin/reset.c:355
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Não foi possível analisar o objeto '%s'."
 
-#: builtin/am.c:2103
+#: builtin/am.c:1998
 msgid "failed to clean index"
 msgstr "falha ao limpar o índice"
 
-#: builtin/am.c:2137
+#: builtin/am.c:2042
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -4954,134 +10098,157 @@ msgstr ""
 "Parece que a HEAD foi movida desde a última vez que o 'am' falhou.\n"
 "Não recuando a ORIG_HEAD"
 
-#: builtin/am.c:2200
+#: builtin/am.c:2149
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Valor inválido de --patch-format: %s"
 
-#: builtin/am.c:2233
+#: builtin/am.c:2191
+#, fuzzy, c-format
+msgid "Invalid value for --show-current-patch: %s"
+msgstr "Valor inválido de --patch-format: %s"
+
+#: builtin/am.c:2195
+#, fuzzy, c-format
+msgid "--show-current-patch=%s is incompatible with --show-current-patch=%s"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/am.c:2226
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<opções>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/am.c:2234
+#: builtin/am.c:2227
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<opções>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2240
+#: builtin/am.c:2233
 msgid "run interactively"
 msgstr "executar interativamente"
 
-#: builtin/am.c:2242
+#: builtin/am.c:2235
 msgid "historical option -- no-op"
 msgstr "opção histórica -- sem-ação"
 
-#: builtin/am.c:2244
+#: builtin/am.c:2237
 msgid "allow fall back on 3way merging if needed"
 msgstr "permitir recorrer a integração com 3 pontos se necessário"
 
-#: builtin/am.c:2245 builtin/init-db.c:483 builtin/prune-packed.c:57
-#: builtin/repack.c:178
+#: builtin/am.c:2238 builtin/init-db.c:558 builtin/prune-packed.c:16
+#: builtin/repack.c:309 builtin/stash.c:816
 msgid "be quiet"
 msgstr "silencioso"
 
-#: builtin/am.c:2247
+#: builtin/am.c:2240
 msgid "add a Signed-off-by line to the commit message"
 msgstr "adicionar uma linha com Signed-of-by no fim da mensagem de commit"
 
-#: builtin/am.c:2250
+#: builtin/am.c:2243
 msgid "recode into utf8 (default)"
 msgstr "recodificar em utf8 (predefinição)"
 
-#: builtin/am.c:2252
+#: builtin/am.c:2245
 msgid "pass -k flag to git-mailinfo"
 msgstr "passar a opção -k ao git-mailinfo"
 
-#: builtin/am.c:2254
+#: builtin/am.c:2247
 msgid "pass -b flag to git-mailinfo"
 msgstr "passar a opção -b ao git-mailinfo"
 
-#: builtin/am.c:2256
+#: builtin/am.c:2249
 msgid "pass -m flag to git-mailinfo"
 msgstr "passar a opção -m ao git-mailinfo"
 
-#: builtin/am.c:2258
+#: builtin/am.c:2251
 msgid "pass --keep-cr flag to git-mailsplit for mbox format"
 msgstr "passar a opção --keep-cr ao gitmailsplit para formato de mbox"
 
-#: builtin/am.c:2261
+#: builtin/am.c:2254
 msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
 "não passar a opção --keep-cr ao git-mailsplit independentemente de am.keepcr"
 
-#: builtin/am.c:2264
+#: builtin/am.c:2257
 msgid "strip everything before a scissors line"
 msgstr "retirar todo o conteúdo antes da linha de tesoura"
 
-#: builtin/am.c:2266 builtin/am.c:2269 builtin/am.c:2272 builtin/am.c:2275
-#: builtin/am.c:2278 builtin/am.c:2281 builtin/am.c:2284 builtin/am.c:2287
-#: builtin/am.c:2293
+#: builtin/am.c:2259 builtin/am.c:2262 builtin/am.c:2265 builtin/am.c:2268
+#: builtin/am.c:2271 builtin/am.c:2274 builtin/am.c:2277 builtin/am.c:2280
+#: builtin/am.c:2286
 msgid "pass it through git-apply"
 msgstr "transmitir ao git-apply"
 
-#: builtin/am.c:2283 builtin/fmt-merge-msg.c:662 builtin/fmt-merge-msg.c:665
-#: builtin/grep.c:1045 builtin/merge.c:201 builtin/pull.c:135
-#: builtin/pull.c:194 builtin/repack.c:187 builtin/repack.c:191
-#: builtin/show-branch.c:637 builtin/show-ref.c:169 builtin/tag.c:398
-#: parse-options.h:132 parse-options.h:134 parse-options.h:245
+#: builtin/am.c:2276 builtin/commit.c:1395 builtin/fmt-merge-msg.c:17
+#: builtin/fmt-merge-msg.c:20 builtin/grep.c:892 builtin/merge.c:251
+#: builtin/pull.c:141 builtin/pull.c:200 builtin/pull.c:217
+#: builtin/rebase.c:1335 builtin/repack.c:320 builtin/repack.c:324
+#: builtin/repack.c:326 builtin/show-branch.c:650 builtin/show-ref.c:172
+#: builtin/tag.c:404 parse-options.h:154 parse-options.h:175
+#: parse-options.h:316
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2289 builtin/branch.c:592 builtin/for-each-ref.c:37
-#: builtin/replace.c:442 builtin/tag.c:433 builtin/verify-tag.c:38
+#: builtin/am.c:2282 builtin/branch.c:659 builtin/bugreport.c:135
+#: builtin/for-each-ref.c:38 builtin/replace.c:556 builtin/tag.c:438
+#: builtin/verify-tag.c:38
 msgid "format"
 msgstr "formato"
 
-#: builtin/am.c:2290
+#: builtin/am.c:2283
 msgid "format the patch(es) are in"
 msgstr "formato de apresentação de patches"
 
-#: builtin/am.c:2296
+#: builtin/am.c:2289
 msgid "override error message when patch failure occurs"
 msgstr "substituir a mensagem de erro quando a aplicação do patch falha"
 
-#: builtin/am.c:2298
+#: builtin/am.c:2291
 msgid "continue applying patches after resolving a conflict"
 msgstr "continuar a aplicar os patches depois de resolver os conflitos"
 
-#: builtin/am.c:2301
+#: builtin/am.c:2294
 msgid "synonyms for --continue"
 msgstr "sinónimo de --continue"
 
-#: builtin/am.c:2304
+#: builtin/am.c:2297
 msgid "skip the current patch"
 msgstr "ignorar o patch atual"
 
-#: builtin/am.c:2307
+#: builtin/am.c:2300
 msgid "restore the original branch and abort the patching operation."
 msgstr "restaurar o ramo original e abortar a operação de patch."
 
-#: builtin/am.c:2311
+#: builtin/am.c:2303
+msgid "abort the patching operation but keep HEAD where it is."
+msgstr ""
+
+#: builtin/am.c:2307
+#, fuzzy
+msgid "show the patch being applied"
+msgstr "mostrar linhas não correspondidas"
+
+#: builtin/am.c:2312
 msgid "lie about committer date"
 msgstr "mentir sobre a data de commit"
 
-#: builtin/am.c:2313
+#: builtin/am.c:2314
 msgid "use current timestamp for author date"
 msgstr "usar a data e hora atual como data de autor"
 
-#: builtin/am.c:2315 builtin/commit.c:1600 builtin/merge.c:232
-#: builtin/pull.c:165 builtin/revert.c:111 builtin/tag.c:413
+#: builtin/am.c:2316 builtin/commit-tree.c:120 builtin/commit.c:1515
+#: builtin/merge.c:288 builtin/pull.c:175 builtin/rebase.c:530
+#: builtin/rebase.c:1388 builtin/revert.c:117 builtin/tag.c:419
 msgid "key-id"
 msgstr "id-chave"
 
-#: builtin/am.c:2316
+#: builtin/am.c:2317 builtin/rebase.c:531 builtin/rebase.c:1389
 msgid "GPG-sign commits"
 msgstr "assinar os commits com GPG"
 
-#: builtin/am.c:2319
+#: builtin/am.c:2320
 msgid "(internal use for git-rebase)"
 msgstr "(uso interno de git-rebase)"
 
-#: builtin/am.c:2334
+#: builtin/am.c:2338
 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."
@@ -5089,17 +10256,17 @@ msgstr ""
 "A opção -b/--binary há muito que é ignorada e será\n"
 "futuramente removida. Por favor não a use."
 
-#: builtin/am.c:2341
+#: builtin/am.c:2345
 msgid "failed to read the index"
 msgstr "falha ao ler o índice"
 
-#: builtin/am.c:2356
+#: builtin/am.c:2360
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr ""
 "o diretório de rebesa anterior %s ainda existe, mas foi fornecida uma mbox."
 
-#: builtin/am.c:2380
+#: builtin/am.c:2384
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -5108,10 +10275,14 @@ msgstr ""
 "Diretório abandonado %s encontrado.\n"
 "Use \"git am --abort\" para o remover."
 
-#: builtin/am.c:2386
+#: builtin/am.c:2390
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr "A operação de resolução não está em curso, não retomando."
 
+#: builtin/am.c:2400
+msgid "interactive mode requires patches on the command line"
+msgstr ""
+
 #: builtin/apply.c:8
 msgid "git apply [<options>] [<patch>...]"
 msgstr "git apply [<opções>] [<patch>...]"
@@ -5129,230 +10300,593 @@ msgstr "não foi possível redirecionar a saída"
 msgid "git archive: Remote with no URL"
 msgstr "git archive: Remoto sem URL"
 
-#: builtin/archive.c:58
-msgid "git archive: expected ACK/NAK, got EOF"
+#: builtin/archive.c:61
+#, fuzzy
+msgid "git archive: expected ACK/NAK, got a flush packet"
 msgstr "git archive: esperava-se ACK/NAK, obteve-se EOF"
 
-#: builtin/archive.c:61
+#: builtin/archive.c:64
 #, c-format
 msgid "git archive: NACK %s"
 msgstr "git archive: NACK %s"
 
-#: builtin/archive.c:63
-#, c-format
-msgid "remote error: %s"
-msgstr "erro remoto: %s"
-
-#: builtin/archive.c:64
+#: builtin/archive.c:65
 msgid "git archive: protocol error"
 msgstr "git archive: erro de protocolo"
 
-#: builtin/archive.c:68
+#: builtin/archive.c:69
 msgid "git archive: expected a flush"
 msgstr "git archive: esvaziamento de cache (flush) esperado"
 
-#: builtin/bisect--helper.c:7
-msgid "git bisect--helper --next-all [--no-checkout]"
+#: builtin/bisect--helper.c:23
+#, fuzzy
+msgid "git bisect--helper --next-all"
+msgstr "git bisect--helper --next-all [--no-checkout]"
+
+#: builtin/bisect--helper.c:24
+msgid "git bisect--helper --write-terms <bad_term> <good_term>"
+msgstr ""
+
+#: builtin/bisect--helper.c:25
+#, fuzzy
+msgid "git bisect--helper --bisect-clean-state"
+msgstr "git bisect--helper --next-all [--no-checkout]"
+
+#: builtin/bisect--helper.c:26
+#, fuzzy
+msgid "git bisect--helper --bisect-reset [<commit>]"
+msgstr "git bisect--helper --next-all [--no-checkout]"
+
+#: builtin/bisect--helper.c:27
+msgid ""
+"git bisect--helper --bisect-write [--no-log] <state> <revision> <good_term> "
+"<bad_term>"
+msgstr ""
+
+#: builtin/bisect--helper.c:28
+msgid ""
+"git bisect--helper --bisect-check-and-set-terms <command> <good_term> "
+"<bad_term>"
+msgstr ""
+
+#: builtin/bisect--helper.c:29
+msgid "git bisect--helper --bisect-next-check <good_term> <bad_term> [<term>]"
+msgstr ""
+
+#: builtin/bisect--helper.c:30
+#, fuzzy
+msgid ""
+"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
+"term-new]"
+msgstr ""
+"argumento inválido $arg de 'git bisect terms'.\n"
+"Opções suportadas: --term-good|--term-old e --term-bad|--term-new."
+
+#: builtin/bisect--helper.c:31
+msgid ""
+"git bisect--helper --bisect-start [--term-{new,bad}=<term> --term-{old,good}"
+"=<term>] [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] "
+"[<paths>...]"
+msgstr ""
+
+#: builtin/bisect--helper.c:33
+#, fuzzy
+msgid "git bisect--helper --bisect-next"
+msgstr "git bisect--helper --next-all [--no-checkout]"
+
+#: builtin/bisect--helper.c:34
+#, fuzzy
+msgid "git bisect--helper --bisect-auto-next"
 msgstr "git bisect--helper --next-all [--no-checkout]"
 
-#: builtin/bisect--helper.c:17
+#: builtin/bisect--helper.c:35
+#, fuzzy
+msgid "git bisect--helper --bisect-autostart"
+msgstr "git bisect--helper --next-all [--no-checkout]"
+
+#: builtin/bisect--helper.c:97
+#, fuzzy, c-format
+msgid "cannot open file '%s' in mode '%s'"
+msgstr "não é possível abrir o ficheiro '%s'"
+
+#: builtin/bisect--helper.c:104
+#, fuzzy, c-format
+msgid "could not write to file '%s'"
+msgstr "não foi possível escrever em '%s'"
+
+#: builtin/bisect--helper.c:143
+#, fuzzy, c-format
+msgid "'%s' is not a valid term"
+msgstr "'%s' não é uma referência válida."
+
+#: builtin/bisect--helper.c:147
+#, fuzzy, c-format
+msgid "can't use the builtin command '%s' as a term"
+msgstr "não é possível usar o comando '$term' como um termo"
+
+#: builtin/bisect--helper.c:157
+#, fuzzy, c-format
+msgid "can't change the meaning of the term '%s'"
+msgstr "não é possível alterar o significado do termo '$term'"
+
+#: builtin/bisect--helper.c:167
+msgid "please use two different terms"
+msgstr "use dois termos diferentes"
+
+#: builtin/bisect--helper.c:207
+#, fuzzy, c-format
+msgid "We are not bisecting.\n"
+msgstr "Não se está a bissetar."
+
+#: builtin/bisect--helper.c:215
+#, fuzzy, c-format
+msgid "'%s' is not a valid commit"
+msgstr "'%s' não é um commit"
+
+#: builtin/bisect--helper.c:224
+#, fuzzy, c-format
+msgid ""
+"could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
+msgstr ""
+"Não foi possível extrair a HEAD original de '$branch'.\n"
+"Tente 'git bisect reset <commit>'."
+
+#: builtin/bisect--helper.c:268
+#, fuzzy, c-format
+msgid "Bad bisect_write argument: %s"
+msgstr "Argumento de bisect_write incorreto: $state"
+
+#: builtin/bisect--helper.c:273
+#, fuzzy, c-format
+msgid "couldn't get the oid of the rev '%s'"
+msgstr "não foi possível criar o diretório de árvore de trabalho '%s'"
+
+#: builtin/bisect--helper.c:285
+#, fuzzy, c-format
+msgid "couldn't open the file '%s'"
+msgstr "Não foi possível abrir o ficheiro '%s'"
+
+#: builtin/bisect--helper.c:311
+#, fuzzy, c-format
+msgid "Invalid command: you're currently in a %s/%s bisect"
+msgstr ""
+"Comando inválido: está-se a bissetar usando os termos $TERM_BAD/$TERM_GOOD."
+
+#: builtin/bisect--helper.c:338
+#, fuzzy, 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 ""
+"Deve indicar pelo menos uma revisão $bad_syn e uma revisão $good_syn.\n"
+"(Pode usar \"git bisect $bad_syn\" e \"git bisect $good_syn\" para esse fim.)"
+
+#: builtin/bisect--helper.c:342
+#, fuzzy, 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 ""
+"Deve começar por executar \"git bisect start\".\n"
+"Indique pelo menos uma revisão $good_syn e uma revisão $bad_syn.\n"
+"(Pode usar \"git bisect $bad_syn\" e \"git bisect $good_syn\" para esse fim.)"
+
+#: builtin/bisect--helper.c:362
+#, fuzzy, c-format
+msgid "bisecting only with a %s commit"
+msgstr "Aviso: a bissetar só com um commit $TERM_BAD."
+
+#. 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:370
+msgid "Are you sure [Y/n]? "
+msgstr "Tem a certeza [Y/n]? "
+
+#: builtin/bisect--helper.c:431
+msgid "no terms defined"
+msgstr "nenhum termo definido"
+
+#: builtin/bisect--helper.c:434
+#, c-format
+msgid ""
+"Your current terms are %s for the old state\n"
+"and %s for the new state.\n"
+msgstr ""
+
+#: builtin/bisect--helper.c:444
+#, fuzzy, c-format
+msgid ""
+"invalid argument %s for 'git bisect terms'.\n"
+"Supported options are: --term-good|--term-old and --term-bad|--term-new."
+msgstr ""
+"argumento inválido $arg de 'git bisect terms'.\n"
+"Opções suportadas: --term-good|--term-old e --term-bad|--term-new."
+
+#: builtin/bisect--helper.c:511
+#, fuzzy
+msgid "revision walk setup failed\n"
+msgstr "falha ao configurar percurso de revisões"
+
+#: builtin/bisect--helper.c:533
+#, fuzzy, c-format
+msgid "could not open '%s' for appending"
+msgstr "não foi possível abrir '%s' para leitura"
+
+#: builtin/bisect--helper.c:651 builtin/bisect--helper.c:664
+#, fuzzy
+msgid "'' is not a valid term"
+msgstr "'$term' não é um termo válido"
+
+#: builtin/bisect--helper.c:674
+#, fuzzy, c-format
+msgid "unrecognized option: '%s'"
+msgstr "posição não reconhecida:%s"
+
+#: builtin/bisect--helper.c:678
+#, fuzzy, c-format
+msgid "'%s' does not appear to be a valid revision"
+msgstr "'$arg' não parecer ser uma revisão válida"
+
+#: builtin/bisect--helper.c:709
+#, fuzzy
+msgid "bad HEAD - I need a HEAD"
+msgstr "HEAD incorreta - é necessário uma HEAD"
+
+#: builtin/bisect--helper.c:724
+#, fuzzy, c-format
+msgid "checking out '%s' failed. Try 'git bisect start <valid-branch>'."
+msgstr ""
+"Falha ao extrair '$start_head'. Tente 'git bisect reset <ramo-válido>'."
+
+#: builtin/bisect--helper.c:745
+msgid "won't bisect on cg-seek'ed tree"
+msgstr "não é possível bissetar numa árvore \"cg-seek'ed\""
+
+#: builtin/bisect--helper.c:748
+#, fuzzy
+msgid "bad HEAD - strange symbolic ref"
+msgstr "HEAD incorreta - referência simbólica desconhecida"
+
+#: builtin/bisect--helper.c:775
+#, fuzzy, c-format
+msgid "invalid ref: '%s'"
+msgstr "ficheiro inválido: '%s'"
+
+#: builtin/bisect--helper.c:827
+#, fuzzy
+msgid "You need to start by \"git bisect start\"\n"
+msgstr "Deve começar por executar \"git bisect start\""
+
+#. 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:838
+msgid "Do you want me to do it for you [Y/n]? "
+msgstr "Quer que o Git o faça por si [Y/n]? "
+
+#: builtin/bisect--helper.c:866
 msgid "perform 'git bisect next'"
 msgstr "executar 'git bisect next'"
 
-#: builtin/bisect--helper.c:19
-msgid "update BISECT_HEAD instead of checking out the current commit"
-msgstr "atualizar BISECT_HEAD em vez de extrair o commit atual"
+#: builtin/bisect--helper.c:868
+msgid "write the terms to .git/BISECT_TERMS"
+msgstr ""
+
+#: builtin/bisect--helper.c:870
+msgid "cleanup the bisection state"
+msgstr ""
+
+#: builtin/bisect--helper.c:872
+msgid "check for expected revs"
+msgstr ""
+
+#: builtin/bisect--helper.c:874
+#, fuzzy
+msgid "reset the bisection state"
+msgstr "remover uma secção: nome"
+
+#: builtin/bisect--helper.c:876
+msgid "write out the bisection state in BISECT_LOG"
+msgstr ""
+
+#: builtin/bisect--helper.c:878
+msgid "check and set terms in a bisection state"
+msgstr ""
+
+#: builtin/bisect--helper.c:880
+msgid "check whether bad or good terms exist"
+msgstr ""
+
+#: builtin/bisect--helper.c:882
+#, fuzzy
+msgid "print out the bisect terms"
+msgstr "imprimir apenas as tags do objeto"
+
+#: builtin/bisect--helper.c:884
+msgid "start the bisect session"
+msgstr ""
+
+#: builtin/bisect--helper.c:886
+#, fuzzy
+msgid "find the next bisection commit"
+msgstr "não é possível emendar commit não-existente"
+
+#: builtin/bisect--helper.c:888
+msgid "verify the next bisection state then checkout the next bisection commit"
+msgstr ""
+
+#: builtin/bisect--helper.c:890
+msgid "start the bisection if it has not yet been started"
+msgstr ""
+
+#: builtin/bisect--helper.c:892
+msgid "no log for BISECT_WRITE"
+msgstr ""
+
+#: builtin/bisect--helper.c:910
+#, fuzzy
+msgid "--write-terms requires two arguments"
+msgstr "--abort não leva argumentos"
 
-#: builtin/blame.c:33
+#: builtin/bisect--helper.c:914
+#, fuzzy
+msgid "--bisect-clean-state requires no arguments"
+msgstr "--continue não leva argumentos"
+
+#: builtin/bisect--helper.c:921
+msgid "--bisect-reset requires either no argument or a commit"
+msgstr ""
+
+#: builtin/bisect--helper.c:925
+#, fuzzy
+msgid "--bisect-write requires either 4 or 5 arguments"
+msgstr ":strip= requer um inteiro positivo como argumento"
+
+#: builtin/bisect--helper.c:931
+msgid "--check-and-set-terms requires 3 arguments"
+msgstr ""
+
+#: builtin/bisect--helper.c:937
+msgid "--bisect-next-check requires 2 or 3 arguments"
+msgstr ""
+
+#: builtin/bisect--helper.c:943
+#, fuzzy
+msgid "--bisect-terms requires 0 or 1 argument"
+msgstr ":strip= requer um inteiro positivo como argumento"
+
+#: builtin/bisect--helper.c:952
+#, fuzzy
+msgid "--bisect-next requires 0 arguments"
+msgstr "--continue não leva argumentos"
+
+#: builtin/bisect--helper.c:958
+#, fuzzy
+msgid "--bisect-auto-next requires 0 arguments"
+msgstr "--continue não leva argumentos"
+
+#: builtin/bisect--helper.c:964
+#, fuzzy
+msgid "--bisect-autostart does not accept arguments"
+msgstr "%%(subject) não leva argumentos"
+
+#: builtin/blame.c:32
 msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgstr "git blame [<opções>] [<rev-opções>] [<rev>] [--] <ficheiro>"
 
-#: builtin/blame.c:38
+#: builtin/blame.c:37
 msgid "<rev-opts> are documented in git-rev-list(1)"
 msgstr "<rev-opções> estão documentadas em git-rev-list(1)"
 
-#: builtin/blame.c:1777
-msgid "Blaming lines"
-msgstr "Linhas de culpa"
+#: builtin/blame.c:410
+#, fuzzy, c-format
+msgid "expecting a color: %s"
+msgstr "a redirecionar para %s "
+
+#: builtin/blame.c:417
+msgid "must end with a color"
+msgstr ""
+
+#: builtin/blame.c:730
+#, fuzzy, c-format
+msgid "invalid color '%s' in color.blame.repeatedLines"
+msgstr "ignorar cor inválida '%.*s' em log.graphColors"
+
+#: builtin/blame.c:748
+#, fuzzy
+msgid "invalid value for blame.coloring"
+msgstr "valor inválido de %s"
+
+#: builtin/blame.c:845
+#, c-format
+msgid "cannot find revision %s to ignore"
+msgstr ""
 
-#: builtin/blame.c:2573
+#: builtin/blame.c:867
 msgid "Show blame entries as we find them, incrementally"
 msgstr ""
 "Mostrar entradas de culpa à medida que forem encontradas, incrementalmente"
 
-#: builtin/blame.c:2574
-msgid "Show blank SHA-1 for boundary commits (Default: off)"
+#: builtin/blame.c:868
+#, fuzzy
+msgid "Do not show object names of boundary commits (Default: off)"
 msgstr "Mostar SHA-1 dos commits limite em branco (Predefinição: desativado)"
 
-#: builtin/blame.c:2575
+#: builtin/blame.c:869
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr "Não tratar os commits raiz como limites (Predefinição: desativado)"
 
-#: builtin/blame.c:2576
+#: builtin/blame.c:870
 msgid "Show work cost statistics"
 msgstr "Mostrar estatísticas de custo de atividade"
 
-#: builtin/blame.c:2577
+#: builtin/blame.c:871
 msgid "Force progress reporting"
 msgstr "Forçar informação de progresso"
 
-#: builtin/blame.c:2578
+#: builtin/blame.c:872
 msgid "Show output score for blame entries"
 msgstr "Mostrar a pontuação das entradas de culpa"
 
-#: builtin/blame.c:2579
+#: builtin/blame.c:873
 msgid "Show original filename (Default: auto)"
 msgstr "Mostrar o nome do ficheiro original (Predefinição: auto)"
 
-#: builtin/blame.c:2580
+#: builtin/blame.c:874
 msgid "Show original linenumber (Default: off)"
 msgstr "Mostrar números de linha originais (Predefinição: desativado)"
 
-#: builtin/blame.c:2581
+#: builtin/blame.c:875
 msgid "Show in a format designed for machine consumption"
 msgstr "Mostrar em formato próprio para ser consumo por uma máquina"
 
-#: builtin/blame.c:2582
+#: builtin/blame.c:876
 msgid "Show porcelain format with per-line commit information"
 msgstr "Mostrar em formato de porcelana com informações de commit por linha"
 
-#: builtin/blame.c:2583
+#: builtin/blame.c:877
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr "Usar o mesmo modo de saída que git-annotate (Predefinição: desativado)"
 
-#: builtin/blame.c:2584
+#: builtin/blame.c:878
 msgid "Show raw timestamp (Default: off)"
 msgstr "Mostrar carimbo de data/hora em bruto (Predefinição: desativado)"
 
-#: builtin/blame.c:2585
+#: builtin/blame.c:879
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "Mostrar SHA1 longo de commit (Predefinição: desativado)"
 
-#: builtin/blame.c:2586
+#: builtin/blame.c:880
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr ""
 "Suprimir nome de autor e carimbo de data/hora (Predefinição: desativado)"
 
-#: builtin/blame.c:2587
+#: builtin/blame.c:881
 msgid "Show author email instead of name (Default: off)"
 msgstr "Mostrar o email do autor em vez do nome (Predefinição: desativado)"
 
-#: builtin/blame.c:2588
+#: builtin/blame.c:882
 msgid "Ignore whitespace differences"
 msgstr "Ignorar as diferenças de espaço em branco"
 
-#: builtin/blame.c:2595
-msgid "Use an experimental heuristic to improve diffs"
-msgstr "Usar um heurística experimental para melhorar diffs"
+#: builtin/blame.c:883 builtin/log.c:1808
+#, fuzzy
+msgid "rev"
+msgstr "reverter"
+
+#: builtin/blame.c:883
+#, fuzzy
+msgid "Ignore <rev> when blaming"
+msgstr "ignorar o índice ao verificar"
+
+#: builtin/blame.c:884
+#, fuzzy
+msgid "Ignore revisions from <file>"
+msgstr "ler mensagem de um ficheiro"
+
+#: builtin/blame.c:885
+msgid "color redundant metadata from previous line differently"
+msgstr ""
+
+#: builtin/blame.c:886
+msgid "color lines by age"
+msgstr ""
 
-#: builtin/blame.c:2597
+#: builtin/blame.c:887
 msgid "Spend extra cycles to find better match"
 msgstr "Despender ciclos extra para encontrar uma melhor correspondência"
 
-#: builtin/blame.c:2598
+#: builtin/blame.c:888
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr "Usar revisões do <ficheiro> em vez de invocar git-rev-list"
 
-#: builtin/blame.c:2599
+#: builtin/blame.c:889
 msgid "Use <file>'s contents as the final image"
 msgstr "Usar o conteúdo do <ficheiro> como imagem final"
 
-#: builtin/blame.c:2600 builtin/blame.c:2601
+#: builtin/blame.c:890 builtin/blame.c:891
 msgid "score"
 msgstr "pontuação"
 
-#: builtin/blame.c:2600
+#: builtin/blame.c:890
 msgid "Find line copies within and across files"
 msgstr "Localizar linhas copiadas dentro e entre ficheiros"
 
-#: builtin/blame.c:2601
+#: builtin/blame.c:891
 msgid "Find line movements within and across files"
 msgstr "Localizar linhas movidas dentro e entre ficheiros"
 
-#: builtin/blame.c:2602
+#: builtin/blame.c:892
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:2602
+#: builtin/blame.c:892
 msgid "Process only line range n,m, counting from 1"
 msgstr "Processar apenas o intervalo de linhas n,m, a cantar de 1"
 
-#: builtin/blame.c:2649
+#: builtin/blame.c:944
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress não pode ser usado com --incremental ou formatos de porcelana"
 
-#. TRANSLATORS: This string is used to tell us the maximum
-#. display width for a relative timestamp in "git blame"
-#. output.  For C locale, "4 years, 11 months ago", which
-#. takes 22 places, is the longest among various forms of
-#. relative timestamps, but your language may need more or
-#. fewer display columns.
-#: builtin/blame.c:2697
+#. TRANSLATORS: This string is used to tell us the
+#. maximum display width for a relative timestamp in
+#. "git blame" output.  For C locale, "4 years, 11
+#. months ago", which takes 22 places, is the longest
+#. among various forms of relative timestamps, but
+#. your language may need more or fewer display
+#. columns.
+#.
+#: builtin/blame.c:995
 msgid "4 years, 11 months ago"
 msgstr "há 4 anos e 11 meses atrás"
 
-#: builtin/blame.c:2777
-msgid "--contents and --reverse do not blend well."
-msgstr "--contents e --reverse não se misturam bem."
-
-#: builtin/blame.c:2797
-msgid "cannot use --contents with final commit object name"
-msgstr "não é possível usar --contents com nome de objeto commit final"
-
-#: builtin/blame.c:2802
-msgid "--reverse and --first-parent together require specified latest commit"
-msgstr ""
-"--reverse e --first-parent juntos requer que se especifique o último commit"
-
-#: builtin/blame.c:2829
-msgid ""
-"--reverse --first-parent together require range along first-parent chain"
-msgstr ""
-"--reverse --first-parent juntos requer intervalo ao longo do primeiro-pai"
-
-#: builtin/blame.c:2840
-#, c-format
-msgid "no such path %s in %s"
-msgstr "o caminho %s não existe em %s"
-
-#: builtin/blame.c:2851
-#, c-format
-msgid "cannot read blob %s for path %s"
-msgstr "não é possível ler o blob %s do caminho %s"
-
-#: builtin/blame.c:2870
+#: builtin/blame.c:1110
 #, c-format
 msgid "file %s has only %lu line"
 msgid_plural "file %s has only %lu lines"
 msgstr[0] "o ficheiro %s só tem %lu linha"
 msgstr[1] "o ficheiro %s só tem %lu linhas"
 
-#: builtin/branch.c:26
-msgid "git branch [<options>] [-r | -a] [--merged | --no-merged]"
+#: builtin/blame.c:1156
+msgid "Blaming lines"
+msgstr "Linhas de culpa"
+
+#: builtin/branch.c:29
+#, fuzzy
+msgid "git branch [<options>] [-r | -a] [--merged] [--no-merged]"
 msgstr "git branch [<opções>] [-r | -a] [--merged | --no-merged]"
 
-#: builtin/branch.c:27
+#: builtin/branch.c:30
 msgid "git branch [<options>] [-l] [-f] <branch-name> [<start-point>]"
 msgstr "git branch [<opções>] [-l] [-f] <nome-ramo> [<ponto-de-partida>]"
 
-#: builtin/branch.c:28
+#: builtin/branch.c:31
 msgid "git branch [<options>] [-r] (-d | -D) <branch-name>..."
 msgstr "git branch [<opções>] [-r] (-d | -D) <nome-do-ramo>..."
 
-#: builtin/branch.c:29
+#: builtin/branch.c:32
 msgid "git branch [<options>] (-m | -M) [<old-branch>] <new-branch>"
 msgstr "git branch [<opções>] (-m | -M) [<ramo-antigo>] <novo-ramo>"
 
-#: builtin/branch.c:30
+#: builtin/branch.c:33
+#, fuzzy
+msgid "git branch [<options>] (-c | -C) [<old-branch>] <new-branch>"
+msgstr "git branch [<opções>] (-m | -M) [<ramo-antigo>] <novo-ramo>"
+
+#: builtin/branch.c:34
 msgid "git branch [<options>] [-r | -a] [--points-at]"
 msgstr "git branch [<opções>] [-r | -a] [--points-at]"
 
-#: builtin/branch.c:31
+#: builtin/branch.c:35
 msgid "git branch [<options>] [-r | -a] [--format]"
 msgstr "git branch [<opções>] [-r | -a] [--format]"
 
-#: builtin/branch.c:144
+#: builtin/branch.c:154
 #, c-format
 msgid ""
 "deleting branch '%s' that has been merged to\n"
@@ -5361,7 +10895,7 @@ msgstr ""
 "a eliminar o ramo '%s' integrado em\n"
 "         '%s', mas ainda não integrado em HEAD."
 
-#: builtin/branch.c:148
+#: builtin/branch.c:158
 #, c-format
 msgid ""
 "not deleting branch '%s' that is not yet merged to\n"
@@ -5370,12 +10904,12 @@ msgstr ""
 "ramo '%s' não eliminado, visto que ainda não foi integrado em\n"
 "         '%s', apesar de já ter sido integrado em HEAD."
 
-#: builtin/branch.c:162
+#: builtin/branch.c:172
 #, c-format
 msgid "Couldn't look up commit object for '%s'"
 msgstr "Não foi possível pesquisar pelo objeto commit de '%s'"
 
-#: builtin/branch.c:166
+#: builtin/branch.c:176
 #, c-format
 msgid ""
 "The branch '%s' is not fully merged.\n"
@@ -5384,93 +10918,130 @@ msgstr ""
 "O ramo '%s' não foi totalmente integrado.\n"
 "Se tem a certeza que o quer eliminar, execute 'git branch -D %s'."
 
-#: builtin/branch.c:179
+#: builtin/branch.c:189
 msgid "Update of config-file failed"
 msgstr "Falha ao atualizar o ficheiro de configuração"
 
-#: builtin/branch.c:210
+#: builtin/branch.c:220
 msgid "cannot use -a with -d"
 msgstr "não é possível usar -a com -d"
 
-#: builtin/branch.c:216
+#: builtin/branch.c:226
 msgid "Couldn't look up commit object for HEAD"
 msgstr "Não foi possível pesquisar pelo objeto commit de HEAD"
 
-#: builtin/branch.c:230
+#: builtin/branch.c:240
 #, c-format
 msgid "Cannot delete branch '%s' checked out at '%s'"
 msgstr "Não é possível eliminar o ramo '%s' extraído em '%s'"
 
-#: builtin/branch.c:245
+#: builtin/branch.c:255
 #, c-format
 msgid "remote-tracking branch '%s' not found."
 msgstr "ramo de monitorização remoto '%s' não encontrado."
 
-#: builtin/branch.c:246
+#: builtin/branch.c:256
 #, c-format
 msgid "branch '%s' not found."
 msgstr "ramo '%s' não encontrado."
 
-#: builtin/branch.c:261
+#: builtin/branch.c:271
 #, c-format
 msgid "Error deleting remote-tracking branch '%s'"
 msgstr "Erro a eliminar o ramo de monitorização remoto '%s'"
 
-#: builtin/branch.c:262
+#: builtin/branch.c:272
 #, c-format
 msgid "Error deleting branch '%s'"
 msgstr "Erro a eliminar ramo '%s'"
 
-#: builtin/branch.c:269
+#: builtin/branch.c:279
 #, c-format
 msgid "Deleted remote-tracking branch %s (was %s).\n"
 msgstr "Ramo de monitorização remoto %s eliminado (era %s).\n"
 
-#: builtin/branch.c:270
+#: builtin/branch.c:280
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr "Ramo %s eliminado (era %s).\n"
 
-#: builtin/branch.c:441
+#: builtin/branch.c:429 builtin/tag.c:61
+#, fuzzy
+msgid "unable to parse format string"
+msgstr "não foi possível analisar o formato"
+
+#: builtin/branch.c:460
+#, fuzzy
+msgid "could not resolve HEAD"
+msgstr "não foi possível resolver o commit HEAD\n"
+
+#: builtin/branch.c:466
+#, fuzzy, c-format
+msgid "HEAD (%s) points outside of refs/heads/"
+msgstr "HEAD não encontrada em refs/heads!"
+
+#: builtin/branch.c:481
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr "O ramo %s está a ser rebaseado em %s"
 
-#: builtin/branch.c:445
+#: builtin/branch.c:485
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr "O ramo %s está a ser bissetado em %s"
 
-#: builtin/branch.c:460
+#: builtin/branch.c:502
+#, fuzzy
+msgid "cannot copy the current branch while not on any."
+msgstr ""
+"não é possível mudar o nome do ramo atual vista que não se encontra num ramo."
+
+#: builtin/branch.c:504
 msgid "cannot rename the current branch while not on any."
 msgstr ""
 "não é possível mudar o nome do ramo atual vista que não se encontra num ramo."
 
-#: builtin/branch.c:470
+#: builtin/branch.c:515
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Nome de ramo inválido: '%s'"
 
-#: builtin/branch.c:487
+#: builtin/branch.c:542
 msgid "Branch rename failed"
 msgstr "Falha ao mudar o nome do ramo"
 
-#: builtin/branch.c:490
+#: builtin/branch.c:544
+#, fuzzy
+msgid "Branch copy failed"
+msgstr "Falha ao mudar o nome do ramo"
+
+#: builtin/branch.c:548
+#, fuzzy, c-format
+msgid "Created a copy of a misnamed branch '%s'"
+msgstr "O ramo incorretamente denominado '%s' mudou de nome"
+
+#: builtin/branch.c:551
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "O ramo incorretamente denominado '%s' mudou de nome"
 
-#: builtin/branch.c:493
+#: builtin/branch.c:557
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "O nome do ramo mudou para %s, mas a HEAD não está atualizada!"
 
-#: builtin/branch.c:502
+#: builtin/branch.c:566
 msgid "Branch is renamed, but update of config-file failed"
 msgstr ""
 "O ramo mudou de nome, mas a atualização do ficheiro de configuração falhou"
 
-#: builtin/branch.c:518
+#: builtin/branch.c:568
+#, fuzzy
+msgid "Branch is copied, but update of config-file failed"
+msgstr ""
+"O ramo mudou de nome, mas a atualização do ficheiro de configuração falhou"
+
+#: builtin/branch.c:584
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -5481,176 +11052,188 @@ msgstr ""
 "  %s\n"
 "Linha começadas com '%c' serão ignoradas.\n"
 
-#: builtin/branch.c:551
+#: builtin/branch.c:618
 msgid "Generic options"
 msgstr "Opções genéricas"
 
-#: builtin/branch.c:553
+#: builtin/branch.c:620
 msgid "show hash and subject, give twice for upstream branch"
 msgstr "apresentar hash e assunto, duplique para ramos a montante"
 
-#: builtin/branch.c:554
+#: builtin/branch.c:621
 msgid "suppress informational messages"
 msgstr "suprimir mensagens informativas"
 
-#: builtin/branch.c:555
+#: builtin/branch.c:622
 msgid "set up tracking mode (see git-pull(1))"
 msgstr "configurar modo de seguimento (consulte git-pull(1))"
 
-#: builtin/branch.c:557
-msgid "change upstream info"
-msgstr "alterar a informação do ramo a montante"
+#: builtin/branch.c:624
+#, fuzzy
+msgid "do not use"
+msgstr "esquema a usar"
 
-#: builtin/branch.c:559
+#: builtin/branch.c:626 builtin/rebase.c:526
 msgid "upstream"
 msgstr "a montante"
 
-#: builtin/branch.c:559
+#: builtin/branch.c:626
 msgid "change the upstream info"
 msgstr "alterar a informação do ramo a montante"
 
-#: builtin/branch.c:560
-msgid "Unset the upstream info"
+#: builtin/branch.c:627
+#, fuzzy
+msgid "unset the upstream info"
 msgstr "Remover a informação do ramo a montante"
 
-#: builtin/branch.c:561
+#: builtin/branch.c:628
 msgid "use colored output"
 msgstr "usar saída colorida"
 
-#: builtin/branch.c:562
+#: builtin/branch.c:629
 msgid "act on remote-tracking branches"
 msgstr "atuar sobre ramos de monitorização remotos"
 
-#: builtin/branch.c:564 builtin/branch.c:566
+#: builtin/branch.c:631 builtin/branch.c:633
 msgid "print only branches that contain the commit"
 msgstr "imprimir apenas ramos que contenham o commit"
 
-#: builtin/branch.c:565 builtin/branch.c:567
+#: builtin/branch.c:632 builtin/branch.c:634
 msgid "print only branches that don't contain the commit"
 msgstr "imprimir apenas ramos que não contenham o commit"
 
-#: builtin/branch.c:570
+#: builtin/branch.c:637
 msgid "Specific git-branch actions:"
 msgstr "Ações específicas do git-branch:"
 
-#: builtin/branch.c:571
+#: builtin/branch.c:638
 msgid "list both remote-tracking and local branches"
 msgstr "listar ramos de monitorização remotos e ramos locais"
 
-#: builtin/branch.c:573
+#: builtin/branch.c:640
 msgid "delete fully merged branch"
 msgstr "eliminar um ramo totalmente integrado"
 
-#: builtin/branch.c:574
+#: builtin/branch.c:641
 msgid "delete branch (even if not merged)"
 msgstr "eliminar um ramo (mesmo que não tenha sido integrado)"
 
-#: builtin/branch.c:575
+#: builtin/branch.c:642
 msgid "move/rename a branch and its reflog"
 msgstr "mover ou mudar o nome de um ramo e o seu reflog"
 
-#: builtin/branch.c:576
+#: builtin/branch.c:643
 msgid "move/rename a branch, even if target exists"
 msgstr "mover ou mudar o nome de um ramo, mesmo que o destino já exista"
 
-#: builtin/branch.c:577
+#: builtin/branch.c:644
+#, fuzzy
+msgid "copy a branch and its reflog"
+msgstr "mover ou mudar o nome de um ramo e o seu reflog"
+
+#: builtin/branch.c:645
+#, fuzzy
+msgid "copy a branch, even if target exists"
+msgstr "mover ou mudar o nome de um ramo, mesmo que o destino já exista"
+
+#: builtin/branch.c:646
 msgid "list branch names"
 msgstr "listar os nomes dos ramos"
 
-#: builtin/branch.c:578
+#: builtin/branch.c:647
+#, fuzzy
+msgid "show current branch name"
+msgstr "Nenhum ramo atual."
+
+#: builtin/branch.c:648
 msgid "create the branch's reflog"
 msgstr "criar reflog do ramo"
 
-#: builtin/branch.c:580
+#: builtin/branch.c:650
 msgid "edit the description for the branch"
 msgstr "editar a descrição do ramo"
 
-#: builtin/branch.c:581
+#: builtin/branch.c:651
 msgid "force creation, move/rename, deletion"
 msgstr "forçar criação, mover/mudar o nome ou exclusão"
 
-#: builtin/branch.c:582
+#: builtin/branch.c:652
 msgid "print only branches that are merged"
 msgstr "imprimir apenas os ramos que foram integrados"
 
-#: builtin/branch.c:583
+#: builtin/branch.c:653
 msgid "print only branches that are not merged"
 msgstr "imprimir apenas os ramos que não foram integrados"
 
-#: builtin/branch.c:584
+#: builtin/branch.c:654
 msgid "list branches in columns"
 msgstr "listar os ramos em colunas"
 
-#: builtin/branch.c:585 builtin/for-each-ref.c:38 builtin/tag.c:426
-msgid "key"
-msgstr "chave"
-
-#: builtin/branch.c:586 builtin/for-each-ref.c:39 builtin/tag.c:427
-msgid "field name to sort on"
-msgstr "nome do campo pelo qual ordernar"
-
-#: builtin/branch.c:588 builtin/for-each-ref.c:41 builtin/notes.c:404
-#: builtin/notes.c:407 builtin/notes.c:567 builtin/notes.c:570
-#: builtin/tag.c:429
+#: builtin/branch.c:656 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:434
 msgid "object"
 msgstr "objeto"
 
-#: builtin/branch.c:589
+#: builtin/branch.c:657
 msgid "print only branches of the object"
 msgstr "imprimir apenas os ramos do objeto"
 
-#: builtin/branch.c:591 builtin/for-each-ref.c:47 builtin/tag.c:434
+#: builtin/branch.c:658 builtin/for-each-ref.c:48 builtin/tag.c:441
 msgid "sorting and filtering are case insensitive"
 msgstr "ordenar e filtrar são insensíveis a maiúsculas"
 
-#: builtin/branch.c:592 builtin/for-each-ref.c:37 builtin/tag.c:433
+#: builtin/branch.c:659 builtin/for-each-ref.c:38 builtin/tag.c:439
 #: builtin/verify-tag.c:38
 msgid "format to use for the output"
 msgstr "formato a usar na saída"
 
-#: builtin/branch.c:611
-msgid "Failed to resolve HEAD as a valid ref."
-msgstr "Falha ao resolver HEAD numa referência válida."
-
-#: builtin/branch.c:615 builtin/clone.c:724
+#: builtin/branch.c:682 builtin/clone.c:789
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD não encontrada em refs/heads!"
 
-#: builtin/branch.c:638
+#: builtin/branch.c:706
 msgid "--column and --verbose are incompatible"
 msgstr "--column e --verbose são incompatíveis"
 
-#: builtin/branch.c:649 builtin/branch.c:701
+#: builtin/branch.c:721 builtin/branch.c:775 builtin/branch.c:784
 msgid "branch name required"
 msgstr "nome do ramo é obrigatório"
 
-#: builtin/branch.c:677
+#: builtin/branch.c:751
 msgid "Cannot give description to detached HEAD"
 msgstr "Não é possível atribuir descrição a HEAD destacada"
 
-#: builtin/branch.c:682
+#: builtin/branch.c:756
 msgid "cannot edit description of more than one branch"
 msgstr "não é possível editar a descrição de mais do que um ramo"
 
-#: builtin/branch.c:689
+#: builtin/branch.c:763
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr "Ainda não há commits no ramo '%s'."
 
-#: builtin/branch.c:692
+#: builtin/branch.c:766
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Não há nenhum ramo denominado '%s'."
 
-#: builtin/branch.c:707
-msgid "too many branches for a rename operation"
+#: builtin/branch.c:781
+#, fuzzy
+msgid "too many branches for a copy operation"
+msgstr "demasiados ramos para uma operação de mudança de nome"
+
+#: builtin/branch.c:790
+#, fuzzy
+msgid "too many arguments for a rename operation"
 msgstr "demasiados ramos para uma operação de mudança de nome"
 
-#: builtin/branch.c:712
-msgid "too many branches to set new upstream"
+#: builtin/branch.c:795
+#, fuzzy
+msgid "too many arguments to set new upstream"
 msgstr "demasiados ramos para definir novo ramo a montante"
 
-#: builtin/branch.c:716
+#: builtin/branch.c:799
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -5658,74 +11241,197 @@ msgstr ""
 "não foi possível definir %s como ramo a montante de HEAD visto que esta não "
 "aponta para um ramo."
 
-#: builtin/branch.c:719 builtin/branch.c:741 builtin/branch.c:762
+#: builtin/branch.c:802 builtin/branch.c:825
 #, c-format
 msgid "no such branch '%s'"
 msgstr "o ramo '%s' não existe"
 
-#: builtin/branch.c:723
+#: builtin/branch.c:806
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "o ramo '%s' não existe"
 
-#: builtin/branch.c:735
-msgid "too many branches to unset upstream"
+#: builtin/branch.c:819
+#, fuzzy
+msgid "too many arguments to unset upstream"
 msgstr "demasiados ramos para remover a definição de ramo a montante"
 
-#: builtin/branch.c:739
+#: builtin/branch.c:823
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr ""
 "não foi possível remover a definição de ramo a montante de HEAD visto que "
 "esta não aponta para um ramo."
 
-#: builtin/branch.c:745
+#: builtin/branch.c:829
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "O ramo '%s' não tem informação sobre o ramo a montante"
 
-#: builtin/branch.c:759
-msgid "it does not make sense to create 'HEAD' manually"
-msgstr "não faz sentido criar 'HEAD' manualmente"
-
-#: builtin/branch.c:765
-msgid "-a and -r options to 'git branch' do not make sense with a branch name"
+#: builtin/branch.c:839
+#, fuzzy
+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 ""
 "as opções -a e -r de 'git branch' não fazem sentido com um nome de ramo"
 
-#: builtin/branch.c:768
-#, c-format
+#: builtin/branch.c:843
+#, fuzzy
 msgid ""
-"The --set-upstream flag is deprecated and will be removed. Consider using --"
-"track or --set-upstream-to\n"
+"the '--set-upstream' option is no longer supported. Please use '--track' or "
+"'--set-upstream-to' instead."
 msgstr ""
 "A opção --set-upstream é obsoleta e será removida. Considere o uso de --"
 "track ou --set-upstream-to\n"
 
-#: builtin/branch.c:785
+#: builtin/bugreport.c:15
+#, fuzzy
+msgid "git version:\n"
+msgstr "versão"
+
+#: builtin/bugreport.c:21
 #, c-format
+msgid "uname() failed with error '%s' (%d)\n"
+msgstr ""
+
+#: builtin/bugreport.c:31
+msgid "compiler info: "
+msgstr ""
+
+#: builtin/bugreport.c:34
+msgid "libc info: "
+msgstr ""
+
+#: builtin/bugreport.c:80
+msgid "not run from a git repository - no hooks to show\n"
+msgstr ""
+
+#: builtin/bugreport.c:90
+msgid "git bugreport [-o|--output-directory <file>] [-s|--suffix <format>]"
+msgstr ""
+
+#: builtin/bugreport.c:97
 msgid ""
+"Thank you for filling out a Git bug report!\n"
+"Please answer the following questions to help us understand your issue.\n"
 "\n"
-"If you wanted to make '%s' track '%s', do this:\n"
+"What did you do before the bug happened? (Steps to reproduce your issue)\n"
 "\n"
-msgstr ""
+"What did you expect to happen? (Expected behavior)\n"
+"\n"
+"What happened instead? (Actual behavior)\n"
+"\n"
+"What's different between what you expected and what actually happened?\n"
 "\n"
-"Se quer que '%s' siga '%s', faça:\n"
+"Anything else you want to add:\n"
 "\n"
+"Please review the rest of the bug report below.\n"
+"You can delete any lines you don't wish to share.\n"
+msgstr ""
+
+#: builtin/bugreport.c:134
+msgid "specify a destination for the bugreport file"
+msgstr ""
 
-#: builtin/bundle.c:45
+#: builtin/bugreport.c:136
+msgid "specify a strftime format suffix for the filename"
+msgstr ""
+
+#: builtin/bugreport.c:158
+#, fuzzy, c-format
+msgid "could not create leading directories for '%s'"
+msgstr "não foi possível criar os diretórios superiores de '%s'"
+
+#: builtin/bugreport.c:165
+msgid "System Info"
+msgstr ""
+
+#: builtin/bugreport.c:168
+#, fuzzy
+msgid "Enabled Hooks"
+msgstr "não foi possível abrir %s"
+
+#: builtin/bugreport.c:175
+#, fuzzy, c-format
+msgid "couldn't create a new file at '%s'"
+msgstr "não foi possível criar o ficheiro '%s'"
+
+#: builtin/bugreport.c:178
+#, fuzzy, c-format
+msgid "unable to write to %s"
+msgstr "não foi possível escrever %s"
+
+#: builtin/bugreport.c:188
 #, c-format
-msgid "%s is okay\n"
-msgstr "%s está correto\n"
+msgid "Created new report at '%s'.\n"
+msgstr ""
+
+#: builtin/bundle.c:15 builtin/bundle.c:23
+#, fuzzy
+msgid "git bundle create [<options>] <file> <git-rev-list args>"
+msgstr "git remote add [<opções>] <nome> <url>"
+
+#: builtin/bundle.c:16 builtin/bundle.c:28
+#, fuzzy
+msgid "git bundle verify [<options>] <file>"
+msgstr "git rm [<opções>] [--] <ficheiro>..."
+
+#: builtin/bundle.c:17 builtin/bundle.c:33
+msgid "git bundle list-heads <file> [<refname>...]"
+msgstr ""
+
+#: builtin/bundle.c:18 builtin/bundle.c:38
+msgid "git bundle unbundle <file> [<refname>...]"
+msgstr ""
+
+#: builtin/bundle.c:67 builtin/pack-objects.c:3480
+msgid "do not show progress meter"
+msgstr "não mostrar medidor de progresso"
+
+#: builtin/bundle.c:69 builtin/pack-objects.c:3482
+msgid "show progress meter"
+msgstr "mostrar medidor de progresso"
 
-#: builtin/bundle.c:58
+#: builtin/bundle.c:71 builtin/pack-objects.c:3484
+msgid "show progress meter during object writing phase"
+msgstr "mostrar medidor de progresso durante a fase de escrita de objetos"
+
+#: builtin/bundle.c:74 builtin/pack-objects.c:3487
+msgid "similar to --all-progress when progress meter is shown"
+msgstr "semelhante a --all-progress quando o medidor de progresso é mostrado"
+
+#: builtin/bundle.c:76
+msgid "specify bundle format version"
+msgstr ""
+
+#: builtin/bundle.c:96
 msgid "Need a repository to create a bundle."
 msgstr "É necessário um repositório para criar um bundle."
 
-#: builtin/bundle.c:62
+#: builtin/bundle.c:107
+#, fuzzy
+msgid "do not show bundle details"
+msgstr "não mostrar tags descascadas"
+
+#: builtin/bundle.c:122
+#, c-format
+msgid "%s is okay\n"
+msgstr "%s está correto\n"
+
+#: builtin/bundle.c:163
 msgid "Need a repository to unbundle."
 msgstr "É preciso um repositório para desempacotar."
 
-#: builtin/cat-file.c:513
+#: builtin/bundle.c:171 builtin/remote.c:1687
+msgid "be verbose; must be placed before a subcommand"
+msgstr "ser verboso; deve ser colocado antes de um subcomando"
+
+#: builtin/bundle.c:193 builtin/remote.c:1718
+#, c-format
+msgid "Unknown subcommand: %s"
+msgstr "Subcomando desconhecido: %s"
+
+#: builtin/cat-file.c:598
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
@@ -5733,314 +11439,378 @@ msgstr ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <tipo> | --textconv | --filters) [--path=<caminho>] <objeto>"
 
-#: builtin/cat-file.c:514
+#: builtin/cat-file.c:599
+#, fuzzy
 msgid ""
-"git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
-"filters]"
+"git cat-file (--batch[=<format>] | --batch-check[=<format>]) [--follow-"
+"symlinks] [--textconv | --filters]"
 msgstr ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 
-#: builtin/cat-file.c:551
+#: builtin/cat-file.c:620
+#, fuzzy
+msgid "only one batch option may be specified"
+msgstr "Nenhum nome de ramo especificado"
+
+#: builtin/cat-file.c:638
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<tipo> pode ser um de: blob, tree, commit, tag"
 
-#: builtin/cat-file.c:552
+#: builtin/cat-file.c:639
 msgid "show object type"
 msgstr "mostrar tipo do objeto"
 
-#: builtin/cat-file.c:553
+#: builtin/cat-file.c:640
 msgid "show object size"
 msgstr "mostrar tamanho do objeto"
 
-#: builtin/cat-file.c:555
+#: builtin/cat-file.c:642
 msgid "exit with zero when there's no error"
 msgstr "sair com retorno zero quando não houver erros"
 
-#: builtin/cat-file.c:556
+#: builtin/cat-file.c:643
 msgid "pretty-print object's content"
 msgstr "mostrar conteúdo do objeto com impressão bonita"
 
-#: builtin/cat-file.c:558
+#: builtin/cat-file.c:645
 msgid "for blob objects, run textconv on object's content"
 msgstr "executar textconv no conteúdo de objetos blob"
 
-#: builtin/cat-file.c:560
+#: builtin/cat-file.c:647
 msgid "for blob objects, run filters on object's content"
 msgstr "para objetos blob, correr filtros sobre o conteúdo do objeto"
 
-#: builtin/cat-file.c:561 git-submodule.sh:943
+#: builtin/cat-file.c:648
 msgid "blob"
 msgstr "blob"
 
-#: builtin/cat-file.c:562
+#: builtin/cat-file.c:649
 msgid "use a specific path for --textconv/--filters"
 msgstr "usar um caminho específico para --textconv/--filters"
 
-#: builtin/cat-file.c:564
+#: builtin/cat-file.c:651
 msgid "allow -s and -t to work with broken/corrupt objects"
 msgstr "permitir que -s e -t funcionem com objetos danificados/corrompidos"
 
-#: builtin/cat-file.c:565
+#: builtin/cat-file.c:652
 msgid "buffer --batch output"
 msgstr "carregar a saída de --batch"
 
-#: builtin/cat-file.c:567
+#: builtin/cat-file.c:654
 msgid "show info and content of objects fed from the standard input"
 msgstr "mostrar informação e conteúdo dos objetos fornecidos na entrada padrão"
 
-#: builtin/cat-file.c:570
+#: builtin/cat-file.c:658
 msgid "show info about objects fed from the standard input"
 msgstr "mostrar informação sobre os objetos fornecidos na entrada padrão"
 
-#: builtin/cat-file.c:573
+#: builtin/cat-file.c:662
 msgid "follow in-tree symlinks (used with --batch or --batch-check)"
 msgstr ""
 "seguir ligações simbólica no interior da árvore (usado com --batch ou --"
 "batch-check)"
 
-#: builtin/cat-file.c:575
+#: builtin/cat-file.c:664
 msgid "show all objects with --batch or --batch-check"
 msgstr "mostrar todos os objetos com --batch ou --batch-check"
 
-#: builtin/check-attr.c:11
+#: builtin/cat-file.c:666
+msgid "do not order --batch-all-objects output"
+msgstr ""
+
+#: builtin/check-attr.c:13
 msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
 msgstr "git check-attr [-a | --all | <atributo>...] [--] <caminho>..."
 
-#: builtin/check-attr.c:12
+#: builtin/check-attr.c:14
 msgid "git check-attr --stdin [-z] [-a | --all | <attr>...]"
 msgstr "git check-attr --stdin [-z] [-a | --all | <atributo>...]"
 
-#: builtin/check-attr.c:19
+#: builtin/check-attr.c:21
 msgid "report all attributes set on file"
 msgstr "apresentar todos os atributos definidos no ficheiro"
 
-#: builtin/check-attr.c:20
+#: builtin/check-attr.c:22
 msgid "use .gitattributes only from the index"
 msgstr "usar .gitattributes apenas a partir do índice"
 
-#: builtin/check-attr.c:21 builtin/check-ignore.c:22 builtin/hash-object.c:98
+#: builtin/check-attr.c:23 builtin/check-ignore.c:25 builtin/hash-object.c:102
 msgid "read file names from stdin"
 msgstr "ler os nomes dos ficheiros da entrada padrão"
 
-#: builtin/check-attr.c:23 builtin/check-ignore.c:24
+#: builtin/check-attr.c:25 builtin/check-ignore.c:27
 msgid "terminate input and output records by a NUL character"
 msgstr "terminar registos da entrada e da saída com um carácter NUL"
 
-#: builtin/check-ignore.c:18 builtin/checkout.c:1158 builtin/gc.c:352
+#: builtin/check-ignore.c:21 builtin/checkout.c:1482 builtin/gc.c:538
+#: builtin/worktree.c:561
 msgid "suppress progress reporting"
 msgstr "suprimir informação de progresso"
 
-#: builtin/check-ignore.c:26
+#: builtin/check-ignore.c:29
 msgid "show non-matching input paths"
 msgstr "mostrar caminhos de entrada sem correspondência"
 
-#: builtin/check-ignore.c:28
+#: builtin/check-ignore.c:31
 msgid "ignore index when checking"
 msgstr "ignorar o índice ao verificar"
 
-#: builtin/check-ignore.c:154
+#: builtin/check-ignore.c:163
 msgid "cannot specify pathnames with --stdin"
 msgstr "não é possível especificar caminhos com --stdin"
 
-#: builtin/check-ignore.c:157
+#: builtin/check-ignore.c:166
 msgid "-z only makes sense with --stdin"
 msgstr "-z só faz sentido com --stdin"
 
-#: builtin/check-ignore.c:159
+#: builtin/check-ignore.c:168
 msgid "no path specified"
 msgstr "nenhum caminho especificado"
 
-#: builtin/check-ignore.c:163
+#: builtin/check-ignore.c:172
 msgid "--quiet is only valid with a single pathname"
 msgstr "--quiet só é válido com um único caminho"
 
-#: builtin/check-ignore.c:165
+#: builtin/check-ignore.c:174
 msgid "cannot have both --quiet and --verbose"
 msgstr "não é possível usar --quiet e --verbose simultaneamente"
 
-#: builtin/check-ignore.c:168
+#: builtin/check-ignore.c:177
 msgid "--non-matching is only valid with --verbose"
 msgstr "--non-matching só é válido com --verbose"
 
-#: builtin/check-mailmap.c:8
+#: builtin/check-mailmap.c:9
 msgid "git check-mailmap [<options>] <contact>..."
 msgstr "git check-mailmap [<opções>] <contacto>..."
 
-#: builtin/check-mailmap.c:13
+#: builtin/check-mailmap.c:14
 msgid "also read contacts from stdin"
 msgstr "também ler contactos da entrada padrão"
 
-#: builtin/check-mailmap.c:24
+#: builtin/check-mailmap.c:25
 #, c-format
 msgid "unable to parse contact: %s"
 msgstr "não é possível analisar o contacto: %s"
 
-#: builtin/check-mailmap.c:47
+#: builtin/check-mailmap.c:48
 msgid "no contacts specified"
 msgstr "nenhum contacto especificado"
 
-#: builtin/checkout-index.c:127
+#: builtin/checkout-index.c:131
 msgid "git checkout-index [<options>] [--] [<file>...]"
 msgstr "git checkout-index [<opções>] [--] [<ficheiro>...]"
 
-#: builtin/checkout-index.c:144
+#: builtin/checkout-index.c:148
 msgid "stage should be between 1 and 3 or all"
 msgstr "stage deve ser um número entre 1 e 3 ou o parâmetro all"
 
-#: builtin/checkout-index.c:160
+#: builtin/checkout-index.c:164
 msgid "check out all files in the index"
 msgstr "extrair todos os ficheiros presentes no índice"
 
-#: builtin/checkout-index.c:161
+#: builtin/checkout-index.c:165
 msgid "force overwrite of existing files"
 msgstr "forçar substituição dos ficheiros existentes"
 
-#: builtin/checkout-index.c:163
+#: builtin/checkout-index.c:167
 msgid "no warning for existing files and files not in index"
 msgstr ""
 "não mostrar aviso para ficheiros existentes e ficheiros não presentes no "
 "índice"
 
-#: builtin/checkout-index.c:165
+#: builtin/checkout-index.c:169
 msgid "don't checkout new files"
 msgstr "não extrair novos ficheiros"
 
-#: builtin/checkout-index.c:167
+#: builtin/checkout-index.c:171
 msgid "update stat information in the index file"
 msgstr "atualizar informação de stat no ficheiro de índice"
 
-#: builtin/checkout-index.c:171
+#: builtin/checkout-index.c:175
 msgid "read list of paths from the standard input"
 msgstr "ler lista de caminhos da entrada padrão"
 
-#: builtin/checkout-index.c:173
+#: builtin/checkout-index.c:177
 msgid "write the content to temporary files"
 msgstr "escrever o conteúdo em ficheiros temporários"
 
-#: builtin/checkout-index.c:174 builtin/column.c:30
-#: builtin/submodule--helper.c:635 builtin/submodule--helper.c:638
-#: builtin/submodule--helper.c:644 builtin/submodule--helper.c:980
-#: builtin/worktree.c:472
+#: builtin/checkout-index.c:178 builtin/column.c:31
+#: builtin/submodule--helper.c:1824 builtin/submodule--helper.c:1827
+#: builtin/submodule--helper.c:1835 builtin/submodule--helper.c:2333
+#: builtin/worktree.c:754
 msgid "string"
 msgstr "cadeia"
 
-#: builtin/checkout-index.c:175
+#: builtin/checkout-index.c:179
 msgid "when creating files, prepend <string>"
 msgstr "preceder <cadeia> ao criar ficheiros"
 
-#: builtin/checkout-index.c:177
+#: builtin/checkout-index.c:181
 msgid "copy out the files from named stage"
 msgstr "copiar os ficheiros do estágio indicado"
 
-#: builtin/checkout.c:27
+#: builtin/checkout.c:31
 msgid "git checkout [<options>] <branch>"
 msgstr "git checkout [<opções>] <ramo>"
 
-#: builtin/checkout.c:28
+#: builtin/checkout.c:32
 msgid "git checkout [<options>] [<branch>] -- <file>..."
 msgstr "git checkout [<opções>] [<ramo>] -- <ficheiro>..."
 
-#: builtin/checkout.c:153 builtin/checkout.c:186
+#: builtin/checkout.c:37
+#, fuzzy
+msgid "git switch [<options>] [<branch>]"
+msgstr "git checkout [<opções>] <ramo>"
+
+#: builtin/checkout.c:42
+#, fuzzy
+msgid "git restore [<options>] [--source=<branch>] <file>..."
+msgstr "git checkout [<opções>] [<ramo>] -- <ficheiro>..."
+
+#: builtin/checkout.c:188 builtin/checkout.c:227
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "o caminho '%s' não tem a nossa versão"
 
-#: builtin/checkout.c:155 builtin/checkout.c:188
+#: builtin/checkout.c:190 builtin/checkout.c:229
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "o caminho '%s' não tem a versão deles"
 
-#: builtin/checkout.c:171
+#: builtin/checkout.c:206
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr "o caminho '%s' não tem todas as versões necessárias"
 
-#: builtin/checkout.c:215
+#: builtin/checkout.c:258
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr "o caminho '%s' não tem as versões necessárias"
 
-#: builtin/checkout.c:232
+#: builtin/checkout.c:275
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "caminho '%s': não é possível integrar"
 
-#: builtin/checkout.c:249
+#: builtin/checkout.c:291
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "Não é possível adicionar os resultados da integração de '%s'"
 
-#: builtin/checkout.c:269 builtin/checkout.c:272 builtin/checkout.c:275
-#: builtin/checkout.c:278
+#: builtin/checkout.c:396
+#, c-format
+msgid "Recreated %d merge conflict"
+msgid_plural "Recreated %d merge conflicts"
+msgstr[0] ""
+msgstr[1] ""
+
+#: builtin/checkout.c:401
+#, fuzzy, c-format
+msgid "Updated %d path from %s"
+msgid_plural "Updated %d paths from %s"
+msgstr[0] "%d caminho atualizado\n"
+msgstr[1] "%d caminhos atualizados\n"
+
+#: builtin/checkout.c:408
+#, fuzzy, c-format
+msgid "Updated %d path from the index"
+msgid_plural "Updated %d paths from the index"
+msgstr[0] "falha ao ler o índice"
+msgstr[1] "falha ao ler o índice"
+
+#: builtin/checkout.c:431 builtin/checkout.c:434 builtin/checkout.c:437
+#: builtin/checkout.c:441
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr "'%s' não pode ser usado com caminhos em atualização"
 
-#: builtin/checkout.c:281 builtin/checkout.c:284
+#: builtin/checkout.c:444 builtin/checkout.c:447
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' não pode ser usado com %s"
 
-#: builtin/checkout.c:287
+#: builtin/checkout.c:451
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr ""
 "Não é possível atualizar os caminhos e mudar para o ramo '%s' ao mesmo tempo."
 
-#: builtin/checkout.c:358 builtin/checkout.c:365
+#: builtin/checkout.c:455
+#, c-format
+msgid "neither '%s' or '%s' is specified"
+msgstr ""
+
+#: builtin/checkout.c:459
+#, fuzzy, c-format
+msgid "'%s' must be used when '%s' is not specified"
+msgstr "'%s' não pode ser usado com '%s'"
+
+#: builtin/checkout.c:464 builtin/checkout.c:469
+#, fuzzy, c-format
+msgid "'%s' or '%s' cannot be used with %s"
+msgstr "%s: %s não pode ser usado com %s"
+
+#: builtin/checkout.c:528 builtin/checkout.c:535
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "o caminho '%s' não foi integrado"
 
-#: builtin/checkout.c:513
+#: builtin/checkout.c:703
 msgid "you need to resolve your current index first"
 msgstr "primeiro deve resolver o índice atual"
 
-#: builtin/checkout.c:644
+#: builtin/checkout.c:757
+#, c-format
+msgid ""
+"cannot continue with staged changes in the following files:\n"
+"%s"
+msgstr ""
+
+#: builtin/checkout.c:853
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Não é possível efetuar reflog de '%s': %s\n"
 
-#: builtin/checkout.c:685
+#: builtin/checkout.c:895
 msgid "HEAD is now at"
 msgstr "HEAD está agora em"
 
-#: builtin/checkout.c:689 builtin/clone.c:678
+#: builtin/checkout.c:899 builtin/clone.c:720
 msgid "unable to update HEAD"
 msgstr "não foi possível atualizar HEAD"
 
-#: builtin/checkout.c:693
+#: builtin/checkout.c:903
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Repor ramo '%s'\n"
 
-#: builtin/checkout.c:696
+#: builtin/checkout.c:906
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Já em '%s'\n"
 
-#: builtin/checkout.c:700
+#: builtin/checkout.c:910
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Mudou para e repôs o ramo '%s'\n"
 
-#: builtin/checkout.c:702 builtin/checkout.c:1090
+#: builtin/checkout.c:912 builtin/checkout.c:1338
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Mudou para o novo ramo '%s'\n"
 
-#: builtin/checkout.c:704
+#: builtin/checkout.c:914
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Mudou para o ramo '%s'\n"
 
-#: builtin/checkout.c:755
+#: builtin/checkout.c:965
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... e mais %d.\n"
 
-#: builtin/checkout.c:761
+#: builtin/checkout.c:971
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -6061,7 +11831,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:780
+#: builtin/checkout.c:990
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -6088,166 +11858,256 @@ msgstr[1] ""
 " git branch <nome-do-novo-ramo> %s\n"
 "\n"
 
-#: builtin/checkout.c:816
+#: builtin/checkout.c:1025
 msgid "internal error in revision walk"
 msgstr "erro interno durante o curso de revisões"
 
-#: builtin/checkout.c:820
+#: builtin/checkout.c:1029
 msgid "Previous HEAD position was"
 msgstr "A posição anterior de HEAD era"
 
-#: builtin/checkout.c:847 builtin/checkout.c:1085
+#: builtin/checkout.c:1069 builtin/checkout.c:1333
 msgid "You are on a branch yet to be born"
 msgstr "Está num ramo ainda não criado"
 
-#: builtin/checkout.c:991
+#: builtin/checkout.c:1146
+#, c-format
+msgid ""
+"'%s' could be both a local file and a tracking branch.\n"
+"Please use -- (and optionally --no-guess) to disambiguate"
+msgstr ""
+
+#: builtin/checkout.c:1153
+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 ""
+
+#: builtin/checkout.c:1163
+#, fuzzy, c-format
+msgid "'%s' matched multiple (%d) remote tracking branches"
+msgstr "atuar sobre ramos de monitorização remotos"
+
+#: builtin/checkout.c:1229
+#, fuzzy
+msgid "only one reference expected"
+msgstr "esperava-se apenas uma referência, %d fornecidas."
+
+#: builtin/checkout.c:1246
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "esperava-se apenas uma referência, %d fornecidas."
 
-#: builtin/checkout.c:1031 builtin/worktree.c:214
+#: builtin/checkout.c:1292 builtin/worktree.c:342 builtin/worktree.c:510
 #, c-format
 msgid "invalid reference: %s"
 msgstr "referência inválida: %s"
 
-#: builtin/checkout.c:1060
+#: builtin/checkout.c:1305 builtin/checkout.c:1671
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "a referência não é uma árvore: %s"
 
-#: builtin/checkout.c:1099
+#: builtin/checkout.c:1352
+#, fuzzy, c-format
+msgid "a branch is expected, got tag '%s'"
+msgstr "Não é possível eliminar o ramo '%s' extraído em '%s'"
+
+#: builtin/checkout.c:1354
+#, fuzzy, c-format
+msgid "a branch is expected, got remote branch '%s'"
+msgstr "Ramo %s configurado para seguir o ramo remoto %s de %s."
+
+#: builtin/checkout.c:1355 builtin/checkout.c:1363
+#, fuzzy, c-format
+msgid "a branch is expected, got '%s'"
+msgstr "O ramo %s está a ser bissetado em %s"
+
+#: builtin/checkout.c:1358
+#, fuzzy, c-format
+msgid "a branch is expected, got commit '%s'"
+msgstr "O seu ramo está atualizado com '%s'.\n"
+
+#: builtin/checkout.c:1374
+msgid ""
+"cannot switch branch while merging\n"
+"Consider \"git merge --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1378
+msgid ""
+"cannot switch branch in the middle of an am session\n"
+"Consider \"git am --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1382
+msgid ""
+"cannot switch branch while rebasing\n"
+"Consider \"git rebase --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1386
+msgid ""
+"cannot switch branch while cherry-picking\n"
+"Consider \"git cherry-pick --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1390
+msgid ""
+"cannot switch branch while reverting\n"
+"Consider \"git revert --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1394
+#, fuzzy
+msgid "you are switching branch while bisecting"
+msgstr "Está a bissetar neste momento."
+
+#: builtin/checkout.c:1401
 msgid "paths cannot be used with switching branches"
 msgstr "não podem ser usados caminhos ao mudar de ramo"
 
-#: builtin/checkout.c:1102 builtin/checkout.c:1106
+#: builtin/checkout.c:1404 builtin/checkout.c:1408 builtin/checkout.c:1412
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "'%s' não pode ser usado ao mudar de ramo"
 
-#: builtin/checkout.c:1110 builtin/checkout.c:1113 builtin/checkout.c:1118
-#: builtin/checkout.c:1121
+#: builtin/checkout.c:1416 builtin/checkout.c:1419 builtin/checkout.c:1422
+#: builtin/checkout.c:1427 builtin/checkout.c:1432
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' não pode ser usado com '%s'"
 
-#: builtin/checkout.c:1126
+#: builtin/checkout.c:1429
+#, fuzzy, c-format
+msgid "'%s' cannot take <start-point>"
+msgstr "'%s' não pode ser usado com caminhos em atualização"
+
+#: builtin/checkout.c:1437
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr "Não é possível mudar de ramo para '%s', visto que não é um commit"
 
-#: builtin/checkout.c:1159 builtin/checkout.c:1161 builtin/clone.c:111
-#: builtin/remote.c:165 builtin/remote.c:167 builtin/worktree.c:325
-#: builtin/worktree.c:327
-msgid "branch"
-msgstr "ramo"
+#: builtin/checkout.c:1444
+#, fuzzy
+msgid "missing branch or commit argument"
+msgstr "Falta um nome dum ramo; tente -b"
 
-#: builtin/checkout.c:1160
-msgid "create and checkout a new branch"
-msgstr "criar e extrair um novo ramo"
+#: builtin/checkout.c:1486 builtin/clone.c:91 builtin/commit-graph.c:84
+#: builtin/commit-graph.c:222 builtin/fetch.c:172 builtin/merge.c:287
+#: builtin/multi-pack-index.c:27 builtin/pull.c:119 builtin/push.c:551
+#: builtin/send-pack.c:192
+msgid "force progress reporting"
+msgstr "forçar informação de progresso"
 
-#: builtin/checkout.c:1162
-msgid "create/reset and checkout a branch"
-msgstr "criar/repor e extrair um ramo"
+#: builtin/checkout.c:1487
+msgid "perform a 3-way merge with the new branch"
+msgstr "realizar uma integração com 3 pontos com o novo ramo"
 
-#: builtin/checkout.c:1163
-msgid "create reflog for new branch"
-msgstr "criar reflog do novo ramo"
+#: builtin/checkout.c:1488 builtin/log.c:1795 parse-options.h:322
+msgid "style"
+msgstr "estilo"
 
-#: builtin/checkout.c:1164 builtin/worktree.c:329
+#: builtin/checkout.c:1489
+msgid "conflict style (merge or diff3)"
+msgstr "estilo de conflito (merge ou diff3)"
+
+#: builtin/checkout.c:1501 builtin/worktree.c:558
 msgid "detach HEAD at named commit"
 msgstr "destacar HEAD no commit indicado"
 
-#: builtin/checkout.c:1165
+#: builtin/checkout.c:1502
 msgid "set upstream info for new branch"
 msgstr "definir a informação do ramo a montante do novo ramo"
 
-#: builtin/checkout.c:1167
+#: builtin/checkout.c:1504
+msgid "force checkout (throw away local modifications)"
+msgstr "forçar extração (descartar modificações locais)"
+
+#: builtin/checkout.c:1506
 msgid "new-branch"
 msgstr "novo-ramo"
 
-#: builtin/checkout.c:1167
+#: builtin/checkout.c:1506
 msgid "new unparented branch"
 msgstr "novo ramo sem pai"
 
-#: builtin/checkout.c:1168
+#: builtin/checkout.c:1508 builtin/merge.c:291
+msgid "update ignored files (default)"
+msgstr "atualizar ficheiros ignorados (predefinição)"
+
+#: builtin/checkout.c:1511
+msgid "do not check if another worktree is holding the given ref"
+msgstr ""
+"não verificar se outra árvore de trabalho contém a referência fornecida"
+
+#: builtin/checkout.c:1524
 msgid "checkout our version for unmerged files"
 msgstr "extrair a nossa versão dos ficheiros não integrados"
 
-#: builtin/checkout.c:1170
+#: builtin/checkout.c:1527
 msgid "checkout their version for unmerged files"
 msgstr "extrair a versão deles dos ficheiros não integrados"
 
-#: builtin/checkout.c:1172
-msgid "force checkout (throw away local modifications)"
-msgstr "forçar extração (descartar modificações locais)"
-
-#: builtin/checkout.c:1173
-msgid "perform a 3-way merge with the new branch"
-msgstr "realizar uma integração com 3 pontos com o novo ramo"
-
-#: builtin/checkout.c:1174 builtin/merge.c:234
-msgid "update ignored files (default)"
-msgstr "atualizar ficheiros ignorados (predefinição)"
-
-#: builtin/checkout.c:1175 builtin/log.c:1473 parse-options.h:251
-msgid "style"
-msgstr "estilo"
-
-#: builtin/checkout.c:1176
-msgid "conflict style (merge or diff3)"
-msgstr "estilo de conflito (merge ou diff3)"
-
-#: builtin/checkout.c:1179
+#: builtin/checkout.c:1531
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "não restringir especificadores de caminho a entradas esparsas"
 
-#: builtin/checkout.c:1181
-msgid "second guess 'git checkout <no-such-branch>'"
-msgstr "tentar adivinhar 'git checkout <ramo-inexistente>'"
-
-#: builtin/checkout.c:1183
-msgid "do not check if another worktree is holding the given ref"
-msgstr ""
-"não verificar se outra árvore de trabalho contém a referência fornecida"
-
-#: builtin/checkout.c:1187 builtin/clone.c:78 builtin/fetch.c:119
-#: builtin/merge.c:231 builtin/pull.c:117 builtin/push.c:539
-#: builtin/send-pack.c:172
-msgid "force progress reporting"
-msgstr "forçar informação de progresso"
+#: builtin/checkout.c:1586
+#, fuzzy, c-format
+msgid "-%c, -%c and --orphan are mutually exclusive"
+msgstr "-b, -B e --orphan são mutuamente exclusivos"
 
-#: builtin/checkout.c:1224
-msgid "-b, -B and --orphan are mutually exclusive"
+#: builtin/checkout.c:1590
+#, fuzzy
+msgid "-p and --overlay are mutually exclusive"
 msgstr "-b, -B e --orphan são mutuamente exclusivos"
 
-#: builtin/checkout.c:1241
+#: builtin/checkout.c:1627
 msgid "--track needs a branch name"
 msgstr "--track requer um nome dum ramo"
 
-#: builtin/checkout.c:1246
-msgid "Missing branch name; try -b"
+#: builtin/checkout.c:1632
+#, fuzzy, c-format
+msgid "missing branch name; try -%c"
 msgstr "Falta um nome dum ramo; tente -b"
 
-#: builtin/checkout.c:1282
+#: builtin/checkout.c:1664
+#, fuzzy, c-format
+msgid "could not resolve %s"
+msgstr "não foi possível remover '%s'"
+
+#: builtin/checkout.c:1680
 msgid "invalid path specification"
 msgstr "especificação de caminho inválida"
 
-#: builtin/checkout.c:1289
+#: builtin/checkout.c:1687
 #, c-format
-msgid ""
-"Cannot update paths and switch to branch '%s' at the same time.\n"
-"Did you intend to checkout '%s' which can not be resolved as commit?"
+msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
-"Não é possível atualizar os caminho e mudar para o ramo '%s' ao mesmo "
-"tempo.\n"
-"Pretendia extrair '%s' o qual não pode ser resolvido como commit?"
 
-#: builtin/checkout.c:1294
+#: builtin/checkout.c:1691
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr "git checkout: --detach não aceita um caminho como argumento '%s'"
 
-#: builtin/checkout.c:1298
+#: builtin/checkout.c:1700
+#, fuzzy
+msgid "--pathspec-from-file is incompatible with --detach"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/checkout.c:1703 builtin/reset.c:325 builtin/stash.c:1500
+#, fuzzy
+msgid "--pathspec-from-file is incompatible with --patch"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/checkout.c:1716
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -6255,38 +12115,120 @@ msgstr ""
 "git checkout: --ours/--theirs, --force e --merge são incompatíveis\n"
 "durante a extração do índice."
 
-#: builtin/clean.c:25
+#: builtin/checkout.c:1721
+#, fuzzy
+msgid "you must specify path(s) to restore"
+msgstr "Deve especificar um diretório."
+
+#: builtin/checkout.c:1747 builtin/checkout.c:1749 builtin/checkout.c:1798
+#: builtin/checkout.c:1800 builtin/clone.c:121 builtin/remote.c:170
+#: builtin/remote.c:172 builtin/submodule--helper.c:2719 builtin/worktree.c:554
+#: builtin/worktree.c:556
+msgid "branch"
+msgstr "ramo"
+
+#: builtin/checkout.c:1748
+msgid "create and checkout a new branch"
+msgstr "criar e extrair um novo ramo"
+
+#: builtin/checkout.c:1750
+msgid "create/reset and checkout a branch"
+msgstr "criar/repor e extrair um ramo"
+
+#: builtin/checkout.c:1751
+msgid "create reflog for new branch"
+msgstr "criar reflog do novo ramo"
+
+#: builtin/checkout.c:1753
+#, fuzzy
+msgid "second guess 'git checkout <no-such-branch>' (default)"
+msgstr "tentar adivinhar 'git checkout <ramo-inexistente>'"
+
+#: builtin/checkout.c:1754
+#, fuzzy
+msgid "use overlay mode (default)"
+msgstr "eliminar referências soltas (predefinição)"
+
+#: builtin/checkout.c:1799
+#, fuzzy
+msgid "create and switch to a new branch"
+msgstr "criar e extrair um novo ramo"
+
+#: builtin/checkout.c:1801
+#, fuzzy
+msgid "create/reset and switch to a branch"
+msgstr "criar/repor e extrair um ramo"
+
+#: builtin/checkout.c:1803
+#, fuzzy
+msgid "second guess 'git switch <no-such-branch>'"
+msgstr "tentar adivinhar 'git checkout <ramo-inexistente>'"
+
+#: builtin/checkout.c:1805
+#, fuzzy
+msgid "throw away local modifications"
+msgstr "forçar extração (descartar modificações locais)"
+
+#: builtin/checkout.c:1839
+msgid "which tree-ish to checkout from"
+msgstr ""
+
+#: builtin/checkout.c:1841
+#, fuzzy
+msgid "restore the index"
+msgstr "falha ao ler o índice"
+
+#: builtin/checkout.c:1843
+#, fuzzy
+msgid "restore the working tree (default)"
+msgstr "Mostrar o estado da árvores de trabalho"
+
+#: builtin/checkout.c:1845
+#, fuzzy
+msgid "ignore unmerged entries"
+msgstr "ignorado não integrado: %s\n"
+
+#: builtin/checkout.c:1846
+msgid "use overlay mode"
+msgstr ""
+
+#: builtin/clean.c:29
 msgid ""
 "git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
 msgstr ""
 "git clean [-d] [-f] [-i] [-n] [-q] [-e <padrão>] [-x | -X] [--] <caminhos>..."
 
-#: builtin/clean.c:29
+#: builtin/clean.c:33
 #, c-format
 msgid "Removing %s\n"
 msgstr "A remover %s\n"
 
-#: builtin/clean.c:30
+#: builtin/clean.c:34
 #, c-format
 msgid "Would remove %s\n"
 msgstr "Removeria %s\n"
 
-#: builtin/clean.c:31
+#: builtin/clean.c:35
 #, c-format
 msgid "Skipping repository %s\n"
 msgstr "A ignorar o repositório %s\n"
 
-#: builtin/clean.c:32
+#: builtin/clean.c:36
 #, c-format
 msgid "Would skip repository %s\n"
 msgstr "Ignoraria o repositório %s\n"
 
-#: builtin/clean.c:33
+#: builtin/clean.c:37
 #, c-format
 msgid "failed to remove %s"
 msgstr "falha ao remover %s"
 
-#: builtin/clean.c:297 git-add--interactive.perl:614
+#: builtin/clean.c:38
+#, fuzzy, c-format
+msgid "could not lstat %s\n"
+msgstr "não foi possível obter stat de %s"
+
+#: builtin/clean.c:302 git-add--interactive.perl:595
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -6299,7 +12241,7 @@ msgstr ""
 "foo        - selecionar item baseado no prefixo único\n"
 "           - (vazio) não seleciona nada\n"
 
-#: builtin/clean.c:301 git-add--interactive.perl:623
+#: builtin/clean.c:306 git-add--interactive.perl:604
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -6320,13 +12262,13 @@ msgstr ""
 "*          - escolher todos os itens\n"
 "           - (vazio) concluir seleção\n"
 
-#: builtin/clean.c:517 git-add--interactive.perl:589
-#: git-add--interactive.perl:594
+#: builtin/clean.c:521 git-add--interactive.perl:570
+#: git-add--interactive.perl:575
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr "O quê (%s)?\n"
 
-#: builtin/clean.c:659
+#: builtin/clean.c:661
 #, c-format
 msgid "Input ignore patterns>> "
 msgstr "Introduza padrões a ignorar>> "
@@ -6346,12 +12288,7 @@ msgstr "Selecione itens para eliminar"
 msgid "Remove %s [y/N]? "
 msgstr "Remover %s [y/N]? "
 
-#: builtin/clean.c:783 git-add--interactive.perl:1660
-#, c-format
-msgid "Bye.\n"
-msgstr "Adeus.\n"
-
-#: builtin/clean.c:791
+#: builtin/clean.c:789
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -6369,63 +12306,52 @@ msgstr ""
 "help                - esta ajuda\n"
 "?                   - ajuda para seleção em linha de comandos"
 
-#: builtin/clean.c:818 git-add--interactive.perl:1736
-msgid "*** Commands ***"
-msgstr "*** Comandos ***"
-
-#: builtin/clean.c:819 git-add--interactive.perl:1733
-msgid "What now"
-msgstr "E agora"
-
-#: builtin/clean.c:827
+#: builtin/clean.c:825
 msgid "Would remove the following item:"
 msgid_plural "Would remove the following items:"
 msgstr[0] "Removeria o seguinte item:"
 msgstr[1] "Removeria os seguintes itens:"
 
-#: builtin/clean.c:844
+#: builtin/clean.c:841
 msgid "No more files to clean, exiting."
 msgstr "Não há mais ficheiros por limpar, a terminar."
 
-#: builtin/clean.c:875
+#: builtin/clean.c:903
 msgid "do not print names of files removed"
 msgstr "não imprimir os nomes dos ficheiros removidos"
 
-#: builtin/clean.c:877
+#: builtin/clean.c:905
 msgid "force"
 msgstr "forçar"
 
-#: builtin/clean.c:878
+#: builtin/clean.c:906
 msgid "interactive cleaning"
 msgstr "limpeza interativa"
 
-#: builtin/clean.c:880
+#: builtin/clean.c:908
 msgid "remove whole directories"
 msgstr "remover diretórios inteiros"
 
-#: builtin/clean.c:881 builtin/describe.c:449 builtin/describe.c:451
-#: builtin/grep.c:1063 builtin/ls-files.c:539 builtin/name-rev.c:348
-#: builtin/name-rev.c:350 builtin/show-ref.c:176
+#: builtin/clean.c:909 builtin/describe.c:565 builtin/describe.c:567
+#: builtin/grep.c:910 builtin/log.c:181 builtin/log.c:183
+#: builtin/ls-files.c:558 builtin/name-rev.c:526 builtin/name-rev.c:528
+#: builtin/show-ref.c:179
 msgid "pattern"
 msgstr "padrão"
 
-#: builtin/clean.c:882
+#: builtin/clean.c:910
 msgid "add <pattern> to ignore rules"
 msgstr "adicionar <padrão> às regras ignoradas"
 
-#: builtin/clean.c:883
+#: builtin/clean.c:911
 msgid "remove ignored files, too"
 msgstr "também remover ficheiros ignorados"
 
-#: builtin/clean.c:885
+#: builtin/clean.c:913
 msgid "remove only ignored files"
 msgstr "remover apenas ficheiros ignorados"
 
-#: builtin/clean.c:903
-msgid "-x and -X cannot be used together"
-msgstr "-x e -X não pode ser usados juntos"
-
-#: builtin/clean.c:907
+#: builtin/clean.c:929
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
@@ -6433,7 +12359,7 @@ msgstr ""
 "clean.requireForce definido como true e nenhum -i, -n, ou -f fornecido; "
 "limpeza recusada"
 
-#: builtin/clean.c:910
+#: builtin/clean.c:932
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -6441,138 +12367,171 @@ msgstr ""
 "clean.requireForce predefinido como true e nenhum -i, -n, ou -f fornecido; "
 "limpeza recusada"
 
-#: builtin/clone.c:37
+#: builtin/clean.c:944
+msgid "-x and -X cannot be used together"
+msgstr "-x e -X não pode ser usados juntos"
+
+#: builtin/clone.c:45
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<opções>] [--] <repo> [<dir>]"
 
-#: builtin/clone.c:80
+#: builtin/clone.c:93
 msgid "don't create a checkout"
 msgstr "não criar uma extração"
 
-#: builtin/clone.c:81 builtin/clone.c:83 builtin/init-db.c:478
+#: builtin/clone.c:94 builtin/clone.c:96 builtin/init-db.c:553
 msgid "create a bare repository"
 msgstr "criar um repositório nu"
 
-#: builtin/clone.c:85
+#: builtin/clone.c:98
 msgid "create a mirror repository (implies bare)"
 msgstr "criar um repositório espelhado (implica repositório nu)"
 
-#: builtin/clone.c:87
+#: builtin/clone.c:100
 msgid "to clone from a local repository"
 msgstr "para clonar de um repositório local"
 
-#: builtin/clone.c:89
+#: builtin/clone.c:102
 msgid "don't use local hardlinks, always copy"
 msgstr "não usar ligações fixas, copiar sempre"
 
-#: builtin/clone.c:91
+#: builtin/clone.c:104
 msgid "setup as shared repository"
 msgstr "configurar como repositório partilhado"
 
-#: builtin/clone.c:93 builtin/clone.c:97
+#: builtin/clone.c:106
 msgid "pathspec"
 msgstr "pathspec"
 
-#: builtin/clone.c:93 builtin/clone.c:97
+#: builtin/clone.c:106
 msgid "initialize submodules in the clone"
 msgstr "inicializar submódulos no clone"
 
-#: builtin/clone.c:100
+#: builtin/clone.c:110
 msgid "number of submodules cloned in parallel"
 msgstr "número de submódulos clonados em paralelo"
 
-#: builtin/clone.c:101 builtin/init-db.c:475
+#: builtin/clone.c:111 builtin/init-db.c:550
 msgid "template-directory"
 msgstr "diretório-modelo"
 
-#: builtin/clone.c:102 builtin/init-db.c:476
+#: builtin/clone.c:112 builtin/init-db.c:551
 msgid "directory from which templates will be used"
 msgstr "diretório que contém os modelos usados"
 
-#: builtin/clone.c:104 builtin/clone.c:106 builtin/submodule--helper.c:642
-#: builtin/submodule--helper.c:983
+#: builtin/clone.c:114 builtin/clone.c:116 builtin/submodule--helper.c:1831
+#: builtin/submodule--helper.c:2336
 msgid "reference repository"
 msgstr "repositório de referência"
 
-#: builtin/clone.c:108
+#: builtin/clone.c:118 builtin/submodule--helper.c:1833
+#: builtin/submodule--helper.c:2338
 msgid "use --reference only while cloning"
 msgstr "usar --reference apenas para clonar"
 
-#: builtin/clone.c:109 builtin/column.c:26 builtin/merge-file.c:43
+#: builtin/clone.c:119 builtin/column.c:27 builtin/init-db.c:561
+#: builtin/merge-file.c:46 builtin/pack-objects.c:3546 builtin/repack.c:332
 msgid "name"
 msgstr "nome"
 
-#: builtin/clone.c:110
+#: builtin/clone.c:120
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "usar <nome> em vez de 'origin' para seguir o ramo a montante"
 
-#: builtin/clone.c:112
+#: builtin/clone.c:122
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "extrair <ramo> em vez da HEAD do remoto"
 
-#: builtin/clone.c:114
+#: builtin/clone.c:124
 msgid "path to git-upload-pack on the remote"
 msgstr "caminho para git-upload-pack no remoto"
 
-#: builtin/clone.c:115 builtin/fetch.c:120 builtin/grep.c:1006
-#: builtin/pull.c:202
+#: builtin/clone.c:125 builtin/fetch.c:173 builtin/grep.c:849
+#: builtin/pull.c:208
 msgid "depth"
 msgstr "profundidade"
 
-#: builtin/clone.c:116
+#: builtin/clone.c:126
 msgid "create a shallow clone of that depth"
 msgstr "criar um clone raso com essa profundidade"
 
-#: builtin/clone.c:117 builtin/fetch.c:122 builtin/pack-objects.c:2918
-#: parse-options.h:142
+#: builtin/clone.c:127 builtin/fetch.c:175 builtin/pack-objects.c:3535
+#: builtin/pull.c:211
 msgid "time"
 msgstr "hora"
 
-#: builtin/clone.c:118
+#: builtin/clone.c:128
 msgid "create a shallow clone since a specific time"
 msgstr "criar um clone raso desde uma data específica"
 
-#: builtin/clone.c:119 builtin/fetch.c:124
+#: builtin/clone.c:129 builtin/fetch.c:177 builtin/fetch.c:200
+#: builtin/pull.c:214 builtin/pull.c:239 builtin/rebase.c:1311
 msgid "revision"
 msgstr "revisão"
 
-#: builtin/clone.c:120 builtin/fetch.c:125
+#: builtin/clone.c:130 builtin/fetch.c:178 builtin/pull.c:215
 msgid "deepen history of shallow clone, excluding rev"
 msgstr "aprofundar o histórico de um clone raso, excluindo a revisão"
 
-#: builtin/clone.c:122
+#: builtin/clone.c:132 builtin/submodule--helper.c:1843
+#: builtin/submodule--helper.c:2352
 msgid "clone only one branch, HEAD or --branch"
 msgstr "clonar apenas um ramo, HEAD ou --branch"
 
-#: builtin/clone.c:124
+#: builtin/clone.c:134
+msgid "don't clone any tags, and make later fetches not to follow them"
+msgstr ""
+
+#: builtin/clone.c:136
 msgid "any cloned submodules will be shallow"
 msgstr "qualquer submódulo clonado será raso"
 
-#: builtin/clone.c:125 builtin/init-db.c:484
+#: builtin/clone.c:137 builtin/init-db.c:559
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:126 builtin/init-db.c:485
+#: builtin/clone.c:138 builtin/init-db.c:560
 msgid "separate git dir from working tree"
 msgstr "separar o repositório git da árvore de trabalho"
 
-#: builtin/clone.c:127
+#: builtin/clone.c:139
 msgid "key=value"
 msgstr "chave=valor"
 
-#: builtin/clone.c:128
+#: builtin/clone.c:140
 msgid "set config inside the new repository"
 msgstr "definir configuração dentro do novo repositório"
 
-#: builtin/clone.c:129 builtin/fetch.c:140 builtin/push.c:550
+#: builtin/clone.c:142 builtin/fetch.c:195 builtin/ls-remote.c:76
+#: builtin/pull.c:230 builtin/push.c:560 builtin/send-pack.c:190
+msgid "server-specific"
+msgstr "específico do servidor"
+
+#: builtin/clone.c:142 builtin/fetch.c:195 builtin/ls-remote.c:76
+#: builtin/pull.c:231 builtin/push.c:560 builtin/send-pack.c:191
+msgid "option to transmit"
+msgstr "opção para transmitir"
+
+#: builtin/clone.c:143 builtin/fetch.c:196 builtin/pull.c:234
+#: builtin/push.c:561
 msgid "use IPv4 addresses only"
 msgstr "usar apenas endereços IPv4"
 
-#: builtin/clone.c:131 builtin/fetch.c:142 builtin/push.c:552
+#: builtin/clone.c:145 builtin/fetch.c:198 builtin/pull.c:237
+#: builtin/push.c:563
 msgid "use IPv6 addresses only"
 msgstr "usar apenas endereços IPv6"
 
-#: builtin/clone.c:268
+#: builtin/clone.c:149
+#, fuzzy
+msgid "any cloned submodules will use their remote-tracking branch"
+msgstr "qualquer submódulo clonado será raso"
+
+#: builtin/clone.c:151
+msgid "initialize sparse-checkout file to include only files at root"
+msgstr ""
+
+#: builtin/clone.c:287
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -6580,147 +12539,154 @@ msgstr ""
 "Não foi possível adivinhar o nome do diretório.\n"
 "Especifique um diretório na linha de comandos"
 
-#: builtin/clone.c:321
+#: builtin/clone.c:340
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr "info: Não foi possível adicionar sobressalente de '%s': %s\n"
 
-#: builtin/clone.c:393
-#, c-format
-msgid "failed to open '%s'"
-msgstr "falha ao abrir '%s'"
-
-#: builtin/clone.c:401
+#: builtin/clone.c:413
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s existe e não é um diretório"
 
-#: builtin/clone.c:415
-#, c-format
-msgid "failed to stat %s\n"
-msgstr "falha ao invocar stat de %s\n"
+#: builtin/clone.c:431
+#, fuzzy, c-format
+msgid "failed to start iterator over '%s'"
+msgstr "falha ao escrever para '%s'"
 
-#: builtin/clone.c:437
+#: builtin/clone.c:462
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "falha ao criar a ligação '%s'"
 
-#: builtin/clone.c:441
+#: builtin/clone.c:466
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "falha ao copiar o ficheiro para '%s'"
 
-#: builtin/clone.c:466
+#: builtin/clone.c:471
+#, fuzzy, c-format
+msgid "failed to iterate over '%s'"
+msgstr "falha ao remover '%s'"
+
+#: builtin/clone.c:498
 #, c-format
 msgid "done.\n"
 msgstr "concluído.\n"
 
-#: builtin/clone.c:478
+#: builtin/clone.c:512
+#, fuzzy
 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 ""
 "Clonado com sucesso, mas a extração falhou.\n"
 "Pode inspecionar o que foi extraído com 'git status'\n"
 "e repetir a extração com 'git checkout -f HEAD'\n"
 
-#: builtin/clone.c:555
+#: builtin/clone.c:589
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Ramo remoto %s não encontrado para clonar."
 
-#: builtin/clone.c:650
-msgid "remote did not send all necessary objects"
-msgstr "o remoto não enviou todos os objetos necessários"
-
-#: builtin/clone.c:666
+#: builtin/clone.c:708
 #, c-format
 msgid "unable to update %s"
 msgstr "não foi possível atualizar %s"
 
-#: builtin/clone.c:715
+#: builtin/clone.c:756
+#, fuzzy
+msgid "failed to initialize sparse-checkout"
+msgstr "falha ao finalizar integração de notas"
+
+#: builtin/clone.c:779
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr ""
 "a HEAD remota referencia uma referência inexistente, não é possível "
 "extrair.\n"
 
-#: builtin/clone.c:746
+#: builtin/clone.c:811
 msgid "unable to checkout working tree"
 msgstr "não foi possível extrair a árvore de trabalho"
 
-#: builtin/clone.c:786
+#: builtin/clone.c:868
 msgid "unable to write parameters to config file"
 msgstr "não foi possível escrever os parâmetros no ficheiro de configuração"
 
-#: builtin/clone.c:849
+#: builtin/clone.c:931
 msgid "cannot repack to clean up"
 msgstr "não é possível reempacotar para limpar"
 
-#: builtin/clone.c:851
+#: builtin/clone.c:933
 msgid "cannot unlink temporary alternates file"
 msgstr ""
 "não é possível invocar unlink sobre o ficheiro sobressalente temporário"
 
-#: builtin/clone.c:884 builtin/receive-pack.c:1901
+#: builtin/clone.c:970 builtin/receive-pack.c:2434
 msgid "Too many arguments."
 msgstr "Demasiados argumentos."
 
-#: builtin/clone.c:888
+#: builtin/clone.c:974
 msgid "You must specify a repository to clone."
 msgstr "Deve especificar um repositório para clonar."
 
-#: builtin/clone.c:901
+#: builtin/clone.c:987
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "as opções --bare e --origin %s são incompatíveis."
 
-#: builtin/clone.c:904
+#: builtin/clone.c:990
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "--bare e --separate-git-dir são incompatíveis."
 
-#: builtin/clone.c:917
+#: builtin/clone.c:1006
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "o repositório '%s' não existe"
 
-#: builtin/clone.c:923 builtin/fetch.c:1337
+#: builtin/clone.c:1010 builtin/fetch.c:1841
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "profundidade %s não é um número positivo"
 
-#: builtin/clone.c:933
+#: builtin/clone.c:1020
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr "o caminho de destino '%s' já existe e não é um diretório vazio."
 
-#: builtin/clone.c:943
+#: builtin/clone.c:1026
+#, fuzzy, c-format
+msgid "repository path '%s' already exists and is not an empty directory."
+msgstr "o caminho de destino '%s' já existe e não é um diretório vazio."
+
+#: builtin/clone.c:1040
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "a árvore de trabalho '%s' já existe."
 
-#: builtin/clone.c:958 builtin/clone.c:969 builtin/difftool.c:252
-#: builtin/worktree.c:222 builtin/worktree.c:249
+#: builtin/clone.c:1055 builtin/clone.c:1076 builtin/difftool.c:271
+#: builtin/log.c:1970 builtin/worktree.c:354 builtin/worktree.c:386
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "não foi possível criar os diretórios superiores de '%s'"
 
-#: builtin/clone.c:961
+#: builtin/clone.c:1060
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr "não foi possível criar o diretório de árvore de trabalho '%s'"
 
-#: builtin/clone.c:973
+#: builtin/clone.c:1080
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "A clonar no repositório nu '%s'...\n"
 
-#: builtin/clone.c:975
+#: builtin/clone.c:1082
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "A clonar em '%s'...\n"
 
-#: builtin/clone.c:999
+#: builtin/clone.c:1106
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -6728,65 +12694,65 @@ msgstr ""
 "clone --recursive não é compatível com ambos --reference e --reference-if-"
 "able"
 
-#: builtin/clone.c:1055
+#: builtin/clone.c:1170
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "--depth é ignorado em clones locais; use file:// ."
 
-#: builtin/clone.c:1057
+#: builtin/clone.c:1172
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr "--shallow-since é ignorado em clones locais; use file:// ."
 
-#: builtin/clone.c:1059
+#: builtin/clone.c:1174
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr "--shallow-exclude é ignorado em clones locais; use file:// ."
 
-#: builtin/clone.c:1062
+#: builtin/clone.c:1176
+#, fuzzy
+msgid "--filter is ignored in local clones; use file:// instead."
+msgstr "--depth é ignorado em clones locais; use file:// ."
+
+#: builtin/clone.c:1179
 msgid "source repository is shallow, ignoring --local"
 msgstr "o repositório de origem é raso, --local ignorado"
 
-#: builtin/clone.c:1067
+#: builtin/clone.c:1184
 msgid "--local is ignored"
 msgstr "--local ignorado"
 
-#: builtin/clone.c:1071
-#, c-format
-msgid "Don't know how to clone %s"
-msgstr "Não sei como clonar %s"
-
-#: builtin/clone.c:1126 builtin/clone.c:1134
+#: builtin/clone.c:1268 builtin/clone.c:1276
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "O ramo remoto %s não foi encontrado no repositório a montante %s"
 
-#: builtin/clone.c:1137
+#: builtin/clone.c:1279
 msgid "You appear to have cloned an empty repository."
 msgstr "Parece foi clonado um repositório vazio."
 
-#: builtin/column.c:9
+#: builtin/column.c:10
 msgid "git column [<options>]"
 msgstr "git column [<opções>]"
 
-#: builtin/column.c:26
+#: builtin/column.c:27
 msgid "lookup config vars"
 msgstr "pesquisar variáveis de configuração"
 
-#: builtin/column.c:27 builtin/column.c:28
+#: builtin/column.c:28 builtin/column.c:29
 msgid "layout to use"
 msgstr "esquema a usar"
 
-#: builtin/column.c:29
+#: builtin/column.c:30
 msgid "Maximum width"
 msgstr "Largura máxima"
 
-#: builtin/column.c:30
+#: builtin/column.c:31
 msgid "Padding space on left border"
 msgstr "Espaço de preenchimento na borda esquerda"
 
-#: builtin/column.c:31
+#: builtin/column.c:32
 msgid "Padding space on right border"
 msgstr "Espaço de preenchimento na borda direita"
 
-#: builtin/column.c:32
+#: builtin/column.c:33
 msgid "Padding space between columns"
 msgstr "Espaço de preenchimento entre colunas"
 
@@ -6794,65 +12760,186 @@ msgstr "Espaço de preenchimento entre colunas"
 msgid "--command must be the first argument"
 msgstr "--command deve ser o primeiro argumento"
 
-#: builtin/commit.c:38
-msgid "git commit [<options>] [--] <pathspec>..."
-msgstr "git commit [<opções>] [--] <especificador-de-caminho>..."
-
-#: builtin/commit.c:43
-msgid "git status [<options>] [--] <pathspec>..."
-msgstr "git status [<opções>] [--] <especificador-de-caminho>..."
+#: builtin/commit-graph.c:13 builtin/commit-graph.c:22
+msgid ""
+"git commit-graph verify [--object-dir <objdir>] [--shallow] [--[no-]progress]"
+msgstr ""
 
-#: builtin/commit.c:48
+#: builtin/commit-graph.c:14 builtin/commit-graph.c:27
 msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly. Run the\n"
-"following command and follow the instructions in your editor to edit\n"
-"your configuration file:\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
+"git commit-graph write [--object-dir <objdir>] [--append] [--"
+"split[=<strategy>]] [--reachable|--stdin-packs|--stdin-commits] [--changed-"
+"paths] [--[no-]max-new-filters <n>] [--[no-]progress] <split options>"
+msgstr ""
+
+#: builtin/commit-graph.c:64
+#, fuzzy, c-format
+msgid "could not find object directory matching %s"
+msgstr "não foi possível ler o objeto %s da ligação simbólica %s"
+
+#: builtin/commit-graph.c:80 builtin/commit-graph.c:210
+#: builtin/commit-graph.c:316 builtin/fetch.c:184 builtin/log.c:1764
+msgid "dir"
+msgstr "dir"
+
+#: builtin/commit-graph.c:81 builtin/commit-graph.c:211
+#: builtin/commit-graph.c:317
+msgid "The object directory to store the graph"
+msgstr ""
+
+#: builtin/commit-graph.c:83
+msgid "if the commit-graph is split, only verify the tip file"
+msgstr ""
+
+#: builtin/commit-graph.c:106
+#, fuzzy, c-format
+msgid "Could not open commit-graph '%s'"
+msgstr "Não foi possível abrir o ficheiro '%s'"
+
+#: builtin/commit-graph.c:142
+#, fuzzy, c-format
+msgid "unrecognized --split argument, %s"
+msgstr "argumento não reconhecido: %s"
+
+#: builtin/commit-graph.c:155
+#, fuzzy, c-format
+msgid "unexpected non-hex object ID: %s"
+msgstr "reutilizar o objeto de nota especificado"
+
+#: builtin/commit-graph.c:160
+#, fuzzy, c-format
+msgid "invalid object: %s"
+msgstr "nome de objeto inválido: %s"
+
+#: builtin/commit-graph.c:213
+msgid "start walk at all refs"
+msgstr ""
+
+#: builtin/commit-graph.c:215
+msgid "scan pack-indexes listed by stdin for commits"
+msgstr ""
+
+#: builtin/commit-graph.c:217
+msgid "start walk at commits listed by stdin"
 msgstr ""
-"O seu nome e endereço de e-mail foram configurados automaticamente com base\n"
-"no seu nome de utilizador e nome de máquina. Verifique se estão corretos.\n"
-"Pode suprimir esta mensagem configurando-os explicitamente. Execute\n"
-"o seguinte comando e siga as instruções no editor para editar\n"
-"o ficheiro de configuração:\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"Após fazer isto, pode corrigir a identidade usada neste commit com:\n"
-"\n"
-"    git commit --amend --reset-author\n"
 
-#: builtin/commit.c:61
+#: builtin/commit-graph.c:219
+msgid "include all commits already in the commit-graph file"
+msgstr ""
+
+#: builtin/commit-graph.c:221
+msgid "enable computation for changed paths"
+msgstr ""
+
+#: builtin/commit-graph.c:224
+msgid "allow writing an incremental commit-graph file"
+msgstr ""
+
+#: builtin/commit-graph.c:228
+msgid "maximum number of commits in a non-base split commit-graph"
+msgstr ""
+
+#: builtin/commit-graph.c:230
+msgid "maximum ratio between two levels of a split commit-graph"
+msgstr ""
+
+#: builtin/commit-graph.c:232
+#, fuzzy
+msgid "only expire files older than a given date-time"
+msgstr "expirar objetos mais antigos que <tempo>"
+
+#: builtin/commit-graph.c:234
+msgid "maximum number of changed-path Bloom filters to compute"
+msgstr ""
+
+#: builtin/commit-graph.c:255
+msgid "use at most one of --reachable, --stdin-commits, or --stdin-packs"
+msgstr ""
+
+#: builtin/commit-graph.c:287
+msgid "Collecting commits from input"
+msgstr ""
+
+#: builtin/commit-tree.c:18
 msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly:\n"
-"\n"
-"    git config --global user.name \"Your Name\"\n"
-"    git config --global user.email you@example.com\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
+"git commit-tree [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...] [(-F "
+"<file>)...] <tree>"
+msgstr ""
+
+#: builtin/commit-tree.c:31
+#, c-format
+msgid "duplicate parent %s ignored"
 msgstr ""
-"O seu nome e endereço de e-mail foram configurados automaticamente com base\n"
-"no seu nome de utilizador e nome de máquina. Verifique se estão corretos.\n"
-"Pode suprimir esta mensagem configurando-os explicitamente:\n"
-"\n"
-"    git config --global user.name \"O Seu Nome\"\n"
-"    git config --global user.email utilizador@exemplo.com\n"
-"\n"
-"Após fazer isto, pode corrigir a identidade usada neste commit com:\n"
-"\n"
-"    git commit --amend --reset-author\n"
 
-#: builtin/commit.c:73
+#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:546
+#, fuzzy, c-format
+msgid "not a valid object name %s"
+msgstr "%s não é um nome de objeto válido"
+
+#: builtin/commit-tree.c:93
+#, fuzzy, c-format
+msgid "git commit-tree: failed to open '%s'"
+msgstr "falha ao abrir '%s'"
+
+#: builtin/commit-tree.c:96
+#, fuzzy, c-format
+msgid "git commit-tree: failed to read '%s'"
+msgstr "git write-tree falhou ao escrever uma árvore"
+
+#: builtin/commit-tree.c:98
+#, fuzzy, c-format
+msgid "git commit-tree: failed to close '%s'"
+msgstr "git write-tree falhou ao escrever uma árvore"
+
+#: builtin/commit-tree.c:111
+#, fuzzy
+msgid "parent"
+msgstr "número-pai"
+
+#: builtin/commit-tree.c:112
+#, fuzzy
+msgid "id of a parent commit object"
+msgstr "falha ao escrever objeto de commit"
+
+#: builtin/commit-tree.c:114 builtin/commit.c:1504 builtin/merge.c:272
+#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1471
+#: builtin/tag.c:413
+msgid "message"
+msgstr "mensagem"
+
+#: builtin/commit-tree.c:115 builtin/commit.c:1504
+msgid "commit message"
+msgstr "mensagem de commit"
+
+#: builtin/commit-tree.c:118
+#, fuzzy
+msgid "read commit log message from file"
+msgstr "ler mensagem de um ficheiro"
+
+#: builtin/commit-tree.c:121 builtin/commit.c:1516 builtin/merge.c:289
+#: builtin/pull.c:176 builtin/revert.c:118
+msgid "GPG sign commit"
+msgstr "assinar o commit com GPG"
+
+#: builtin/commit-tree.c:133
+#, fuzzy
+msgid "must give exactly one tree"
+msgstr "É necessário exatamente um intervalo."
+
+#: builtin/commit-tree.c:140
+#, fuzzy
+msgid "git commit-tree: failed to read"
+msgstr "git write-tree falhou ao escrever uma árvore"
+
+#: builtin/commit.c:41
+msgid "git commit [<options>] [--] <pathspec>..."
+msgstr "git commit [<opções>] [--] <especificador-de-caminho>..."
+
+#: builtin/commit.c:46
+msgid "git status [<options>] [--] <pathspec>..."
+msgstr "git status [<opções>] [--] <especificador-de-caminho>..."
+
+#: builtin/commit.c:51
 msgid ""
 "You asked to amend the most recent commit, but doing so would make\n"
 "it empty. You can repeat your command with --allow-empty, or you can\n"
@@ -6862,7 +12949,7 @@ msgstr ""
 "vazio. Pode repetir o comando com --allow-empty, ou pode remover o\n"
 "commit completamente com \"git reset HEAD^\".\n"
 
-#: builtin/commit.c:78
+#: builtin/commit.c:56
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -6877,81 +12964,98 @@ msgstr ""
 "    git commit --allow-empty\n"
 "\n"
 
-#: builtin/commit.c:85
-msgid "Otherwise, please use 'git reset'\n"
+#: builtin/commit.c:63
+#, fuzzy
+msgid "Otherwise, please use 'git rebase --skip'\n"
+msgstr "Caso contrário, use 'git reset'\n"
+
+#: builtin/commit.c:66
+#, fuzzy
+msgid "Otherwise, please use 'git cherry-pick --skip'\n"
 msgstr "Caso contrário, use 'git reset'\n"
 
-#: builtin/commit.c:88
+#: builtin/commit.c:69
 msgid ""
-"If you wish to skip this commit, use:\n"
+"and then use:\n"
 "\n"
-"    git reset\n"
+"    git cherry-pick --continue\n"
 "\n"
-"Then \"git cherry-pick --continue\" will resume cherry-picking\n"
-"the remaining commits.\n"
-msgstr ""
-"Se deseja ignorar este commit, use:\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"
-"Depois \"git cherry-pick --continue\" irá retomar o cherry-pick\n"
-"dos restantes commits.\n"
+msgstr ""
 
-#: builtin/commit.c:318
+#: builtin/commit.c:312
 msgid "failed to unpack HEAD tree object"
 msgstr "falha ao descompactar o objeto árvore HEAD"
 
-#: builtin/commit.c:359
+#: builtin/commit.c:348
+#, fuzzy
+msgid "--pathspec-from-file with -a does not make sense"
+msgstr "Indicar caminhos com -a não faz sentido."
+
+#: builtin/commit.c:361
+msgid "No paths with --include/--only does not make sense."
+msgstr "As opções --include/--only não fazem sentido sem indicar caminhos."
+
+#: builtin/commit.c:373
 msgid "unable to create temporary index"
 msgstr "não foi possível criar índice temporário"
 
-#: builtin/commit.c:365
+#: builtin/commit.c:382
 msgid "interactive add failed"
 msgstr "falha ao adicionar interativamente"
 
-#: builtin/commit.c:378
+#: builtin/commit.c:397
 msgid "unable to update temporary index"
 msgstr "não é possível atualizar o índice temporário"
 
-#: builtin/commit.c:380
+#: builtin/commit.c:399
 msgid "Failed to update main cache tree"
 msgstr "Falha ao atualizar a árvore de cache principal"
 
-#: builtin/commit.c:404 builtin/commit.c:427 builtin/commit.c:476
+#: builtin/commit.c:424 builtin/commit.c:447 builtin/commit.c:495
 msgid "unable to write new_index file"
 msgstr "não é possível escrever o ficheiro new_index"
 
-#: builtin/commit.c:458
+#: builtin/commit.c:476
 msgid "cannot do a partial commit during a merge."
 msgstr "não é possível fazer um commit parcial durante uma integração."
 
-#: builtin/commit.c:460
+#: builtin/commit.c:478
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "não é possível fazer um commit parcial durante um cherry-pick."
 
-#: builtin/commit.c:469
+#: builtin/commit.c:480
+#, fuzzy
+msgid "cannot do a partial commit during a rebase."
+msgstr "não é possível fazer um commit parcial durante uma integração."
+
+#: builtin/commit.c:488
 msgid "cannot read the index"
 msgstr "não é possível ler o índice"
 
-#: builtin/commit.c:488
+#: builtin/commit.c:507
 msgid "unable to write temporary index file"
 msgstr "não é possível escrever ficheiro de índice temporário"
 
-#: builtin/commit.c:582
+#: builtin/commit.c:605
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "o commit '%s' não tem cabeçalho de autor"
 
-#: builtin/commit.c:584
+#: builtin/commit.c:607
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr "o commit '%s' tem a linha de autor malformada"
 
-#: builtin/commit.c:603
+#: builtin/commit.c:626
 msgid "malformed --author parameter"
 msgstr "parâmetro --author malformado"
 
-#: builtin/commit.c:655
+#: builtin/commit.c:679
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -6959,44 +13063,44 @@ msgstr ""
 "não foi possível selecionar um carácter de comentário que\n"
 "não estivesse já a ser usado na mensagem de commit atual"
 
-#: builtin/commit.c:692 builtin/commit.c:725 builtin/commit.c:1096
+#: builtin/commit.c:717 builtin/commit.c:750 builtin/commit.c:1097
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "não foi possível consultar o commit %s"
 
-#: builtin/commit.c:704 builtin/shortlog.c:294
+#: builtin/commit.c:729 builtin/shortlog.c:478
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(a ler mensagem de log da entrada padrão)\n"
 
-#: builtin/commit.c:706
+#: builtin/commit.c:731
 msgid "could not read log from standard input"
 msgstr "não foi possível ler o log da entrada padrão"
 
-#: builtin/commit.c:710
+#: builtin/commit.c:735
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "não é possível ler o ficheiro de log '%s'"
 
-#: builtin/commit.c:737 builtin/commit.c:745
+#: builtin/commit.c:766 builtin/commit.c:782
 msgid "could not read SQUASH_MSG"
 msgstr "não foi possível ler SQUASH_MSG"
 
-#: builtin/commit.c:742
+#: builtin/commit.c:773
 msgid "could not read MERGE_MSG"
 msgstr "não foi possível ler MERGE_MSG"
 
-#: builtin/commit.c:796
+#: builtin/commit.c:833
 msgid "could not write commit template"
 msgstr "não foi possível escrever o modelo de commit"
 
-#: builtin/commit.c:814
-#, c-format
+#: builtin/commit.c:853
+#, fuzzy
 msgid ""
 "\n"
 "It looks like you may be committing a merge.\n"
-"If this is not correct, please remove the file\n"
-"\t%s\n"
+"If this is not correct, please run\n"
+"\tgit update-ref -d MERGE_HEAD\n"
 "and try again.\n"
 msgstr ""
 "\n"
@@ -7005,13 +13109,13 @@ msgstr ""
 "\t%s\n"
 "e tente de novo.\n"
 
-#: builtin/commit.c:819
-#, c-format
+#: builtin/commit.c:858
+#, fuzzy
 msgid ""
 "\n"
 "It looks like you may be committing a cherry-pick.\n"
-"If this is not correct, please remove the file\n"
-"\t%s\n"
+"If this is not correct, please run\n"
+"\tgit update-ref -d CHERRY_PICK_HEAD\n"
 "and try again.\n"
 msgstr ""
 "\n"
@@ -7020,7 +13124,7 @@ msgstr ""
 "\t%s\n"
 "e tente outra vez.\n"
 
-#: builtin/commit.c:832
+#: builtin/commit.c:868
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -7030,7 +13134,7 @@ msgstr ""
 "Linhas começadas com '%c' serão ignoradas, e uma mensagem vazia\n"
 "aborta o commit.\n"
 
-#: builtin/commit.c:839
+#: builtin/commit.c:876
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -7041,149 +13145,163 @@ msgstr ""
 "Linhas começadas com '%c' serão mantidas; pode removê-las se o desejar.\n"
 "Uma mensagem vazia aborta o commit.\n"
 
-#: builtin/commit.c:859
+#: builtin/commit.c:893
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sAutor:    %.*s <%.*s>"
 
-#: builtin/commit.c:867
+#: builtin/commit.c:901
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sData:      %s"
 
-#: builtin/commit.c:874
+#: builtin/commit.c:908
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sCommitter: %.*s <%.*s>"
 
-#: builtin/commit.c:892
+#: builtin/commit.c:926
 msgid "Cannot read index"
 msgstr "Não é possível ler o índice"
 
-#: builtin/commit.c:954
+#: builtin/commit.c:997
 msgid "Error building trees"
 msgstr "Erro ao construir árvores"
 
-#: builtin/commit.c:968 builtin/tag.c:273
+#: builtin/commit.c:1011 builtin/tag.c:276
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
 msgstr "Indique a mensagem usando as opções -m ou -F.\n"
 
-#: builtin/commit.c:1071
+#: builtin/commit.c:1055
 #, c-format
 msgid "--author '%s' is not 'Name <email>' and matches no existing author"
 msgstr ""
 "--author '%s' não é do tipo 'Nome <email>' e não corresponde a um autor "
 "existente"
 
-#: builtin/commit.c:1086 builtin/commit.c:1325
+#: builtin/commit.c:1069
+#, fuzzy, c-format
+msgid "Invalid ignored mode '%s'"
+msgstr "Modo inválido de ficheiros não controlados '%s'"
+
+#: builtin/commit.c:1087 builtin/commit.c:1331
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Modo inválido de ficheiros não controlados '%s'"
 
-#: builtin/commit.c:1124
+#: builtin/commit.c:1127
 msgid "--long and -z are incompatible"
 msgstr "--long e -z são incompatíveis"
 
-#: builtin/commit.c:1154
+#: builtin/commit.c:1171
 msgid "Using both --reset-author and --author does not make sense"
 msgstr "Não faz sentido usar --reset-author e --author ao mesmo tempo"
 
-#: builtin/commit.c:1163
+#: builtin/commit.c:1180
 msgid "You have nothing to amend."
 msgstr "Não há nada para emendar."
 
-#: builtin/commit.c:1166
+#: builtin/commit.c:1183
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Integração em curso -- não é possível emendar."
 
-#: builtin/commit.c:1168
+#: builtin/commit.c:1185
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr "Cherry-pick em curso -- não é possível emendar."
 
-#: builtin/commit.c:1171
+#: builtin/commit.c:1187
+#, fuzzy
+msgid "You are in the middle of a rebase -- cannot amend."
+msgstr "Integração em curso -- não é possível emendar."
+
+#: builtin/commit.c:1190
 msgid "Options --squash and --fixup cannot be used together"
 msgstr "As opções --squash e --fixup não podem ser usadas juntas"
 
-#: builtin/commit.c:1181
+#: builtin/commit.c:1200
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr "Apenas um entre -c/-C/-F/--fixup pode ser usado."
 
-#: builtin/commit.c:1183
-msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
+#: builtin/commit.c:1202
+#, fuzzy
+msgid "Option -m cannot be combined with -c/-C/-F."
 msgstr "A opção -m não pode ser combinada com -c/C/-F/--fixup."
 
-#: builtin/commit.c:1191
+#: builtin/commit.c:1211
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr "--reset-author só pode ser usado com -C, -c ou --amend."
 
-#: builtin/commit.c:1208
+#: builtin/commit.c:1229
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr ""
 "Apenas um entre --include/--only/--all/--interactive/--patch pode ser usado."
 
-#: builtin/commit.c:1210
-msgid "No paths with --include/--only does not make sense."
-msgstr "As opções --include/--only não fazem sentido sem indicar caminhos."
-
-#: builtin/commit.c:1212
-msgid "Explicit paths specified without -i or -o; assuming --only paths..."
-msgstr "Caminhos explícitos especificados sem -i ou -o; assumindo --only..."
-
-#: builtin/commit.c:1224 builtin/tag.c:551
-#, c-format
-msgid "Invalid cleanup mode %s"
-msgstr "Modo de limpeza inválido %s"
-
-#: builtin/commit.c:1229
-msgid "Paths with -a does not make sense."
+#: builtin/commit.c:1235
+#, fuzzy, c-format
+msgid "paths '%s ...' with -a does not make sense"
 msgstr "Indicar caminhos com -a não faz sentido."
 
-#: builtin/commit.c:1339 builtin/commit.c:1612
+#: builtin/commit.c:1366 builtin/commit.c:1527
 msgid "show status concisely"
 msgstr "mostrar status de forma concisa"
 
-#: builtin/commit.c:1341 builtin/commit.c:1614
+#: builtin/commit.c:1368 builtin/commit.c:1529
 msgid "show branch information"
 msgstr "mostrar informação do ramo"
 
-#: builtin/commit.c:1343
+#: builtin/commit.c:1370
+#, fuzzy
+msgid "show stash information"
+msgstr "mostrar informação do ramo"
+
+#: builtin/commit.c:1372 builtin/commit.c:1531
+msgid "compute full ahead/behind values"
+msgstr ""
+
+#: builtin/commit.c:1374
 msgid "version"
 msgstr "versão"
 
-#: builtin/commit.c:1343 builtin/commit.c:1616 builtin/push.c:525
-#: builtin/worktree.c:443
+#: builtin/commit.c:1374 builtin/commit.c:1533 builtin/push.c:539
+#: builtin/worktree.c:722
 msgid "machine-readable output"
 msgstr "saída inteligível por máquina"
 
-#: builtin/commit.c:1346 builtin/commit.c:1618
+#: builtin/commit.c:1377 builtin/commit.c:1535
 msgid "show status in long format (default)"
 msgstr "apresentar status em formato longo (predefinição)"
 
-#: builtin/commit.c:1349 builtin/commit.c:1621
+#: builtin/commit.c:1380 builtin/commit.c:1538
 msgid "terminate entries with NUL"
 msgstr "terminar entradas com NUL"
 
-#: builtin/commit.c:1351 builtin/commit.c:1624 builtin/fast-export.c:981
-#: builtin/fast-export.c:984 builtin/tag.c:411
+#: builtin/commit.c:1382 builtin/commit.c:1386 builtin/commit.c:1541
+#: builtin/fast-export.c:1199 builtin/fast-export.c:1202
+#: builtin/fast-export.c:1205 builtin/rebase.c:1400 parse-options.h:336
 msgid "mode"
 msgstr "modo"
 
-#: builtin/commit.c:1352 builtin/commit.c:1624
+#: builtin/commit.c:1383 builtin/commit.c:1541
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr ""
 "mostrar ficheiros não controlados, modo é opcional: all, normal, no. "
 "(Predefinição: all)"
 
-#: builtin/commit.c:1355
-msgid "show ignored files"
-msgstr "mostrar ficheiros ignorados"
+#: builtin/commit.c:1387
+#, fuzzy
+msgid ""
+"show ignored files, optional modes: traditional, matching, no. (Default: "
+"traditional)"
+msgstr ""
+"mostrar ficheiros não controlados, modo é opcional: all, normal, no. "
+"(Predefinição: all)"
 
-#: builtin/commit.c:1356 parse-options.h:155
+#: builtin/commit.c:1389 parse-options.h:192
 msgid "when"
 msgstr "quando"
 
-#: builtin/commit.c:1357
+#: builtin/commit.c:1390
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -7191,349 +13309,403 @@ msgstr ""
 "ignorar alterações em submódulos, quando é opcional: all, dirty, untracked. "
 "(Predefinição: all)"
 
-#: builtin/commit.c:1359
+#: builtin/commit.c:1392
 msgid "list untracked files in columns"
 msgstr "listar ficheiros não controlados em colunas"
 
-#: builtin/commit.c:1435
-msgid "couldn't look up newly created commit"
-msgstr "não foi possível consultar o commit recém-criado"
-
-#: builtin/commit.c:1437
-msgid "could not parse newly created commit"
-msgstr "não foi possível analisar o commit recém-criado"
+#: builtin/commit.c:1393
+#, fuzzy
+msgid "do not detect renames"
+msgstr "não consultar remotos"
 
-#: builtin/commit.c:1482
-msgid "detached HEAD"
-msgstr "HEAD destacada"
+#: builtin/commit.c:1395
+msgid "detect renames, optionally set similarity index"
+msgstr ""
 
-#: builtin/commit.c:1485
-msgid " (root-commit)"
-msgstr " (commit-raiz)"
+#: builtin/commit.c:1415
+msgid "Unsupported combination of ignored and untracked-files arguments"
+msgstr ""
 
-#: builtin/commit.c:1582
+#: builtin/commit.c:1497
 msgid "suppress summary after successful commit"
 msgstr "suprimir o resumo depois de submeter com sucesso"
 
-#: builtin/commit.c:1583
+#: builtin/commit.c:1498
 msgid "show diff in commit message template"
 msgstr "mostrar diff no modelo da mensagem de commit"
 
-#: builtin/commit.c:1585
+#: builtin/commit.c:1500
 msgid "Commit message options"
 msgstr "Opções de mensagem de commit"
 
-#: builtin/commit.c:1586 builtin/tag.c:409
+#: builtin/commit.c:1501 builtin/merge.c:276 builtin/tag.c:415
 msgid "read message from file"
 msgstr "ler mensagem de um ficheiro"
 
-#: builtin/commit.c:1587
+#: builtin/commit.c:1502
 msgid "author"
 msgstr "autor"
 
-#: builtin/commit.c:1587
+#: builtin/commit.c:1502
 msgid "override author for commit"
 msgstr "substituir autor do commit"
 
-#: builtin/commit.c:1588 builtin/gc.c:353
+#: builtin/commit.c:1503 builtin/gc.c:539
 msgid "date"
 msgstr "data"
 
-#: builtin/commit.c:1588
+#: builtin/commit.c:1503
 msgid "override date for commit"
 msgstr "substituir data do commit"
 
-#: builtin/commit.c:1589 builtin/merge.c:221 builtin/notes.c:398
-#: builtin/notes.c:561 builtin/tag.c:407
-msgid "message"
-msgstr "mensagem"
-
-#: builtin/commit.c:1589
-msgid "commit message"
-msgstr "mensagem de commit"
-
-#: builtin/commit.c:1590 builtin/commit.c:1591 builtin/commit.c:1592
-#: builtin/commit.c:1593 parse-options.h:257 ref-filter.h:77
+#: builtin/commit.c:1505 builtin/commit.c:1506 builtin/commit.c:1507
+#: builtin/commit.c:1508 parse-options.h:328 ref-filter.h:87
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1590
+#: builtin/commit.c:1505
 msgid "reuse and edit message from specified commit"
 msgstr "reutilizar e editar a mensagem de um commit especificado"
 
-#: builtin/commit.c:1591
+#: builtin/commit.c:1506
 msgid "reuse message from specified commit"
 msgstr "reutilizar a mensagem de um commit especificado"
 
-#: builtin/commit.c:1592
+#: builtin/commit.c:1507
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 "usar mensagem com formato autosquash para corrigir o commit especificado"
 
-#: builtin/commit.c:1593
+#: builtin/commit.c:1508
 msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
 "usar mensagem com formato autosquash para esmagar o commit especificado"
 
-#: builtin/commit.c:1594
+#: builtin/commit.c:1509
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr "agora sou eu o autor do commit (usado com C/-c/--amend)"
 
-#: builtin/commit.c:1595 builtin/log.c:1420 builtin/revert.c:104
+#: builtin/commit.c:1510 builtin/log.c:1741 builtin/merge.c:292
+#: builtin/pull.c:145 builtin/revert.c:110
 msgid "add Signed-off-by:"
 msgstr "adicionar Signed-off-by:"
 
-#: builtin/commit.c:1596
+#: builtin/commit.c:1511
 msgid "use specified template file"
 msgstr "usar ficheiro de modelo especificado"
 
-#: builtin/commit.c:1597
+#: builtin/commit.c:1512
 msgid "force edit of commit"
 msgstr "forçar edição do commit"
 
-#: builtin/commit.c:1598
-msgid "default"
-msgstr "predefinição"
-
-#: builtin/commit.c:1598 builtin/tag.c:412
-msgid "how to strip spaces and #comments from message"
-msgstr "como retirar espaços e #comentários da mensagem"
-
-#: builtin/commit.c:1599
+#: builtin/commit.c:1514
 msgid "include status in commit message template"
 msgstr "incluir status no modelo da mensagem de commit"
 
-#: builtin/commit.c:1601 builtin/merge.c:233 builtin/pull.c:166
-#: builtin/revert.c:112
-msgid "GPG sign commit"
-msgstr "assinar o commit com GPG"
-
-#: builtin/commit.c:1604
+#: builtin/commit.c:1519
 msgid "Commit contents options"
 msgstr "Opções de conteúdo do commit"
 
-#: builtin/commit.c:1605
+#: builtin/commit.c:1520
 msgid "commit all changed files"
 msgstr "submeter todos os ficheiros alterados"
 
-#: builtin/commit.c:1606
+#: builtin/commit.c:1521
 msgid "add specified files to index for commit"
 msgstr "adicionar ficheiros especificados ao índice para submeter"
 
-#: builtin/commit.c:1607
+#: builtin/commit.c:1522
 msgid "interactively add files"
 msgstr "adicionar ficheiros interativamente"
 
-#: builtin/commit.c:1608
+#: builtin/commit.c:1523
 msgid "interactively add changes"
 msgstr "adicionar alterações interativamente"
 
-#: builtin/commit.c:1609
+#: builtin/commit.c:1524
 msgid "commit only specified files"
 msgstr "submeter somente os ficheiros especificados"
 
-#: builtin/commit.c:1610
+#: builtin/commit.c:1525
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "ignorar pre-commit e commit-msg hooks"
 
-#: builtin/commit.c:1611
+#: builtin/commit.c:1526
 msgid "show what would be committed"
 msgstr "mostrar o que seria submetido"
 
-#: builtin/commit.c:1622
+#: builtin/commit.c:1539
 msgid "amend previous commit"
 msgstr "emendar o commit anterior"
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1540
 msgid "bypass post-rewrite hook"
 msgstr "ignorar post-rewrite hook"
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1547
 msgid "ok to record an empty change"
 msgstr "aceitar o registo duma alteração vazia"
 
-#: builtin/commit.c:1630
+#: builtin/commit.c:1549
 msgid "ok to record a change with an empty message"
 msgstr "aceitar o registo duma alteração com uma mensagem vazia"
 
-#: builtin/commit.c:1659
-msgid "could not parse HEAD commit"
-msgstr "não foi possível analisar o commit HEAD"
-
-#: builtin/commit.c:1707
+#: builtin/commit.c:1622
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Ficheiro MERGE_HEAD corrompido (%s)"
 
-#: builtin/commit.c:1714
+#: builtin/commit.c:1629
 msgid "could not read MERGE_MODE"
 msgstr "não foi possível ler MERGE_MODE"
 
-#: builtin/commit.c:1733
+#: builtin/commit.c:1650
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "não foi possível ler a mensagem de commit: %s"
 
-#: builtin/commit.c:1744
-#, c-format
-msgid "Aborting commit; you did not edit the message.\n"
-msgstr "A abortar o commit; não editou a mensagem.\n"
-
-#: builtin/commit.c:1749
+#: builtin/commit.c:1657
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "A abortar o commit uma vez que a mensagem de commit está vazia.\n"
 
-#: builtin/commit.c:1797
+#: builtin/commit.c:1662
+#, c-format
+msgid "Aborting commit; you did not edit the message.\n"
+msgstr "A abortar o commit; não editou a mensagem.\n"
+
+#: builtin/commit.c:1696
+#, fuzzy
 msgid ""
-"Repository has been updated, but unable to write\n"
+"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 ""
 "O repositório foi atualizado, mas não foi possível escrever\n"
 "o ficheiro new_index. Verifique se o disco não está cheio\n"
 "e que a quota não foi excedida e execute \"git reset HEAD\" para recuperar."
 
-#: builtin/config.c:9
+#: builtin/config.c:11
 msgid "git config [<options>]"
 msgstr "git config [<opções>]"
 
-#: builtin/config.c:55
+#: builtin/config.c:107 builtin/env--helper.c:27
+#, fuzzy, c-format
+msgid "unrecognized --type argument, %s"
+msgstr "argumento não reconhecido: %s"
+
+#: builtin/config.c:119
+#, fuzzy
+msgid "only one type at a time"
+msgstr "imprimir apenas correspondências exatas"
+
+#: builtin/config.c:128
 msgid "Config file location"
 msgstr "Localização do ficheiro de configuração"
 
-#: builtin/config.c:56
+#: builtin/config.c:129
 msgid "use global config file"
 msgstr "usar ficheiro de configuração global"
 
-#: builtin/config.c:57
+#: builtin/config.c:130
 msgid "use system config file"
 msgstr "usar ficheiro de configuração do sistema"
 
-#: builtin/config.c:58
+#: builtin/config.c:131
 msgid "use repository config file"
 msgstr "usar ficheiro de configuração do repositório"
 
-#: builtin/config.c:59
+#: builtin/config.c:132
+#, fuzzy
+msgid "use per-worktree config file"
+msgstr "usar ficheiro de configuração do repositório"
+
+#: builtin/config.c:133
 msgid "use given config file"
 msgstr "usar ficheiro de configuração fornecido"
 
-#: builtin/config.c:60
+#: builtin/config.c:134
 msgid "blob-id"
 msgstr "id-blob"
 
-#: builtin/config.c:60
+#: builtin/config.c:134
 msgid "read config from given blob object"
 msgstr "ler configuração a partir do objeto blob fornecido"
 
-#: builtin/config.c:61
+#: builtin/config.c:135
 msgid "Action"
 msgstr "Ação"
 
-#: builtin/config.c:62
+#: builtin/config.c:136
 msgid "get value: name [value-regex]"
 msgstr "obter valor: nome [regex-do-valor]"
 
-#: builtin/config.c:63
+#: builtin/config.c:137
 msgid "get all values: key [value-regex]"
 msgstr "obter todos os valores: chave [regex-do-valor]"
 
-#: builtin/config.c:64
+#: builtin/config.c:138
 msgid "get values for regexp: name-regex [value-regex]"
 msgstr "obter valores para a regexp: regex-do-nome [regex-do-valor]"
 
-#: builtin/config.c:65
+#: builtin/config.c:139
 msgid "get value specific for the URL: section[.var] URL"
 msgstr "obter valor do URL especificado: section[.var] URL"
 
-#: builtin/config.c:66
+#: builtin/config.c:140
 msgid "replace all matching variables: name value [value_regex]"
 msgstr ""
 "substituir todos as variáveis correspondentes: nome valor [regex-do-valor]"
 
-#: builtin/config.c:67
+#: builtin/config.c:141
 msgid "add a new variable: name value"
 msgstr "adicionar uma nova variável: nome valor"
 
-#: builtin/config.c:68
+#: builtin/config.c:142
 msgid "remove a variable: name [value-regex]"
 msgstr "remover uma variável: nome [regex-do-valor]"
 
-#: builtin/config.c:69
+#: builtin/config.c:143
 msgid "remove all matches: name [value-regex]"
 msgstr "remover todas as correspondências: nome [regex-do-valor]"
 
-#: builtin/config.c:70
+#: builtin/config.c:144
 msgid "rename section: old-name new-name"
 msgstr "mudar o nome da secção: nome-antigo novo-nome"
 
-#: builtin/config.c:71
+#: builtin/config.c:145
 msgid "remove a section: name"
 msgstr "remover uma secção: nome"
 
-#: builtin/config.c:72
+#: builtin/config.c:146
 msgid "list all"
 msgstr "listar todos"
 
-#: builtin/config.c:73
+#: builtin/config.c:147
 msgid "open an editor"
 msgstr "abrir um editor"
 
-#: builtin/config.c:74
+#: builtin/config.c:148
 msgid "find the color configured: slot [default]"
 msgstr "encontrar a cor configurada: slot [predefinição]"
 
-#: builtin/config.c:75
+#: builtin/config.c:149
 msgid "find the color setting: slot [stdout-is-tty]"
 msgstr "encontrar a definição de cor: slot [stdout-é-tty]"
 
-#: builtin/config.c:76
+#: builtin/config.c:150
 msgid "Type"
 msgstr "Tipo"
 
-#: builtin/config.c:77
+#: builtin/config.c:151 builtin/env--helper.c:43
+msgid "value is given this type"
+msgstr ""
+
+#: builtin/config.c:152
 msgid "value is \"true\" or \"false\""
 msgstr "o valor é \"true\" (verdadeiro) ou \"false\" (falso)"
 
-#: builtin/config.c:78
+#: builtin/config.c:153
 msgid "value is decimal number"
 msgstr "o valor é um número decimal"
 
-#: builtin/config.c:79
+#: builtin/config.c:154
 msgid "value is --bool or --int"
 msgstr "o valor é --bool ou --int"
 
-#: builtin/config.c:80
+#: builtin/config.c:155
+#, fuzzy
+msgid "value is --bool or string"
+msgstr "o valor é --bool ou --int"
+
+#: builtin/config.c:156
 msgid "value is a path (file or directory name)"
 msgstr "o valor é um caminho (nome dum ficheiro ou diretório)"
 
-#: builtin/config.c:81
+#: builtin/config.c:157
+msgid "value is an expiry date"
+msgstr ""
+
+#: builtin/config.c:158
 msgid "Other"
 msgstr "Outro"
 
-#: builtin/config.c:82
+#: builtin/config.c:159
 msgid "terminate values with NUL byte"
 msgstr "terminar valores com o byte NUL"
 
-#: builtin/config.c:83
+#: builtin/config.c:160
 msgid "show variable names only"
 msgstr "mostrar apenas os nomes das variáveis"
 
-#: builtin/config.c:84
+#: builtin/config.c:161
 msgid "respect include directives on lookup"
 msgstr "respeitar diretivas de inclusão ao pesquisar"
 
-#: builtin/config.c:85
+#: builtin/config.c:162
 msgid "show origin of config (file, standard input, blob, command line)"
 msgstr ""
 "mostrar a origem da configuração (ficheiro, entrada padrão, blob, linha de "
 "comandos)"
 
-#: builtin/config.c:327
+#: builtin/config.c:163
+msgid "show scope of config (worktree, local, global, system, command)"
+msgstr ""
+
+#: builtin/config.c:164 builtin/env--helper.c:45
+#, fuzzy
+msgid "value"
+msgstr "chave=valor"
+
+#: builtin/config.c:164
+msgid "with --get, use default value when missing entry"
+msgstr ""
+
+#: builtin/config.c:178
+#, c-format
+msgid "wrong number of arguments, should be %d"
+msgstr ""
+
+#: builtin/config.c:180
+#, c-format
+msgid "wrong number of arguments, should be from %d to %d"
+msgstr ""
+
+#: builtin/config.c:334
+#, fuzzy, c-format
+msgid "invalid key pattern: %s"
+msgstr "chave inválida: %s"
+
+#: builtin/config.c:370
+#, fuzzy, c-format
+msgid "failed to format default config value: %s"
+msgstr "falha ao criar o ficheiro %s"
+
+#: builtin/config.c:434
+#, fuzzy, c-format
+msgid "cannot parse color '%s'"
+msgstr "não é possível abrir o ficheiro '%s'"
+
+#: builtin/config.c:476
 msgid "unable to parse default color value"
 msgstr "não é possível analisar o valor de cor por omissão"
 
-#: builtin/config.c:471
+#: builtin/config.c:529 builtin/config.c:789
+#, fuzzy
+msgid "not in a git directory"
+msgstr "Não é um repositório git"
+
+#: builtin/config.c:532
+#, fuzzy
+msgid "writing to stdin is not supported"
+msgstr "Não é suportada profundidade negativa em --deepen"
+
+#: builtin/config.c:535
+#, fuzzy
+msgid "writing config blobs is not supported"
+msgstr "aviso: sendmail alias com aspas não é suportado: %s\n"
+
+#: builtin/config.c:620
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -7548,12 +13720,84 @@ msgstr ""
 "#\tname = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:611
+#: builtin/config.c:644
+msgid "only one config file at a time"
+msgstr ""
+
+#: builtin/config.c:650
+#, fuzzy
+msgid "--local can only be used inside a git repository"
+msgstr "--cached fora de um repositório"
+
+#: builtin/config.c:652
+#, fuzzy
+msgid "--blob can only be used inside a git repository"
+msgstr "--cached fora de um repositório"
+
+#: builtin/config.c:654
+#, fuzzy
+msgid "--worktree can only be used inside a git repository"
+msgstr "'%s' não é reconhecido como um repositório git"
+
+#: builtin/config.c:676
+msgid "$HOME not set"
+msgstr ""
+
+#: builtin/config.c:700
+msgid ""
+"--worktree cannot be used with multiple working trees unless the config\n"
+"extension worktreeConfig is enabled. Please read \"CONFIGURATION FILE\"\n"
+"section in \"git help worktree\" for details"
+msgstr ""
+
+#: builtin/config.c:735
+msgid "--get-color and variable type are incoherent"
+msgstr ""
+
+#: builtin/config.c:740
+msgid "only one action at a time"
+msgstr ""
+
+#: builtin/config.c:753
+msgid "--name-only is only applicable to --list or --get-regexp"
+msgstr ""
+
+#: builtin/config.c:759
+msgid ""
+"--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
+"list"
+msgstr ""
+
+#: builtin/config.c:765
+msgid "--default is only applicable to --get"
+msgstr ""
+
+#: builtin/config.c:778
+#, fuzzy, c-format
+msgid "unable to read config file '%s'"
+msgstr "não é possível ler o ficheiro de assinatura '%s'"
+
+#: builtin/config.c:781
+#, fuzzy
+msgid "error processing config file(s)"
+msgstr "usar ficheiro de configuração do repositório"
+
+#: builtin/config.c:791
+#, fuzzy
+msgid "editing stdin is not supported"
+msgstr "Não é suportada profundidade negativa em --deepen"
+
+#: builtin/config.c:793
+#, fuzzy
+msgid "editing blobs is not supported"
+msgstr "Não é suportada profundidade negativa em --deepen"
+
+#: builtin/config.c:807
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "não é possível criar o ficheiro de configuração %s"
 
-#: builtin/config.c:623
+#: builtin/config.c:820
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
@@ -7562,75 +13806,91 @@ msgstr ""
 "não é possível substituir múltiplos valores por um único valor\n"
 "\tUse uma regexp, --add ou --replace-all para alterar %s."
 
-#: builtin/count-objects.c:86
+#: builtin/config.c:894 builtin/config.c:905
+#, fuzzy, c-format
+msgid "no such section: %s"
+msgstr "referência inexistente %s"
+
+#: builtin/count-objects.c:90
 msgid "git count-objects [-v] [-H | --human-readable]"
 msgstr "git count-objects [-v] [-H | --human-readable]"
 
-#: builtin/count-objects.c:96
+#: builtin/count-objects.c:100
 msgid "print sizes in human readable format"
 msgstr "imprimir dimensões em formato inteligível por humanos"
 
-#: builtin/describe.c:18
+#: builtin/credential-cache--daemon.c:226
+#, c-format
+msgid ""
+"The permissions on your socket directory are too loose; other\n"
+"users may be able to read your cached credentials. Consider running:\n"
+"\n"
+"\tchmod 0700 %s"
+msgstr ""
+"As permissões do diretório do socket são demasiado fracas; outros\n"
+"utilizadores poderão conseguir as suas credenciais em cache. Considere "
+"executar:\n"
+"\n"
+"\tchmod 0700 %s"
+
+#: builtin/credential-cache--daemon.c:275
+msgid "print debugging messages to stderr"
+msgstr "imprimir mensagens de depuração no stderr"
+
+#: builtin/credential-cache--daemon.c:315
+msgid "credential-cache--daemon unavailable; no unix socket support"
+msgstr ""
+
+#: builtin/credential-cache.c:154
+msgid "credential-cache unavailable; no unix socket support"
+msgstr ""
+
+#: builtin/describe.c:26
 msgid "git describe [<options>] [<commit-ish>...]"
 msgstr "git describe [<opções>] [<commit-etc>...]"
 
-#: builtin/describe.c:19
+#: builtin/describe.c:27
 msgid "git describe [<options>] --dirty"
 msgstr "git describe [<opções>] --dirty"
 
-#: builtin/describe.c:53
+#: builtin/describe.c:63
 msgid "head"
 msgstr "cabeça"
 
-#: builtin/describe.c:53
+#: builtin/describe.c:63
 msgid "lightweight"
 msgstr "leve"
 
-#: builtin/describe.c:53
+#: builtin/describe.c:63
 msgid "annotated"
 msgstr "anotado"
 
-#: builtin/describe.c:250
+#: builtin/describe.c:277
 #, c-format
 msgid "annotated tag %s not available"
 msgstr "a tag anotada %s não está disponível"
 
-#: builtin/describe.c:254
-#, c-format
-msgid "annotated tag %s has no embedded name"
-msgstr "a tag anotada %s não tem nenhum nome incorporado"
-
-#: builtin/describe.c:256
-#, c-format
-msgid "tag '%s' is really '%s' here"
+#: builtin/describe.c:281
+#, fuzzy, c-format
+msgid "tag '%s' is externally known as '%s'"
 msgstr "a tag '%s' está de facto em '%s'"
 
-#: builtin/describe.c:283 builtin/log.c:487
-#, c-format
-msgid "Not a valid object name %s"
-msgstr "%s não é um nome de objeto válido"
-
-#: builtin/describe.c:286
-#, c-format
-msgid "%s is not a valid '%s' object"
-msgstr "%s não é um objeto '%s' válido"
-
-#: builtin/describe.c:303
+#: builtin/describe.c:328
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr "nenhuma tag corresponde exatamente a '%s'"
 
-#: builtin/describe.c:305
+#: builtin/describe.c:330
 #, c-format
-msgid "searching to describe %s\n"
-msgstr "à procurar da descrição de %s\n"
+msgid "No exact match on refs or tags, searching to describe\n"
+msgstr ""
 
-#: builtin/describe.c:352
+#: builtin/describe.c:397
 #, c-format
 msgid "finished search at %s\n"
 msgstr "a pesquisa terminou em %s\n"
 
-#: builtin/describe.c:379
+#: builtin/describe.c:424
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
@@ -7639,7 +13899,7 @@ msgstr ""
 "Não é possível usar tags anotadas para descrever '%s'.\n"
 "No entanto, é possível com tags não anotadas: tente --tags."
 
-#: builtin/describe.c:383
+#: builtin/describe.c:428
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
@@ -7648,12 +13908,12 @@ msgstr ""
 "Não é possível usar tags para descrever '%s'.\n"
 "Tente --always, ou crie algumas tags."
 
-#: builtin/describe.c:413
+#: builtin/describe.c:458
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr "%lu commits percorridos\n"
 
-#: builtin/describe.c:416
+#: builtin/describe.c:461
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
@@ -7662,136 +13922,161 @@ msgstr ""
 "mais de %i tags encontradas; foram listadas as %i mais recentes\n"
 "pesquisa interrompida em %s\n"
 
-#: builtin/describe.c:438
+#: builtin/describe.c:529
+#, fuzzy, c-format
+msgid "describe %s\n"
+msgstr "à procurar da descrição de %s\n"
+
+#: builtin/describe.c:532
+#, c-format
+msgid "Not a valid object name %s"
+msgstr "%s não é um nome de objeto válido"
+
+#: builtin/describe.c:540
+#, fuzzy, c-format
+msgid "%s is neither a commit nor blob"
+msgstr "'%s' não é um commit"
+
+#: builtin/describe.c:554
 msgid "find the tag that comes after the commit"
 msgstr "localizar a tag que vem após o commit"
 
-#: builtin/describe.c:439
+#: builtin/describe.c:555
 msgid "debug search strategy on stderr"
 msgstr "depurar a estratégia de procura para stderr"
 
-#: builtin/describe.c:440
+#: builtin/describe.c:556
 msgid "use any ref"
 msgstr "usar uma referência qualquer"
 
-#: builtin/describe.c:441
+#: builtin/describe.c:557
 msgid "use any tag, even unannotated"
 msgstr "usar uma tag qualquer, mesmo não anotada"
 
-#: builtin/describe.c:442
+#: builtin/describe.c:558
 msgid "always use long format"
 msgstr "usar sempre formato longo"
 
-#: builtin/describe.c:443
+#: builtin/describe.c:559
 msgid "only follow first parent"
 msgstr "seguir só o primeiro pai"
 
-#: builtin/describe.c:446
+#: builtin/describe.c:562
 msgid "only output exact matches"
 msgstr "imprimir apenas correspondências exatas"
 
-#: builtin/describe.c:448
+#: builtin/describe.c:564
 msgid "consider <n> most recent tags (default: 10)"
 msgstr "considerar as <n> tags mais recentes (predefinição: 10)"
 
-#: builtin/describe.c:450
+#: builtin/describe.c:566
 msgid "only consider tags matching <pattern>"
 msgstr "apenas considerar tags que correspondam ao <padrão>"
 
-#: builtin/describe.c:452
+#: builtin/describe.c:568
 msgid "do not consider tags matching <pattern>"
 msgstr "não considerar tags que correspondam ao <padrão>"
 
-#: builtin/describe.c:454 builtin/name-rev.c:357
+#: builtin/describe.c:570 builtin/name-rev.c:535
 msgid "show abbreviated commit object as fallback"
 msgstr "mostrar objetos de commit abreviados em recurso"
 
-#: builtin/describe.c:455 builtin/describe.c:458
+#: builtin/describe.c:571 builtin/describe.c:574
 msgid "mark"
 msgstr "marca"
 
-#: builtin/describe.c:456
+#: builtin/describe.c:572
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
 msgstr ""
 "acrescentar <marca> se a árvore de trabalho contiver alterações "
 "(predefinição: \"-dirty\")"
 
-#: builtin/describe.c:459
+#: builtin/describe.c:575
 msgid "append <mark> on broken working tree (default: \"-broken\")"
 msgstr ""
 "acrescentar <marca> no caso de árvore de trabalho quebrada (predefinição: \"-"
 "broken\")"
 
-#: builtin/describe.c:477
+#: builtin/describe.c:593
 msgid "--long is incompatible with --abbrev=0"
 msgstr "--long é incompatível com --abbrev=0"
 
-#: builtin/describe.c:506
+#: builtin/describe.c:622
 msgid "No names found, cannot describe anything."
 msgstr "Nenhum nome encontrado, não é possível descrever."
 
-#: builtin/describe.c:549
+#: builtin/describe.c:673
 msgid "--dirty is incompatible with commit-ishes"
 msgstr "--dirty é incompatível com commits ou semelhantes"
 
-#: builtin/describe.c:551
+#: builtin/describe.c:675
 msgid "--broken is incompatible with commit-ishes"
 msgstr "--broken é incompatível com commits ou semelhantes"
 
-#: builtin/diff.c:83
+#: builtin/diff.c:91
 #, c-format
 msgid "'%s': not a regular file or symlink"
 msgstr "'%s': não é um ficheiro regular nem uma ligação simbólica"
 
-#: builtin/diff.c:234
+#: builtin/diff.c:241
 #, c-format
 msgid "invalid option: %s"
 msgstr "opção inválida: %s"
 
 #: builtin/diff.c:358
+#, c-format
+msgid "%s...%s: no merge base"
+msgstr ""
+
+#: builtin/diff.c:468
 msgid "Not a git repository"
 msgstr "Não é um repositório git"
 
-#: builtin/diff.c:401
+#: builtin/diff.c:513
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "objeto inválido '%s' fornecido."
 
-#: builtin/diff.c:410
+#: builtin/diff.c:524
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr "mais do que dois blobs fornecidos: '%s'"
 
-#: builtin/diff.c:417
+#: builtin/diff.c:529
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "objeto sem tratamento '%s' fornecido."
 
-#: builtin/difftool.c:28
+#: builtin/diff.c:563
+#, c-format
+msgid "%s...%s: multiple merge bases, using %s"
+msgstr ""
+
+#: builtin/difftool.c:30
 msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
 msgstr "git difftool [<opções>] [<commit> [<commit>]] [--] [<caminho>...]"
 
-#: builtin/difftool.c:241
+#: builtin/difftool.c:260
 #, c-format
 msgid "failed: %d"
 msgstr "falha: %d"
 
-#: builtin/difftool.c:283
+#: builtin/difftool.c:302
 #, c-format
 msgid "could not read symlink %s"
 msgstr "não foi possível ler a ligação simbólica %s"
 
-#: builtin/difftool.c:285
+#: builtin/difftool.c:304
 #, c-format
 msgid "could not read symlink file %s"
 msgstr "não foi possível ler o ficheiro de ligação simbólica %s"
 
-#: builtin/difftool.c:293
+#: builtin/difftool.c:312
 #, c-format
 msgid "could not read object %s for symlink %s"
 msgstr "não foi possível ler o objeto %s da ligação simbólica %s"
 
-#: builtin/difftool.c:395
+#: builtin/difftool.c:413
 msgid ""
 "combined diff formats('-c' and '--cc') are not supported in\n"
 "directory diff mode('-d' and '--dir-diff')."
@@ -7799,54 +14084,55 @@ msgstr ""
 "formatos diff combinado('-c' e '--cc') não são suportados em\n"
 "modo diff diretório ('-d' e '--dir-diff')."
 
-#: builtin/difftool.c:609
+#: builtin/difftool.c:634
 #, c-format
 msgid "both files modified: '%s' and '%s'."
 msgstr "ambos os ficheiros modificados: '%s' e '%s'."
 
-#: builtin/difftool.c:611
+#: builtin/difftool.c:636
 msgid "working tree file has been left."
 msgstr "ficheiro de árvore de trabalho foi deixado."
 
-#: builtin/difftool.c:622
+#: builtin/difftool.c:647
 #, c-format
 msgid "temporary files exist in '%s'."
 msgstr "existem ficheiros temporários em '%s'."
 
-#: builtin/difftool.c:623
+#: builtin/difftool.c:648
 msgid "you may want to cleanup or recover these."
 msgstr "pode querer limpar ou recuperá-los."
 
-#: builtin/difftool.c:669
+#: builtin/difftool.c:697
 msgid "use `diff.guitool` instead of `diff.tool`"
 msgstr "use 'diff.guitool' em vez de 'diff.tool'"
 
-#: builtin/difftool.c:671
+#: builtin/difftool.c:699
 msgid "perform a full-directory diff"
 msgstr "efetuar diff diretório completo"
 
-#: builtin/difftool.c:673
+#: builtin/difftool.c:701
 msgid "do not prompt before launching a diff tool"
 msgstr "não perguntar antes de lançar uma ferramenta diff"
 
-#: builtin/difftool.c:679
+#: builtin/difftool.c:706
 msgid "use symlinks in dir-diff mode"
 msgstr "usar symlinks no modi dir-diff"
 
-#: builtin/difftool.c:680
-msgid "<tool>"
+#: builtin/difftool.c:707
+#, fuzzy
+msgid "tool"
 msgstr "<ferramenta>"
 
-#: builtin/difftool.c:681
+#: builtin/difftool.c:708
 msgid "use the specified diff tool"
 msgstr "usar a ferramenta diff especificada"
 
-#: builtin/difftool.c:683
+#: builtin/difftool.c:710
 msgid "print a list of diff tools that may be used with `--tool`"
 msgstr ""
 "imprimir uma lista de ferramentas diff que podem ser usadas com '--tool'"
 
-#: builtin/difftool.c:686
+#: builtin/difftool.c:713
 msgid ""
 "make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
 "code"
@@ -7854,251 +14140,435 @@ msgstr ""
 "fazer com que 'git-difftool' termine quando uma ferramenta diff invocada "
 "retorna um código de saída não nulo"
 
-#: builtin/difftool.c:688
-msgid "<command>"
-msgstr "<comando>"
-
-#: builtin/difftool.c:689
+#: builtin/difftool.c:716
 msgid "specify a custom command for viewing diffs"
 msgstr "especificar um comando personalizado para ver diffs"
 
-#: builtin/difftool.c:713
+#: builtin/difftool.c:717
+msgid "passed to `diff`"
+msgstr ""
+
+#: builtin/difftool.c:732
+msgid "difftool requires worktree or --no-index"
+msgstr ""
+
+#: builtin/difftool.c:739
+#, fuzzy
+msgid "--dir-diff is incompatible with --no-index"
+msgstr "--dirty é incompatível com commits ou semelhantes"
+
+#: builtin/difftool.c:742
+#, fuzzy
+msgid "--gui, --tool and --extcmd are mutually exclusive"
+msgstr "-b, -B e --detach são mutuamente exclusivos"
+
+#: builtin/difftool.c:750
 msgid "no <tool> given for --tool=<tool>"
 msgstr "nenhuma <ferramenta> dada a --tool=<ferramenta>"
 
-#: builtin/difftool.c:720
+#: builtin/difftool.c:757
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr "nenhum <cmd> dado a --extcmd=<cmd>"
 
-#: builtin/fast-export.c:25
+#: builtin/env--helper.c:6
+msgid "git env--helper --type=[bool|ulong] <options> <env-var>"
+msgstr ""
+
+#: builtin/env--helper.c:42 builtin/hash-object.c:98
+msgid "type"
+msgstr "tipo"
+
+#: builtin/env--helper.c:46
+msgid "default for git_env_*(...) to fall back on"
+msgstr ""
+
+#: builtin/env--helper.c:48
+msgid "be quiet only use git_env_*() value as exit code"
+msgstr ""
+
+#: builtin/env--helper.c:67
+#, c-format
+msgid "option `--default' expects a boolean value with `--type=bool`, not `%s`"
+msgstr ""
+
+#: builtin/env--helper.c:82
+#, c-format
+msgid ""
+"option `--default' expects an unsigned long value with `--type=ulong`, not `"
+"%s`"
+msgstr ""
+
+#: builtin/fast-export.c:29
 msgid "git fast-export [rev-list-opts]"
 msgstr "git fast-export [opções-de-rev-list]"
 
-#: builtin/fast-export.c:980
+#: builtin/fast-export.c:868
+msgid "Error: Cannot export nested tags unless --mark-tags is specified."
+msgstr ""
+
+#: builtin/fast-export.c:1178
+msgid "--anonymize-map token cannot be empty"
+msgstr ""
+
+#: builtin/fast-export.c:1198
 msgid "show progress after <n> objects"
 msgstr "mostrar progresso depois de <n> objetos"
 
-#: builtin/fast-export.c:982
+#: builtin/fast-export.c:1200
 msgid "select handling of signed tags"
 msgstr "selecionar o tratamento de tags assinadas"
 
-#: builtin/fast-export.c:985
+#: builtin/fast-export.c:1203
 msgid "select handling of tags that tag filtered objects"
 msgstr "selecionar o tratamento de tags que apontem para objetos filtrados"
 
-#: builtin/fast-export.c:988
+#: builtin/fast-export.c:1206
+#, fuzzy
+msgid "select handling of commit messages in an alternate encoding"
+msgstr "selecionar o tratamento de tags que apontem para objetos filtrados"
+
+#: builtin/fast-export.c:1209
 msgid "Dump marks to this file"
 msgstr "Capturar marcas neste ficheiro"
 
-#: builtin/fast-export.c:990
+#: builtin/fast-export.c:1211
 msgid "Import marks from this file"
 msgstr "Importar marcas deste ficheiro"
 
-#: builtin/fast-export.c:992
+#: builtin/fast-export.c:1215
+#, fuzzy
+msgid "Import marks from this file if it exists"
+msgstr "Importar marcas deste ficheiro"
+
+#: builtin/fast-export.c:1217
 msgid "Fake a tagger when tags lack one"
 msgstr "Inventar um autor de tag para tags que não tenham um"
 
-#: builtin/fast-export.c:994
+#: builtin/fast-export.c:1219
 msgid "Output full tree for each commit"
 msgstr "Mostrar a árvore completa para cada commit"
 
-#: builtin/fast-export.c:996
+#: builtin/fast-export.c:1221
 msgid "Use the done feature to terminate the stream"
 msgstr "Usar a funcionalidade done para terminar o fluxo"
 
-#: builtin/fast-export.c:997
+#: builtin/fast-export.c:1222
 msgid "Skip output of blob data"
 msgstr "Ignorar a exibição de dados de blob"
 
-#: builtin/fast-export.c:998
+#: builtin/fast-export.c:1223 builtin/log.c:1811
 msgid "refspec"
 msgstr "especificador de referência"
 
-#: builtin/fast-export.c:999
+#: builtin/fast-export.c:1224
 msgid "Apply refspec to exported refs"
 msgstr "Aplicar o especificador de referência a referências exportadas"
 
-#: builtin/fast-export.c:1000
+#: builtin/fast-export.c:1225
 msgid "anonymize output"
 msgstr "anonimizar saída"
 
-#: builtin/fetch.c:21
+#: builtin/fast-export.c:1226
+msgid "from:to"
+msgstr ""
+
+#: builtin/fast-export.c:1227
+msgid "convert <from> to <to> in anonymized output"
+msgstr ""
+
+#: builtin/fast-export.c:1230
+msgid "Reference parents which are not in fast-export stream by object id"
+msgstr ""
+
+#: builtin/fast-export.c:1232
+msgid "Show original object ids of blobs/commits"
+msgstr ""
+
+#: builtin/fast-export.c:1234
+msgid "Label tags with mark ids"
+msgstr ""
+
+#: builtin/fast-export.c:1257
+#, fuzzy
+msgid "--anonymize-map without --anonymize does not make sense"
+msgstr "--name-only não faz sentido"
+
+#: builtin/fast-export.c:1272
+msgid "Cannot pass both --import-marks and --import-marks-if-exists"
+msgstr ""
+
+#: builtin/fast-import.c:3086
+#, fuzzy, c-format
+msgid "Missing from marks for submodule '%s'"
+msgstr "A ignorar submódulo '%s'"
+
+#: builtin/fast-import.c:3088
+#, fuzzy, c-format
+msgid "Missing to marks for submodule '%s'"
+msgstr "A ignorar submódulo '%s'"
+
+#: builtin/fast-import.c:3223
+#, c-format
+msgid "Expected 'mark' command, got %s"
+msgstr ""
+
+#: builtin/fast-import.c:3228
+#, c-format
+msgid "Expected 'to' command, got %s"
+msgstr ""
+
+#: builtin/fast-import.c:3320
+msgid "Expected format name:filename for submodule rewrite option"
+msgstr ""
+
+#: builtin/fast-import.c:3374
+#, c-format
+msgid "feature '%s' forbidden in input without --allow-unsafe-features"
+msgstr ""
+
+#: builtin/fetch-pack.c:241
+#, fuzzy, c-format
+msgid "Lockfile created but not reported: %s"
+msgstr "Submódulos alterados mas não atualizados:"
+
+#: builtin/fetch.c:35
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr ""
 "git fetch [<opções>] [<repositório> [<especificador-de-referência>...]]"
 
-#: builtin/fetch.c:22
+#: builtin/fetch.c:36
 msgid "git fetch [<options>] <group>"
 msgstr "git fetch [<opções>] <grupo>"
 
-#: builtin/fetch.c:23
+#: builtin/fetch.c:37
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr "git fetch --multiple [<opções>] [(<repositório> | <grupo>)...]"
 
-#: builtin/fetch.c:24
+#: builtin/fetch.c:38
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<opções>]"
 
-#: builtin/fetch.c:95 builtin/pull.c:175
+#: builtin/fetch.c:119
+msgid "fetch.parallel cannot be negative"
+msgstr ""
+
+#: builtin/fetch.c:142 builtin/pull.c:185
 msgid "fetch from all remotes"
 msgstr "obter de todos os remotos"
 
-#: builtin/fetch.c:97 builtin/pull.c:178
+#: builtin/fetch.c:144 builtin/pull.c:245
+#, fuzzy
+msgid "set upstream for git pull/fetch"
+msgstr "definir o ramo a montante usado com git pull/status"
+
+#: builtin/fetch.c:146 builtin/pull.c:188
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "acrescentar a .git/FETCH_HEAD em vez de substituir"
 
-#: builtin/fetch.c:99 builtin/pull.c:181
+#: builtin/fetch.c:148 builtin/pull.c:191
 msgid "path to upload pack on remote end"
 msgstr "caminho para o comando upload pack no remoto"
 
-#: builtin/fetch.c:100 builtin/pull.c:183
-msgid "force overwrite of local branch"
+#: builtin/fetch.c:149
+#, fuzzy
+msgid "force overwrite of local reference"
 msgstr "forçar a substituição do ramo local"
 
-#: builtin/fetch.c:102
+#: builtin/fetch.c:151
 msgid "fetch from multiple remotes"
 msgstr "obter de múltiplos remotos"
 
-#: builtin/fetch.c:104 builtin/pull.c:185
+#: builtin/fetch.c:153 builtin/pull.c:195
 msgid "fetch all tags and associated objects"
 msgstr "obter todas as tags e objetos associados"
 
-#: builtin/fetch.c:106
+#: builtin/fetch.c:155
 msgid "do not fetch all tags (--no-tags)"
 msgstr "não obter todas as tags (--no-tags)"
 
-#: builtin/fetch.c:108
+#: builtin/fetch.c:157
 msgid "number of submodules fetched in parallel"
 msgstr "número de submódulos obtidos em paralelo"
 
-#: builtin/fetch.c:110 builtin/pull.c:188
+#: builtin/fetch.c:159 builtin/pull.c:198
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 "eliminar os ramos de monitorização remotos que já não existem no remoto"
 
-#: builtin/fetch.c:111 builtin/pull.c:191
+#: builtin/fetch.c:161
+msgid "prune local tags no longer on remote and clobber changed tags"
+msgstr ""
+
+#: builtin/fetch.c:162 builtin/fetch.c:187 builtin/pull.c:122
 msgid "on-demand"
 msgstr "on-demand"
 
-#: builtin/fetch.c:112 builtin/pull.c:192
+#: builtin/fetch.c:163
 msgid "control recursive fetching of submodules"
 msgstr "controlar a obtenção recursiva de submódulos"
 
-#: builtin/fetch.c:116 builtin/pull.c:200
+#: builtin/fetch.c:168
+#, fuzzy
+msgid "write fetched references to the FETCH_HEAD file"
+msgstr "escrever o arquivo para este ficheiro"
+
+#: builtin/fetch.c:169 builtin/pull.c:206
 msgid "keep downloaded pack"
 msgstr "manter o pacote transferido"
 
-#: builtin/fetch.c:118
+#: builtin/fetch.c:171
 msgid "allow updating of HEAD ref"
 msgstr "permitir a atualização da referência HEAD"
 
-#: builtin/fetch.c:121 builtin/fetch.c:127 builtin/pull.c:203
+#: builtin/fetch.c:174 builtin/fetch.c:180 builtin/pull.c:209
+#: builtin/pull.c:218
 msgid "deepen history of shallow clone"
 msgstr "aprofundar o histórico de um clone raso"
 
-#: builtin/fetch.c:123
+#: builtin/fetch.c:176 builtin/pull.c:212
 msgid "deepen history of shallow repository based on time"
 msgstr "aprofundar o histórico de repositório raso com base na data"
 
-#: builtin/fetch.c:129 builtin/pull.c:206
+#: builtin/fetch.c:182 builtin/pull.c:221
 msgid "convert to a complete repository"
 msgstr "converter num repositório completo"
 
-#: builtin/fetch.c:131 builtin/log.c:1440
-msgid "dir"
-msgstr "dir"
-
-#: builtin/fetch.c:132
+#: builtin/fetch.c:185
 msgid "prepend this to submodule path output"
 msgstr "preceder isto ao caminho do submódulo"
 
-#: builtin/fetch.c:135
-msgid "default mode for recursion"
-msgstr "modo recursivo por omissão"
+#: builtin/fetch.c:188
+msgid ""
+"default for recursive fetching of submodules (lower priority than config "
+"files)"
+msgstr ""
 
-#: builtin/fetch.c:137 builtin/pull.c:209
+#: builtin/fetch.c:192 builtin/pull.c:224
 msgid "accept refs that update .git/shallow"
 msgstr "aceitar referência que atualizem .git/shallow"
 
-#: builtin/fetch.c:138 builtin/pull.c:211
+#: builtin/fetch.c:193 builtin/pull.c:226
 msgid "refmap"
 msgstr "mapa de referências"
 
-#: builtin/fetch.c:139 builtin/pull.c:212
+#: builtin/fetch.c:194 builtin/pull.c:227
 msgid "specify fetch refmap"
 msgstr "especificar mapa de referências"
 
-#: builtin/fetch.c:395
+#: builtin/fetch.c:201 builtin/pull.c:240
+msgid "report that we have only objects reachable from this object"
+msgstr ""
+
+#: builtin/fetch.c:204 builtin/fetch.c:206
+#, fuzzy
+msgid "run 'maintenance --auto' after fetching"
+msgstr "eliminar remotos depois de obter"
+
+#: builtin/fetch.c:208 builtin/pull.c:243
+msgid "check for forced-updates on all updated branches"
+msgstr ""
+
+#: builtin/fetch.c:210
+#, fuzzy
+msgid "write the commit-graph after fetching"
+msgstr "eliminar remotos depois de obter"
+
+#: builtin/fetch.c:212
+#, fuzzy
+msgid "accept refspecs from stdin"
+msgstr "ler referências do stdin"
+
+#: builtin/fetch.c:523
 msgid "Couldn't find remote ref HEAD"
 msgstr "Referência remota HEAD não encontrada"
 
-#: builtin/fetch.c:513
+#: builtin/fetch.c:677
 #, c-format
 msgid "configuration fetch.output contains invalid value %s"
 msgstr "a configuração fetch.ouput contém o valor inválido %s"
 
-#: builtin/fetch.c:606
+#: builtin/fetch.c:775
 #, c-format
 msgid "object %s not found"
 msgstr "objeto %s não encontrado"
 
-#: builtin/fetch.c:610
+#: builtin/fetch.c:779
 msgid "[up to date]"
 msgstr "[atualizado]"
 
-#: builtin/fetch.c:623 builtin/fetch.c:703
+#: builtin/fetch.c:792 builtin/fetch.c:808 builtin/fetch.c:880
 msgid "[rejected]"
 msgstr "[rejeitado]"
 
-#: builtin/fetch.c:624
+#: builtin/fetch.c:793
 msgid "can't fetch in current branch"
 msgstr "não é possível obter no ramo atual"
 
-#: builtin/fetch.c:633
+#: builtin/fetch.c:803
 msgid "[tag update]"
 msgstr "[tag atualizada]"
 
-#: builtin/fetch.c:634 builtin/fetch.c:667 builtin/fetch.c:683
-#: builtin/fetch.c:698
+#: builtin/fetch.c:804 builtin/fetch.c:841 builtin/fetch.c:863
+#: builtin/fetch.c:875
 msgid "unable to update local ref"
 msgstr "não é possível atualizar a referência local"
 
-#: builtin/fetch.c:653
+#: builtin/fetch.c:808
+msgid "would clobber existing tag"
+msgstr ""
+
+#: builtin/fetch.c:830
 msgid "[new tag]"
 msgstr "[nova tag]"
 
-#: builtin/fetch.c:656
+#: builtin/fetch.c:833
 msgid "[new branch]"
 msgstr "[novo ramo]"
 
-#: builtin/fetch.c:659
+#: builtin/fetch.c:836
 msgid "[new ref]"
 msgstr "[nova referência]"
 
-#: builtin/fetch.c:698
+#: builtin/fetch.c:875
 msgid "forced update"
 msgstr "atualização forçada"
 
-#: builtin/fetch.c:703
+#: builtin/fetch.c:880
 msgid "non-fast-forward"
 msgstr "sem avanço-rápido"
 
-#: builtin/fetch.c:748
+#: builtin/fetch.c:901
+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 ""
+
+#: builtin/fetch.c:905
+#, 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 ""
+
+#: builtin/fetch.c:939
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr "%s não enviou todos os objetos necessários\n"
 
-#: builtin/fetch.c:768
+#: builtin/fetch.c:960
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
 msgstr "%s rejeitado, porque as raízes rasas não podem ser atualizadas"
 
-#: builtin/fetch.c:855 builtin/fetch.c:951
+#: builtin/fetch.c:1053 builtin/fetch.c:1191
 #, c-format
 msgid "From %.*s\n"
 msgstr "De %.*s\n"
 
-#: builtin/fetch.c:866
+#: builtin/fetch.c:1064
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -8107,55 +14577,81 @@ msgstr ""
 "algumas referências locais não puderam ser atualizadas; tente executar\n"
 " 'git remote prune %s' para remover algum ramo antigo em conflito"
 
-#: builtin/fetch.c:921
+#: builtin/fetch.c:1161
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s ficará suspenso)"
 
-#: builtin/fetch.c:922
+#: builtin/fetch.c:1162
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s ficou suspenso)"
 
-#: builtin/fetch.c:954
+#: builtin/fetch.c:1194
 msgid "[deleted]"
 msgstr "[eliminado]"
 
-#: builtin/fetch.c:955 builtin/remote.c:1022
+#: builtin/fetch.c:1195 builtin/remote.c:1113
 msgid "(none)"
 msgstr "(nenhum)"
 
-#: builtin/fetch.c:978
+#: builtin/fetch.c:1218
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr "Obtenção de objetos no ramo atual %s de um repositório não nu recusada"
 
-#: builtin/fetch.c:997
+#: builtin/fetch.c:1237
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
 msgstr "O valor \"%2$s\" da opção \"%1$s\" não é válido em %3$s"
 
-#: builtin/fetch.c:1000
+#: builtin/fetch.c:1240
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "Opção \"%s\" ignorada em %s\n"
 
-#: builtin/fetch.c:1076
-#, c-format
-msgid "Don't know how to fetch from %s"
-msgstr "Não sei como obter de %s"
+#: builtin/fetch.c:1448
+msgid "multiple branches detected, incompatible with --set-upstream"
+msgstr ""
 
-#: builtin/fetch.c:1236
+#: builtin/fetch.c:1463
+#, fuzzy
+msgid "not setting upstream for a remote remote-tracking branch"
+msgstr ""
+"o ramo a montante '%s' não está guardado como um ramo de monitorização remoto"
+
+#: builtin/fetch.c:1465
+#, fuzzy
+msgid "not setting upstream for a remote tag"
+msgstr "definir o ramo a montante usado com git pull/status"
+
+#: builtin/fetch.c:1467
+#, fuzzy
+msgid "unknown branch type"
+msgstr "objeto de tipo desconhecido %d"
+
+#: builtin/fetch.c:1469
+msgid ""
+"no source branch found.\n"
+"you need to specify exactly one branch with the --set-upstream option."
+msgstr ""
+
+#: builtin/fetch.c:1598 builtin/fetch.c:1661
 #, c-format
 msgid "Fetching %s\n"
 msgstr "A obter de %s\n"
 
-#: builtin/fetch.c:1238 builtin/remote.c:96
+#: builtin/fetch.c:1608 builtin/fetch.c:1663 builtin/remote.c:101
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Não foi possível obter de %s"
 
-#: builtin/fetch.c:1256
+#: builtin/fetch.c:1620
+#, fuzzy, c-format
+msgid "could not fetch '%s' (exit code: %d)\n"
+msgstr "não foi possível definir '%s' como '%s'"
+
+#: builtin/fetch.c:1724
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -8163,204 +14659,418 @@ msgstr ""
 "Nenhum repositório remoto especificado. Especifique um URL ou\n"
 "o nome remoto a partir do qual as novas revisões devem ser obtidas."
 
-#: builtin/fetch.c:1279
+#: builtin/fetch.c:1760
 msgid "You need to specify a tag name."
 msgstr "Deve especificar um nome para a tag."
 
-#: builtin/fetch.c:1321
+#: builtin/fetch.c:1825
 msgid "Negative depth in --deepen is not supported"
 msgstr "Não é suportada profundidade negativa em --deepen"
 
-#: builtin/fetch.c:1323
+#: builtin/fetch.c:1827
 msgid "--deepen and --depth are mutually exclusive"
 msgstr "--deepen e --depth são mutuamente exclusivos"
 
-#: builtin/fetch.c:1328
+#: builtin/fetch.c:1832
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth e --unshallow não podem ser usados juntos"
 
-#: builtin/fetch.c:1330
+#: builtin/fetch.c:1834
 msgid "--unshallow on a complete repository does not make sense"
 msgstr "usar --unshallow num repositório completo não faz sentido"
 
-#: builtin/fetch.c:1352
+#: builtin/fetch.c:1851
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all não leva um repositório como argumento"
 
-#: builtin/fetch.c:1354
+#: builtin/fetch.c:1853
 msgid "fetch --all does not make sense with refspecs"
 msgstr "fetch --all não faz sentido com especificadores de referência"
 
-#: builtin/fetch.c:1365
+#: builtin/fetch.c:1862
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "O remoto ou grupo remoto não existe: %s"
 
-#: builtin/fetch.c:1373
+#: builtin/fetch.c:1869
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr "Não faz sentido obter um grupo e especificar uma referência"
 
-#: builtin/fmt-merge-msg.c:14
+#: builtin/fetch.c:1887
+msgid ""
+"--filter can only be used with the remote configured in extensions."
+"partialclone"
+msgstr ""
+
+#: builtin/fetch.c:1891
+#, fuzzy
+msgid "--stdin can only be used when fetching from one remote"
+msgstr "A opção --exec só pode ser usada em conjunto com --remote"
+
+#: builtin/fmt-merge-msg.c:7
 msgid ""
 "git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
 msgstr ""
 "git fmt-merge-msg [-m <mensagem>] [--log[=<n>] | --no-log] [--file "
 "<ficheiro>]"
 
-#: builtin/fmt-merge-msg.c:663
+#: builtin/fmt-merge-msg.c:18
 msgid "populate log with at most <n> entries from shortlog"
 msgstr "povoar o registo com, no máximo, <n> entradas do shortlog"
 
-#: builtin/fmt-merge-msg.c:666
+#: builtin/fmt-merge-msg.c:21
 msgid "alias for --log (deprecated)"
 msgstr "alias de --log (obsoleto)"
 
-#: builtin/fmt-merge-msg.c:669
+#: builtin/fmt-merge-msg.c:24
 msgid "text"
 msgstr "texto"
 
-#: builtin/fmt-merge-msg.c:670
+#: builtin/fmt-merge-msg.c:25
 msgid "use <text> as start of message"
 msgstr "usar <texto> no início da mensagem"
 
-#: builtin/fmt-merge-msg.c:671
+#: builtin/fmt-merge-msg.c:26
 msgid "file to read from"
 msgstr "ficheiro a ler"
 
-#: builtin/for-each-ref.c:9
+#: builtin/for-each-ref.c:10
 msgid "git for-each-ref [<options>] [<pattern>]"
 msgstr "git for-each-ref [<opções>] [<padrão>]"
 
-#: builtin/for-each-ref.c:10
+#: builtin/for-each-ref.c:11
 msgid "git for-each-ref [--points-at <object>]"
 msgstr "git for-each-ref [--points-at <objeto>]"
 
-#: builtin/for-each-ref.c:11
-msgid "git for-each-ref [(--merged | --no-merged) [<commit>]]"
+#: builtin/for-each-ref.c:12
+#, fuzzy
+msgid "git for-each-ref [--merged [<commit>]] [--no-merged [<commit>]]"
 msgstr "git for-each-ref [(--merged | --no-merged) [<commit>]]"
 
-#: builtin/for-each-ref.c:12
+#: builtin/for-each-ref.c:13
 msgid "git for-each-ref [--contains [<commit>]] [--no-contains [<commit>]]"
 msgstr "git for-each-ref [--contains [<commit>]] [--no-contains [<commit>]]"
 
-#: builtin/for-each-ref.c:27
+#: builtin/for-each-ref.c:28
 msgid "quote placeholders suitably for shells"
 msgstr ""
 "envolver os marcadores de posição em aspas de forma adequada para "
 "interpretadores de comandos"
 
-#: builtin/for-each-ref.c:29
+#: builtin/for-each-ref.c:30
 msgid "quote placeholders suitably for perl"
 msgstr "envolver os marcadores de posição em aspas de forma adequada para perl"
 
-#: builtin/for-each-ref.c:31
+#: builtin/for-each-ref.c:32
 msgid "quote placeholders suitably for python"
 msgstr ""
 "envolver os marcadores de posição em aspas de forma adequada para python"
 
-#: builtin/for-each-ref.c:33
+#: builtin/for-each-ref.c:34
 msgid "quote placeholders suitably for Tcl"
 msgstr "envolver os marcadores de posição em aspas de forma adequada para Tcl"
 
-#: builtin/for-each-ref.c:36
+#: builtin/for-each-ref.c:37
 msgid "show only <n> matched refs"
 msgstr "mostrar apenas <n> referências correspondidas"
 
-#: builtin/for-each-ref.c:41
+#: builtin/for-each-ref.c:39 builtin/tag.c:440
+#, fuzzy
+msgid "respect format colors"
+msgstr "formato esperado: %%(color:<cor>)"
+
+#: builtin/for-each-ref.c:42
 msgid "print only refs which points at the given object"
 msgstr "imprimir apenas referências que apontem para o objeto fornecido"
 
-#: builtin/for-each-ref.c:43
+#: builtin/for-each-ref.c:44
 msgid "print only refs that are merged"
 msgstr "imprimir apenas referenciadas integradas"
 
-#: builtin/for-each-ref.c:44
+#: builtin/for-each-ref.c:45
 msgid "print only refs that are not merged"
 msgstr "imprimir apenas referências não integrada"
 
-#: builtin/for-each-ref.c:45
+#: builtin/for-each-ref.c:46
 msgid "print only refs which contain the commit"
 msgstr "imprimir apenas referências que contenham o commit"
 
-#: builtin/for-each-ref.c:46
+#: builtin/for-each-ref.c:47
 msgid "print only refs which don't contain the commit"
 msgstr "imprimir apenas referências que não contenham o commit"
 
-#: builtin/fsck.c:554
+#: builtin/fsck.c:69 builtin/fsck.c:148 builtin/fsck.c:149
+#, fuzzy
+msgid "unknown"
+msgstr "desconhecido:"
+
+#. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
+#: builtin/fsck.c:101 builtin/fsck.c:121
+#, fuzzy, c-format
+msgid "error in %s %s: %s"
+msgstr "erro no objeto: %s"
+
+#. TRANSLATORS: e.g. warning in tree 01bfda: <more explanation>
+#: builtin/fsck.c:115
+#, fuzzy, c-format
+msgid "warning in %s %s: %s"
+msgstr "não é possível abrir %s: %s"
+
+#: builtin/fsck.c:144 builtin/fsck.c:147
+#, c-format
+msgid "broken link from %7s %s"
+msgstr ""
+
+#: builtin/fsck.c:156
+#, fuzzy
+msgid "wrong object type in link"
+msgstr "objeto de tipo desconhecido %d"
+
+#: builtin/fsck.c:172
+#, c-format
+msgid ""
+"broken link from %7s %s\n"
+"              to %7s %s"
+msgstr ""
+
+#: builtin/fsck.c:283
+#, fuzzy, c-format
+msgid "missing %s %s"
+msgstr "falta o objeto %s de %s"
+
+#: builtin/fsck.c:310
+#, fuzzy, c-format
+msgid "unreachable %s %s"
+msgstr "já se tem %s (%s)"
+
+#: builtin/fsck.c:330
+#, fuzzy, c-format
+msgid "dangling %s %s"
+msgstr "A atualizar %s..%s\n"
+
+#: builtin/fsck.c:340
+#, fuzzy
+msgid "could not create lost-found"
+msgstr "não foi possível criar o ficheiro '%s'"
+
+#: builtin/fsck.c:351
+#, fuzzy, c-format
+msgid "could not finish '%s'"
+msgstr "não foi possível reiniciar '%s'"
+
+#: builtin/fsck.c:368
+#, fuzzy, c-format
+msgid "Checking %s"
+msgstr "A verificar objetos"
+
+#: builtin/fsck.c:406
+#, fuzzy, c-format
+msgid "Checking connectivity (%d objects)"
+msgstr "A verificar conectividade"
+
+#: builtin/fsck.c:425
+#, fuzzy, c-format
+msgid "Checking %s %s"
+msgstr "A verificar o patch %s..."
+
+#: builtin/fsck.c:430
+msgid "broken links"
+msgstr ""
+
+#: builtin/fsck.c:439
+#, fuzzy, c-format
+msgid "root %s"
+msgstr "raiz"
+
+#: builtin/fsck.c:447
+#, c-format
+msgid "tagged %s %s (%s) in %s"
+msgstr ""
+
+#: builtin/fsck.c:476
+#, c-format
+msgid "%s: object corrupt or missing"
+msgstr ""
+
+#: builtin/fsck.c:501
+#, fuzzy, c-format
+msgid "%s: invalid reflog entry %s"
+msgstr "referência inválida: %s"
+
+#: builtin/fsck.c:515
+#, fuzzy, c-format
+msgid "Checking reflog %s->%s"
+msgstr "A verificar a mudança de nome de '%s' para '%s'\n"
+
+#: builtin/fsck.c:549
+#, fuzzy, c-format
+msgid "%s: invalid sha1 pointer %s"
+msgstr "linha rasa inválida: %s"
+
+#: builtin/fsck.c:556
+#, fuzzy, c-format
+msgid "%s: not a commit"
+msgstr "'%s' não é um commit"
+
+#: builtin/fsck.c:610
+#, fuzzy
+msgid "notice: No default references"
+msgstr "não foi possível eliminar as referências: %s"
+
+#: builtin/fsck.c:625
+#, fuzzy, c-format
+msgid "%s: object corrupt or missing: %s"
+msgstr "objeto não encontrado: %s"
+
+#: builtin/fsck.c:638
+#, fuzzy, c-format
+msgid "%s: object could not be parsed: %s"
+msgstr "não foi possível analisar %s"
+
+#: builtin/fsck.c:658
+#, fuzzy, c-format
+msgid "bad sha1 file: %s"
+msgstr "linha rasa inválida: %s"
+
+#: builtin/fsck.c:673
+#, fuzzy
+msgid "Checking object directory"
+msgstr "A verificar diretórios de objetos"
+
+#: builtin/fsck.c:676
 msgid "Checking object directories"
 msgstr "A verificar diretórios de objetos"
 
-#: builtin/fsck.c:646
+#: builtin/fsck.c:691
+#, fuzzy, c-format
+msgid "Checking %s link"
+msgstr "A extrair ficheiros"
+
+#: builtin/fsck.c:696 builtin/index-pack.c:865
+#, c-format
+msgid "invalid %s"
+msgstr "inválido %s"
+
+#: builtin/fsck.c:703
+#, fuzzy, c-format
+msgid "%s points to something strange (%s)"
+msgstr "%s - não é algo se possa integrar"
+
+#: builtin/fsck.c:709
+#, c-format
+msgid "%s: detached HEAD points at nothing"
+msgstr ""
+
+#: builtin/fsck.c:713
+#, c-format
+msgid "notice: %s points to an unborn branch (%s)"
+msgstr ""
+
+#: builtin/fsck.c:725
+#, fuzzy
+msgid "Checking cache tree"
+msgstr "A verificar o patch %s..."
+
+#: builtin/fsck.c:730
+#, fuzzy, c-format
+msgid "%s: invalid sha1 pointer in cache-tree"
+msgstr "Falha ao atualizar a árvore de cache principal"
+
+#: builtin/fsck.c:739
+msgid "non-tree in cache-tree"
+msgstr ""
+
+#: builtin/fsck.c:770
 msgid "git fsck [<options>] [<object>...]"
 msgstr "git fsck [<opções>] [<objeto>...]"
 
-#: builtin/fsck.c:652
+#: builtin/fsck.c:776
 msgid "show unreachable objects"
 msgstr "mostrar objetos inalcançáveis"
 
-#: builtin/fsck.c:653
+#: builtin/fsck.c:777
 msgid "show dangling objects"
 msgstr "mostrar objetos suspensos"
 
-#: builtin/fsck.c:654
+#: builtin/fsck.c:778
 msgid "report tags"
 msgstr "mostrar tags"
 
-#: builtin/fsck.c:655
+#: builtin/fsck.c:779
 msgid "report root nodes"
 msgstr "mostrar nós raiz"
 
-#: builtin/fsck.c:656
+#: builtin/fsck.c:780
 msgid "make index objects head nodes"
 msgstr "considerar objetos do índice como nós cabeça"
 
-#: builtin/fsck.c:657
+#: builtin/fsck.c:781
 msgid "make reflogs head nodes (default)"
 msgstr "considerar os reflogs como nós cabeça (predefinição)"
 
-#: builtin/fsck.c:658
+#: builtin/fsck.c:782
 msgid "also consider packs and alternate objects"
 msgstr "considerar também pacotes e objetos sobressalente"
 
-#: builtin/fsck.c:659
+#: builtin/fsck.c:783
 msgid "check only connectivity"
 msgstr "verificar só a conetividade"
 
-#: builtin/fsck.c:660
+#: builtin/fsck.c:784
 msgid "enable more strict checking"
 msgstr "ativar verificação mais rigorosa"
 
-#: builtin/fsck.c:662
+#: builtin/fsck.c:786
 msgid "write dangling objects in .git/lost-found"
 msgstr "escrever objetos suspensos em .git/lost-found"
 
-#: builtin/fsck.c:663 builtin/prune.c:107
+#: builtin/fsck.c:787 builtin/prune.c:134
 msgid "show progress"
 msgstr "mostrar progresso"
 
-#: builtin/fsck.c:664
+#: builtin/fsck.c:788
 msgid "show verbose names for reachable objects"
 msgstr "mostrar nomes verbosos de objetos inalcançáveis"
 
-#: builtin/fsck.c:725
+#: builtin/fsck.c:847 builtin/index-pack.c:261
 msgid "Checking objects"
 msgstr "A verificar objetos"
 
-#: builtin/gc.c:25
+#: builtin/fsck.c:875
+#, fuzzy, c-format
+msgid "%s: object missing"
+msgstr "mostrar tamanho do objeto"
+
+#: builtin/fsck.c:886
+#, fuzzy, c-format
+msgid "invalid parameter: expected sha1, got '%s'"
+msgstr "parâmetro inválido na mágica 'prefix' do especificador de caminho"
+
+#: builtin/gc.c:36
 msgid "git gc [<options>]"
 msgstr "git gc [<opções>]"
 
-#: builtin/gc.c:78
+#: builtin/gc.c:91
 #, c-format
 msgid "Failed to fstat %s: %s"
 msgstr "falha ao invocar fstat sobre %s: %s"
 
-#: builtin/gc.c:306
+#: builtin/gc.c:127
+#, fuzzy, c-format
+msgid "failed to parse '%s' value '%s'"
+msgstr "falha ao abrir '%s': %s"
+
+#: builtin/gc.c:476 builtin/init-db.c:58
 #, c-format
-msgid "Can't stat %s"
-msgstr "não é possível invocar stat sobre %s"
+msgid "cannot stat '%s'"
+msgstr "não é possível invocar stat sobre '%s'"
 
-#: builtin/gc.c:315
+#: builtin/gc.c:485 builtin/notes.c:240 builtin/tag.c:530
+#, c-format
+msgid "cannot read '%s'"
+msgstr "não é possível ler '%s'"
+
+#: builtin/gc.c:492
 #, c-format
 msgid ""
 "The last gc run reported the following. Please correct the root cause\n"
@@ -8375,45 +15085,54 @@ msgstr ""
 "\n"
 "%s"
 
-#: builtin/gc.c:354
+#: builtin/gc.c:540
 msgid "prune unreferenced objects"
 msgstr "eliminar ficheiros não referenciados"
 
-#: builtin/gc.c:356
+#: builtin/gc.c:542
 msgid "be more thorough (increased runtime)"
 msgstr "ser mais minucioso (aumenta o tempo de execução)"
 
-#: builtin/gc.c:357
+#: builtin/gc.c:543
 msgid "enable auto-gc mode"
 msgstr "ativar modo auto-gc"
 
-#: builtin/gc.c:358
+#: builtin/gc.c:546
 msgid "force running gc even if there may be another gc running"
 msgstr "forçar a execução do gc mesmo que haja outro gc a executar"
 
-#: builtin/gc.c:375
-#, c-format
-msgid "Failed to parse gc.logexpiry value %s"
+#: builtin/gc.c:549
+msgid "repack all other packs except the largest pack"
+msgstr ""
+
+#: builtin/gc.c:566
+#, fuzzy, c-format
+msgid "failed to parse gc.logexpiry value %s"
+msgstr "falha ao analisar o valor %s de gc.logexpiry"
+
+#: builtin/gc.c:577
+#, fuzzy, c-format
+msgid "failed to parse prune expiry value %s"
 msgstr "falha ao analisar o valor %s de gc.logexpiry"
 
-#: builtin/gc.c:403
+#: builtin/gc.c:597
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
 "A autocompactar o repositório em segundo plano para obter um melhor "
 "desempenho.\n"
 
-#: builtin/gc.c:405
+#: builtin/gc.c:599
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
 msgstr "A autocompactar o repositório para obter um melhor desempenho.\n"
 
-#: builtin/gc.c:406
+#: builtin/gc.c:600
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
 msgstr "Consulte \"git help gc\" para ler sobre manutenção manual.\n"
 
-#: builtin/gc.c:427
+#: builtin/gc.c:640
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
@@ -8421,270 +15140,357 @@ msgstr ""
 "gc já a executar na máquina '%s' pid %<PRIuMAX> (use --force se não for o "
 "caso)"
 
-#: builtin/gc.c:471
+#: builtin/gc.c:695
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
 "Existem demasiados objeto soltos inalcançáveis; execute 'git prune' para os "
 "remover."
 
-#: builtin/grep.c:25
+#: builtin/gc.c:705
+msgid "git maintenance run [--auto] [--[no-]quiet] [--task=<task>]"
+msgstr ""
+
+#: builtin/gc.c:812
+#, fuzzy
+msgid "failed to write commit-graph"
+msgstr "falha ao escrever objeto de commit"
+
+#: builtin/gc.c:905
+#, c-format
+msgid "lock file '%s' exists, skipping maintenance"
+msgstr ""
+
+#: builtin/gc.c:932
+#, fuzzy, c-format
+msgid "task '%s' failed"
+msgstr "falha ao mudar o nome de '%s'"
+
+#: builtin/gc.c:979
+#, fuzzy, c-format
+msgid "'%s' is not a valid task"
+msgstr "'%s' não é uma referência válida."
+
+#: builtin/gc.c:984
+#, fuzzy, c-format
+msgid "task '%s' cannot be selected multiple times"
+msgstr "'%s' não pode ser usado com %s"
+
+#: builtin/gc.c:999
+msgid "run tasks based on the state of the repository"
+msgstr ""
+
+#: builtin/gc.c:1001
+msgid "do not report progress or other information over stderr"
+msgstr ""
+
+#: builtin/gc.c:1002
+msgid "task"
+msgstr ""
+
+#: builtin/gc.c:1003
+#, fuzzy
+msgid "run a specific task"
+msgstr "nenhum caminho especificado"
+
+#: builtin/gc.c:1026
+#, fuzzy
+msgid "git maintenance run [<options>]"
+msgstr "git notes prune [<opções>]"
+
+#: builtin/gc.c:1037
+#, fuzzy, c-format
+msgid "invalid subcommand: %s"
+msgstr "commit inválido %s"
+
+#: builtin/grep.c:30
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr "git grep [<opções>] [-e] <padrão> [<rev>...] [[--] <caminho>...]"
 
-#: builtin/grep.c:232
+#: builtin/grep.c:225
 #, c-format
 msgid "grep: failed to create thread: %s"
 msgstr "grep: falha ao criar thread: %s"
 
-#: builtin/grep.c:290
+#: builtin/grep.c:279
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
 msgstr "o número de threads especificado em %2$s é inválido (%1$d)"
 
-#: builtin/grep.c:769 builtin/grep.c:810
+#. TRANSLATORS: %s is the configuration
+#. variable for tweaking threads, currently
+#. grep.threads
+#.
+#: builtin/grep.c:287 builtin/index-pack.c:1576 builtin/index-pack.c:1766
+#: builtin/pack-objects.c:2936
+#, c-format
+msgid "no threads support, ignoring %s"
+msgstr "sem suporte de threads, %s ignorado"
+
+#: builtin/grep.c:475 builtin/grep.c:600 builtin/grep.c:640
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "não foi possível ler a árvore (%s)"
 
-#: builtin/grep.c:829
+#: builtin/grep.c:655
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr "não foi possível efetuar grep de objetos do tipo %s"
 
-#: builtin/grep.c:893
+#: builtin/grep.c:725
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "a opção '%c' espera um valor numérico"
 
-#: builtin/grep.c:980
+#: builtin/grep.c:824
 msgid "search in index instead of in the work tree"
 msgstr "procurar no índice em vez de procurar na árvore de trabalho"
 
-#: builtin/grep.c:982
+#: builtin/grep.c:826
 msgid "find in contents not managed by git"
 msgstr "procurar em conteúdos não geridos pelo git"
 
-#: builtin/grep.c:984
+#: builtin/grep.c:828
 msgid "search in both tracked and untracked files"
 msgstr "procurar em ficheiros controlados e não controlados"
 
-#: builtin/grep.c:986
+#: builtin/grep.c:830
 msgid "ignore files specified via '.gitignore'"
 msgstr "ignorar ficheiros especificados via '.gitignore'"
 
-#: builtin/grep.c:988
+#: builtin/grep.c:832
 msgid "recursively search in each submodule"
 msgstr "procurar recursivamente em cada submódulo"
 
-#: builtin/grep.c:990
-msgid "basename"
-msgstr "nomebase"
-
-#: builtin/grep.c:991
-msgid "prepend parent project's basename to output"
-msgstr "preceder o nomebase do projeto pai na saída"
-
-#: builtin/grep.c:994
+#: builtin/grep.c:835
 msgid "show non-matching lines"
 msgstr "mostrar linhas não correspondidas"
 
-#: builtin/grep.c:996
+#: builtin/grep.c:837
 msgid "case insensitive matching"
 msgstr "não diferenciar maiúsculas de minúsculas"
 
-#: builtin/grep.c:998
+#: builtin/grep.c:839
 msgid "match patterns only at word boundaries"
 msgstr "corresponder padrões apenas a palavras"
 
-#: builtin/grep.c:1000
+#: builtin/grep.c:841
 msgid "process binary files as text"
 msgstr "processar ficheiros binários como texto"
 
-#: builtin/grep.c:1002
+#: builtin/grep.c:843
 msgid "don't match patterns in binary files"
 msgstr "ignorar ficheiros binários"
 
-#: builtin/grep.c:1005
+#: builtin/grep.c:846
 msgid "process binary files with textconv filters"
 msgstr "processar ficheiros binários com filtros textconv"
 
-#: builtin/grep.c:1007
+#: builtin/grep.c:848
+#, fuzzy
+msgid "search in subdirectories (default)"
+msgstr "eliminar referências soltas (predefinição)"
+
+#: builtin/grep.c:850
 msgid "descend at most <depth> levels"
 msgstr "descer no máximo até <profundidade>"
 
-#: builtin/grep.c:1011
+#: builtin/grep.c:854
 msgid "use extended POSIX regular expressions"
 msgstr "usar expressões regulares estendidas do POSIX"
 
-#: builtin/grep.c:1014
+#: builtin/grep.c:857
 msgid "use basic POSIX regular expressions (default)"
 msgstr "usar expressões regulares básicas do POSIX (predefinição)"
 
-#: builtin/grep.c:1017
+#: builtin/grep.c:860
 msgid "interpret patterns as fixed strings"
 msgstr "interpretar padrões como cadeias de caracteres fixas"
 
-#: builtin/grep.c:1020
+#: builtin/grep.c:863
 msgid "use Perl-compatible regular expressions"
 msgstr "usar expressões regulares compatíveis com Perl"
 
-#: builtin/grep.c:1023
+#: builtin/grep.c:866
 msgid "show line numbers"
 msgstr "mostrar números de linha"
 
-#: builtin/grep.c:1024
+#: builtin/grep.c:867
+#, fuzzy
+msgid "show column number of first match"
+msgstr "mostrar apenas nomes de ficheiro sem correspondência"
+
+#: builtin/grep.c:868
 msgid "don't show filenames"
 msgstr "não mostrar nomes de ficheiro"
 
-#: builtin/grep.c:1025
+#: builtin/grep.c:869
 msgid "show filenames"
 msgstr "mostrar nomes de ficheiro"
 
-#: builtin/grep.c:1027
+#: builtin/grep.c:871
 msgid "show filenames relative to top directory"
 msgstr "mostrar nomes de ficheiro relativamente ao diretório superior"
 
-#: builtin/grep.c:1029
+#: builtin/grep.c:873
 msgid "show only filenames instead of matching lines"
 msgstr "mostrar apenas nomes de ficheiro em vez de linhas correspondidas"
 
-#: builtin/grep.c:1031
+#: builtin/grep.c:875
 msgid "synonym for --files-with-matches"
 msgstr "sinónimo de --files-with-matches"
 
-#: builtin/grep.c:1034
+#: builtin/grep.c:878
 msgid "show only the names of files without match"
 msgstr "mostrar apenas nomes de ficheiro sem correspondência"
 
-#: builtin/grep.c:1036
+#: builtin/grep.c:880
 msgid "print NUL after filenames"
 msgstr "imprimir NUL depois dos nomes de ficheiro"
 
-#: builtin/grep.c:1038
+#: builtin/grep.c:883
+#, fuzzy
+msgid "show only matching parts of a line"
+msgstr "mostrar linhas não correspondidas"
+
+#: builtin/grep.c:885
 msgid "show the number of matches instead of matching lines"
 msgstr "mostrar o número de correspondências em vez das linha correspondidas"
 
-#: builtin/grep.c:1039
+#: builtin/grep.c:886
 msgid "highlight matches"
 msgstr "realçar correspondências"
 
-#: builtin/grep.c:1041
+#: builtin/grep.c:888
 msgid "print empty line between matches from different files"
 msgstr ""
 "imprimir uma linha em branco entre correspondências de diferentes ficheiros"
 
-#: builtin/grep.c:1043
+#: builtin/grep.c:890
 msgid "show filename only once above matches from same file"
 msgstr ""
 "mostrar só uma vez o nome do ficheiro acima das correspondências dentro do "
 "mesmo ficheiro"
 
-#: builtin/grep.c:1046
+#: builtin/grep.c:893
 msgid "show <n> context lines before and after matches"
 msgstr "mostrar <n> linhas de contexto antes e depois das correspondências"
 
-#: builtin/grep.c:1049
+#: builtin/grep.c:896
 msgid "show <n> context lines before matches"
 msgstr "mostrar <n> linhas de contexto antes das correspondências"
 
-#: builtin/grep.c:1051
+#: builtin/grep.c:898
 msgid "show <n> context lines after matches"
 msgstr "mostrar <n> linhas de contexto depois das correspondências"
 
-#: builtin/grep.c:1053
+#: builtin/grep.c:900
 msgid "use <n> worker threads"
 msgstr "usar <n> threads de trabalho"
 
-#: builtin/grep.c:1054
+#: builtin/grep.c:901
 msgid "shortcut for -C NUM"
 msgstr "atalho para -C NUM"
 
-#: builtin/grep.c:1057
+#: builtin/grep.c:904
 msgid "show a line with the function name before matches"
 msgstr "mostrar uma linha com o nome da função antes das correspondências"
 
-#: builtin/grep.c:1059
+#: builtin/grep.c:906
 msgid "show the surrounding function"
 msgstr "mostrar a função circundante"
 
-#: builtin/grep.c:1062
+#: builtin/grep.c:909
 msgid "read patterns from file"
 msgstr "ler padrões do ficheiro"
 
-#: builtin/grep.c:1064
+#: builtin/grep.c:911
 msgid "match <pattern>"
 msgstr "procurar <padrão>"
 
-#: builtin/grep.c:1066
+#: builtin/grep.c:913
 msgid "combine patterns specified with -e"
 msgstr "combinar padrões especificados com -e"
 
-#: builtin/grep.c:1078
+#: builtin/grep.c:925
 msgid "indicate hit with exit status without output"
 msgstr "indicar padrão encontrado no valor de saída, mas não imprimir"
 
-#: builtin/grep.c:1080
+#: builtin/grep.c:927
 msgid "show only matches from files that match all patterns"
 msgstr ""
 "mostrar apenas correspondências de ficheiro que tenham todos os padrões"
 
-#: builtin/grep.c:1082
+#: builtin/grep.c:929
 msgid "show parse tree for grep expression"
 msgstr "mostrar árvore de analise da expressões grep"
 
-#: builtin/grep.c:1086
+#: builtin/grep.c:933
 msgid "pager"
 msgstr "paginador"
 
-#: builtin/grep.c:1086
+#: builtin/grep.c:933
 msgid "show matching files in the pager"
 msgstr "mostrar ficheiros com correspondências no paginador"
 
-#: builtin/grep.c:1089
+#: builtin/grep.c:937
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "permitir invocar grep(1) (ignorado nesta compilação)"
 
-#: builtin/grep.c:1153
-msgid "no pattern given."
+#: builtin/grep.c:1004
+#, fuzzy
+msgid "no pattern given"
 msgstr "nenhum padrão fornecido."
 
-#: builtin/grep.c:1189
+#: builtin/grep.c:1040
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr "--no-index ou --untracked não podem ser usados em revisões"
 
-#: builtin/grep.c:1195
+#: builtin/grep.c:1048
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "não foi possível resolver revisão: %s"
 
-#: builtin/grep.c:1228 builtin/index-pack.c:1485
+#: builtin/grep.c:1078
+#, fuzzy
+msgid "--untracked not supported with --recurse-submodules"
+msgstr "opção não suportada com --recurse-submodules."
+
+#: builtin/grep.c:1082
+msgid "invalid option combination, ignoring --threads"
+msgstr ""
+
+#: builtin/grep.c:1085 builtin/pack-objects.c:3655
+#, fuzzy
+msgid "no threads support, ignoring --threads"
+msgstr "sem suporte de threads, %s ignorado"
+
+#: builtin/grep.c:1088 builtin/index-pack.c:1573 builtin/pack-objects.c:2933
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "número de threads especificado inválido (%d)"
 
-#: builtin/grep.c:1251
+#: builtin/grep.c:1122
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager só funciona na árvore de trabalho"
 
-#: builtin/grep.c:1274
-msgid "option not supported with --recurse-submodules."
-msgstr "opção não suportada com --recurse-submodules."
-
-#: builtin/grep.c:1280
-msgid "--cached or --untracked cannot be used with --no-index."
+#: builtin/grep.c:1148
+#, fuzzy
+msgid "--cached or --untracked cannot be used with --no-index"
 msgstr "--cached ou --untracked não podem ser usados com --no-index."
 
-#: builtin/grep.c:1286
-msgid "--[no-]exclude-standard cannot be used for tracked contents."
+#: builtin/grep.c:1154
+#, fuzzy
+msgid "--[no-]exclude-standard cannot be used for tracked contents"
 msgstr ""
 "--[no-]exclude-standard não podem ser usados em conteúdos não controlados."
 
-#: builtin/grep.c:1294
-msgid "both --cached and trees are given."
+#: builtin/grep.c:1162
+#, fuzzy
+msgid "both --cached and trees are given"
 msgstr "--cached e árvores foram fornecidos simultaneamente."
 
-#: builtin/hash-object.c:81
+#: builtin/hash-object.c:85
 msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
@@ -8692,93 +15498,99 @@ msgstr ""
 "git hash-object [-t <tipo>] [-w] [--path=<ficheiro> | --no-filters] [--"
 "stdin] [--] <ficheiro>..."
 
-#: builtin/hash-object.c:82
+#: builtin/hash-object.c:86
 msgid "git hash-object  --stdin-paths"
 msgstr "git hash-object  --stdin-paths"
 
-#: builtin/hash-object.c:94
-msgid "type"
-msgstr "tipo"
-
-#: builtin/hash-object.c:94
+#: builtin/hash-object.c:98
 msgid "object type"
 msgstr "tipo do objeto"
 
-#: builtin/hash-object.c:95
+#: builtin/hash-object.c:99
 msgid "write the object into the object database"
 msgstr "escrever o objeto na base de dados de objetos"
 
-#: builtin/hash-object.c:97
+#: builtin/hash-object.c:101
 msgid "read the object from stdin"
 msgstr "ler o objeto da entrada padrão"
 
-#: builtin/hash-object.c:99
+#: builtin/hash-object.c:103
 msgid "store file as is without filters"
 msgstr "guardar o ficheiro tal como está, sem filtros"
 
-#: builtin/hash-object.c:100
+#: builtin/hash-object.c:104
 msgid ""
 "just hash any random garbage to create corrupt objects for debugging Git"
 msgstr ""
 "obter hash de lixo aleatório para criar objetos corrompidos para depurar o "
 "Git"
 
-#: builtin/hash-object.c:101
+#: builtin/hash-object.c:105
 msgid "process file as it were from this path"
 msgstr "processar o ficheiro como se este fosse do caminho indicado"
 
-#: builtin/help.c:42
+#: builtin/help.c:47
 msgid "print all available commands"
 msgstr "imprimir todos os comandos disponíveis"
 
-#: builtin/help.c:43
+#: builtin/help.c:48
 msgid "exclude guides"
 msgstr "excluir guias"
 
-#: builtin/help.c:44
+#: builtin/help.c:49
 msgid "print list of useful guides"
 msgstr "imprimir lista de guias úteis"
 
-#: builtin/help.c:45
+#: builtin/help.c:50
+#, fuzzy
+msgid "print all configuration variable names"
+msgstr "não é possível criar o ficheiro de configuração %s"
+
+#: builtin/help.c:52
 msgid "show man page"
 msgstr "mostrar página do manual"
 
-#: builtin/help.c:46
+#: builtin/help.c:53
 msgid "show manual in web browser"
 msgstr "mostrar o manual no navegador web"
 
-#: builtin/help.c:48
+#: builtin/help.c:55
 msgid "show info page"
 msgstr "mostrar página info"
 
-#: builtin/help.c:54
+#: builtin/help.c:57
+#, fuzzy
+msgid "print command description"
+msgstr "imprimir conteúdo do commit"
+
+#: builtin/help.c:62
 msgid "git help [--all] [--guides] [--man | --web | --info] [<command>]"
 msgstr "git help [--all] [--guides] [--man | --web | --info] [<comando>]"
 
-#: builtin/help.c:66
+#: builtin/help.c:163
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr "formato de ajuda não reconhecido '%s'"
 
-#: builtin/help.c:93
+#: builtin/help.c:190
 msgid "Failed to start emacsclient."
 msgstr "Falha ao iniciar emacsclient."
 
-#: builtin/help.c:106
+#: builtin/help.c:203
 msgid "Failed to parse emacsclient version."
 msgstr "Falha ao analisar a versão do emacsclient."
 
-#: builtin/help.c:114
+#: builtin/help.c:211
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr "a versão do emacsclient '%d' é demasiado antiga (< 22)."
 
-#: builtin/help.c:132 builtin/help.c:153 builtin/help.c:162 builtin/help.c:170
+#: builtin/help.c:229 builtin/help.c:251 builtin/help.c:261 builtin/help.c:269
 #, c-format
 msgid "failed to exec '%s'"
 msgstr "falha ao executar '%s'"
 
-#: builtin/help.c:207
+#: builtin/help.c:307
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -8787,7 +15599,7 @@ msgstr ""
 "'%s': caminho para visualizador de manual não suportado.\n"
 "Considere usar 'man.<ferramenta>.cmd'."
 
-#: builtin/help.c:219
+#: builtin/help.c:319
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -8796,441 +15608,427 @@ msgstr ""
 "'%s': comando de visualizador de manual suportado.\n"
 "Considere usar 'man.<ferramenta>.path'."
 
-#: builtin/help.c:336
+#: builtin/help.c:436
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "'%s': visualizador de manual desconhecido."
 
-#: builtin/help.c:353
+#: builtin/help.c:453
 msgid "no man viewer handled the request"
 msgstr "nenhum visualizador de manual atendeu o pedido"
 
-#: builtin/help.c:361
+#: builtin/help.c:461
 msgid "no info viewer handled the request"
 msgstr "nenhum visualizador de info atendeu o pedido"
 
-#: builtin/help.c:403
-msgid "Defining attributes per path"
-msgstr "Definir atributos por caminho"
-
-#: builtin/help.c:404
-msgid "Everyday Git With 20 Commands Or So"
-msgstr "Diário Git com mais ou menos 20 Comandos"
-
-#: builtin/help.c:405
-msgid "A Git glossary"
-msgstr "Um Glossário do Git"
-
-#: builtin/help.c:406
-msgid "Specifies intentionally untracked files to ignore"
-msgstr ""
-"Especificar ficheiros não controlados para serem intencionalmente ignorados"
-
-#: builtin/help.c:407
-msgid "Defining submodule properties"
-msgstr "Definir propriedades de submódulos"
-
-#: builtin/help.c:408
-msgid "Specifying revisions and ranges for Git"
-msgstr "Especificar revisões e intervalos do Git"
-
-#: builtin/help.c:409
-msgid "A tutorial introduction to Git (for version 1.5.1 or newer)"
-msgstr "Uma introdução ao Git (versão 1.5.1 ou mais recente)"
-
-#: builtin/help.c:410
-msgid "An overview of recommended workflows with Git"
-msgstr "Uma descrição geral dos fluxos de trabalho recomendados para o Git"
-
-#: builtin/help.c:422
-msgid "The common Git guides are:\n"
-msgstr "Os guias comuns do Git:\n"
-
-#: builtin/help.c:440
-#, c-format
-msgid "`git %s' is aliased to `%s'"
+#: builtin/help.c:520 builtin/help.c:531 git.c:337
+#, fuzzy, c-format
+msgid "'%s' is aliased to '%s'"
 msgstr "'git %s' é um alias de '%s'"
 
-#: builtin/help.c:462 builtin/help.c:479
+#: builtin/help.c:534 git.c:369
+#, fuzzy, c-format
+msgid "bad alias.%s string: %s"
+msgstr "Valor de branch.%s.mergeoptions incorreto: %s"
+
+#: builtin/help.c:563 builtin/help.c:593
 #, c-format
 msgid "usage: %s%s"
 msgstr "utilização: %s%s"
 
-#: builtin/index-pack.c:154
-#, c-format
-msgid "unable to open %s"
-msgstr "não foi possível abrir %s"
+#: builtin/help.c:577
+msgid "'git help config' for more information"
+msgstr ""
 
-#: builtin/index-pack.c:204
+#: builtin/index-pack.c:221
 #, c-format
 msgid "object type mismatch at %s"
 msgstr "incompatibilidade de tipo de objeto em %s"
 
-#: builtin/index-pack.c:224
+#: builtin/index-pack.c:241
 #, c-format
 msgid "did not receive expected object %s"
 msgstr "o objeto esperado %s não foi recebido"
 
-#: builtin/index-pack.c:227
+#: builtin/index-pack.c:244
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr "objeto %s: tipo esperado %s, obtido %s"
 
-#: builtin/index-pack.c:269
+#: builtin/index-pack.c:294
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] "não é possível preencher %d byte"
 msgstr[1] "não é possível preencher %d bytes"
 
-#: builtin/index-pack.c:279
+#: builtin/index-pack.c:304
 msgid "early EOF"
 msgstr "fim de ficheiro (EOF) prematuro"
 
-#: builtin/index-pack.c:280
+#: builtin/index-pack.c:305
 msgid "read error on input"
 msgstr "erro de leitura da entrada"
 
-#: builtin/index-pack.c:292
+#: builtin/index-pack.c:317
 msgid "used more bytes than were available"
 msgstr "foram usados mais bytes dos que estavam disponíveis"
 
-#: builtin/index-pack.c:299
+#: builtin/index-pack.c:324 builtin/pack-objects.c:619
 msgid "pack too large for current definition of off_t"
 msgstr "pacote demasiado grande para a definição atual de off_t"
 
-#: builtin/index-pack.c:302 builtin/unpack-objects.c:92
+#: builtin/index-pack.c:327 builtin/unpack-objects.c:95
 msgid "pack exceeds maximum allowed size"
 msgstr "o pacote excede o tamanho máximo permitido"
 
-#: builtin/index-pack.c:317
+#: builtin/index-pack.c:342 builtin/repack.c:254
 #, c-format
 msgid "unable to create '%s'"
 msgstr "não foi possível criar '%s'"
 
-#: builtin/index-pack.c:323
+#: builtin/index-pack.c:348
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "não é possível abrir o ficheiro de pacote '%s'"
 
-#: builtin/index-pack.c:337
+#: builtin/index-pack.c:362
 msgid "pack signature mismatch"
 msgstr "a assinatura do pacote não corresponde"
 
-#: builtin/index-pack.c:339
+#: builtin/index-pack.c:364
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "versão de pacote %<PRIu32> não suportada"
 
-#: builtin/index-pack.c:357
+#: builtin/index-pack.c:382
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
 msgstr "pacote com objeto incorreto no offset %<PRIuMAX>: %s"
 
-#: builtin/index-pack.c:479
+#: builtin/index-pack.c:488
 #, c-format
 msgid "inflate returned %d"
 msgstr "a descompactação retornou %d"
 
-#: builtin/index-pack.c:528
+#: builtin/index-pack.c:537
 msgid "offset value overflow for delta base object"
 msgstr "delta de objeto base com capacidade excedida no valor de offset"
 
-#: builtin/index-pack.c:536
+#: builtin/index-pack.c:545
 msgid "delta base offset is out of bound"
 msgstr "offset da base delta está fora do limite"
 
-#: builtin/index-pack.c:544
+#: builtin/index-pack.c:553
 #, c-format
 msgid "unknown object type %d"
 msgstr "objeto de tipo desconhecido %d"
 
-#: builtin/index-pack.c:575
+#: builtin/index-pack.c:584
 msgid "cannot pread pack file"
 msgstr "não é possível invocar pread sobre o ficheiro de pacote"
 
-#: builtin/index-pack.c:577
+#: builtin/index-pack.c:586
 #, c-format
 msgid "premature end of pack file, %<PRIuMAX> byte missing"
 msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
 msgstr[0] "fim prematuro de ficheiro de pacote, falta %<PRIuMAX> byte"
 msgstr[1] "fim prematuro de ficheiro de pacote, faltam %<PRIuMAX> bytes"
 
-#: builtin/index-pack.c:603
+#: builtin/index-pack.c:612
 msgid "serious inflate inconsistency"
 msgstr "inconsistência de descompactação grave"
 
-#: builtin/index-pack.c:749 builtin/index-pack.c:755 builtin/index-pack.c:778
-#: builtin/index-pack.c:816 builtin/index-pack.c:825
+#: builtin/index-pack.c:757 builtin/index-pack.c:763 builtin/index-pack.c:787
+#: builtin/index-pack.c:826 builtin/index-pack.c:835
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "COLISÃO DE SHA1 COM %s ENCONTRADA!"
 
-#: builtin/index-pack.c:752 builtin/pack-objects.c:164
-#: builtin/pack-objects.c:257
+#: builtin/index-pack.c:760 builtin/pack-objects.c:171
+#: builtin/pack-objects.c:231 builtin/pack-objects.c:326
 #, c-format
 msgid "unable to read %s"
 msgstr "não foi possível ler %s"
 
-#: builtin/index-pack.c:814
+#: builtin/index-pack.c:824
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr "não é possível ler informação de objeto existente %s"
 
-#: builtin/index-pack.c:822
+#: builtin/index-pack.c:832
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "não é possível ler o objeto existente %s"
 
-#: builtin/index-pack.c:836
+#: builtin/index-pack.c:846
 #, c-format
 msgid "invalid blob object %s"
 msgstr "objeto blob inválido %s"
 
-#: builtin/index-pack.c:850
-#, c-format
-msgid "invalid %s"
-msgstr "inválido %s"
-
-#: builtin/index-pack.c:853
-msgid "Error in object"
-msgstr "Erro no objeto"
+#: builtin/index-pack.c:849 builtin/index-pack.c:868
+#, fuzzy
+msgid "fsck error in packed object"
+msgstr "ignorar objetos compactados"
 
-#: builtin/index-pack.c:855
+#: builtin/index-pack.c:870
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr "Nem todos os objetos filhos de %s são alcançáveis"
 
-#: builtin/index-pack.c:927 builtin/index-pack.c:958
+#: builtin/index-pack.c:931 builtin/index-pack.c:978
 msgid "failed to apply delta"
 msgstr "falha ao aplicar delta"
 
-#: builtin/index-pack.c:1128
+#: builtin/index-pack.c:1161
 msgid "Receiving objects"
 msgstr "A receber objetos"
 
-#: builtin/index-pack.c:1128
+#: builtin/index-pack.c:1161
 msgid "Indexing objects"
 msgstr "A indexar objetos"
 
-#: builtin/index-pack.c:1160
+#: builtin/index-pack.c:1195
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "pacote corrompido (SHA1 não corresponde)"
 
-#: builtin/index-pack.c:1165
+#: builtin/index-pack.c:1200
 msgid "cannot fstat packfile"
 msgstr "não é possível invocar fstat sobre o ficheiro de pacote"
 
-#: builtin/index-pack.c:1168
+#: builtin/index-pack.c:1203
 msgid "pack has junk at the end"
 msgstr "pacote com lixo no final"
 
-#: builtin/index-pack.c:1179
+#: builtin/index-pack.c:1215
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr "extrema confusão em parse_pack_objects()"
 
-#: builtin/index-pack.c:1202
+#: builtin/index-pack.c:1238
 msgid "Resolving deltas"
 msgstr "A resolver deltas"
 
-#: builtin/index-pack.c:1213
+#: builtin/index-pack.c:1249 builtin/pack-objects.c:2697
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "não foi possível criar thread: %s"
 
-#: builtin/index-pack.c:1255
+#: builtin/index-pack.c:1282
 msgid "confusion beyond insanity"
 msgstr "extrema confusão"
 
-#: builtin/index-pack.c:1261
+#: builtin/index-pack.c:1288
 #, c-format
 msgid "completed with %d local object"
 msgid_plural "completed with %d local objects"
 msgstr[0] "concluído com %d objeto local"
 msgstr[1] "concluído com %d objetos locais"
 
-#: builtin/index-pack.c:1273
+#: builtin/index-pack.c:1300
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
 msgstr "Soma de verificação inesperada no final de %s (corrupção no disco?)"
 
-#: builtin/index-pack.c:1277
+#: builtin/index-pack.c:1304
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] "pacote com %d delta não resolvido"
 msgstr[1] "pacote com %d deltas não resolvidos"
 
-#: builtin/index-pack.c:1301
+#: builtin/index-pack.c:1328
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr "não é possível compactar objeto acrescentado (%d)"
 
-#: builtin/index-pack.c:1377
+#: builtin/index-pack.c:1424
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "objeto local %s corrompido"
 
-#: builtin/index-pack.c:1403
-msgid "error while closing pack file"
-msgstr "erro ao fechar ficheiro de pacote"
-
-#: builtin/index-pack.c:1415
+#: builtin/index-pack.c:1444
 #, c-format
-msgid "cannot write keep file '%s'"
+msgid "packfile name '%s' does not end with '.pack'"
+msgstr "o nome do ficheiro de pacote '%s' não termina em '.pack'"
+
+#: builtin/index-pack.c:1469
+#, fuzzy, c-format
+msgid "cannot write %s file '%s'"
 msgstr "não é possível escrever o ficheiro de conservação '%s'"
 
-#: builtin/index-pack.c:1423
-#, c-format
-msgid "cannot close written keep file '%s'"
+#: builtin/index-pack.c:1477
+#, fuzzy, c-format
+msgid "cannot close written %s file '%s'"
 msgstr "não é possível fechar o ficheiro de conservação '%s' escrito"
 
-#: builtin/index-pack.c:1433
+#: builtin/index-pack.c:1501
+msgid "error while closing pack file"
+msgstr "erro ao fechar ficheiro de pacote"
+
+#: builtin/index-pack.c:1515
 msgid "cannot store pack file"
 msgstr "não é possível guardar ficheiro de pacote"
 
-#: builtin/index-pack.c:1441
+#: builtin/index-pack.c:1523
 msgid "cannot store index file"
 msgstr "não é possível guardar o ficheiro índice"
 
-#: builtin/index-pack.c:1479
+#: builtin/index-pack.c:1567 builtin/pack-objects.c:2944
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "pack.indexversion=%<PRIu32> incorreto"
 
-#: builtin/index-pack.c:1489 builtin/index-pack.c:1686
-#, c-format
-msgid "no threads support, ignoring %s"
-msgstr "sem suporte de threads, %s ignorado"
-
-#: builtin/index-pack.c:1547
+#: builtin/index-pack.c:1631
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "Não é possível abrir o ficheiro de pacote '%s' existente"
 
-#: builtin/index-pack.c:1549
+#: builtin/index-pack.c:1633
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr "Não é possível abrir o ficheiro de índice do pacote existente de '%s'"
 
-#: builtin/index-pack.c:1596
+#: builtin/index-pack.c:1681
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] "%d objeto não delta"
 msgstr[1] "%d objetos não delta"
 
-#: builtin/index-pack.c:1603
+#: builtin/index-pack.c:1688
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] "comprimento de cadeia = %d: %lu objeto"
 msgstr[1] "comprimento de cadeia = %d: %lu objetos"
 
-#: builtin/index-pack.c:1616
-#, c-format
-msgid "packfile name '%s' does not end with '.pack'"
-msgstr "o nome do ficheiro de pacote '%s' não termina em '.pack'"
+#: builtin/index-pack.c:1728
+msgid "Cannot come back to cwd"
+msgstr "Não é possível voltar ao diretório de trabalho atual"
 
-#: builtin/index-pack.c:1698 builtin/index-pack.c:1701
-#: builtin/index-pack.c:1717 builtin/index-pack.c:1721
+#: builtin/index-pack.c:1777 builtin/index-pack.c:1780
+#: builtin/index-pack.c:1796 builtin/index-pack.c:1800
 #, c-format
 msgid "bad %s"
 msgstr "%s incorreto"
 
-#: builtin/index-pack.c:1737
+#: builtin/index-pack.c:1806 builtin/init-db.c:391 builtin/init-db.c:623
+#, fuzzy, c-format
+msgid "unknown hash algorithm '%s'"
+msgstr "Formato de arquivo desconhecido '%s'"
+
+#: builtin/index-pack.c:1821
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin não pode ser usado sem --stdin"
 
-#: builtin/index-pack.c:1739
+#: builtin/index-pack.c:1823
 msgid "--stdin requires a git repository"
 msgstr "--stdin requer um repositório git"
 
-#: builtin/index-pack.c:1747
+#: builtin/index-pack.c:1825
+#, fuzzy
+msgid "--object-format cannot be used with --stdin"
+msgstr "--fix-thin não pode ser usado sem --stdin"
+
+#: builtin/index-pack.c:1831
 msgid "--verify with no packfile name given"
 msgstr "--verify sem nome do ficheiro de pacote indicado"
 
-#: builtin/init-db.c:54
-#, c-format
-msgid "cannot stat '%s'"
-msgstr "não é possível invocar stat sobre '%s'"
+#: builtin/index-pack.c:1892 builtin/unpack-objects.c:582
+#, fuzzy
+msgid "fsck error in pack objects"
+msgstr "erro no objeto: %s"
 
-#: builtin/init-db.c:60
+#: builtin/init-db.c:64
 #, c-format
 msgid "cannot stat template '%s'"
 msgstr "não é possível invocar stat sobre o modelo '%s'"
 
-#: builtin/init-db.c:65
+#: builtin/init-db.c:69
 #, c-format
 msgid "cannot opendir '%s'"
 msgstr "não é possível abrir (opendir) '%s'"
 
-#: builtin/init-db.c:76
+#: builtin/init-db.c:81
 #, c-format
 msgid "cannot readlink '%s'"
 msgstr "não é possível ler (readlink) '%s'"
 
-#: builtin/init-db.c:78
+#: builtin/init-db.c:83
 #, c-format
 msgid "cannot symlink '%s' '%s'"
 msgstr "não é possível criar a ligação simbólica '%s' '%s'"
 
-#: builtin/init-db.c:84
+#: builtin/init-db.c:89
 #, c-format
 msgid "cannot copy '%s' to '%s'"
 msgstr "não é possível copiar '%s' para '%s'"
 
-#: builtin/init-db.c:88
+#: builtin/init-db.c:93
 #, c-format
 msgid "ignoring template %s"
 msgstr "modelo %s ignorado"
 
-#: builtin/init-db.c:119
-#, c-format
-msgid "templates not found %s"
+#: builtin/init-db.c:124
+#, fuzzy, c-format
+msgid "templates not found in %s"
 msgstr "modelos não encontrados em %s"
 
-#: builtin/init-db.c:134
+#: builtin/init-db.c:139
 #, c-format
 msgid "not copying templates from '%s': %s"
 msgstr "modelos não copiados de '%s': %s"
 
-#: builtin/init-db.c:327
+#: builtin/init-db.c:274
+#, fuzzy, c-format
+msgid "invalid initial branch name: '%s'"
+msgstr "Nome de ramo inválido: '%s'"
+
+#: builtin/init-db.c:366
 #, c-format
 msgid "unable to handle file type %d"
 msgstr "não foi possível processar o tipo de ficheiro %d"
 
-#: builtin/init-db.c:330
+#: builtin/init-db.c:369
 #, c-format
 msgid "unable to move %s to %s"
 msgstr "não foi possível mover %s para %s"
 
-#: builtin/init-db.c:347 builtin/init-db.c:350
+#: builtin/init-db.c:385
+msgid "attempt to reinitialize repository with different hash"
+msgstr ""
+
+#: builtin/init-db.c:409 builtin/init-db.c:412
 #, c-format
 msgid "%s already exists"
 msgstr "%s já existe"
 
-#: builtin/init-db.c:403
+#: builtin/init-db.c:443
+#, c-format
+msgid "re-init: ignored --initial-branch=%s"
+msgstr ""
+
+#: builtin/init-db.c:474
 #, c-format
 msgid "Reinitialized existing shared Git repository in %s%s\n"
 msgstr "Repositório Git partilhado e existente reinicializado em %s%s\n"
 
-#: builtin/init-db.c:404
+#: builtin/init-db.c:475
 #, c-format
 msgid "Reinitialized existing Git repository in %s%s\n"
 msgstr "Repositório Git existem reinicializado em %s%s\n"
 
-#: builtin/init-db.c:408
+#: builtin/init-db.c:479
 #, c-format
 msgid "Initialized empty shared Git repository in %s%s\n"
 msgstr "Repositório Git vazio e partilhado inicializado em %s%s\n"
 
-#: builtin/init-db.c:409
+#: builtin/init-db.c:480
 #, c-format
 msgid "Initialized empty Git repository in %s%s\n"
 msgstr "Repositório Git vazio inicializado em %s%s\n"
 
-#: builtin/init-db.c:457
+#: builtin/init-db.c:529
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [<directory>]"
@@ -9238,26 +16036,44 @@ msgstr ""
 "git init [-q | --quiet] [--bare] [--template=<diretório-modelo>] [--"
 "shared[=<permissões>]] [<diretório>]"
 
-#: builtin/init-db.c:480
+#: builtin/init-db.c:555
 msgid "permissions"
 msgstr "permissões"
 
-#: builtin/init-db.c:481
+#: builtin/init-db.c:556
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr ""
 "especificar que o repositório git será partilhado por vários utilizadores"
 
-#: builtin/init-db.c:515 builtin/init-db.c:520
+#: builtin/init-db.c:562
+#, fuzzy
+msgid "override the name of the initial branch"
+msgstr "substituir o bit executável dos ficheiros listados"
+
+#: builtin/init-db.c:563 builtin/verify-pack.c:74
+msgid "hash"
+msgstr ""
+
+#: builtin/init-db.c:564 builtin/show-index.c:22 builtin/verify-pack.c:75
+msgid "specify the hash algorithm to use"
+msgstr ""
+
+#: builtin/init-db.c:571
+#, fuzzy
+msgid "--separate-git-dir and --bare are mutually exclusive"
+msgstr "--deepen e --depth são mutuamente exclusivos"
+
+#: builtin/init-db.c:600 builtin/init-db.c:605
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "não é possível criar o diretório %s"
 
-#: builtin/init-db.c:524
+#: builtin/init-db.c:609 builtin/init-db.c:664
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "não é possível mudar para o diretório %s"
 
-#: builtin/init-db.c:545
+#: builtin/init-db.c:636
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
@@ -9266,12 +16082,17 @@ msgstr ""
 "%s (ou --work-tree=<diretório>) não é permitido sem especificar %s (ou --git-"
 "dir=<diretório>)"
 
-#: builtin/init-db.c:573
+#: builtin/init-db.c:688
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "Não é possível aceder à árvore de trabalho '%s'"
 
-#: builtin/interpret-trailers.c:15
+#: builtin/init-db.c:693
+#, fuzzy
+msgid "--separate-git-dir incompatible with bare repository"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/interpret-trailers.c:16
 msgid ""
 "git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
 "<token>[(=|:)<value>])...] [<file>...]"
@@ -9279,353 +16100,491 @@ msgstr ""
 "git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
 "<token>[(=|:)<valor>])...] [<ficheiro>...]"
 
-#: builtin/interpret-trailers.c:26
+#: builtin/interpret-trailers.c:95
 msgid "edit files in place"
 msgstr "editar ficheiros no local"
 
-#: builtin/interpret-trailers.c:27
+#: builtin/interpret-trailers.c:96
 msgid "trim empty trailers"
 msgstr "cortar terminadores vazios"
 
-#: builtin/interpret-trailers.c:28
+#: builtin/interpret-trailers.c:99
+msgid "where to place the new trailer"
+msgstr ""
+
+#: builtin/interpret-trailers.c:101
+#, fuzzy
+msgid "action if trailer already exists"
+msgstr "a árvore de trabalho '%s' já existe."
+
+#: builtin/interpret-trailers.c:103
+msgid "action if trailer is missing"
+msgstr ""
+
+#: builtin/interpret-trailers.c:105
+#, fuzzy
+msgid "output only the trailers"
+msgstr "cortar terminadores vazios"
+
+#: builtin/interpret-trailers.c:106
+#, fuzzy
+msgid "do not apply config rules"
+msgstr "pesquisar variáveis de configuração"
+
+#: builtin/interpret-trailers.c:107
+msgid "join whitespace-continued values"
+msgstr ""
+
+#: builtin/interpret-trailers.c:108
+#, fuzzy
+msgid "set parsing options"
+msgstr "Opções de integração"
+
+#: builtin/interpret-trailers.c:110
+msgid "do not treat --- specially"
+msgstr ""
+
+#: builtin/interpret-trailers.c:111
 msgid "trailer"
 msgstr "terminador"
 
-#: builtin/interpret-trailers.c:29
+#: builtin/interpret-trailers.c:112
 msgid "trailer(s) to add"
 msgstr "terminadores a adicionar"
 
-#: builtin/interpret-trailers.c:42
+#: builtin/interpret-trailers.c:123
+#, fuzzy
+msgid "--trailer with --only-input does not make sense"
+msgstr "--name-only não faz sentido"
+
+#: builtin/interpret-trailers.c:133
 msgid "no input file given for in-place editing"
 msgstr "nenhum ficheiro de entrada fornecido para edição no local"
 
-#: builtin/log.c:44
+#: builtin/log.c:56
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<opções>] [<intervalo-de-revisões>] [[--] <caminho>...]"
 
-#: builtin/log.c:45
+#: builtin/log.c:57
 msgid "git show [<options>] <object>..."
 msgstr "git show [<opções>] <objeto>..."
 
-#: builtin/log.c:89
+#: builtin/log.c:110
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "opção --decorate inválida: %s"
 
-#: builtin/log.c:144
-msgid "suppress diff output"
-msgstr "suprimir saída do diff"
-
-#: builtin/log.c:145
+#: builtin/log.c:177
 msgid "show source"
 msgstr "mostrar origem"
 
-#: builtin/log.c:146
+#: builtin/log.c:178
 msgid "Use mail map file"
 msgstr "usar ficheiro de mapeamento de correio"
 
-#: builtin/log.c:147
+#: builtin/log.c:181
+#, fuzzy
+msgid "only decorate refs that match <pattern>"
+msgstr "usar apenas referência que correspondam ao <padrão>"
+
+#: builtin/log.c:183
+#, fuzzy
+msgid "do not decorate refs that match <pattern>"
+msgstr "não considerar tags que correspondam ao <padrão>"
+
+#: builtin/log.c:184
 msgid "decorate options"
 msgstr "opções de decoração"
 
-#: builtin/log.c:150
+#: builtin/log.c:187
 msgid "Process line range n,m in file, counting from 1"
 msgstr "processar intervalo de linhas n,m, a contar a partir de 1"
 
-#: builtin/log.c:246
+#: builtin/log.c:297
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Resultado final: %d %s\n"
 
-#: builtin/log.c:493
+#: builtin/log.c:555
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s: ficheiro incorreto"
 
-#: builtin/log.c:507 builtin/log.c:601
-#, c-format
-msgid "Could not read object %s"
+#: builtin/log.c:570 builtin/log.c:665
+#, fuzzy, c-format
+msgid "could not read object %s"
 msgstr "Não foi possível ler o objeto %s"
 
-#: builtin/log.c:625
-#, c-format
-msgid "Unknown type: %d"
+#: builtin/log.c:690
+#, fuzzy, c-format
+msgid "unknown type: %d"
 msgstr "Tipo desconhecido: %d"
 
-#: builtin/log.c:746
+#: builtin/log.c:839
+#, c-format
+msgid "%s: invalid cover from description mode"
+msgstr ""
+
+#: builtin/log.c:846
 msgid "format.headers without value"
 msgstr "format.headers sem valor"
 
-#: builtin/log.c:846
+#: builtin/log.c:965
 msgid "name of output directory is too long"
 msgstr "o nome do diretório de saída é demasiado longo"
 
-#: builtin/log.c:861
-#, c-format
-msgid "Cannot open patch file %s"
+#: builtin/log.c:981
+#, fuzzy, c-format
+msgid "cannot open patch file %s"
 msgstr "Não é possível abrir o ficheiro de patch %s"
 
-#: builtin/log.c:875
-msgid "Need exactly one range."
+#: builtin/log.c:998
+#, fuzzy
+msgid "need exactly one range"
 msgstr "É necessário exatamente um intervalo."
 
-#: builtin/log.c:885
-msgid "Not a range."
+#: builtin/log.c:1008
+#, fuzzy
+msgid "not a range"
 msgstr "Não é um intervalo."
 
-#: builtin/log.c:991
-msgid "Cover letter needs email format"
+#: builtin/log.c:1172
+#, fuzzy
+msgid "cover letter needs email format"
 msgstr "A carta de apresentação precisa de um formato de e-mail"
 
-#: builtin/log.c:1071
+#: builtin/log.c:1178
+#, fuzzy
+msgid "failed to create cover-letter file"
+msgstr "Falha ao criar os ficheiros de saída"
+
+#: builtin/log.c:1259
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to incorreto: %s"
 
-#: builtin/log.c:1098
+#: builtin/log.c:1286
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<opções>] [<desde> | <intervalo-de-revisões>]"
 
-#: builtin/log.c:1148
-msgid "Two output directories?"
+#: builtin/log.c:1344
+#, fuzzy
+msgid "two output directories?"
 msgstr "Dois diretórios de saída?"
 
-#: builtin/log.c:1255 builtin/log.c:1898 builtin/log.c:1900 builtin/log.c:1912
-#, c-format
-msgid "Unknown commit %s"
+#: builtin/log.c:1495 builtin/log.c:2301 builtin/log.c:2303 builtin/log.c:2315
+#, fuzzy, c-format
+msgid "unknown commit %s"
 msgstr "Commit desconhecido %s"
 
-#: builtin/log.c:1265 builtin/notes.c:883 builtin/tag.c:532
-#, c-format
-msgid "Failed to resolve '%s' as a valid ref."
-msgstr "Falha ao resolver '%s' numa referência válida."
+#: builtin/log.c:1506 builtin/replace.c:58 builtin/replace.c:207
+#: builtin/replace.c:210
+#, fuzzy, c-format
+msgid "failed to resolve '%s' as a valid ref"
+msgstr "falha ao resolver '%s' como uma referência válida."
 
-#: builtin/log.c:1270
-msgid "Could not find exact merge base."
+#: builtin/log.c:1515
+#, fuzzy
+msgid "could not find exact merge base"
 msgstr "Não foi possível encontrar a base exata de integração."
 
-#: builtin/log.c:1274
+#: builtin/log.c:1525
+#, fuzzy
 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 ""
 "Falha ao obter ramo a montante, se quer gravar o commit base "
 "automaticamente,\n"
 "use branch --set-upstream-to para seguir um ramo remoto.\n"
 "Ou pode especificar o commit base com --base=<base-commit-id> manualmente."
 
-#: builtin/log.c:1294
-msgid "Failed to find exact merge base"
+#: builtin/log.c:1548
+#, fuzzy
+msgid "failed to find exact merge base"
 msgstr "Falha ao procurar base exata de integração"
 
-#: builtin/log.c:1305
+#: builtin/log.c:1565
 msgid "base commit should be the ancestor of revision list"
 msgstr "o commit base deve ser o antecessor da lista de revisões"
 
-#: builtin/log.c:1309
+#: builtin/log.c:1575
 msgid "base commit shouldn't be in revision list"
 msgstr "o commit base não deve fazer parte da lista de revisões"
 
-#: builtin/log.c:1358
+#: builtin/log.c:1633
 msgid "cannot get patch id"
 msgstr "não é possível obter o id do patch"
 
-#: builtin/log.c:1415
+#: builtin/log.c:1690
+#, fuzzy
+msgid "failed to infer range-diff origin of current series"
+msgstr "falha ao guardar ligação à referência de notas atual (%s)"
+
+#: builtin/log.c:1692
+#, c-format
+msgid "using '%s' as range-diff origin of current series"
+msgstr ""
+
+#: builtin/log.c:1736
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "usar [PATCH n/m] mesmo com um único patch"
 
-#: builtin/log.c:1418
+#: builtin/log.c:1739
 msgid "use [PATCH] even with multiple patches"
 msgstr "usar [PATCH] mesmo com múltiplos patches"
 
-#: builtin/log.c:1422
+#: builtin/log.c:1743
 msgid "print patches to standard out"
 msgstr "imprimir patches para a saída padrão"
 
-#: builtin/log.c:1424
+#: builtin/log.c:1745
 msgid "generate a cover letter"
 msgstr "gerar uma carta de apresentação"
 
-#: builtin/log.c:1426
+#: builtin/log.c:1747
 msgid "use simple number sequence for output file names"
 msgstr ""
 "usar uma sequência de números simples para denominar os ficheiros gerados"
 
-#: builtin/log.c:1427
+#: builtin/log.c:1748
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1428
+#: builtin/log.c:1749
 msgid "use <sfx> instead of '.patch'"
 msgstr "usar <sfx> em vez de '.patch'"
 
-#: builtin/log.c:1430
+#: builtin/log.c:1751
 msgid "start numbering patches at <n> instead of 1"
 msgstr "começar a numerar os patches em <n> em vez de 1"
 
-#: builtin/log.c:1432
+#: builtin/log.c:1753
 msgid "mark the series as Nth re-roll"
 msgstr "marcar a série como a n-ésima reiteração"
 
-#: builtin/log.c:1434
+#: builtin/log.c:1755
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr "Usar [RFC PATCH] em vez de [PATCH]"
 
-#: builtin/log.c:1437
+#: builtin/log.c:1758
+msgid "cover-from-description-mode"
+msgstr ""
+
+#: builtin/log.c:1759
+msgid "generate parts of a cover letter based on a branch's description"
+msgstr ""
+
+#: builtin/log.c:1761
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "usar [<prefixo>] em vez de [PATCH]"
 
-#: builtin/log.c:1440
+#: builtin/log.c:1764
 msgid "store resulting files in <dir>"
 msgstr "guardar os ficheiros resultantes em <dir>"
 
-#: builtin/log.c:1443
+#: builtin/log.c:1767
 msgid "don't strip/add [PATCH]"
 msgstr "não tirar/inserir [PATCH]"
 
-#: builtin/log.c:1446
+#: builtin/log.c:1770
 msgid "don't output binary diffs"
 msgstr "não gerar diffs binários"
 
-#: builtin/log.c:1448
+#: builtin/log.c:1772
 msgid "output all-zero hash in From header"
 msgstr "preencher o cabeçalho From com hash de zeros"
 
-#: builtin/log.c:1450
+#: builtin/log.c:1774
 msgid "don't include a patch matching a commit upstream"
 msgstr "não incluir um patch que coincida com um commit a montante"
 
-#: builtin/log.c:1452
+#: builtin/log.c:1776
 msgid "show patch format instead of default (patch + stat)"
 msgstr ""
 "mostrar no formato de patch em vez de no formato por omissão (patch + stat)"
 
-#: builtin/log.c:1454
+#: builtin/log.c:1778
 msgid "Messaging"
 msgstr "Mensagem"
 
-#: builtin/log.c:1455
+#: builtin/log.c:1779
 msgid "header"
 msgstr "cabeçalho"
 
-#: builtin/log.c:1456
+#: builtin/log.c:1780
 msgid "add email header"
 msgstr "adicionar cabeçalho de e-mail"
 
-#: builtin/log.c:1457 builtin/log.c:1459
+#: builtin/log.c:1781 builtin/log.c:1782
 msgid "email"
 msgstr "e-mail"
 
-#: builtin/log.c:1457
+#: builtin/log.c:1781
 msgid "add To: header"
 msgstr "adicionar cabeçalho To:"
 
-#: builtin/log.c:1459
+#: builtin/log.c:1782
 msgid "add Cc: header"
 msgstr "adicionar cabeçalho Cc:"
 
-#: builtin/log.c:1461
+#: builtin/log.c:1783
 msgid "ident"
 msgstr "identidade"
 
-#: builtin/log.c:1462
+#: builtin/log.c:1784
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
 "definir o endereço From como <identidade> (ou como identidade do committer "
 "se não indicado)"
 
-#: builtin/log.c:1464
+#: builtin/log.c:1786
 msgid "message-id"
 msgstr "id-mensagem"
 
-#: builtin/log.c:1465
+#: builtin/log.c:1787
 msgid "make first mail a reply to <message-id>"
 msgstr "usar o primeiro email para responder a <id-mensagem>"
 
-#: builtin/log.c:1466 builtin/log.c:1469
+#: builtin/log.c:1788 builtin/log.c:1791
 msgid "boundary"
 msgstr "limite"
 
-#: builtin/log.c:1467
+#: builtin/log.c:1789
 msgid "attach the patch"
 msgstr "anexar o patch"
 
-#: builtin/log.c:1470
+#: builtin/log.c:1792
 msgid "inline the patch"
 msgstr "incorporar o patch"
 
-#: builtin/log.c:1474
+#: builtin/log.c:1796
 msgid "enable message threading, styles: shallow, deep"
 msgstr "ativar mensagens por tópicos, estilos: shallow (raso), deep (profundo)"
 
-#: builtin/log.c:1476
+#: builtin/log.c:1798
 msgid "signature"
 msgstr "assinatura"
 
-#: builtin/log.c:1477
+#: builtin/log.c:1799
 msgid "add a signature"
 msgstr "adicionar uma assinatura"
 
-#: builtin/log.c:1478
+#: builtin/log.c:1800
 msgid "base-commit"
 msgstr "commit-base"
 
-#: builtin/log.c:1479
+#: builtin/log.c:1801
 msgid "add prerequisite tree info to the patch series"
 msgstr "adicionar informação pré-requisito da árvore à série de patches"
 
-#: builtin/log.c:1481
+#: builtin/log.c:1804
 msgid "add a signature from a file"
 msgstr "adicionar uma assinatura de um ficheiro"
 
-#: builtin/log.c:1482
+#: builtin/log.c:1805
 msgid "don't print the patch filenames"
 msgstr "não imprimir os nomes dos ficheiros de patch"
 
-#: builtin/log.c:1572
-msgid "-n and -k are mutually exclusive."
+#: builtin/log.c:1807
+#, fuzzy
+msgid "show progress while generating patches"
+msgstr "mostrar medidor de progresso durante a fase de escrita de objetos"
+
+#: builtin/log.c:1809
+msgid "show changes against <rev> in cover letter or single patch"
+msgstr ""
+
+#: builtin/log.c:1812
+msgid "show changes against <refspec> in cover letter or single patch"
+msgstr ""
+
+#: builtin/log.c:1814
+msgid "percentage by which creation is weighted"
+msgstr ""
+
+#: builtin/log.c:1896
+#, c-format
+msgid "invalid ident line: %s"
+msgstr "linha de identidade inválida: %s"
+
+#: builtin/log.c:1911
+#, fuzzy
+msgid "-n and -k are mutually exclusive"
 msgstr "-n e -k são mutuamente exclusivos."
 
-#: builtin/log.c:1574
-msgid "--subject-prefix/--rfc and -k are mutually exclusive."
+#: builtin/log.c:1913
+#, fuzzy
+msgid "--subject-prefix/--rfc and -k are mutually exclusive"
 msgstr "--subject-prefix/--rfc e -k são mutuamente exclusivos."
 
-#: builtin/log.c:1582
+#: builtin/log.c:1921
 msgid "--name-only does not make sense"
 msgstr "--name-only não faz sentido"
 
-#: builtin/log.c:1584
+#: builtin/log.c:1923
 msgid "--name-status does not make sense"
 msgstr "--name-status não faz sentido"
 
-#: builtin/log.c:1586
+#: builtin/log.c:1925
 msgid "--check does not make sense"
 msgstr "--check não faz sentido"
 
-#: builtin/log.c:1616
+#: builtin/log.c:1958
 msgid "standard output, or directory, which one?"
 msgstr "saída padrão, ou diretório, qual deles?"
 
-#: builtin/log.c:1618
+#: builtin/log.c:2062
+msgid "--interdiff requires --cover-letter or single patch"
+msgstr ""
+
+#: builtin/log.c:2066
+msgid "Interdiff:"
+msgstr ""
+
+#: builtin/log.c:2067
 #, c-format
-msgid "Could not create directory '%s'"
-msgstr "Não foi possível criar o diretório '%s'"
+msgid "Interdiff against v%d:"
+msgstr ""
 
-#: builtin/log.c:1712
+#: builtin/log.c:2073
+msgid "--creation-factor requires --range-diff"
+msgstr ""
+
+#: builtin/log.c:2077
+msgid "--range-diff requires --cover-letter or single patch"
+msgstr ""
+
+#: builtin/log.c:2085
+msgid "Range-diff:"
+msgstr ""
+
+#: builtin/log.c:2086
+#, c-format
+msgid "Range-diff against v%d:"
+msgstr ""
+
+#: builtin/log.c:2097
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "não é possível ler o ficheiro de assinatura '%s'"
 
-#: builtin/log.c:1784
-msgid "Failed to create output files"
+#: builtin/log.c:2133
+#, fuzzy
+msgid "Generating patches"
+msgstr "falha ao editar patch"
+
+#: builtin/log.c:2177
+#, fuzzy
+msgid "failed to create output files"
 msgstr "Falha ao criar os ficheiros de saída"
 
-#: builtin/log.c:1833
+#: builtin/log.c:2236
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<ramo-a-montante> [<head> [<limite>]]]"
 
-#: builtin/log.c:1887
+#: builtin/log.c:2290
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -9633,111 +16592,118 @@ msgstr ""
 "O ramo remoto seguido não foi encontrado, especifique <ramo-a-montante> "
 "manualmente.\n"
 
-#: builtin/ls-files.c:461
+#: builtin/ls-files.c:471
 msgid "git ls-files [<options>] [<file>...]"
 msgstr "git ls-files [<opções>] [<ficheiro>...]"
 
-#: builtin/ls-files.c:510
+#: builtin/ls-files.c:527
 msgid "identify the file status with tags"
 msgstr "identificar o estado do ficheiro com tags"
 
-#: builtin/ls-files.c:512
+#: builtin/ls-files.c:529
 msgid "use lowercase letters for 'assume unchanged' files"
 msgstr ""
 "usar letras minúsculas para ficheiros 'assumido não alterado' ('assume "
 "unchanged')"
 
-#: builtin/ls-files.c:514
+#: builtin/ls-files.c:531
+#, fuzzy
+msgid "use lowercase letters for 'fsmonitor clean' files"
+msgstr ""
+"usar letras minúsculas para ficheiros 'assumido não alterado' ('assume "
+"unchanged')"
+
+#: builtin/ls-files.c:533
 msgid "show cached files in the output (default)"
 msgstr "mostrar ficheiros em cache na saída (predefinição)"
 
-#: builtin/ls-files.c:516
+#: builtin/ls-files.c:535
 msgid "show deleted files in the output"
 msgstr "mostrar ficheiros eliminados na saída"
 
-#: builtin/ls-files.c:518
+#: builtin/ls-files.c:537
 msgid "show modified files in the output"
 msgstr "mostrar ficheiros modificados na saída"
 
-#: builtin/ls-files.c:520
+#: builtin/ls-files.c:539
 msgid "show other files in the output"
 msgstr "mostrar outros ficheiros na saída"
 
-#: builtin/ls-files.c:522
+#: builtin/ls-files.c:541
 msgid "show ignored files in the output"
 msgstr "mostrar ficheiros ignorados na saída"
 
-#: builtin/ls-files.c:525
+#: builtin/ls-files.c:544
 msgid "show staged contents' object name in the output"
 msgstr "mostrar nome de objetos com conteúdo preparado, na saída"
 
-#: builtin/ls-files.c:527
+#: builtin/ls-files.c:546
 msgid "show files on the filesystem that need to be removed"
 msgstr ""
 "mostrar ficheiros no sistema de ficheiros que precisam de ser removidos"
 
-#: builtin/ls-files.c:529
+#: builtin/ls-files.c:548
 msgid "show 'other' directories' names only"
 msgstr "mostrar nomes de diretórios 'other' (outro)"
 
-#: builtin/ls-files.c:531
+#: builtin/ls-files.c:550
 msgid "show line endings of files"
 msgstr "mostrar finais de linha dos ficheiros"
 
-#: builtin/ls-files.c:533
+#: builtin/ls-files.c:552
 msgid "don't show empty directories"
 msgstr "não mostrar diretórios vazios"
 
-#: builtin/ls-files.c:536
+#: builtin/ls-files.c:555
 msgid "show unmerged files in the output"
 msgstr "mostrar ficheiros não integrados na saída"
 
-#: builtin/ls-files.c:538
+#: builtin/ls-files.c:557
 msgid "show resolve-undo information"
 msgstr "mostrar informação de resolver-desfazer"
 
-#: builtin/ls-files.c:540
+#: builtin/ls-files.c:559
 msgid "skip files matching pattern"
 msgstr "ignorar ficheiros que correspondam ao padrão"
 
-#: builtin/ls-files.c:543
+#: builtin/ls-files.c:562
 msgid "exclude patterns are read from <file>"
 msgstr "ler padrões de exclusão do <ficheiro>"
 
-#: builtin/ls-files.c:546
+#: builtin/ls-files.c:565
 msgid "read additional per-directory exclude patterns in <file>"
 msgstr "ler padrões de exclusão por diretório do <ficheiro>"
 
-#: builtin/ls-files.c:548
+#: builtin/ls-files.c:567
 msgid "add the standard git exclusions"
 msgstr "incluir as exclusões standard do git"
 
-#: builtin/ls-files.c:551
+#: builtin/ls-files.c:571
 msgid "make the output relative to the project top directory"
 msgstr "mostrar os caminhos relativamente ao diretório superior do projeto"
 
-#: builtin/ls-files.c:554
+#: builtin/ls-files.c:574
 msgid "recurse through submodules"
 msgstr "percorrer submódulos recursivamente"
 
-#: builtin/ls-files.c:556
+#: builtin/ls-files.c:576
 msgid "if any <file> is not in the index, treat this as an error"
 msgstr "se um <ficheiro> não estiver no índice, tratar como erro"
 
-#: builtin/ls-files.c:557
+#: builtin/ls-files.c:577
 msgid "tree-ish"
 msgstr "árvore-etc"
 
-#: builtin/ls-files.c:558
+#: builtin/ls-files.c:578
 msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr ""
 "fingir que os caminhos removidos desde <árvore-etc> ainda estão presentes"
 
-#: builtin/ls-files.c:560
+#: builtin/ls-files.c:580
 msgid "show debugging data"
 msgstr "mostrar dados de depuração"
 
-#: builtin/ls-remote.c:7
+#: builtin/ls-remote.c:9
 msgid ""
 "git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
 "                     [-q | --quiet] [--exit-code] [--get-url]\n"
@@ -9747,260 +16713,390 @@ msgstr ""
 "                     [-q | --quiet] [--exit-code] [--get-url]\n"
 "                     [--symref] [<repositório> [<referências>...]]"
 
-#: builtin/ls-remote.c:52
+#: builtin/ls-remote.c:59
 msgid "do not print remote URL"
 msgstr "não imprimir URL remoto"
 
-#: builtin/ls-remote.c:53 builtin/ls-remote.c:55
+#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1392
 msgid "exec"
 msgstr "exec"
 
-#: builtin/ls-remote.c:54 builtin/ls-remote.c:56
+#: builtin/ls-remote.c:61 builtin/ls-remote.c:63
 msgid "path of git-upload-pack on the remote host"
 msgstr "caminho para git-upload-pack no servidor remoto"
 
-#: builtin/ls-remote.c:58
+#: builtin/ls-remote.c:65
 msgid "limit to tags"
 msgstr "restringir-se a tags"
 
-#: builtin/ls-remote.c:59
+#: builtin/ls-remote.c:66
 msgid "limit to heads"
 msgstr "restringir-se a cabeças"
 
-#: builtin/ls-remote.c:60
+#: builtin/ls-remote.c:67
 msgid "do not show peeled tags"
 msgstr "não mostrar tags descascadas"
 
-#: builtin/ls-remote.c:62
+#: builtin/ls-remote.c:69
 msgid "take url.<base>.insteadOf into account"
 msgstr "ter url.<base>.insteadOf em conta"
 
-#: builtin/ls-remote.c:64
+#: builtin/ls-remote.c:72
 msgid "exit with exit code 2 if no matching refs are found"
 msgstr "terminar com código de saída 2 se não forem encontradas referências"
 
-#: builtin/ls-remote.c:66
+#: builtin/ls-remote.c:75
 msgid "show underlying ref in addition to the object pointed by it"
 msgstr "mostrar a referência subjacente em adição ao objeto por ela apontado"
 
-#: builtin/ls-tree.c:28
+#: builtin/ls-tree.c:30
 msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
 msgstr "git ls-tree [<opções>] <árvore-etc> [<caminho>...]"
 
-#: builtin/ls-tree.c:126
+#: builtin/ls-tree.c:128
 msgid "only show trees"
 msgstr "mostrar apenas árvores"
 
-#: builtin/ls-tree.c:128
+#: builtin/ls-tree.c:130
 msgid "recurse into subtrees"
 msgstr "percorrer as subárvores recursivamente"
 
-#: builtin/ls-tree.c:130
+#: builtin/ls-tree.c:132
 msgid "show trees when recursing"
 msgstr "mostrar árvores ao percorrer"
 
-#: builtin/ls-tree.c:133
+#: builtin/ls-tree.c:135
 msgid "terminate entries with NUL byte"
 msgstr "terminar entradas com o byte NUL"
 
-#: builtin/ls-tree.c:134
+#: builtin/ls-tree.c:136
 msgid "include object size"
 msgstr "incluir dimensão dos objetos"
 
-#: builtin/ls-tree.c:136 builtin/ls-tree.c:138
+#: builtin/ls-tree.c:138 builtin/ls-tree.c:140
 msgid "list only filenames"
 msgstr "listar apenas os nomes de ficheiro"
 
-#: builtin/ls-tree.c:141
+#: builtin/ls-tree.c:143
 msgid "use full path names"
 msgstr "usar nomes de caminho completos"
 
-#: builtin/ls-tree.c:143
+#: builtin/ls-tree.c:145
 msgid "list entire tree; not just current directory (implies --full-name)"
 msgstr ""
 "mostrar a árvore completa; não apenas o diretório atual (implica --full-name)"
 
-#: builtin/merge.c:46
+#: builtin/mailsplit.c:241
+#, c-format
+msgid "empty mbox: '%s'"
+msgstr ""
+
+#: builtin/merge-base.c:32
+msgid "git merge-base [-a | --all] <commit> <commit>..."
+msgstr "git merge-base [-a | --all] <commit> <commit>..."
+
+#: builtin/merge-base.c:33
+msgid "git merge-base [-a | --all] --octopus <commit>..."
+msgstr "git merge-base [-a | --all] --octopus <commit>..."
+
+#: builtin/merge-base.c:34
+msgid "git merge-base --independent <commit>..."
+msgstr "git merge-base --independent <commit>..."
+
+#: builtin/merge-base.c:35
+msgid "git merge-base --is-ancestor <commit> <commit>"
+msgstr "git merge-base --is-ancestor <commit> <commit>"
+
+#: builtin/merge-base.c:36
+msgid "git merge-base --fork-point <ref> [<commit>]"
+msgstr "git merge-base --fork-point <referência> [<commit>]"
+
+#: builtin/merge-base.c:143
+msgid "output all common ancestors"
+msgstr "mostrar todos os antecessores"
+
+#: builtin/merge-base.c:145
+msgid "find ancestors for a single n-way merge"
+msgstr "encontrar antecessores de uma única integração com n pontos"
+
+#: builtin/merge-base.c:147
+msgid "list revs not reachable from others"
+msgstr "listar revisões não alcançáveis a partir de outras"
+
+#: builtin/merge-base.c:149
+msgid "is the first one ancestor of the other?"
+msgstr "o primeiro é antecessor do segundo?"
+
+#: builtin/merge-base.c:151
+msgid "find where <commit> forked from reflog of <ref>"
+msgstr ""
+"descobrir onde foi que o <commit> divergiu usando o reflog da <referência>"
+
+#: builtin/merge-file.c:9
+msgid ""
+"git merge-file [<options>] [-L <name1> [-L <orig> [-L <name2>]]] <file1> "
+"<orig-file> <file2>"
+msgstr ""
+"git merge-file [<opções>] [-L <nome1> [-L <orig> [-L <nome2>]]] <ficheiro1> "
+"<ficheiro-orig> <ficheiro2>"
+
+#: builtin/merge-file.c:35
+msgid "send results to standard output"
+msgstr "enviar resultados para a saída padrão"
+
+#: builtin/merge-file.c:36
+msgid "use a diff3 based merge"
+msgstr "usar integração baseada em diff3"
+
+#: builtin/merge-file.c:37
+msgid "for conflicts, use our version"
+msgstr "usar a nossa versão em caso de conflito"
+
+#: builtin/merge-file.c:39
+msgid "for conflicts, use their version"
+msgstr "usar a versão deles em caso de conflito"
+
+#: builtin/merge-file.c:41
+msgid "for conflicts, use a union version"
+msgstr "usar a união das versões em caso de conflito"
+
+#: builtin/merge-file.c:44
+msgid "for conflicts, use this marker size"
+msgstr "usar este comprimento de marcador para os conflitos"
+
+#: builtin/merge-file.c:45
+msgid "do not warn about conflicts"
+msgstr "não alertar sobre conflitos"
+
+#: builtin/merge-file.c:47
+msgid "set labels for file1/orig-file/file2"
+msgstr "definir identificares para ficheiro1/ficheiro-orig/ficheiro2"
+
+#: builtin/merge-recursive.c:47
+#, c-format
+msgid "unknown option %s"
+msgstr "opção desconhecido %s"
+
+#: builtin/merge-recursive.c:53
+#, c-format
+msgid "could not parse object '%s'"
+msgstr "não foi possível analisar o objeto '%s'"
+
+#: 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] "não é possível processar mais do que %d base. Ignorar %s."
+msgstr[1] "não é possível processar mais do que %d bases. Ignorar %s."
+
+#: builtin/merge-recursive.c:65
+msgid "not handling anything other than two heads merge."
+msgstr "não se pode processar outra coisa senão integração de duas cabeças."
+
+#: builtin/merge-recursive.c:74 builtin/merge-recursive.c:76
+#, c-format
+msgid "could not resolve ref '%s'"
+msgstr "não foi possível resolver a referência %s"
+
+#: builtin/merge-recursive.c:82
+#, c-format
+msgid "Merging %s with %s\n"
+msgstr "A integrar %s com %s\n"
+
+#: builtin/merge.c:56
 msgid "git merge [<options>] [<commit>...]"
 msgstr "git merge [<opções>] [<commit>...]"
 
-#: builtin/merge.c:47
+#: builtin/merge.c:57
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:48
+#: builtin/merge.c:58
 msgid "git merge --continue"
 msgstr "git merge --continue"
 
-#: builtin/merge.c:103
+#: builtin/merge.c:120
 msgid "switch `m' requires a value"
 msgstr "a opção 'm' requer um valor"
 
-#: builtin/merge.c:140
+#: builtin/merge.c:143
+#, fuzzy, c-format
+msgid "option `%s' requires a value"
+msgstr "a opção '%s' requer um valor"
+
+#: builtin/merge.c:189
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "Estratégia de integração '%s' não encontrada.\n"
 
-#: builtin/merge.c:141
+#: builtin/merge.c:190
 #, c-format
 msgid "Available strategies are:"
 msgstr "Estratégias disponíveis:"
 
-#: builtin/merge.c:146
+#: builtin/merge.c:195
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Estratégias personalizadas disponíveis:"
 
-#: builtin/merge.c:196 builtin/pull.c:127
+#: builtin/merge.c:246 builtin/pull.c:133
 msgid "do not show a diffstat at the end of the merge"
 msgstr "não apresentar um diffstat ao fim da integração"
 
-#: builtin/merge.c:199 builtin/pull.c:130
+#: builtin/merge.c:249 builtin/pull.c:136
 msgid "show a diffstat at the end of the merge"
 msgstr "mostrar um diffstat ao fim da integração"
 
-#: builtin/merge.c:200 builtin/pull.c:133
+#: builtin/merge.c:250 builtin/pull.c:139
 msgid "(synonym to --stat)"
 msgstr "(sinónimo de --stat)"
 
-#: builtin/merge.c:202 builtin/pull.c:136
+#: builtin/merge.c:252 builtin/pull.c:142
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr ""
 "adicionar (no máximo <n>) entradas do shortlog à mensagem de commit da "
 "integração"
 
-#: builtin/merge.c:205 builtin/pull.c:139
+#: builtin/merge.c:255 builtin/pull.c:148
 msgid "create a single commit instead of doing a merge"
 msgstr "criar um único commit em vez de realizar uma integração"
 
-#: builtin/merge.c:207 builtin/pull.c:142
+#: builtin/merge.c:257 builtin/pull.c:151
 msgid "perform a commit if the merge succeeds (default)"
 msgstr "realizar um commit se a integração for bem sucedida (predefinição)"
 
-#: builtin/merge.c:209 builtin/pull.c:145
+#: builtin/merge.c:259 builtin/pull.c:154
 msgid "edit message before committing"
 msgstr "editar a mensagem antes de submeter"
 
-#: builtin/merge.c:210
+#: builtin/merge.c:261
 msgid "allow fast-forward (default)"
 msgstr "permitir avanço rápido (predefinição)"
 
-#: builtin/merge.c:212 builtin/pull.c:151
+#: builtin/merge.c:263 builtin/pull.c:161
 msgid "abort if fast-forward is not possible"
 msgstr "abortar se não é possível efetuar avanço rápido"
 
-#: builtin/merge.c:216 builtin/pull.c:154
+#: builtin/merge.c:267 builtin/pull.c:164
 msgid "verify that the named commit has a valid GPG signature"
 msgstr "verificar se o commit tem uma assinatura GPG válida"
 
-#: builtin/merge.c:217 builtin/notes.c:773 builtin/pull.c:158
-#: builtin/revert.c:108
+#: builtin/merge.c:268 builtin/notes.c:787 builtin/pull.c:168
+#: builtin/rebase.c:533 builtin/rebase.c:1406 builtin/revert.c:114
 msgid "strategy"
 msgstr "estratégia"
 
-#: builtin/merge.c:218 builtin/pull.c:159
+#: builtin/merge.c:269 builtin/pull.c:169
 msgid "merge strategy to use"
 msgstr "estratégia de integração a usar"
 
-#: builtin/merge.c:219 builtin/pull.c:162
+#: builtin/merge.c:270 builtin/pull.c:172
 msgid "option=value"
 msgstr "opção=valor"
 
-#: builtin/merge.c:220 builtin/pull.c:163
+#: builtin/merge.c:271 builtin/pull.c:173
 msgid "option for selected merge strategy"
 msgstr "opções da estratégia de integração selecionada"
 
-#: builtin/merge.c:222
+#: builtin/merge.c:273
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr "mensagem de commit (de integração não suscetível a avanço rápido)"
 
-#: builtin/merge.c:226
+#: builtin/merge.c:280
 msgid "abort the current in-progress merge"
 msgstr "abortar integração em curso"
 
-#: builtin/merge.c:228
+#: builtin/merge.c:282
+#, fuzzy
+msgid "--abort but leave index and working tree alone"
+msgstr "repor HEAD, índice e árvore de trabalho"
+
+#: builtin/merge.c:284
 msgid "continue the current in-progress merge"
 msgstr "continuar a integração em curso"
 
-#: builtin/merge.c:230 builtin/pull.c:170
+#: builtin/merge.c:286 builtin/pull.c:180
 msgid "allow merging unrelated histories"
 msgstr "permitir integração de históricos não relacionados"
 
-#: builtin/merge.c:258
+#: builtin/merge.c:293
+#, fuzzy
+msgid "bypass pre-merge-commit and commit-msg hooks"
+msgstr "ignorar pre-commit e commit-msg hooks"
+
+#: builtin/merge.c:310
 msgid "could not run stash."
 msgstr "não foi possível executar o comando stash."
 
-#: builtin/merge.c:263
+#: builtin/merge.c:315
 msgid "stash failed"
 msgstr "falha ao executar o comando stash"
 
-#: builtin/merge.c:268
+#: builtin/merge.c:320
 #, c-format
 msgid "not a valid object: %s"
 msgstr "nome de objeto inválido: %s"
 
-#: builtin/merge.c:287 builtin/merge.c:304
+#: builtin/merge.c:342 builtin/merge.c:359
 msgid "read-tree failed"
 msgstr "falha ao executar o comando read-tree"
 
-#: builtin/merge.c:334
+#: builtin/merge.c:389
 msgid " (nothing to squash)"
 msgstr " (não há nada para esmagar)"
 
-#: builtin/merge.c:345
+#: builtin/merge.c:400
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "Commit esmagado -- HEAD não atualizada\n"
 
-#: builtin/merge.c:395
+#: builtin/merge.c:450
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "Nenhuma mensagem de integração -- HEAD não atualizada\n"
 
-#: builtin/merge.c:446
+#: builtin/merge.c:501
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "'%s' não aponta para um commit"
 
-#: builtin/merge.c:536
+#: builtin/merge.c:588
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Valor de branch.%s.mergeoptions incorreto: %s"
 
-#: builtin/merge.c:656
+#: builtin/merge.c:713
 msgid "Not handling anything other than two heads merge."
 msgstr "Não se processa outra coisa senão incorporação de duas cabeças."
 
-#: builtin/merge.c:670
+#: builtin/merge.c:726
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Opção desconhecida de merge-recursive: -X%s"
 
-#: builtin/merge.c:685
+#: builtin/merge.c:741
 #, c-format
 msgid "unable to write %s"
 msgstr "não foi possível escrever %s"
 
-#: builtin/merge.c:737
+#: builtin/merge.c:793
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Não foi possível ler '%s'"
 
-#: builtin/merge.c:746
+#: builtin/merge.c:802
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
 "Commit de integração não realizado; use 'git commit' para concluir a "
 "integração.\n"
 
-#: builtin/merge.c:752
-#, c-format
+#: builtin/merge.c:808
+#, fuzzy
 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"
-"Lines starting with '%c' will be ignored, and an empty message aborts\n"
-"the commit.\n"
 msgstr ""
 "Introduza uma mensagem de commit, explicando por que esta integração é "
 "necessário,\n"
@@ -10009,75 +17105,90 @@ msgstr ""
 "Linhas começadas com '%c' são ignoradas e uma mensagem vazia\n"
 "aborta o commit.\n"
 
-#: builtin/merge.c:776
+#: builtin/merge.c:813
+#, fuzzy
+msgid "An empty message aborts the commit.\n"
+msgstr "editar a mensagem antes de submeter"
+
+#: builtin/merge.c:816
+#, fuzzy, c-format
+msgid ""
+"Lines starting with '%c' will be ignored, and an empty message aborts\n"
+"the commit.\n"
+msgstr ""
+"Introduza a mensagem de commit das suas alterações.\n"
+"Linhas começadas com '%c' serão ignoradas, e uma mensagem vazia\n"
+"aborta o commit.\n"
+
+#: builtin/merge.c:869
 msgid "Empty commit message."
 msgstr "Mensagem de commit vazia."
 
-#: builtin/merge.c:796
+#: builtin/merge.c:884
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Maravilhoso.\n"
 
-#: builtin/merge.c:851
+#: builtin/merge.c:945
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr ""
 "Falha ao realizar integração automática; corrija os conflitos e submeta o "
 "resultado.\n"
 
-#: builtin/merge.c:890
+#: builtin/merge.c:984
 msgid "No current branch."
 msgstr "Nenhum ramo atual."
 
-#: builtin/merge.c:892
+#: builtin/merge.c:986
 msgid "No remote for the current branch."
 msgstr "Não há um remoto para o ramo atual."
 
-#: builtin/merge.c:894
+#: builtin/merge.c:988
 msgid "No default upstream defined for the current branch."
 msgstr "Não está definido nenhum ramo a montante para o ramo atual."
 
-#: builtin/merge.c:899
+#: builtin/merge.c:993
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Nenhum ramo de monitorização remoto seguido por %s de %s"
 
-#: builtin/merge.c:946
+#: builtin/merge.c:1050
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr "Valor '%s' incorreto no ambiente '%s'"
 
-#: builtin/merge.c:1020
-#, c-format
-msgid "could not close '%s'"
-msgstr "não foi possível fechar '%s'"
-
-#: builtin/merge.c:1047
+#: builtin/merge.c:1153
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr "não se pode integrar em %s: %s"
 
-#: builtin/merge.c:1081
+#: builtin/merge.c:1187
 msgid "not something we can merge"
 msgstr "não se pode integrar"
 
-#: builtin/merge.c:1146
+#: builtin/merge.c:1291
 msgid "--abort expects no arguments"
 msgstr "--abort não leva argumentos"
 
-#: builtin/merge.c:1150
+#: builtin/merge.c:1295
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr "Não há nenhuma integração para se abortar (MERGE_HEAD não presente)."
 
-#: builtin/merge.c:1162
+#: builtin/merge.c:1313
+#, fuzzy
+msgid "--quit expects no arguments"
+msgstr "--abort não leva argumentos"
+
+#: builtin/merge.c:1326
 msgid "--continue expects no arguments"
 msgstr "--continue não leva argumentos"
 
-#: builtin/merge.c:1166
+#: builtin/merge.c:1330
 msgid "There is no merge in progress (MERGE_HEAD missing)."
 msgstr "Não há nenhuma integração em curso (MERGE_HEAD não presente)."
 
-#: builtin/merge.c:1182
+#: builtin/merge.c:1346
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -10085,7 +17196,7 @@ msgstr ""
 "Não concluiu a integração (MERGE_HEAD presente).\n"
 "Submeta as suas alterações antes de integrar."
 
-#: builtin/merge.c:1189
+#: builtin/merge.c:1353
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -10093,393 +17204,300 @@ msgstr ""
 "Cherry-pick não concluído (CHERRY_PICK_HEAD presente).\n"
 "Submeta as suas alterações antes de integrar."
 
-#: builtin/merge.c:1192
+#: builtin/merge.c:1356
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr "Cherry-pick não concluído (CHERRY_PICK_HEAD presente)."
 
-#: builtin/merge.c:1201
+#: builtin/merge.c:1370
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Não é possível combinar --squash e --no-ff."
 
-#: builtin/merge.c:1209
+#: builtin/merge.c:1372
+#, fuzzy
+msgid "You cannot combine --squash with --commit."
+msgstr "Não é possível combinar --squash e --no-ff."
+
+#: builtin/merge.c:1388
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr "Nenhum commit especificado e merge.defaultToUpstream não definido."
 
-#: builtin/merge.c:1226
+#: builtin/merge.c:1405
 msgid "Squash commit into empty head not supported yet"
 msgstr "Esmagar um commit numa cabeça vazia ainda não é suportado"
 
-#: builtin/merge.c:1228
+#: builtin/merge.c:1407
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr ""
 "Não faz sentido submeter de modo não suscetível a avanço rápido, numa cabeça "
 "vazia"
 
-#: builtin/merge.c:1233
+#: builtin/merge.c:1412
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - não é algo se possa integrar"
 
-#: builtin/merge.c:1235
+#: builtin/merge.c:1414
 msgid "Can merge only exactly one commit into empty head"
 msgstr "Só se pode integrar exatamente um commit numa cabeça vazia"
 
-#: builtin/merge.c:1269
-#, c-format
-msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
-msgstr ""
-"A assinatura GPG do commit %s, alegadamente assinada por %s, não é de "
-"confiança."
-
-#: builtin/merge.c:1272
-#, c-format
-msgid "Commit %s has a bad GPG signature allegedly by %s."
-msgstr ""
-"A assinatura GPG do commit %s, alegadamente assinada por %s, está incorreta."
-
-#: builtin/merge.c:1275
-#, c-format
-msgid "Commit %s does not have a GPG signature."
-msgstr "O commit %s não tem uma assinatura GPG."
-
-#: builtin/merge.c:1278
-#, c-format
-msgid "Commit %s has a good GPG signature by %s\n"
-msgstr "A assinatura GPG do commit %s por %s está correta\n"
-
-#: builtin/merge.c:1340
+#: builtin/merge.c:1495
 msgid "refusing to merge unrelated histories"
 msgstr "integração de históricos não relacionados recusada"
 
-#: builtin/merge.c:1349
-msgid "Already up-to-date."
+#: builtin/merge.c:1504
+#, fuzzy
+msgid "Already up to date."
 msgstr "Já está atualizado."
 
-#: builtin/merge.c:1359
+#: builtin/merge.c:1514
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "A atualizar %s..%s\n"
 
-#: builtin/merge.c:1400
+#: builtin/merge.c:1560
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "A tentar integração mesmo trivial no interior do índice...\n"
 
-#: builtin/merge.c:1407
+#: builtin/merge.c:1567
 #, c-format
 msgid "Nope.\n"
 msgstr "Não.\n"
 
-#: builtin/merge.c:1432
-msgid "Already up-to-date. Yeeah!"
+#: builtin/merge.c:1592
+#, fuzzy
+msgid "Already up to date. Yeeah!"
 msgstr "Já está atualizado. Sim!"
 
-#: builtin/merge.c:1438
+#: builtin/merge.c:1598
 msgid "Not possible to fast-forward, aborting."
 msgstr "Não é possível avançar rapidamente, a abortar."
 
-#: builtin/merge.c:1461 builtin/merge.c:1540
+#: builtin/merge.c:1626 builtin/merge.c:1691
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "A recuar a árvore ao seu estado original...\n"
 
-#: builtin/merge.c:1465
+#: builtin/merge.c:1630
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "A tentar a estratégia de integração %s...\n"
 
-#: builtin/merge.c:1531
+#: builtin/merge.c:1682
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "Nenhuma estratégia de integração conseguiu processar a integração.\n"
 
-#: builtin/merge.c:1533
+#: builtin/merge.c:1684
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "Falha ao integrar com a estratégia %s.\n"
 
-#: builtin/merge.c:1542
+#: builtin/merge.c:1693
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr "A usar %s para preparar resolução manual.\n"
 
-#: builtin/merge.c:1554
+#: builtin/merge.c:1707
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
 "A integração automática foi bem sucedida; interrompida antes de submeter "
 "como solicitado\n"
 
-#: builtin/merge-base.c:29
-msgid "git merge-base [-a | --all] <commit> <commit>..."
-msgstr "git merge-base [-a | --all] <commit> <commit>..."
-
-#: builtin/merge-base.c:30
-msgid "git merge-base [-a | --all] --octopus <commit>..."
-msgstr "git merge-base [-a | --all] --octopus <commit>..."
-
-#: builtin/merge-base.c:31
-msgid "git merge-base --independent <commit>..."
-msgstr "git merge-base --independent <commit>..."
-
-#: builtin/merge-base.c:32
-msgid "git merge-base --is-ancestor <commit> <commit>"
-msgstr "git merge-base --is-ancestor <commit> <commit>"
-
-#: builtin/merge-base.c:33
-msgid "git merge-base --fork-point <ref> [<commit>]"
-msgstr "git merge-base --fork-point <referência> [<commit>]"
+#: builtin/mktree.c:66
+msgid "git mktree [-z] [--missing] [--batch]"
+msgstr "git mktree [-z] [--missing] [--batch]"
 
-#: builtin/merge-base.c:217
-msgid "output all common ancestors"
-msgstr "mostrar todos os antecessores"
+#: builtin/mktree.c:154
+msgid "input is NUL terminated"
+msgstr "a entrada termina com NUL"
 
-#: builtin/merge-base.c:219
-msgid "find ancestors for a single n-way merge"
-msgstr "encontrar antecessores de uma única integração com n pontos"
+#: builtin/mktree.c:155 builtin/write-tree.c:26
+msgid "allow missing objects"
+msgstr "permitir objetos não presentes"
 
-#: builtin/merge-base.c:221
-msgid "list revs not reachable from others"
-msgstr "listar revisões não alcançáveis a partir de outras"
+#: builtin/mktree.c:156
+msgid "allow creation of more than one tree"
+msgstr "permitir a criação de mais do que uma árvore"
 
-#: builtin/merge-base.c:223
-msgid "is the first one ancestor of the other?"
-msgstr "o primeiro é antecessor do segundo?"
+#: builtin/multi-pack-index.c:9
+msgid ""
+"git multi-pack-index [<options>] (write|verify|expire|repack --batch-"
+"size=<size>)"
+msgstr ""
 
-#: builtin/merge-base.c:225
-msgid "find where <commit> forked from reflog of <ref>"
+#: builtin/multi-pack-index.c:26
+msgid "object directory containing set of packfile and pack-index pairs"
 msgstr ""
-"descobrir onde foi que o <commit> divergiu usando o reflog da <referência>"
 
-#: builtin/merge-file.c:8
+#: builtin/multi-pack-index.c:29
 msgid ""
-"git merge-file [<options>] [-L <name1> [-L <orig> [-L <name2>]]] <file1> "
-"<orig-file> <file2>"
+"during repack, collect pack-files of smaller size into a batch that is "
+"larger than this size"
 msgstr ""
-"git merge-file [<opções>] [-L <nome1> [-L <orig> [-L <nome2>]]] <ficheiro1> "
-"<ficheiro-orig> <ficheiro2>"
 
-#: builtin/merge-file.c:32
-msgid "send results to standard output"
-msgstr "enviar resultados para a saída padrão"
-
-#: builtin/merge-file.c:33
-msgid "use a diff3 based merge"
-msgstr "usar integração baseada em diff3"
-
-#: builtin/merge-file.c:34
-msgid "for conflicts, use our version"
-msgstr "usar a nossa versão em caso de conflito"
-
-#: builtin/merge-file.c:36
-msgid "for conflicts, use their version"
-msgstr "usar a versão deles em caso de conflito"
-
-#: builtin/merge-file.c:38
-msgid "for conflicts, use a union version"
-msgstr "usar a união das versões em caso de conflito"
-
-#: builtin/merge-file.c:41
-msgid "for conflicts, use this marker size"
-msgstr "usar este comprimento de marcador para os conflitos"
-
-#: builtin/merge-file.c:42
-msgid "do not warn about conflicts"
-msgstr "não alertar sobre conflitos"
-
-#: builtin/merge-file.c:44
-msgid "set labels for file1/orig-file/file2"
-msgstr "definir identificares para ficheiro1/ficheiro-orig/ficheiro2"
-
-#: builtin/merge-recursive.c:45
-#, c-format
-msgid "unknown option %s"
-msgstr "opção desconhecido %s"
-
-#: builtin/merge-recursive.c:51
-#, c-format
-msgid "could not parse object '%s'"
-msgstr "não foi possível analisar o objeto '%s'"
-
-#: builtin/merge-recursive.c:55
-#, c-format
-msgid "cannot handle more than %d base. Ignoring %s."
-msgid_plural "cannot handle more than %d bases. Ignoring %s."
-msgstr[0] "não é possível processar mais do que %d base. Ignorar %s."
-msgstr[1] "não é possível processar mais do que %d bases. Ignorar %s."
-
-#: builtin/merge-recursive.c:63
-msgid "not handling anything other than two heads merge."
-msgstr "não se pode processar outra coisa senão integração de duas cabeças."
-
-#: builtin/merge-recursive.c:69 builtin/merge-recursive.c:71
-#, c-format
-msgid "could not resolve ref '%s'"
-msgstr "não foi possível resolver a referência %s"
-
-#: builtin/merge-recursive.c:77
-#, c-format
-msgid "Merging %s with %s\n"
-msgstr "A integrar %s com %s\n"
-
-#: builtin/mktree.c:65
-msgid "git mktree [-z] [--missing] [--batch]"
-msgstr "git mktree [-z] [--missing] [--batch]"
-
-#: builtin/mktree.c:152
-msgid "input is NUL terminated"
-msgstr "a entrada termina com NUL"
+#: builtin/multi-pack-index.c:50 builtin/prune-packed.c:25
+#, fuzzy
+msgid "too many arguments"
+msgstr "Demasiados argumentos."
 
-#: builtin/mktree.c:153 builtin/write-tree.c:24
-msgid "allow missing objects"
-msgstr "permitir objetos não presentes"
+#: builtin/multi-pack-index.c:60
+msgid "--batch-size option is only for 'repack' subcommand"
+msgstr ""
 
-#: builtin/mktree.c:154
-msgid "allow creation of more than one tree"
-msgstr "permitir a criação de mais do que uma árvore"
+#: builtin/multi-pack-index.c:69
+#, fuzzy, c-format
+msgid "unrecognized subcommand: %s"
+msgstr "subcomando desconhecido: %s"
 
-#: builtin/mv.c:16
+#: builtin/mv.c:18
 msgid "git mv [<options>] <source>... <destination>"
 msgstr "git mv [<opções>] <origem>... <destino>"
 
-#: builtin/mv.c:82
+#: builtin/mv.c:83
 #, c-format
 msgid "Directory %s is in index and no submodule?"
 msgstr "O diretório %s está no índice porém nenhum submódulo?"
 
-#: builtin/mv.c:84 builtin/rm.c:290
+#: builtin/mv.c:85
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 "Prepare as suas alterações em .gitmodules ou esconda-as para prosseguir"
 
-#: builtin/mv.c:102
+#: builtin/mv.c:103
 #, c-format
 msgid "%.*s is in index"
 msgstr "%.*s está no índice"
 
-#: builtin/mv.c:124
+#: builtin/mv.c:125
 msgid "force move/rename even if target exists"
 msgstr "forçar mover/mudar o nome mesmo que o destino exista"
 
-#: builtin/mv.c:125
+#: builtin/mv.c:127
 msgid "skip move/rename errors"
 msgstr "ignorar erros ao mover/mudar o nome"
 
-#: builtin/mv.c:167
+#: builtin/mv.c:170
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr "o destino '%s' não é um diretório"
 
-#: builtin/mv.c:178
+#: builtin/mv.c:181
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr "A verificar a mudança de nome de '%s' para '%s'\n"
 
-#: builtin/mv.c:182
+#: builtin/mv.c:185
 msgid "bad source"
 msgstr "origem incorreta"
 
-#: builtin/mv.c:185
+#: builtin/mv.c:188
 msgid "can not move directory into itself"
 msgstr "não é possível mover um diretório para dentro de si próprio"
 
-#: builtin/mv.c:188
+#: builtin/mv.c:191
 msgid "cannot move directory over file"
 msgstr "não é possível mover um diretório para um ficheiro"
 
-#: builtin/mv.c:197
+#: builtin/mv.c:200
 msgid "source directory is empty"
 msgstr "o diretório de origem está vazio"
 
-#: builtin/mv.c:222
+#: builtin/mv.c:225
 msgid "not under version control"
 msgstr "não está no controlo de versões"
 
-#: builtin/mv.c:225
+#: builtin/mv.c:227
+msgid "conflicted"
+msgstr ""
+
+#: builtin/mv.c:230
 msgid "destination exists"
 msgstr "o destino já existe"
 
-#: builtin/mv.c:233
+#: builtin/mv.c:238
 #, c-format
 msgid "overwriting '%s'"
 msgstr "a substituir '%s'"
 
-#: builtin/mv.c:236
+#: builtin/mv.c:241
 msgid "Cannot overwrite"
 msgstr "Não é possível substituir"
 
-#: builtin/mv.c:239
+#: builtin/mv.c:244
 msgid "multiple sources for the same target"
 msgstr "múltiplas origens para o mesmo destino"
 
-#: builtin/mv.c:241
+#: builtin/mv.c:246
 msgid "destination directory does not exist"
 msgstr "o diretório de destino não existe"
 
-#: builtin/mv.c:248
+#: builtin/mv.c:253
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr "%s, origem=%s, destino=%s"
 
-#: builtin/mv.c:269
+#: builtin/mv.c:274
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr "A mudar de nome de %s para %s\n"
 
-#: builtin/mv.c:275 builtin/remote.c:710 builtin/repack.c:384
+#: builtin/mv.c:280 builtin/remote.c:782 builtin/repack.c:518
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "falha ao mudar o nome de '%s'"
 
-#: builtin/name-rev.c:289
+#: builtin/name-rev.c:465
 msgid "git name-rev [<options>] <commit>..."
 msgstr "git name-rev [<opções>] <commit>..."
 
-#: builtin/name-rev.c:290
+#: builtin/name-rev.c:466
 msgid "git name-rev [<options>] --all"
 msgstr "git name-rev [<opções>] --all"
 
-#: builtin/name-rev.c:291
+#: builtin/name-rev.c:467
 msgid "git name-rev [<options>] --stdin"
 msgstr "git name-rev [<opções>] --stdin"
 
-#: builtin/name-rev.c:346
-msgid "print only names (no SHA-1)"
-msgstr "imprimir apenas nomes (sem SHA-1)"
+#: builtin/name-rev.c:524
+#, fuzzy
+msgid "print only ref-based names (no object names)"
+msgstr "imprimir apenas os ramos do objeto"
 
-#: builtin/name-rev.c:347
+#: builtin/name-rev.c:525
 msgid "only use tags to name the commits"
 msgstr "usar apenas tags para designar commits"
 
-#: builtin/name-rev.c:349
+#: builtin/name-rev.c:527
 msgid "only use refs matching <pattern>"
 msgstr "usar apenas referência que correspondam ao <padrão>"
 
-#: builtin/name-rev.c:351
+#: builtin/name-rev.c:529
 msgid "ignore refs matching <pattern>"
 msgstr "ignorar referências que correspondam ao <padrão>"
 
-#: builtin/name-rev.c:353
+#: builtin/name-rev.c:531
 msgid "list all commits reachable from all refs"
 msgstr "listar todos os commits alcançáveis a partir de todas as referências"
 
-#: builtin/name-rev.c:354
+#: builtin/name-rev.c:532
 msgid "read from stdin"
 msgstr "ler da entrada padrão"
 
-#: builtin/name-rev.c:355
+#: builtin/name-rev.c:533
 msgid "allow to print `undefined` names (default)"
 msgstr "permitir imprimir nomes 'indefinidos' (predefinição)"
 
-#: builtin/name-rev.c:361
+#: builtin/name-rev.c:539
 msgid "dereference tags in the input (internal use)"
 msgstr "desreferenciar tags na entrada (uso interno)"
 
-#: builtin/notes.c:25
+#: builtin/notes.c:28
 msgid "git notes [--ref <notes-ref>] [list [<object>]]"
 msgstr "git notes [--ref <notes-ref>] [list [<objeto>]]"
 
-#: builtin/notes.c:26
+#: builtin/notes.c:29
 msgid ""
 "git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F <file> "
 "| (-c | -C) <object>] [<object>]"
@@ -10487,11 +17505,11 @@ msgstr ""
 "git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F "
 "<ficheiro> | (-c | -C) <objeto>] [<objeto>]"
 
-#: builtin/notes.c:27
+#: builtin/notes.c:30
 msgid "git notes [--ref <notes-ref>] copy [-f] <from-object> <to-object>"
 msgstr "git notes [--ref <notes-ref>] copy [-f] <de-objeto> <para-objeto>"
 
-#: builtin/notes.c:28
+#: builtin/notes.c:31
 msgid ""
 "git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F <file> | "
 "(-c | -C) <object>] [<object>]"
@@ -10499,203 +17517,200 @@ msgstr ""
 "git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F "
 "<ficheiro> | (-c | -C) <objeto>] [<objeto>]"
 
-#: builtin/notes.c:29
+#: builtin/notes.c:32
 msgid "git notes [--ref <notes-ref>] edit [--allow-empty] [<object>]"
 msgstr "git notes [--ref <notes-ref>] edit [--allow-empty] [<objeto>]"
 
-#: builtin/notes.c:30
+#: builtin/notes.c:33
 msgid "git notes [--ref <notes-ref>] show [<object>]"
 msgstr "git notes [--ref <notes-ref>] show [<objeto>]"
 
-#: builtin/notes.c:31
+#: builtin/notes.c:34
 msgid ""
 "git notes [--ref <notes-ref>] merge [-v | -q] [-s <strategy>] <notes-ref>"
 msgstr ""
 "git notes [--ref <notes-ref>] merge [-v | -q] [-s <estratégia>] <notes-ref>"
 
-#: builtin/notes.c:32
+#: builtin/notes.c:35
 msgid "git notes merge --commit [-v | -q]"
 msgstr "git notes merge --commit [-v | -q]"
 
-#: builtin/notes.c:33
+#: builtin/notes.c:36
 msgid "git notes merge --abort [-v | -q]"
 msgstr "git notes merge --abort [-v | -q]"
 
-#: builtin/notes.c:34
+#: builtin/notes.c:37
 msgid "git notes [--ref <notes-ref>] remove [<object>...]"
 msgstr "git notes [--ref <notes-ref>] remove [<objeto>...]"
 
-#: builtin/notes.c:35
-msgid "git notes [--ref <notes-ref>] prune [-n | -v]"
+#: builtin/notes.c:38
+#, fuzzy
+msgid "git notes [--ref <notes-ref>] prune [-n] [-v]"
 msgstr "git notes [--ref <notes-ref>] prune [-n | -v]"
 
-#: builtin/notes.c:36
+#: builtin/notes.c:39
 msgid "git notes [--ref <notes-ref>] get-ref"
 msgstr "git notes [--ref <notes-ref>] get-ref"
 
-#: builtin/notes.c:41
+#: builtin/notes.c:44
 msgid "git notes [list [<object>]]"
 msgstr "git notes [list [<objeto>]]"
 
-#: builtin/notes.c:46
+#: builtin/notes.c:49
 msgid "git notes add [<options>] [<object>]"
 msgstr "git notes add [<opções>] [<objeto>]"
 
-#: builtin/notes.c:51
+#: builtin/notes.c:54
 msgid "git notes copy [<options>] <from-object> <to-object>"
 msgstr "git notes copy [<opções>] <de-objeto> <para-objeto>"
 
-#: builtin/notes.c:52
+#: builtin/notes.c:55
 msgid "git notes copy --stdin [<from-object> <to-object>]..."
 msgstr "git notes copy --stdin [<de-objeto> <para-objeto>]..."
 
-#: builtin/notes.c:57
+#: builtin/notes.c:60
 msgid "git notes append [<options>] [<object>]"
 msgstr "git notes append [<opções>] [<objeto>]"
 
-#: builtin/notes.c:62
+#: builtin/notes.c:65
 msgid "git notes edit [<object>]"
 msgstr "git notes edit [<objeto>]"
 
-#: builtin/notes.c:67
+#: builtin/notes.c:70
 msgid "git notes show [<object>]"
 msgstr "git notes show [<objeto>]"
 
-#: builtin/notes.c:72
+#: builtin/notes.c:75
 msgid "git notes merge [<options>] <notes-ref>"
 msgstr "git notes merge [<opções>] <notes-ref>"
 
-#: builtin/notes.c:73
+#: builtin/notes.c:76
 msgid "git notes merge --commit [<options>]"
 msgstr "git notes merge --commit [<opções>]"
 
-#: builtin/notes.c:74
+#: builtin/notes.c:77
 msgid "git notes merge --abort [<options>]"
 msgstr "git notes merge --abort [<opções>]"
 
-#: builtin/notes.c:79
+#: builtin/notes.c:82
 msgid "git notes remove [<object>]"
 msgstr "git notes remove [<objeto>]"
 
-#: builtin/notes.c:84
+#: builtin/notes.c:87
 msgid "git notes prune [<options>]"
 msgstr "git notes prune [<opções>]"
 
-#: builtin/notes.c:89
+#: builtin/notes.c:92
 msgid "git notes get-ref"
 msgstr "git notes get-ref"
 
-#: builtin/notes.c:94
+#: builtin/notes.c:97
 msgid "Write/edit the notes for the following object:"
 msgstr "Escreva/edite as notas do seguinte objeto:"
 
-#: builtin/notes.c:147
+#: builtin/notes.c:150
 #, c-format
 msgid "unable to start 'show' for object '%s'"
 msgstr "não foi possível iniciar o comando 'show' sobre o objeto '%s'"
 
-#: builtin/notes.c:151
+#: builtin/notes.c:154
 msgid "could not read 'show' output"
 msgstr "não foi possível ler a saída do comando 'show'"
 
-#: builtin/notes.c:159
+#: builtin/notes.c:162
 #, c-format
 msgid "failed to finish 'show' for object '%s'"
 msgstr "falha ao concluir o comando 'show' sobre o objeto '%s'"
 
-#: builtin/notes.c:194
+#: builtin/notes.c:197
 msgid "please supply the note contents using either -m or -F option"
 msgstr "forneça o conteúdo da nota usando a opção -m ou -F"
 
-#: builtin/notes.c:203
+#: builtin/notes.c:206
 msgid "unable to write note object"
 msgstr "não é possível escrever o objeto de nota"
 
-#: builtin/notes.c:205
+#: builtin/notes.c:208
 #, c-format
 msgid "the note contents have been left in %s"
 msgstr "o conteúdo da nota foi colocado em %s"
 
-#: builtin/notes.c:233 builtin/tag.c:516
-#, c-format
-msgid "cannot read '%s'"
-msgstr "não é possível ler '%s'"
-
-#: builtin/notes.c:235 builtin/tag.c:519
+#: builtin/notes.c:242 builtin/tag.c:533
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "não foi possível abrir ou ler '%s'"
 
-#: builtin/notes.c:254 builtin/notes.c:305 builtin/notes.c:307
-#: builtin/notes.c:372 builtin/notes.c:427 builtin/notes.c:513
-#: builtin/notes.c:518 builtin/notes.c:596 builtin/notes.c:658
+#: 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
 #, c-format
 msgid "failed to resolve '%s' as a valid ref."
 msgstr "falha ao resolver '%s' como uma referência válida."
 
-#: builtin/notes.c:257
+#: builtin/notes.c:265
 #, c-format
 msgid "failed to read object '%s'."
 msgstr "falha ao ler o objeto '%s'."
 
-#: builtin/notes.c:261
+#: builtin/notes.c:268
 #, c-format
 msgid "cannot read note data from non-blob object '%s'."
 msgstr "não é possível ler os dados da nota de um objeto não-blob '%s'."
 
-#: builtin/notes.c:301
+#: builtin/notes.c:309
 #, c-format
 msgid "malformed input line: '%s'."
 msgstr "linha de entrada malformada: '%s'."
 
-#: builtin/notes.c:316
+#: builtin/notes.c:324
 #, c-format
 msgid "failed to copy notes from '%s' to '%s'"
 msgstr "falha ao copiar notas de '%s' para '%s'"
 
-#. TRANSLATORS: the first %s will be replaced by a
-#. git notes command: 'add', 'merge', 'remove', etc.
-#: builtin/notes.c:345
+#. TRANSLATORS: the first %s will be replaced by a git
+#. notes command: 'add', 'merge', 'remove', etc.
+#.
+#: builtin/notes.c:356
 #, c-format
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
 msgstr "foi recusado efetuar %s de notas em %s (fora de refs/notes/)"
 
-#: builtin/notes.c:365 builtin/notes.c:420 builtin/notes.c:496
-#: builtin/notes.c:508 builtin/notes.c:584 builtin/notes.c:651
-#: builtin/notes.c:801 builtin/notes.c:948 builtin/notes.c:969
+#: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:509
+#: builtin/notes.c:521 builtin/notes.c:598 builtin/notes.c:665
+#: builtin/notes.c:815 builtin/notes.c:963 builtin/notes.c:985
 msgid "too many parameters"
 msgstr "demasiados parâmetros"
 
-#: builtin/notes.c:378 builtin/notes.c:664
+#: builtin/notes.c:389 builtin/notes.c:678
 #, c-format
 msgid "no note found for object %s."
 msgstr "nenhuma nota encontrada para o objeto %s."
 
-#: builtin/notes.c:399 builtin/notes.c:562
+#: builtin/notes.c:410 builtin/notes.c:576
 msgid "note contents as a string"
 msgstr "conteúdo da nota sob a forma de cadeia de caracteres"
 
-#: builtin/notes.c:402 builtin/notes.c:565
+#: builtin/notes.c:413 builtin/notes.c:579
 msgid "note contents in a file"
 msgstr "conteúdo da nota de um ficheiro"
 
-#: builtin/notes.c:405 builtin/notes.c:568
+#: builtin/notes.c:416 builtin/notes.c:582
 msgid "reuse and edit specified note object"
 msgstr "reutilizar e editar o objeto de nota especificado"
 
-#: builtin/notes.c:408 builtin/notes.c:571
+#: builtin/notes.c:419 builtin/notes.c:585
 msgid "reuse specified note object"
 msgstr "reutilizar o objeto de nota especificado"
 
-#: builtin/notes.c:411 builtin/notes.c:574
+#: builtin/notes.c:422 builtin/notes.c:588
 msgid "allow storing empty note"
 msgstr "permitir guardar uma nota vazia"
 
-#: builtin/notes.c:412 builtin/notes.c:483
+#: builtin/notes.c:423 builtin/notes.c:496
 msgid "replace existing notes"
 msgstr "substituir notas existentes"
 
-#: builtin/notes.c:437
+#: builtin/notes.c:448
 #, c-format
 msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -10704,29 +17719,29 @@ msgstr ""
 "Não é possível adicionar notas. Notas do objeto %s encontradas. Use '-f' "
 "para substituí-las."
 
-#: builtin/notes.c:452 builtin/notes.c:531
+#: builtin/notes.c:463 builtin/notes.c:544
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "A substituir as notas existentes do objeto %s\n"
 
-#: builtin/notes.c:463 builtin/notes.c:623 builtin/notes.c:888
+#: builtin/notes.c:475 builtin/notes.c:637 builtin/notes.c:902
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "A remover a nota do objeto %s\n"
 
-#: builtin/notes.c:484
+#: builtin/notes.c:497
 msgid "read objects from stdin"
 msgstr "ler objetos da entrada padrão"
 
-#: builtin/notes.c:486
+#: builtin/notes.c:499
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr "carregar configuração de reescrita do <comando> (implica --stdin)"
 
-#: builtin/notes.c:504
+#: builtin/notes.c:517
 msgid "too few parameters"
 msgstr "parâmetros insuficientes"
 
-#: builtin/notes.c:525
+#: builtin/notes.c:538
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -10735,12 +17750,12 @@ msgstr ""
 "Não é possível copiar notas. Notas do objeto %s encontradas. Use '-f' para "
 "substituí-las."
 
-#: builtin/notes.c:537
+#: builtin/notes.c:550
 #, c-format
 msgid "missing notes on source object %s. Cannot copy."
 msgstr "faltam notas no objeto de origem %s. Não é possível copiar."
 
-#: builtin/notes.c:589
+#: builtin/notes.c:603
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -10749,52 +17764,52 @@ msgstr ""
 "As opções -m/-F/-c/-C são obsoletas no subcomando 'edit'.\n"
 "Use 'git notes add -f -m/-F/-c/-C' em seu lugar.\n"
 
-#: builtin/notes.c:684
+#: builtin/notes.c:698
 msgid "failed to delete ref NOTES_MERGE_PARTIAL"
 msgstr "falha ao eliminar a referência NOTES_MERGE_PARTIAL"
 
-#: builtin/notes.c:686
+#: builtin/notes.c:700
 msgid "failed to delete ref NOTES_MERGE_REF"
 msgstr "falha ao eliminar a referência NOTES_MERGE_REF"
 
-#: builtin/notes.c:688
+#: builtin/notes.c:702
 msgid "failed to remove 'git notes merge' worktree"
 msgstr "falha ao remover a árvore de trabalho de 'git notes merge'"
 
-#: builtin/notes.c:708
+#: builtin/notes.c:722
 msgid "failed to read ref NOTES_MERGE_PARTIAL"
 msgstr "falha ao ler referência NOTES_MERGE_PARTIAL"
 
-#: builtin/notes.c:710
+#: builtin/notes.c:724
 msgid "could not find commit from NOTES_MERGE_PARTIAL."
 msgstr "não foi possível encontrar o commit de NOTES_MERGE_PARTIAL."
 
-#: builtin/notes.c:712
+#: builtin/notes.c:726
 msgid "could not parse commit from NOTES_MERGE_PARTIAL."
 msgstr "não foi possível analisar o commit de NOTES_MERGE_PARTIAL."
 
-#: builtin/notes.c:725
+#: builtin/notes.c:739
 msgid "failed to resolve NOTES_MERGE_REF"
 msgstr "falha ao resolver NOTES_MERGE_REF"
 
-#: builtin/notes.c:728
+#: builtin/notes.c:742
 msgid "failed to finalize notes merge"
 msgstr "falha ao finalizar integração de notas"
 
-#: builtin/notes.c:754
+#: builtin/notes.c:768
 #, c-format
 msgid "unknown notes merge strategy %s"
 msgstr "estratégia de integração de notas %s desconhecida"
 
-#: builtin/notes.c:770
+#: builtin/notes.c:784
 msgid "General options"
 msgstr "Opções gerais"
 
-#: builtin/notes.c:772
+#: builtin/notes.c:786
 msgid "Merge options"
 msgstr "Opções de integração"
 
-#: builtin/notes.c:774
+#: builtin/notes.c:788
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
@@ -10802,46 +17817,46 @@ msgstr ""
 "resolver conflitos nas notas usando a estratégia indicada (manual/ours/"
 "theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:776
+#: builtin/notes.c:790
 msgid "Committing unmerged notes"
 msgstr "A submeter notas não integradas"
 
-#: builtin/notes.c:778
+#: builtin/notes.c:792
 msgid "finalize notes merge by committing unmerged notes"
 msgstr "concluir integração de notas, submetendo notas não integradas"
 
-#: builtin/notes.c:780
+#: builtin/notes.c:794
 msgid "Aborting notes merge resolution"
 msgstr "A abortar resolução de integração das notas"
 
-#: builtin/notes.c:782
+#: builtin/notes.c:796
 msgid "abort notes merge"
 msgstr "abortar integração das notas"
 
-#: builtin/notes.c:793
+#: builtin/notes.c:807
 msgid "cannot mix --commit, --abort or -s/--strategy"
 msgstr "não é possível misturar --commit, --abort ou -s/--strategy"
 
-#: builtin/notes.c:798
+#: builtin/notes.c:812
 msgid "must specify a notes ref to merge"
 msgstr "tem de especificar uma referência de notas para integrar"
 
-#: builtin/notes.c:822
+#: builtin/notes.c:836
 #, c-format
 msgid "unknown -s/--strategy: %s"
 msgstr "-s/--strategy desconhecida: %s"
 
-#: builtin/notes.c:859
+#: builtin/notes.c:873
 #, c-format
 msgid "a notes merge into %s is already in-progress at %s"
 msgstr "uma integração das notas em %s já está em curso em %s"
 
-#: builtin/notes.c:862
+#: builtin/notes.c:876
 #, c-format
 msgid "failed to store link to current notes ref (%s)"
 msgstr "falha ao guardar ligação à referência de notas atual (%s)"
 
-#: builtin/notes.c:864
+#: builtin/notes.c:878
 #, c-format
 msgid ""
 "Automatic notes merge failed. Fix conflicts in %s and commit the result with "
@@ -10852,308 +17867,538 @@ msgstr ""
 "submeta o resultado com 'git notes merge --commit' ou aborte a integração "
 "com 'git notes merge --abort'.\n"
 
-#: builtin/notes.c:886
+#: builtin/notes.c:897 builtin/tag.c:546
+#, c-format
+msgid "Failed to resolve '%s' as a valid ref."
+msgstr "Falha ao resolver '%s' numa referência válida."
+
+#: builtin/notes.c:900
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "O objeto %s não tem nenhuma nota\n"
 
-#: builtin/notes.c:898
+#: builtin/notes.c:912
 msgid "attempt to remove non-existent note is not an error"
 msgstr "não considerar como erro a remoção de uma nota não existente"
 
-#: builtin/notes.c:901
+#: builtin/notes.c:915
 msgid "read object names from the standard input"
 msgstr "ler nome dos objetos da entrada padrão"
 
-#: builtin/notes.c:939 builtin/prune.c:105 builtin/worktree.c:127
+#: builtin/notes.c:954 builtin/prune.c:132 builtin/worktree.c:220
 msgid "do not remove, show only"
 msgstr "não remover, mostrar apenas"
 
-#: builtin/notes.c:940
+#: builtin/notes.c:955
 msgid "report pruned notes"
 msgstr "reportar notas podadas"
 
-#: builtin/notes.c:982
+#: builtin/notes.c:998
 msgid "notes-ref"
 msgstr "notes-ref"
 
-#: builtin/notes.c:983
+#: builtin/notes.c:999
 msgid "use notes from <notes-ref>"
 msgstr "usar notas de <notes-ref>"
 
-#: builtin/notes.c:1018
+#: builtin/notes.c:1034 builtin/stash.c:1605
 #, c-format
 msgid "unknown subcommand: %s"
 msgstr "subcomando desconhecido: %s"
 
-#: builtin/pack-objects.c:29
+#: builtin/pack-objects.c:54
 msgid ""
 "git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
 msgstr ""
 "git pack-objects --stdout [<opções>...] [< <lista-referências> | < <lista-"
 "objetos>]"
 
-#: builtin/pack-objects.c:30
+#: builtin/pack-objects.c:55
 msgid ""
 "git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
 msgstr ""
 "git pack-objects [<opções>...] <nome-base> [< <lista-referências> | < <lista-"
 "objetos>]"
 
-#: builtin/pack-objects.c:177 builtin/pack-objects.c:180
+#: builtin/pack-objects.c:443
+#, fuzzy, c-format
+msgid "bad packed object CRC for %s"
+msgstr "ignorar objetos compactados"
+
+#: builtin/pack-objects.c:454
+#, fuzzy, c-format
+msgid "corrupt packed object for %s"
+msgstr "ignorar objetos compactados"
+
+#: builtin/pack-objects.c:585
+#, fuzzy, c-format
+msgid "recursive delta detected for object %s"
+msgstr "o objeto esperado %s não foi recebido"
+
+#: builtin/pack-objects.c:796
 #, c-format
-msgid "deflate error (%d)"
-msgstr "erro ao compactar (%d)"
+msgid "ordered %u objects, expected %<PRIu32>"
+msgstr ""
 
-#: builtin/pack-objects.c:770
+#: builtin/pack-objects.c:1004
 msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
 msgstr ""
 "a desativar escrita de mapa de bits, os pacotes são divididos devido a pack."
 "packSizeLimit"
 
-#: builtin/pack-objects.c:783
+#: builtin/pack-objects.c:1017
 msgid "Writing objects"
 msgstr "A escrever objetos"
 
-#: builtin/pack-objects.c:1063
+#: builtin/pack-objects.c:1078 builtin/update-index.c:90
+#, c-format
+msgid "failed to stat %s"
+msgstr "falha ao invocar stat de %s"
+
+#: builtin/pack-objects.c:1131
+#, c-format
+msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
+msgstr ""
+
+#: builtin/pack-objects.c:1348
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr ""
 "a desativar escrita de mapa de bits, visto que alguns objetos não estão a "
 "ser compactados"
 
-#: builtin/pack-objects.c:2426
+#: builtin/pack-objects.c:1796
+#, fuzzy, c-format
+msgid "delta base offset overflow in pack for %s"
+msgstr "offset da base delta está fora do limite"
+
+#: builtin/pack-objects.c:1805
+#, fuzzy, c-format
+msgid "delta base offset out of bound for %s"
+msgstr "offset da base delta está fora do limite"
+
+#: builtin/pack-objects.c:2086
+msgid "Counting objects"
+msgstr "A contar objetos"
+
+#: builtin/pack-objects.c:2231
+#, fuzzy, c-format
+msgid "unable to parse object header of %s"
+msgstr "não foi possível analisar o objeto: %s"
+
+#: builtin/pack-objects.c:2301 builtin/pack-objects.c:2317
+#: builtin/pack-objects.c:2327
+#, fuzzy, c-format
+msgid "object %s cannot be read"
+msgstr "objeto %s não encontrado"
+
+#: builtin/pack-objects.c:2304 builtin/pack-objects.c:2331
+#, c-format
+msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
+msgstr ""
+
+#: builtin/pack-objects.c:2341
+msgid "suboptimal pack - out of memory"
+msgstr ""
+
+#: builtin/pack-objects.c:2656
+#, c-format
+msgid "Delta compression using up to %d threads"
+msgstr ""
+
+#: builtin/pack-objects.c:2795
+#, fuzzy, c-format
+msgid "unable to pack objects reachable from tag %s"
+msgstr "incluir objetos alcançáveis a partir de qualquer referência"
+
+#: builtin/pack-objects.c:2883
 msgid "Compressing objects"
 msgstr "A comprimir objetos"
 
-#: builtin/pack-objects.c:2829
+#: builtin/pack-objects.c:2889
+msgid "inconsistency with delta count"
+msgstr ""
+
+#: builtin/pack-objects.c:2961
 #, c-format
-msgid "unsupported index version %s"
-msgstr "versão de índice %s não suportada"
+msgid ""
+"value of uploadpack.blobpackfileuri must be of the form '<object-hash> <pack-"
+"hash> <uri>' (got '%s')"
+msgstr ""
 
-#: builtin/pack-objects.c:2833
+#: builtin/pack-objects.c:2964
 #, c-format
-msgid "bad index version '%s'"
-msgstr "versão de índice '%s' incorreta"
+msgid ""
+"object already configured in another uploadpack.blobpackfileuri (got '%s')"
+msgstr ""
 
-#: builtin/pack-objects.c:2863
-msgid "do not show progress meter"
-msgstr "não mostrar medidor de progresso"
+#: builtin/pack-objects.c:2993
+#, c-format
+msgid ""
+"expected edge object ID, got garbage:\n"
+" %s"
+msgstr ""
 
-#: builtin/pack-objects.c:2865
-msgid "show progress meter"
-msgstr "mostrar medidor de progresso"
+#: builtin/pack-objects.c:2999
+#, c-format
+msgid ""
+"expected object ID, got garbage:\n"
+" %s"
+msgstr ""
 
-#: builtin/pack-objects.c:2867
-msgid "show progress meter during object writing phase"
-msgstr "mostrar medidor de progresso durante a fase de escrita de objetos"
+#: builtin/pack-objects.c:3097
+#, fuzzy
+msgid "invalid value for --missing"
+msgstr "valor inválido de %s"
 
-#: builtin/pack-objects.c:2870
-msgid "similar to --all-progress when progress meter is shown"
-msgstr "semelhante a --all-progress quando o medidor de progresso é mostrado"
+#: builtin/pack-objects.c:3156 builtin/pack-objects.c:3264
+#, fuzzy
+msgid "cannot open pack index"
+msgstr "não é possível invocar pread sobre o ficheiro de pacote"
+
+#: builtin/pack-objects.c:3187
+#, c-format
+msgid "loose object at %s could not be examined"
+msgstr ""
+
+#: builtin/pack-objects.c:3272
+#, fuzzy
+msgid "unable to force loose object"
+msgstr "não é possível escrever o objeto de nota"
+
+#: builtin/pack-objects.c:3365
+#, fuzzy, c-format
+msgid "not a rev '%s'"
+msgstr "não é possível ler '%s'"
+
+#: builtin/pack-objects.c:3368
+#, fuzzy, c-format
+msgid "bad revision '%s'"
+msgstr "repositório '%s' incorreto"
+
+#: builtin/pack-objects.c:3393
+#, fuzzy
+msgid "unable to add recent objects"
+msgstr "não foi possível analisar o objeto: %s"
+
+#: builtin/pack-objects.c:3446
+#, c-format
+msgid "unsupported index version %s"
+msgstr "versão de índice %s não suportada"
+
+#: builtin/pack-objects.c:3450
+#, c-format
+msgid "bad index version '%s'"
+msgstr "versão de índice '%s' incorreta"
 
-#: builtin/pack-objects.c:2871
-msgid "version[,offset]"
+#: builtin/pack-objects.c:3488
+#, fuzzy
+msgid "<version>[,<offset>]"
 msgstr "versão[,offset]"
 
-#: builtin/pack-objects.c:2872
+#: builtin/pack-objects.c:3489
 msgid "write the pack index file in the specified idx format version"
 msgstr ""
 "escrever o ficheiro de índice do pacote na versão de formato especificada"
 
-#: builtin/pack-objects.c:2875
+#: builtin/pack-objects.c:3492
 msgid "maximum size of each output pack file"
 msgstr "tamanho máximo de cada ficheiro de pacote gerado"
 
-#: builtin/pack-objects.c:2877
+#: builtin/pack-objects.c:3494
 msgid "ignore borrowed objects from alternate object store"
 msgstr "ignorar objetos emprestados do arquivo de objetos sobressalentes"
 
-#: builtin/pack-objects.c:2879
+#: builtin/pack-objects.c:3496
 msgid "ignore packed objects"
 msgstr "ignorar objetos compactados"
 
-#: builtin/pack-objects.c:2881
+#: builtin/pack-objects.c:3498
 msgid "limit pack window by objects"
 msgstr "limitar a janela de compactação por objetos"
 
-#: builtin/pack-objects.c:2883
+#: builtin/pack-objects.c:3500
 msgid "limit pack window by memory in addition to object limit"
 msgstr ""
 "limitar a janela de compactação por memória em adição ao limite por objetos"
 
-#: builtin/pack-objects.c:2885
+#: builtin/pack-objects.c:3502
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr "tamanho máximo de cadeias delta permitidas no pacote resultante"
 
-#: builtin/pack-objects.c:2887
+#: builtin/pack-objects.c:3504
 msgid "reuse existing deltas"
 msgstr "reutilizar deltas existentes"
 
-#: builtin/pack-objects.c:2889
+#: builtin/pack-objects.c:3506
 msgid "reuse existing objects"
 msgstr "reutilizar objetos existentes"
 
-#: builtin/pack-objects.c:2891
+#: builtin/pack-objects.c:3508
 msgid "use OFS_DELTA objects"
 msgstr "usar objetos OFS_DELTA"
 
-#: builtin/pack-objects.c:2893
+#: builtin/pack-objects.c:3510
 msgid "use threads when searching for best delta matches"
 msgstr "usar threads ao procurar pela melhor correspondência delta"
 
-#: builtin/pack-objects.c:2895
+#: builtin/pack-objects.c:3512
 msgid "do not create an empty pack output"
 msgstr "não criar um pacote vazio"
 
-#: builtin/pack-objects.c:2897
+#: builtin/pack-objects.c:3514
 msgid "read revision arguments from standard input"
 msgstr "ler argumentos de revisão da entrada padrão"
 
-#: builtin/pack-objects.c:2899
+#: builtin/pack-objects.c:3516
 msgid "limit the objects to those that are not yet packed"
 msgstr "restringir-se aos objetos que ainda não foram compactados"
 
-#: builtin/pack-objects.c:2902
+#: builtin/pack-objects.c:3519
 msgid "include objects reachable from any reference"
 msgstr "incluir objetos alcançáveis a partir de qualquer referência"
 
-#: builtin/pack-objects.c:2905
+#: builtin/pack-objects.c:3522
 msgid "include objects referred by reflog entries"
 msgstr "incluir objetos referenciados por entradas do reflog"
 
-#: builtin/pack-objects.c:2908
+#: builtin/pack-objects.c:3525
 msgid "include objects referred to by the index"
 msgstr "incluir objetos referenciados pelo índice"
 
-#: builtin/pack-objects.c:2911
+#: builtin/pack-objects.c:3528
 msgid "output pack to stdout"
 msgstr "gerar pacote para a saída padrão"
 
-#: builtin/pack-objects.c:2913
+#: builtin/pack-objects.c:3530
 msgid "include tag objects that refer to objects to be packed"
 msgstr "incluir objetos tag que refiram objetos a compactar"
 
-#: builtin/pack-objects.c:2915
+#: builtin/pack-objects.c:3532
 msgid "keep unreachable objects"
 msgstr "manter objetos inalcançáveis"
 
-#: builtin/pack-objects.c:2917
+#: builtin/pack-objects.c:3534
 msgid "pack loose unreachable objects"
 msgstr "empacotar objetos soltos inalcançáveis"
 
-#: builtin/pack-objects.c:2919
+#: builtin/pack-objects.c:3536
 msgid "unpack unreachable objects newer than <time>"
 msgstr "descompactar objetos inalcançáveis mais recentes que <tempo>"
 
-#: builtin/pack-objects.c:2922
+#: builtin/pack-objects.c:3539
+msgid "use the sparse reachability algorithm"
+msgstr ""
+
+#: builtin/pack-objects.c:3541
 msgid "create thin packs"
 msgstr "criar pacotes finos"
 
-#: builtin/pack-objects.c:2924
+#: builtin/pack-objects.c:3543
 msgid "create packs suitable for shallow fetches"
 msgstr "criar pacotes adequados para obter em repositórios pouco profundos"
 
-#: builtin/pack-objects.c:2926
+#: builtin/pack-objects.c:3545
 msgid "ignore packs that have companion .keep file"
 msgstr "ignorar pacotes que tenham um ficheiro .keep"
 
-#: builtin/pack-objects.c:2928
+#: builtin/pack-objects.c:3547
+#, fuzzy
+msgid "ignore this pack"
+msgstr "usar pacote fino"
+
+#: builtin/pack-objects.c:3549
 msgid "pack compression level"
 msgstr "nível de compactação do pacote"
 
-#: builtin/pack-objects.c:2930
+#: builtin/pack-objects.c:3551
 msgid "do not hide commits by grafts"
 msgstr "não esconder commits introduzidos por enxertos"
 
-#: builtin/pack-objects.c:2932
+#: builtin/pack-objects.c:3553
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr ""
 "usar um índice de mapa de bits se disponível, para acelerar a contagem de "
 "objetos"
 
-#: builtin/pack-objects.c:2934
+#: builtin/pack-objects.c:3555
 msgid "write a bitmap index together with the pack index"
 msgstr "escrever um índice de mapa de bits juntamente com o índice do pacote"
 
-#: builtin/pack-objects.c:3061
-msgid "Counting objects"
-msgstr "A contar objetos"
+#: builtin/pack-objects.c:3559
+#, fuzzy
+msgid "write a bitmap index if possible"
+msgstr "escrever índice de mapa de bits"
+
+#: builtin/pack-objects.c:3563
+#, fuzzy
+msgid "handling for missing objects"
+msgstr "permitir objetos não presentes"
+
+#: builtin/pack-objects.c:3566
+msgid "do not pack objects in promisor packfiles"
+msgstr ""
+
+#: builtin/pack-objects.c:3568
+#, fuzzy
+msgid "respect islands during delta compression"
+msgstr "dimensão da janela usada em compressão de deltas"
+
+#: builtin/pack-objects.c:3570
+msgid "protocol"
+msgstr ""
+
+#: builtin/pack-objects.c:3571
+msgid "exclude any configured uploadpack.blobpackfileuri with this protocol"
+msgstr ""
+
+#: builtin/pack-objects.c:3600
+#, c-format
+msgid "delta chain depth %d is too deep, forcing %d"
+msgstr ""
+
+#: builtin/pack-objects.c:3605
+#, c-format
+msgid "pack.deltaCacheLimit is too high, forcing %d"
+msgstr ""
+
+#: builtin/pack-objects.c:3659
+msgid "--max-pack-size cannot be used to build a pack for transfer"
+msgstr ""
+
+#: builtin/pack-objects.c:3661
+msgid "minimum pack size limit is 1 MiB"
+msgstr ""
 
-#: builtin/pack-refs.c:6
+#: builtin/pack-objects.c:3666
+#, fuzzy
+msgid "--thin cannot be used to build an indexable pack"
+msgstr "--fix-thin não pode ser usado sem --stdin"
+
+#: builtin/pack-objects.c:3669
+#, fuzzy
+msgid "--keep-unreachable and --unpack-unreachable are incompatible"
+msgstr "--keep-unreachable e -A são incompatíveis"
+
+#: builtin/pack-objects.c:3675
+#, fuzzy
+msgid "cannot use --filter without --stdout"
+msgstr "não é possível usar -a com -d"
+
+#: builtin/pack-objects.c:3735
+#, fuzzy
+msgid "Enumerating objects"
+msgstr "A escrever objetos"
+
+#: builtin/pack-objects.c:3766
+#, c-format
+msgid ""
+"Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>), pack-"
+"reused %<PRIu32>"
+msgstr ""
+
+#: builtin/pack-refs.c:8
 msgid "git pack-refs [<options>]"
 msgstr "git pack-refs [<opções>]"
 
-#: builtin/pack-refs.c:14
+#: builtin/pack-refs.c:16
 msgid "pack everything"
 msgstr "compactar tudo"
 
-#: builtin/pack-refs.c:15
+#: builtin/pack-refs.c:17
 msgid "prune loose refs (default)"
 msgstr "eliminar referências soltas (predefinição)"
 
-#: builtin/prune-packed.c:7
+#: builtin/prune-packed.c:6
 msgid "git prune-packed [-n | --dry-run] [-q | --quiet]"
 msgstr "git prune-packed [-n | --dry-run] [-q | --quiet]"
 
-#: builtin/prune-packed.c:40
-msgid "Removing duplicate objects"
-msgstr "A remover objetos duplicados"
-
-#: builtin/prune.c:11
-msgid "git prune [-n] [-v] [--expire <time>] [--] [<head>...]"
+#: builtin/prune.c:14
+#, fuzzy
+msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
 msgstr "git prune [-n] [-v] [--expire <tempo>] [--] [<head>...]"
 
-#: builtin/prune.c:106
+#: builtin/prune.c:133
 msgid "report pruned objects"
 msgstr "apresentar objetos eliminados"
 
-#: builtin/prune.c:109
+#: builtin/prune.c:136
 msgid "expire objects older than <time>"
 msgstr "expirar objetos mais antigos que <tempo>"
 
-#: builtin/prune.c:123
+#: builtin/prune.c:138
+msgid "limit traversal to objects outside promisor packfiles"
+msgstr ""
+
+#: builtin/prune.c:152
 msgid "cannot prune in a precious-objects repo"
 msgstr "não é possível limpar num repositório de objetos-preciosos"
 
-#: builtin/pull.c:51 builtin/pull.c:53
+#: builtin/pull.c:45 builtin/pull.c:47
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr "Valor inválido de %s: %s"
 
-#: builtin/pull.c:73
+#: builtin/pull.c:67
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
 msgstr "git pull [<opções>] [<repositório> [<especificador-de-referência>...]]"
 
-#: builtin/pull.c:121
+#: builtin/pull.c:123
+#, fuzzy
+msgid "control for recursive fetching of submodules"
+msgstr "controlar a obtenção recursiva de submódulos"
+
+#: builtin/pull.c:127
 msgid "Options related to merging"
 msgstr "Opções relativas a integração"
 
-#: builtin/pull.c:124
+#: builtin/pull.c:130
 msgid "incorporate changes by rebasing rather than merging"
 msgstr "incorporar alterações por rebase em vez de integrar"
 
-#: builtin/pull.c:148 builtin/rebase--helper.c:18 builtin/revert.c:120
+#: builtin/pull.c:158 builtin/rebase.c:484 builtin/revert.c:126
 msgid "allow fast-forward"
 msgstr "permitir avanço rápido"
 
-#: builtin/pull.c:157
-msgid "automatically stash/stash pop before and after rebase"
+#: builtin/pull.c:167 parse-options.h:339
+#, fuzzy
+msgid "automatically stash/stash pop before and after"
 msgstr "empilhar/desempilhar automaticamente antes de depois de rebase"
 
-#: builtin/pull.c:173
+#: builtin/pull.c:183
 msgid "Options related to fetching"
 msgstr "Opções relacionadas com obtenção de objetos"
 
-#: builtin/pull.c:195
+#: builtin/pull.c:193
+msgid "force overwrite of local branch"
+msgstr "forçar a substituição do ramo local"
+
+#: builtin/pull.c:201
 msgid "number of submodules pulled in parallel"
 msgstr "número de submódulos puxados em paralelo"
 
-#: builtin/pull.c:284
+#: builtin/pull.c:317
 #, c-format
 msgid "Invalid value for pull.ff: %s"
 msgstr "Valor inválido de pull.ff: %s"
 
-#: builtin/pull.c:397
+#: builtin/pull.c:348
+msgid ""
+"Pulling without specifying how to reconcile divergent branches is\n"
+"discouraged. You can squelch this message by running one of the following\n"
+"commands sometime before your next pull:\n"
+"\n"
+"  git config pull.rebase false  # merge (the default strategy)\n"
+"  git config pull.rebase true   # rebase\n"
+"  git config pull.ff only       # fast-forward only\n"
+"\n"
+"You can replace \"git config\" with \"git config --global\" to set a "
+"default\n"
+"preference for all repositories. You can also pass --rebase, --no-rebase,\n"
+"or --ff-only on the command line to override the configured default per\n"
+"invocation.\n"
+msgstr ""
+
+#: builtin/pull.c:458
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
@@ -11161,14 +18406,14 @@ msgstr ""
 "Não há nenhum candidato com o qual realizar rebase de entre as referências "
 "que se acabaram de obter."
 
-#: builtin/pull.c:399
+#: builtin/pull.c:460
 msgid ""
 "There are no candidates for merging among the refs that you just fetched."
 msgstr ""
 "Não há nenhum candidato com o qual integrar de entre as referências que se "
 "acabaram obter."
 
-#: builtin/pull.c:400
+#: builtin/pull.c:461
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
@@ -11176,7 +18421,7 @@ msgstr ""
 "Geralmente, significa que forneceu um especificador de referência\n"
 "com um carácter universal (wildcard) que não corresponde a nenhum remoto."
 
-#: builtin/pull.c:403
+#: builtin/pull.c:464
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
@@ -11187,44 +18432,44 @@ msgstr ""
 "Uma vez que este não é o remoto configurado por predefinição\n"
 "do ramo atual, deve especificar um ramo na linha de comandos."
 
-#: builtin/pull.c:408 git-parse-remote.sh:73
+#: builtin/pull.c:469 builtin/rebase.c:1240 git-parse-remote.sh:73
 msgid "You are not currently on a branch."
 msgstr "Não se encontra em nenhum ramo de momento."
 
-#: builtin/pull.c:410 builtin/pull.c:425 git-parse-remote.sh:79
+#: builtin/pull.c:471 builtin/pull.c:486 git-parse-remote.sh:79
 msgid "Please specify which branch you want to rebase against."
 msgstr "Especifique o ramo sobre o qual pretende realizar rebase."
 
-#: builtin/pull.c:412 builtin/pull.c:427 git-parse-remote.sh:82
+#: builtin/pull.c:473 builtin/pull.c:488 git-parse-remote.sh:82
 msgid "Please specify which branch you want to merge with."
 msgstr "Especifique o ramo com o qual pretende integrar."
 
-#: builtin/pull.c:413 builtin/pull.c:428
+#: builtin/pull.c:474 builtin/pull.c:489
 msgid "See git-pull(1) for details."
 msgstr "Consulte git-pull(1) para obter mais detalhes."
 
-#: builtin/pull.c:415 builtin/pull.c:421 builtin/pull.c:430
-#: git-parse-remote.sh:64
+#: builtin/pull.c:476 builtin/pull.c:482 builtin/pull.c:491
+#: builtin/rebase.c:1246 git-parse-remote.sh:64
 msgid "<remote>"
 msgstr "<remoto>"
 
-#: builtin/pull.c:415 builtin/pull.c:430 builtin/pull.c:435 git-rebase.sh:455
+#: builtin/pull.c:476 builtin/pull.c:491 builtin/pull.c:496
 #: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr "<ramo>"
 
-#: builtin/pull.c:423 git-parse-remote.sh:75
+#: builtin/pull.c:484 builtin/rebase.c:1238 git-parse-remote.sh:75
 msgid "There is no tracking information for the current branch."
 msgstr "O ramo atual não segue nenhum ramo."
 
-#: builtin/pull.c:432 git-parse-remote.sh:95
+#: builtin/pull.c:493 git-parse-remote.sh:95
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:"
 msgstr ""
 "Se deseja definir o ramo que deve ser seguido por este ramo, pode fazê-lo "
 "com:"
 
-#: builtin/pull.c:437
+#: builtin/pull.c:498
 #, c-format
 msgid ""
 "Your configuration specifies to merge with the ref '%s'\n"
@@ -11233,29 +18478,30 @@ msgstr ""
 "A configuração indica para integrar com a referência '%s'\n"
 "do remoto, mas aquela referência não foi obtida."
 
-#: builtin/pull.c:754
+#: builtin/pull.c:609
+#, fuzzy, c-format
+msgid "unable to access commit %s"
+msgstr "não foi possível analisar o commit %s"
+
+#: builtin/pull.c:894
 msgid "ignoring --verify-signatures for rebase"
 msgstr "ignorado --verify-signatures para rebase"
 
-#: builtin/pull.c:801
-msgid "--[no-]autostash option is only valid with --rebase."
-msgstr "a opção --[no-]autostash só é válida com --rebase."
-
-#: builtin/pull.c:809
+#: builtin/pull.c:954
 msgid "Updating an unborn branch with changes added to the index."
 msgstr ""
 "A atualizar um ramo que ainda não foi criado e com alterações adicionadas ao "
 "índice."
 
-#: builtin/pull.c:812
+#: builtin/pull.c:958
 msgid "pull with rebase"
 msgstr "puxar com rebase"
 
-#: builtin/pull.c:813
+#: builtin/pull.c:959
 msgid "please commit or stash them."
 msgstr "submeta ou esconda-as."
 
-#: builtin/pull.c:838
+#: builtin/pull.c:984
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -11266,7 +18512,7 @@ msgstr ""
 "a avançar a árvore de trabalho a partir do\n"
 "commit %s."
 
-#: builtin/pull.c:843
+#: builtin/pull.c:990
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -11283,27 +18529,31 @@ msgstr ""
 "$ git reset --hard\n"
 "para recuperar."
 
-#: builtin/pull.c:858
+#: builtin/pull.c:1005
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Não é possível integrar múltiplos ramos numa cabeça vazia."
 
-#: builtin/pull.c:862
+#: builtin/pull.c:1009
 msgid "Cannot rebase onto multiple branches."
 msgstr "Não é possível efetuar rebase sobre múltiplos ramos."
 
-#: builtin/push.c:16
+#: builtin/pull.c:1017
+msgid "cannot rebase with locally recorded submodule modifications"
+msgstr ""
+
+#: builtin/push.c:19
 msgid "git push [<options>] [<repository> [<refspec>...]]"
 msgstr "git push [<opções>] [<repositório> [<especificador-de-referência>...]]"
 
-#: builtin/push.c:89
+#: builtin/push.c:111
 msgid "tag shorthand without <tag>"
 msgstr "forma abreviada de tag sem <tag>"
 
-#: builtin/push.c:99
+#: builtin/push.c:119
 msgid "--delete only accepts plain target ref names"
 msgstr "--delete só aceita nomes simples como referências de destino"
 
-#: builtin/push.c:143
+#: builtin/push.c:164
 msgid ""
 "\n"
 "To choose either option permanently, see push.default in 'git help config'."
@@ -11312,8 +18562,8 @@ msgstr ""
 "Para escolher uma opção permanentemente, consulte push.default em 'git help "
 "config'."
 
-#: builtin/push.c:146
-#, c-format
+#: builtin/push.c:167
+#, fuzzy, c-format
 msgid ""
 "The upstream branch of your current branch does not match\n"
 "the name of your current branch.  To push to the upstream branch\n"
@@ -11323,7 +18573,7 @@ msgid ""
 "\n"
 "To push to the branch of the same name on the remote, use\n"
 "\n"
-"    git push %s %s\n"
+"    git push %s HEAD\n"
 "%s"
 msgstr ""
 "O ramo a montante do ramo atual não coincide com o nome do ramo atual.\n"
@@ -11336,7 +18586,7 @@ msgstr ""
 "    git push %s %s\n"
 "%s"
 
-#: builtin/push.c:161
+#: builtin/push.c:182
 #, c-format
 msgid ""
 "You are not currently on a branch.\n"
@@ -11351,7 +18601,7 @@ msgstr ""
 "\n"
 "    git push %s HEAD:<name-of-remote-branch>\n"
 
-#: builtin/push.c:175
+#: builtin/push.c:194
 #, c-format
 msgid ""
 "The current branch %s has no upstream branch.\n"
@@ -11364,12 +18614,12 @@ msgstr ""
 "\n"
 "    git push --set-upstream %s %s\n"
 
-#: builtin/push.c:183
+#: builtin/push.c:202
 #, c-format
 msgid "The current branch %s has multiple upstream branches, refusing to push."
 msgstr "O ramo atual %s tem múltiplos ramos a montante, publicação recusada."
 
-#: builtin/push.c:186
+#: builtin/push.c:205
 #, c-format
 msgid ""
 "You are pushing to remote '%s', which is not the upstream of\n"
@@ -11380,14 +18630,14 @@ msgstr ""
 "do ramo atual '%s'. Deve indicar o que pretende publicar e que ramo\n"
 "remoto atualizar."
 
-#: builtin/push.c:245
+#: builtin/push.c:260
 msgid ""
 "You didn't specify any refspecs to push, and push.default is \"nothing\"."
 msgstr ""
 "Não indicou nenhum especificador de referência para publicar e o valor de "
 "push.default é \"nothing\"."
 
-#: builtin/push.c:252
+#: builtin/push.c:267
 msgid ""
 "Updates were rejected because the tip of your current branch is behind\n"
 "its remote counterpart. Integrate the remote changes (e.g.\n"
@@ -11399,7 +18649,7 @@ msgstr ""
 "'git pull ...') antes de publicar de novo.\n"
 "Consulte 'Note about fast-forwards' em 'git push --help' para obter detalhes."
 
-#: builtin/push.c:258
+#: builtin/push.c:273
 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"
@@ -11411,7 +18661,7 @@ msgstr ""
 "as alterações remotas (e.g. 'git pull ...') antes de publicar de novo.\n"
 "Consulte 'Note about fast-forwards' em 'git push --help' para obter detalhes."
 
-#: builtin/push.c:264
+#: builtin/push.c:279
 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"
@@ -11426,11 +18676,11 @@ msgstr ""
 "(e.g., 'git pull ...') antes de publicar de novo.\n"
 "Consulte 'Note about fast-forwards' em 'git push --help' para obter detalhes."
 
-#: builtin/push.c:271
+#: builtin/push.c:286
 msgid "Updates were rejected because the tag already exists in the remote."
 msgstr "As atualizações foram rejeitadas porque a tag já existe no remoto."
 
-#: builtin/push.c:274
+#: builtin/push.c:289
 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"
@@ -11440,153 +18690,192 @@ msgstr ""
 "objeto não commit, ou atualizar uma referência remota fazendo-a\n"
 "apontar para um objeto não commit, sem usar a opção '--force'.\n"
 
-#: builtin/push.c:334
+#: builtin/push.c:351
 #, c-format
 msgid "Pushing to %s\n"
 msgstr "A publicar em %s\n"
 
-#: builtin/push.c:338
+#: builtin/push.c:358
 #, c-format
 msgid "failed to push some refs to '%s'"
 msgstr "falha ao publicar algumas referências em '%s'"
 
-#: builtin/push.c:369
-#, c-format
-msgid "bad repository '%s'"
-msgstr "repositório '%s' incorreto"
-
-#: builtin/push.c:370
-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 ""
-"Destino de publicação não definido.\n"
-"Indique um URL na linha de comandos ou configure um repositório remoto "
-"usando\n"
-"\n"
-"    git remote add <nome> <url>\n"
-"\n"
-"e publique usando o nome remoto\n"
-"\n"
-"    git push <nome>\n"
-
-#: builtin/push.c:388
-msgid "--all and --tags are incompatible"
-msgstr "--all e --tags são incompatíveis"
-
-#: builtin/push.c:389
-msgid "--all can't be combined with refspecs"
-msgstr "--all não pode ser combinado com especificadores de referências"
-
-#: builtin/push.c:394
-msgid "--mirror and --tags are incompatible"
-msgstr "--mirror e --tags são incompatíveis"
-
-#: builtin/push.c:395
-msgid "--mirror can't be combined with refspecs"
-msgstr "--mirror não pode ser combinado com especificadores de referências"
-
-#: builtin/push.c:400
-msgid "--all and --mirror are incompatible"
-msgstr "--all e --mirror são incompatíveis"
-
-#: builtin/push.c:518
+#: builtin/push.c:532
 msgid "repository"
 msgstr "repositório"
 
-#: builtin/push.c:519 builtin/send-pack.c:162
+#: builtin/push.c:533 builtin/send-pack.c:183
 msgid "push all refs"
 msgstr "publicar todas as referências"
 
-#: builtin/push.c:520 builtin/send-pack.c:164
+#: builtin/push.c:534 builtin/send-pack.c:185
 msgid "mirror all refs"
 msgstr "replicar todas as referências"
 
-#: builtin/push.c:522
+#: builtin/push.c:536
 msgid "delete refs"
 msgstr "eliminar referências"
 
-#: builtin/push.c:523
+#: builtin/push.c:537
 msgid "push tags (can't be used with --all or --mirror)"
 msgstr "publicar tags (não pode ser usado com --all ou --mirror)"
 
-#: builtin/push.c:526 builtin/send-pack.c:165
+#: builtin/push.c:540 builtin/send-pack.c:186
 msgid "force updates"
 msgstr "forçar atualização"
 
-#: builtin/push.c:528 builtin/send-pack.c:179
-msgid "refname>:<expect"
+#: builtin/push.c:541 builtin/send-pack.c:198
+#, fuzzy
+msgid "<refname>:<expect>"
 msgstr "nome da referência>:<esperado"
 
-#: builtin/push.c:529 builtin/send-pack.c:180
+#: builtin/push.c:542 builtin/send-pack.c:199
 msgid "require old value of ref to be at this value"
 msgstr "exigir que o antigo valor da referência tenha este valor"
 
-#: builtin/push.c:532
+#: builtin/push.c:545
 msgid "control recursive pushing of submodules"
 msgstr "controlar a publicação recursiva de submódulos"
 
-#: builtin/push.c:534 builtin/send-pack.c:173
+#: builtin/push.c:546 builtin/send-pack.c:193
 msgid "use thin pack"
 msgstr "usar pacote fino"
 
-#: builtin/push.c:535 builtin/push.c:536 builtin/send-pack.c:159
-#: builtin/send-pack.c:160
+#: builtin/push.c:547 builtin/push.c:548 builtin/send-pack.c:180
+#: builtin/send-pack.c:181
 msgid "receive pack program"
 msgstr "programa receive pack"
 
-#: builtin/push.c:537
+#: builtin/push.c:549
 msgid "set upstream for git pull/status"
 msgstr "definir o ramo a montante usado com git pull/status"
 
-#: builtin/push.c:540
+#: builtin/push.c:552
 msgid "prune locally removed refs"
 msgstr "eliminar referências removidas localmente"
 
-#: builtin/push.c:542
+#: builtin/push.c:554
 msgid "bypass pre-push hook"
 msgstr "ignorar pre-push hook"
 
-#: builtin/push.c:543
+#: builtin/push.c:555
 msgid "push missing but relevant tags"
 msgstr "publicar tags perdidas mas relevantes"
 
-#: builtin/push.c:546 builtin/send-pack.c:167
+#: builtin/push.c:557 builtin/send-pack.c:187
 msgid "GPG sign the push"
 msgstr "assinar publicação com GPG"
 
-#: builtin/push.c:548 builtin/send-pack.c:174
+#: builtin/push.c:559 builtin/send-pack.c:194
 msgid "request atomic transaction on remote side"
 msgstr "solicitar transação atómica no servidor remoto"
 
-#: builtin/push.c:549 builtin/send-pack.c:170
-msgid "server-specific"
-msgstr "específico do servidor"
-
-#: builtin/push.c:549 builtin/send-pack.c:171
-msgid "option to transmit"
-msgstr "opção para transmitir"
-
-#: builtin/push.c:563
+#: builtin/push.c:577
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete é incompatível com --all, --mirror e --tags"
 
-#: builtin/push.c:565
+#: builtin/push.c:579
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete não faz sentido sem uma referência"
 
-#: builtin/push.c:584
+#: builtin/push.c:599
+#, c-format
+msgid "bad repository '%s'"
+msgstr "repositório '%s' incorreto"
+
+#: builtin/push.c:600
+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 ""
+"Destino de publicação não definido.\n"
+"Indique um URL na linha de comandos ou configure um repositório remoto "
+"usando\n"
+"\n"
+"    git remote add <nome> <url>\n"
+"\n"
+"e publique usando o nome remoto\n"
+"\n"
+"    git push <nome>\n"
+
+#: builtin/push.c:615
+msgid "--all and --tags are incompatible"
+msgstr "--all e --tags são incompatíveis"
+
+#: builtin/push.c:617
+msgid "--all can't be combined with refspecs"
+msgstr "--all não pode ser combinado com especificadores de referências"
+
+#: builtin/push.c:621
+msgid "--mirror and --tags are incompatible"
+msgstr "--mirror e --tags são incompatíveis"
+
+#: builtin/push.c:623
+msgid "--mirror can't be combined with refspecs"
+msgstr "--mirror não pode ser combinado com especificadores de referências"
+
+#: builtin/push.c:626
+msgid "--all and --mirror are incompatible"
+msgstr "--all e --mirror são incompatíveis"
+
+#: builtin/push.c:630
 msgid "push options must not have new line characters"
 msgstr "as opções de publicação não podem ter carateres de nova linha"
 
-#: builtin/read-tree.c:40
+#: builtin/range-diff.c:8
+msgid "git range-diff [<options>] <old-base>..<old-tip> <new-base>..<new-tip>"
+msgstr ""
+
+#: builtin/range-diff.c:9
+#, fuzzy
+msgid "git range-diff [<options>] <old-tip>...<new-tip>"
+msgstr "git merge [<opções>] [<commit>...]"
+
+#: builtin/range-diff.c:10
+#, fuzzy
+msgid "git range-diff [<options>] <base> <old-tip> <new-tip>"
+msgstr "git mv [<opções>] <origem>... <destino>"
+
+#: builtin/range-diff.c:22
+msgid "Percentage by which creation is weighted"
+msgstr ""
+
+#: builtin/range-diff.c:24
+#, fuzzy
+msgid "use simple diff colors"
+msgstr "usar a ferramenta diff especificada"
+
+#: builtin/range-diff.c:26
+#, fuzzy
+msgid "notes"
+msgstr "notes-ref"
+
+#: builtin/range-diff.c:26
+msgid "passed to 'git log'"
+msgstr ""
+
+#: builtin/range-diff.c:50 builtin/range-diff.c:54
+#, fuzzy, c-format
+msgid "no .. in range: '%s'"
+msgstr "ramo inexistente: '%s'"
+
+#: builtin/range-diff.c:64
+msgid "single arg format must be symmetric range"
+msgstr ""
+
+#: builtin/range-diff.c:79
+#, fuzzy
+msgid "need two commit ranges"
+msgstr "editar a mensagem de commit"
+
+#: builtin/read-tree.c:41
 msgid ""
 "git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
 "[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
@@ -11597,89 +18886,739 @@ msgstr ""
 "sparse-checkout] [--index-output=<ficheiro>] (--empty | <árvore-etc1> "
 "[<árvore-etc2> [<árvore-etc3>]])"
 
-#: builtin/read-tree.c:130
+#: builtin/read-tree.c:124
 msgid "write resulting index to <file>"
 msgstr "escrever o índice resultante no <ficheiro>"
 
-#: builtin/read-tree.c:133
+#: builtin/read-tree.c:127
 msgid "only empty the index"
 msgstr "apenas esvaziar o índice"
 
-#: builtin/read-tree.c:135
+#: builtin/read-tree.c:129
 msgid "Merging"
 msgstr "A integrar"
 
-#: builtin/read-tree.c:137
+#: builtin/read-tree.c:131
 msgid "perform a merge in addition to a read"
 msgstr "realizar uma integração em adição a uma leitura"
 
-#: builtin/read-tree.c:139
+#: builtin/read-tree.c:133
 msgid "3-way merge if no file level merging required"
 msgstr ""
 "integrar com 3 pontos se a integração ao nível de ficheiros não for "
 "necessária"
 
-#: builtin/read-tree.c:141
+#: builtin/read-tree.c:135
 msgid "3-way merge in presence of adds and removes"
 msgstr "integrar com 3 ponto na presença de adições e remoções"
 
-#: builtin/read-tree.c:143
+#: builtin/read-tree.c:137
 msgid "same as -m, but discard unmerged entries"
 msgstr "o mesmo que -m, mas descartar entradas não integradas"
 
-#: builtin/read-tree.c:144
+#: builtin/read-tree.c:138
 msgid "<subdirectory>/"
 msgstr "<subdiretório>/"
 
-#: builtin/read-tree.c:145
+#: builtin/read-tree.c:139
 msgid "read the tree into the index under <subdirectory>/"
 msgstr "ler a árvore em <subdiretório>/ para o índice"
 
-#: builtin/read-tree.c:148
+#: builtin/read-tree.c:142
 msgid "update working tree with merge result"
 msgstr "atualizar a árvore de trabalho com os resultados da integração"
 
-#: builtin/read-tree.c:150
+#: builtin/read-tree.c:144
 msgid "gitignore"
 msgstr "gitignore"
 
-#: builtin/read-tree.c:151
+#: builtin/read-tree.c:145
 msgid "allow explicitly ignored files to be overwritten"
 msgstr "permitir que os ficheiros explicitamente ignorados sejam substituídos"
 
-#: builtin/read-tree.c:154
+#: builtin/read-tree.c:148
 msgid "don't check the working tree after merging"
 msgstr "não verificar a árvore de trabalho depois de integrar"
 
-#: builtin/read-tree.c:155
+#: builtin/read-tree.c:149
 msgid "don't update the index or the work tree"
 msgstr "não atualizar o índice ou a árvore de trabalho"
 
-#: builtin/read-tree.c:157
+#: builtin/read-tree.c:151
 msgid "skip applying sparse checkout filter"
 msgstr "ignorar a aplicação do filtro de extração esparsa"
 
-#: builtin/read-tree.c:159
+#: builtin/read-tree.c:153
 msgid "debug unpack-trees"
 msgstr "depurar unpack-trees"
 
-#: builtin/rebase--helper.c:7
-msgid "git rebase--helper [<options>]"
+#: builtin/read-tree.c:157
+#, fuzzy
+msgid "suppress feedback messages"
+msgstr "suprimir mensagens informativas"
+
+#: builtin/read-tree.c:188
+#, fuzzy
+msgid "You need to resolve your current index first"
+msgstr "primeiro deve resolver o índice atual"
+
+#: builtin/rebase.c:35
+msgid ""
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase> | --keep-base] "
+"[<upstream> [<branch>]]"
+msgstr ""
+
+#: builtin/rebase.c:37
+msgid ""
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
+msgstr ""
+
+#: builtin/rebase.c:39
+#, fuzzy
+msgid "git rebase --continue | --abort | --skip | --edit-todo"
+msgstr "git am [<opções>] (--continue | --skip | --abort)"
+
+#: builtin/rebase.c:187 builtin/rebase.c:211 builtin/rebase.c:238
+#, fuzzy, c-format
+msgid "unusable todo list: '%s'"
+msgstr "não é possível invocar unlink: %s"
+
+#: builtin/rebase.c:304
+#, fuzzy, c-format
+msgid "could not create temporary %s"
+msgstr "não foi possível criar ficheiro temporário"
+
+#: builtin/rebase.c:310
+#, fuzzy
+msgid "could not mark as interactive"
+msgstr "Não foi possível marcar como interativo"
+
+#: builtin/rebase.c:364
+#, fuzzy
+msgid "could not generate todo list"
+msgstr "não foi possível escrever para %s"
+
+#: builtin/rebase.c:405
+msgid "a base commit must be provided with --upstream or --onto"
+msgstr ""
+
+#: builtin/rebase.c:474
+#, fuzzy
+msgid "git rebase--interactive [<options>]"
 msgstr "git rebase--helper [<opções>]"
 
-#: builtin/rebase--helper.c:19
+#: builtin/rebase.c:487 builtin/rebase.c:1382
+msgid "keep commits which start empty"
+msgstr ""
+
+#: builtin/rebase.c:491 builtin/revert.c:128
+msgid "allow commits with empty messages"
+msgstr "permitir commits com mensagens vazias"
+
+#: builtin/rebase.c:493
+#, fuzzy
+msgid "rebase merge commits"
+msgstr "mergetag incorreta no commit '%s'"
+
+#: builtin/rebase.c:495
+msgid "keep original branch points of cousins"
+msgstr ""
+
+#: builtin/rebase.c:497
+msgid "move commits that begin with squash!/fixup!"
+msgstr ""
+
+#: builtin/rebase.c:498
+#, fuzzy
+msgid "sign commits"
+msgstr "assinar os commits com GPG"
+
+#: builtin/rebase.c:500 builtin/rebase.c:1321
+msgid "display a diffstat of what changed upstream"
+msgstr ""
+
+#: builtin/rebase.c:502
 msgid "continue rebase"
 msgstr "continuar rebase"
 
-#: builtin/rebase--helper.c:21
-msgid "abort rebase"
-msgstr "abortar rebase"
+#: builtin/rebase.c:504
+#, fuzzy
+msgid "skip commit"
+msgstr "commit"
+
+#: builtin/rebase.c:505
+#, fuzzy
+msgid "edit the todo list"
+msgstr "falha ao escrever para rev-list"
+
+#: builtin/rebase.c:507
+#, fuzzy
+msgid "show the current patch"
+msgstr "ignorar o patch atual"
+
+#: builtin/rebase.c:510
+msgid "shorten commit ids in the todo list"
+msgstr ""
+
+#: builtin/rebase.c:512
+msgid "expand commit ids in the todo list"
+msgstr ""
+
+#: builtin/rebase.c:514
+msgid "check the todo list"
+msgstr ""
+
+#: builtin/rebase.c:516
+msgid "rearrange fixup/squash lines"
+msgstr ""
+
+#: builtin/rebase.c:518
+msgid "insert exec commands in todo list"
+msgstr ""
+
+#: builtin/rebase.c:519
+msgid "onto"
+msgstr ""
+
+#: builtin/rebase.c:522
+#, fuzzy
+msgid "restrict-revision"
+msgstr "revisão"
+
+#: builtin/rebase.c:522
+#, fuzzy
+msgid "restrict revision"
+msgstr "revisão"
+
+#: builtin/rebase.c:524
+msgid "squash-onto"
+msgstr ""
+
+#: builtin/rebase.c:525
+msgid "squash onto"
+msgstr ""
+
+#: builtin/rebase.c:527
+#, fuzzy
+msgid "the upstream commit"
+msgstr "Remover a informação do ramo a montante"
+
+#: builtin/rebase.c:529
+#, fuzzy
+msgid "head-name"
+msgstr "mudar nome"
+
+#: builtin/rebase.c:529
+#, fuzzy
+msgid "head name"
+msgstr "à frente "
+
+#: builtin/rebase.c:534
+#, fuzzy
+msgid "rebase strategy"
+msgstr "estratégia de integração"
+
+#: builtin/rebase.c:535
+#, fuzzy
+msgid "strategy-opts"
+msgstr "estratégia"
+
+#: builtin/rebase.c:536
+#, fuzzy
+msgid "strategy options"
+msgstr "opções de decoração"
+
+#: builtin/rebase.c:537
+msgid "switch-to"
+msgstr ""
+
+#: builtin/rebase.c:538
+msgid "the branch or commit to checkout"
+msgstr ""
+
+#: builtin/rebase.c:539
+#, fuzzy
+msgid "onto-name"
+msgstr "nome"
+
+#: builtin/rebase.c:539
+#, fuzzy
+msgid "onto name"
+msgstr "nome do remoto"
+
+#: builtin/rebase.c:540
+#, fuzzy
+msgid "cmd"
+msgstr "comando"
+
+#: builtin/rebase.c:540
+#, fuzzy
+msgid "the command to run"
+msgstr "Nenhum comando concluído."
+
+#: builtin/rebase.c:543 builtin/rebase.c:1415
+msgid "automatically re-schedule any `exec` that fails"
+msgstr ""
+
+#: builtin/rebase.c:559
+msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
+msgstr ""
+
+#: builtin/rebase.c:575
+#, c-format
+msgid "%s requires the merge backend"
+msgstr ""
+
+#: builtin/rebase.c:618
+#, fuzzy, c-format
+msgid "could not get 'onto': '%s'"
+msgstr "não foi possível definir '%s' como '%s'"
+
+#: builtin/rebase.c:635
+#, fuzzy, c-format
+msgid "invalid orig-head: '%s'"
+msgstr "ficheiro inválido: '%s'"
+
+#: builtin/rebase.c:660
+#, c-format
+msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
+msgstr ""
+
+#: builtin/rebase.c:805 git-rebase--preserve-merges.sh:81
+#, fuzzy
+msgid ""
+"Resolve all conflicts manually, mark them as resolved with\n"
+"\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
+"You can instead skip this commit: run \"git rebase --skip\".\n"
+"To abort and get back to the state before \"git rebase\", run \"git rebase --"
+"abort\"."
+msgstr ""
+"Depois de resolver este problema, execute \"git rebase --continue\".\n"
+"Se prefere ignorar este patch, execute \"git rebase --skip\".\n"
+"Para extrair o ramo original e interromper o rebase, execute \"git rebase --"
+"abort\"."
+
+#: builtin/rebase.c:888
+#, c-format
+msgid ""
+"\n"
+"git encountered an error while preparing the patches to replay\n"
+"these revisions:\n"
+"\n"
+"    %s\n"
+"\n"
+"As a result, git cannot rebase them."
+msgstr ""
+
+#: builtin/rebase.c:1214
+#, c-format
+msgid ""
+"unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and \"ask"
+"\"."
+msgstr ""
+
+#: builtin/rebase.c:1232
+#, fuzzy, c-format
+msgid ""
+"%s\n"
+"Please specify which branch you want to rebase against.\n"
+"See git-rebase(1) for details.\n"
+"\n"
+"    git rebase '<branch>'\n"
+"\n"
+msgstr "Especifique o ramo sobre o qual pretende realizar rebase."
+
+#: builtin/rebase.c:1248
+#, fuzzy, 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 deseja definir o ramo que deve ser seguido por este ramo, pode fazê-lo "
+"com:"
+
+#: builtin/rebase.c:1278
+msgid "exec commands cannot contain newlines"
+msgstr ""
+
+#: builtin/rebase.c:1282
+msgid "empty exec command"
+msgstr ""
+
+#: builtin/rebase.c:1312
+#, fuzzy
+msgid "rebase onto given branch instead of upstream"
+msgstr "demasiados ramos para remover a definição de ramo a montante"
+
+#: builtin/rebase.c:1314
+#, fuzzy
+msgid "use the merge-base of upstream and branch as the current base"
+msgstr "o ramo a montante solicitado '%s' não existe"
+
+#: builtin/rebase.c:1316
+#, fuzzy
+msgid "allow pre-rebase hook to run"
+msgstr "Rebase recusado pelo hook pre-rebase."
+
+#: builtin/rebase.c:1318
+msgid "be quiet. implies --no-stat"
+msgstr ""
+
+#: builtin/rebase.c:1324
+#, fuzzy
+msgid "do not show diffstat of what changed upstream"
+msgstr "não apresentar um diffstat ao fim da integração"
+
+#: builtin/rebase.c:1327
+#, fuzzy
+msgid "add a Signed-off-by: line to each commit"
+msgstr "adicionar uma linha com Signed-of-by no fim da mensagem de commit"
+
+#: builtin/rebase.c:1330
+#, fuzzy
+msgid "make committer date match author date"
+msgstr "agrupar por committer em vez de autor"
+
+#: builtin/rebase.c:1332
+msgid "ignore author date and use current date"
+msgstr ""
+
+#: builtin/rebase.c:1334
+#, fuzzy
+msgid "synonym of --reset-author-date"
+msgstr "sinónimo de --files-with-matches"
+
+#: builtin/rebase.c:1336 builtin/rebase.c:1340
+#, fuzzy
+msgid "passed to 'git apply'"
+msgstr "transmitir ao git-apply"
+
+#: builtin/rebase.c:1338
+#, fuzzy
+msgid "ignore changes in whitespace"
+msgstr "ignorar alterações de espaço em branco ao procurar contexto"
+
+#: builtin/rebase.c:1342 builtin/rebase.c:1345
+msgid "cherry-pick all commits, even if unchanged"
+msgstr ""
+
+#: builtin/rebase.c:1347
+#, fuzzy
+msgid "continue"
+msgstr "continuar rebase"
+
+#: builtin/rebase.c:1350
+#, fuzzy
+msgid "skip current patch and continue"
+msgstr "ignorar o patch atual"
+
+#: builtin/rebase.c:1352
+#, fuzzy
+msgid "abort and check out the original branch"
+msgstr "  (use \"git rebase --abort\" para restaurar o ramo original)"
+
+#: builtin/rebase.c:1355
+msgid "abort but keep HEAD where it is"
+msgstr ""
+
+#: builtin/rebase.c:1356
+#, fuzzy
+msgid "edit the todo list during an interactive rebase"
+msgstr "A ação --edit-todo só pode ser usada durante um rebase interativo."
+
+#: builtin/rebase.c:1359
+msgid "show the patch file being applied or merged"
+msgstr ""
+
+#: builtin/rebase.c:1362
+msgid "use apply strategies to rebase"
+msgstr ""
+
+#: builtin/rebase.c:1366
+#, fuzzy
+msgid "use merging strategies to rebase"
+msgstr "estratégia de integração a usar"
+
+#: builtin/rebase.c:1370
+msgid "let the user edit the list of commits to rebase"
+msgstr ""
+
+#: builtin/rebase.c:1374
+msgid "(DEPRECATED) try to recreate merges instead of ignoring them"
+msgstr ""
+
+#: builtin/rebase.c:1379
+msgid "how to handle commits that become empty"
+msgstr ""
+
+#: builtin/rebase.c:1386
+msgid "move commits that begin with squash!/fixup! under -i"
+msgstr ""
+
+#: builtin/rebase.c:1393
+msgid "add exec lines after each commit of the editable list"
+msgstr ""
+
+#: builtin/rebase.c:1397
+#, fuzzy
+msgid "allow rebasing commits with empty messages"
+msgstr "permitir commits com mensagens vazias"
+
+#: builtin/rebase.c:1401
+msgid "try to rebase merges instead of skipping them"
+msgstr ""
+
+#: builtin/rebase.c:1404
+#, fuzzy
+msgid "use 'merge-base --fork-point' to refine upstream"
+msgstr "git merge-base --fork-point <referência> [<commit>]"
+
+#: builtin/rebase.c:1406
+#, fuzzy
+msgid "use the given merge strategy"
+msgstr "opção de estratégia de integração"
+
+#: builtin/rebase.c:1408 builtin/revert.c:115
+msgid "option"
+msgstr "opção"
+
+#: builtin/rebase.c:1409
+msgid "pass the argument through to the merge strategy"
+msgstr ""
+
+#: builtin/rebase.c:1412
+msgid "rebase all reachable commits up to the root(s)"
+msgstr ""
+
+#: builtin/rebase.c:1417
+msgid "apply all changes, even those already present upstream"
+msgstr ""
+
+#: builtin/rebase.c:1434
+msgid ""
+"the rebase.useBuiltin support has been removed!\n"
+"See its entry in 'git help config' for details."
+msgstr ""
+
+#: builtin/rebase.c:1440
+#, fuzzy
+msgid "It looks like 'git am' is in progress. Cannot rebase."
+msgstr "Parece que o git-am está em curso. Não é possível efetuar rebase."
+
+#: builtin/rebase.c:1481
+msgid ""
+"git rebase --preserve-merges is deprecated. Use --rebase-merges instead."
+msgstr ""
+
+#: builtin/rebase.c:1486
+#, fuzzy
+msgid "cannot combine '--keep-base' with '--onto'"
+msgstr "Não é possível combinar --squash e --no-ff."
+
+#: builtin/rebase.c:1488
+#, fuzzy
+msgid "cannot combine '--keep-base' with '--root'"
+msgstr "Não é possível combinar --squash e --no-ff."
+
+#: builtin/rebase.c:1492
+#, fuzzy
+msgid "cannot combine '--root' with '--fork-point'"
+msgstr "Não é possível combinar --squash e --no-ff."
+
+#: builtin/rebase.c:1495
+msgid "No rebase in progress?"
+msgstr "Rebase não está em curso?"
+
+#: builtin/rebase.c:1499
+msgid "The --edit-todo action can only be used during interactive rebase."
+msgstr "A ação --edit-todo só pode ser usada durante um rebase interativo."
+
+#: builtin/rebase.c:1522
+msgid "Cannot read HEAD"
+msgstr "Não é possível ler HEAD"
+
+#: builtin/rebase.c:1534
+msgid ""
+"You must edit all merge conflicts and then\n"
+"mark them as resolved using git add"
+msgstr ""
+"Deve editar todos os conflitos da integração\n"
+"e marcá-los como resolvidos usando git add"
+
+#: builtin/rebase.c:1553
+#, fuzzy
+msgid "could not discard worktree changes"
+msgstr "Não é possível remover as alterações da árvore de trabalho"
+
+#: builtin/rebase.c:1572
+#, fuzzy, c-format
+msgid "could not move back to %s"
+msgstr "Não foi possível voltar para $head_name"
+
+#: builtin/rebase.c:1618
+#, fuzzy, c-format
+msgid ""
+"It seems that there is already a %s directory, and\n"
+"I wonder if you are in the middle of another rebase.  If that is the\n"
+"case, please try\n"
+"\t%s\n"
+"If that is not the case, please\n"
+"\t%s\n"
+"and run me again.  I am stopping in case you still have something\n"
+"valuable there.\n"
+msgstr ""
+"Parece que já existe um diretório $state_dir_base e\n"
+"é possível que outro processo de rebase já esteja em curso.\n"
+"Se for o caso, tente\n"
+"\t$cmd_live_rebase\n"
+"Se não for o caso,\n"
+"\t$cmd_clear_stale_rebase\n"
+"e execute o comando de novo. A execução foi interrompida no caso de\n"
+"ainda ter algo importante nesse sítio."
+
+#: builtin/rebase.c:1646
+#, fuzzy
+msgid "switch `C' expects a numerical value"
+msgstr "a opção '%c' espera um valor numérico"
+
+#: builtin/rebase.c:1688
+#, fuzzy, c-format
+msgid "Unknown mode: %s"
+msgstr "Mode de --patch desconhecido: %s"
+
+#: builtin/rebase.c:1727
+msgid "--strategy requires --merge or --interactive"
+msgstr ""
+
+#: builtin/rebase.c:1757
+msgid "cannot combine apply options with merge options"
+msgstr ""
+
+#: builtin/rebase.c:1770
+#, fuzzy, c-format
+msgid "Unknown rebase backend: %s"
+msgstr "Subcomando desconhecido: %s"
+
+#: builtin/rebase.c:1795
+msgid "--reschedule-failed-exec requires --exec or --interactive"
+msgstr ""
+
+#: builtin/rebase.c:1815
+msgid "cannot combine '--preserve-merges' with '--rebase-merges'"
+msgstr ""
+
+#: builtin/rebase.c:1819
+msgid ""
+"error: cannot combine '--preserve-merges' with '--reschedule-failed-exec'"
+msgstr ""
+
+#: builtin/rebase.c:1843
+#, fuzzy, c-format
+msgid "invalid upstream '%s'"
+msgstr "caminho inválido '%s'"
+
+#: builtin/rebase.c:1849
+#, fuzzy
+msgid "Could not create new root commit"
+msgstr "não foi possível analisar o commit recém-criado"
+
+#: builtin/rebase.c:1875
+#, c-format
+msgid "'%s': need exactly one merge base with branch"
+msgstr ""
+
+#: builtin/rebase.c:1878
+#, fuzzy, c-format
+msgid "'%s': need exactly one merge base"
+msgstr "É necessário exatamente um intervalo."
+
+#: builtin/rebase.c:1886
+#, fuzzy, c-format
+msgid "Does not point to a valid commit '%s'"
+msgstr "Não aponta para um commit válido: $onto_name"
+
+#: builtin/rebase.c:1912
+#, fuzzy, c-format
+msgid "fatal: no such branch/commit '%s'"
+msgstr "o ramo '%s' não existe"
+
+#: builtin/rebase.c:1920 builtin/submodule--helper.c:40
+#: builtin/submodule--helper.c:2414
+#, c-format
+msgid "No such ref: %s"
+msgstr "Referência inexistente: %s"
+
+#: builtin/rebase.c:1931
+#, fuzzy
+msgid "Could not resolve HEAD to a revision"
+msgstr "não foi possível resolver o commit HEAD\n"
+
+#: builtin/rebase.c:1952
+msgid "Please commit or stash them."
+msgstr "Submeta ou esconda-as."
+
+#: builtin/rebase.c:1988
+#, fuzzy, c-format
+msgid "could not switch to %s"
+msgstr "não foi possível escrever para %s"
+
+#: builtin/rebase.c:1999
+#, fuzzy
+msgid "HEAD is up to date."
+msgstr "HEAD está agora em"
+
+#: builtin/rebase.c:2001
+#, fuzzy, c-format
+msgid "Current branch %s is up to date.\n"
+msgstr "O ramo atual $branch_name está atualizado."
+
+#: builtin/rebase.c:2009
+#, fuzzy
+msgid "HEAD is up to date, rebase forced."
+msgstr "O ramo atual $branch_name está atualizado, rebase forçado."
+
+#: builtin/rebase.c:2011
+#, fuzzy, c-format
+msgid "Current branch %s is up to date, rebase forced.\n"
+msgstr "O ramo atual $branch_name está atualizado, rebase forçado."
+
+#: builtin/rebase.c:2019
+msgid "The pre-rebase hook refused to rebase."
+msgstr "Rebase recusado pelo hook pre-rebase."
+
+#: builtin/rebase.c:2026
+#, fuzzy, c-format
+msgid "Changes to %s:\n"
+msgstr "A publicar em %s\n"
+
+#: builtin/rebase.c:2029
+#, fuzzy, c-format
+msgid "Changes from %s to %s:\n"
+msgstr "Alterações de $mb para $onto:"
+
+#: builtin/rebase.c:2054
+#, fuzzy, c-format
+msgid "First, rewinding head to replay your work on top of it...\n"
+msgstr ""
+"Primeiro, a recuar a cabeça para replicar as suas alterações no topo dela..."
+
+#: builtin/rebase.c:2063
+#, fuzzy
+msgid "Could not detach HEAD"
+msgstr "não foi possível destacar HEAD"
+
+#: builtin/rebase.c:2072
+#, fuzzy, c-format
+msgid "Fast-forwarded %s to %s.\n"
+msgstr "Avanço-rápido para $sha1"
 
-#: builtin/receive-pack.c:27
+#: builtin/receive-pack.c:34
 msgid "git receive-pack <git-dir>"
 msgstr "git receive-pack <git-dir>"
 
-#: builtin/receive-pack.c:796
+#: builtin/receive-pack.c:1224
 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"
@@ -11709,7 +19648,7 @@ msgstr ""
 "Para suprimir esta mensagem e manter o comportamento predefinido, defina a "
 "variável de configuração 'receive.denyCurrentBranch' como 'refuse'."
 
-#: builtin/receive-pack.c:816
+#: builtin/receive-pack.c:1244
 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"
@@ -11729,29 +19668,75 @@ msgstr ""
 "\n"
 "Para suprimir esta mensagem, pode definí-la como 'refuse'."
 
-#: builtin/receive-pack.c:1889
+#: builtin/receive-pack.c:2422
 msgid "quiet"
 msgstr "silencioso"
 
-#: builtin/receive-pack.c:1903
+#: builtin/receive-pack.c:2436
 msgid "You must specify a directory."
 msgstr "Deve especificar um diretório."
 
-#: builtin/reflog.c:423
-#, c-format
-msgid "'%s' for '%s' is not a valid timestamp"
-msgstr "'%s' em '%s' não é um carimbo de data/hora válido"
+#: builtin/reflog.c:17
+msgid ""
+"git reflog expire [--expire=<time>] [--expire-unreachable=<time>] [--"
+"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
+"<refs>..."
+msgstr ""
+
+#: builtin/reflog.c:22
+msgid ""
+"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
+"<refs>..."
+msgstr ""
 
-#: builtin/reflog.c:540 builtin/reflog.c:545
+#: builtin/reflog.c:25
+msgid "git reflog exists <ref>"
+msgstr ""
+
+#: builtin/reflog.c:568 builtin/reflog.c:573
 #, c-format
 msgid "'%s' is not a valid timestamp"
 msgstr "'%s' não é um carimbo de data/hora válido"
 
-#: builtin/remote.c:12
+#: builtin/reflog.c:606
+#, fuzzy, c-format
+msgid "Marking reachable objects..."
+msgstr "manter objetos inalcançáveis"
+
+#: builtin/reflog.c:644
+#, c-format
+msgid "%s points nowhere!"
+msgstr ""
+
+#: builtin/reflog.c:696
+#, fuzzy
+msgid "no reflog specified to delete"
+msgstr "nenhum remoto especificado"
+
+#: builtin/reflog.c:705
+#, fuzzy, c-format
+msgid "not a reflog: %s"
+msgstr "Referência inválida: %s"
+
+#: builtin/reflog.c:710
+#, fuzzy, c-format
+msgid "no reflog for '%s'"
+msgstr "Não é possível efetuar reflog de '%s': %s\n"
+
+#: builtin/reflog.c:756
+#, fuzzy, c-format
+msgid "invalid ref format: %s"
+msgstr "formato de data inválido: %s"
+
+#: builtin/reflog.c:765
+msgid "git reflog [ show | expire | delete | exists ]"
+msgstr ""
+
+#: builtin/remote.c:17
 msgid "git remote [-v | --verbose]"
 msgstr "git remote [-v | --verbose]"
 
-#: builtin/remote.c:13
+#: builtin/remote.c:18
 msgid ""
 "git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <name> <url>"
@@ -11759,82 +19744,82 @@ msgstr ""
 "git remote add [-t <ramo>] [-m <mestre>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <nome> <url>"
 
-#: builtin/remote.c:14 builtin/remote.c:34
+#: builtin/remote.c:19 builtin/remote.c:39
 msgid "git remote rename <old> <new>"
 msgstr "git remote rename <antigo> <novo>"
 
-#: builtin/remote.c:15 builtin/remote.c:39
+#: builtin/remote.c:20 builtin/remote.c:44
 msgid "git remote remove <name>"
 msgstr "git remote remove <nome>"
 
-#: builtin/remote.c:16 builtin/remote.c:44
+#: builtin/remote.c:21 builtin/remote.c:49
 msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
 msgstr "git remote set-head <nome> (-a | --auto | -d | --delete | <ramo>)"
 
-#: builtin/remote.c:17
+#: builtin/remote.c:22
 msgid "git remote [-v | --verbose] show [-n] <name>"
 msgstr "git remote [-v | --verbose] show [-n] <nome>"
 
-#: builtin/remote.c:18
+#: builtin/remote.c:23
 msgid "git remote prune [-n | --dry-run] <name>"
 msgstr "git remote prune [-n | --dry-run] <nome>"
 
-#: builtin/remote.c:19
+#: builtin/remote.c:24
 msgid ""
 "git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
 msgstr ""
 "git remote [-v | --verbose] update [-p | --prune] [(<grupo> | <remoto>)...]"
 
-#: builtin/remote.c:20
+#: builtin/remote.c:25
 msgid "git remote set-branches [--add] <name> <branch>..."
 msgstr "git remote set-branches [--add] <nome> <ramo>..."
 
-#: builtin/remote.c:21 builtin/remote.c:70
+#: builtin/remote.c:26 builtin/remote.c:75
 msgid "git remote get-url [--push] [--all] <name>"
 msgstr "git remote get-url [--push] [--all] <nome>"
 
-#: builtin/remote.c:22 builtin/remote.c:75
+#: builtin/remote.c:27 builtin/remote.c:80
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
 msgstr "git remote set-url [--push] <nome> <novo-url> [<url-antigo>]"
 
-#: builtin/remote.c:23 builtin/remote.c:76
+#: builtin/remote.c:28 builtin/remote.c:81
 msgid "git remote set-url --add <name> <newurl>"
 msgstr "git remote set-url --add <nome> <novo-url>"
 
-#: builtin/remote.c:24 builtin/remote.c:77
+#: builtin/remote.c:29 builtin/remote.c:82
 msgid "git remote set-url --delete <name> <url>"
 msgstr "git remote set-url --delete <nome> <url>"
 
-#: builtin/remote.c:29
+#: builtin/remote.c:34
 msgid "git remote add [<options>] <name> <url>"
 msgstr "git remote add [<opções>] <nome> <url>"
 
-#: builtin/remote.c:49
+#: builtin/remote.c:54
 msgid "git remote set-branches <name> <branch>..."
 msgstr "git remote set-branches <nome> <ramo>..."
 
-#: builtin/remote.c:50
+#: builtin/remote.c:55
 msgid "git remote set-branches --add <name> <branch>..."
 msgstr "git remote set-branches --add <nome> <ramo>..."
 
-#: builtin/remote.c:55
+#: builtin/remote.c:60
 msgid "git remote show [<options>] <name>"
 msgstr "git remote show [<opções>] <nome>"
 
-#: builtin/remote.c:60
+#: builtin/remote.c:65
 msgid "git remote prune [<options>] <name>"
 msgstr "git remote prune [<opções>] <nome>"
 
-#: builtin/remote.c:65
+#: builtin/remote.c:70
 msgid "git remote update [<options>] [<group> | <remote>]..."
 msgstr "git remote update [<opções>] [<grupo> | <remoto>]..."
 
-#: builtin/remote.c:94
+#: builtin/remote.c:99
 #, c-format
 msgid "Updating %s"
 msgstr "A atualizar %s"
 
-#: builtin/remote.c:126
+#: builtin/remote.c:131
 msgid ""
 "--mirror is dangerous and deprecated; please\n"
 "\t use --mirror=fetch or --mirror=push instead"
@@ -11842,88 +19827,97 @@ msgstr ""
 "--mirror é perigoso e obsoleto;\n"
 "\t use --mirror=fetch ou --mirror=push"
 
-#: builtin/remote.c:143
+#: builtin/remote.c:148
 #, c-format
 msgid "unknown mirror argument: %s"
 msgstr "argumento de mirror desconhecido: %s"
 
-#: builtin/remote.c:159
+#: builtin/remote.c:164
 msgid "fetch the remote branches"
 msgstr "obter os ramos remotos"
 
-#: builtin/remote.c:161
+#: builtin/remote.c:166
 msgid "import all tags and associated objects when fetching"
 msgstr "importar todas as tags e objetos associados ao obter"
 
-#: builtin/remote.c:164
+#: builtin/remote.c:169
 msgid "or do not fetch any tag at all (--no-tags)"
 msgstr "ou não obter nenhuma tag (--no-tags)"
 
-#: builtin/remote.c:166
+#: builtin/remote.c:171
 msgid "branch(es) to track"
 msgstr "ramos a seguir"
 
-#: builtin/remote.c:167
+#: builtin/remote.c:172
 msgid "master branch"
 msgstr "ramo mestre"
 
-#: builtin/remote.c:168
-msgid "push|fetch"
-msgstr "push|fetch"
-
-#: builtin/remote.c:169
+#: builtin/remote.c:174
 msgid "set up remote as a mirror to push to or fetch from"
 msgstr "configurar o remoto como um espelho para publicar ou obter"
 
-#: builtin/remote.c:181
+#: builtin/remote.c:186
 msgid "specifying a master branch makes no sense with --mirror"
 msgstr "especificar um ramo mestre não faz sentido com --mirror"
 
-#: builtin/remote.c:183
+#: builtin/remote.c:188
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr "especificar ramos para seguir só faz sentido com fetch mirrors"
 
-#: builtin/remote.c:190 builtin/remote.c:629
+#: builtin/remote.c:195 builtin/remote.c:697
 #, c-format
 msgid "remote %s already exists."
 msgstr "o remoto %s já existe."
 
-#: builtin/remote.c:194 builtin/remote.c:633
+#: builtin/remote.c:199 builtin/remote.c:701
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' não é um nome de remoto válido"
 
-#: builtin/remote.c:234
+#: builtin/remote.c:239
 #, c-format
 msgid "Could not setup master '%s'"
 msgstr "Não foi possível configuração o ramo mestre '%s'"
 
-#: builtin/remote.c:336
+#: builtin/remote.c:354
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr ""
 "Não foi possível obter o mapa de fetch do especificador de referência %s"
 
-#: builtin/remote.c:437 builtin/remote.c:445
+#: builtin/remote.c:453 builtin/remote.c:461
 msgid "(matching)"
 msgstr "(correspondente)"
 
-#: builtin/remote.c:449
+#: builtin/remote.c:465
 msgid "(delete)"
 msgstr "(eliminado)"
 
-#: builtin/remote.c:622 builtin/remote.c:757 builtin/remote.c:856
+#: builtin/remote.c:654
+#, fuzzy, c-format
+msgid "could not set '%s'"
+msgstr "não foi possível reiniciar '%s'"
+
+#: builtin/remote.c:659
 #, c-format
-msgid "No such remote: %s"
-msgstr "Remoto inexistente: %s"
+msgid ""
+"The %s configuration remote.pushDefault in:\n"
+"\t%s:%d\n"
+"now names the non-existent remote '%s'"
+msgstr ""
 
-#: builtin/remote.c:639
+#: builtin/remote.c:690 builtin/remote.c:833 builtin/remote.c:941
+#, fuzzy, c-format
+msgid "No such remote: '%s'"
+msgstr "Remoto inexistente '%s'"
+
+#: builtin/remote.c:707
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr ""
 "Não foi possível mudar o nome da secção de configuração de '%s' para '%s'"
 
-#: builtin/remote.c:659
+#: builtin/remote.c:727
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -11935,17 +19929,17 @@ msgstr ""
 "\t%s\n"
 "\tAtualize a configuração manualmente se necessário."
 
-#: builtin/remote.c:695
+#: builtin/remote.c:767
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "falha ao eliminar '%s'"
 
-#: builtin/remote.c:729
+#: builtin/remote.c:801
 #, c-format
 msgid "creating '%s' failed"
 msgstr "falha ao criar '%s'"
 
-#: builtin/remote.c:794
+#: builtin/remote.c:877
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -11959,306 +19953,304 @@ msgstr[1] ""
 "Nota: alguns ramos fora da hierarquia refs/remotes/ não foram removidos;\n"
 "para os remover, use:"
 
-#: builtin/remote.c:808
+#: builtin/remote.c:891
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr "Não foi possível remover a secção de configuração '%s'"
 
-#: builtin/remote.c:909
+#: builtin/remote.c:994
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr " novo (os próxima objetos obtidos serão guardados em remotes/%s)"
 
-#: builtin/remote.c:912
+#: builtin/remote.c:997
 msgid " tracked"
 msgstr " seguido"
 
-#: builtin/remote.c:914
+#: builtin/remote.c:999
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " obsoleto (use 'git remote prune' para remover)"
 
-#: builtin/remote.c:916
+#: builtin/remote.c:1001
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:957
+#: builtin/remote.c:1042
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr ""
 "branch.%s.merge inválido; não é possível rebasear sobre mais do que um ramo"
 
-#: builtin/remote.c:965
+#: builtin/remote.c:1051
 #, c-format
 msgid "rebases interactively onto remote %s"
 msgstr "rebaseia interativamente sobre %s do remoto"
 
-#: builtin/remote.c:966
+#: builtin/remote.c:1053
+#, fuzzy, c-format
+msgid "rebases interactively (with merges) onto remote %s"
+msgstr "rebaseia interativamente sobre %s do remoto"
+
+#: builtin/remote.c:1056
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "rebaseia sobre %s do remoto"
 
-#: builtin/remote.c:969
+#: builtin/remote.c:1060
 #, c-format
 msgid " merges with remote %s"
 msgstr " integra com %s do remoto"
 
-#: builtin/remote.c:972
+#: builtin/remote.c:1063
 #, c-format
 msgid "merges with remote %s"
 msgstr "integra com %s do remoto"
 
-#: builtin/remote.c:975
+#: builtin/remote.c:1066
 #, c-format
 msgid "%-*s    and with remote %s\n"
 msgstr "%-*s    e com o %s do remoto\n"
 
-#: builtin/remote.c:1018
+#: builtin/remote.c:1109
 msgid "create"
 msgstr "criado"
 
-#: builtin/remote.c:1021
+#: builtin/remote.c:1112
 msgid "delete"
 msgstr "eliminado"
 
-#: builtin/remote.c:1025
+#: builtin/remote.c:1116
 msgid "up to date"
 msgstr "atualizado"
 
-#: builtin/remote.c:1028
+#: builtin/remote.c:1119
 msgid "fast-forwardable"
 msgstr "pode ser avançado rapidamente"
 
-#: builtin/remote.c:1031
+#: builtin/remote.c:1122
 msgid "local out of date"
 msgstr "local desatualizado"
 
-#: builtin/remote.c:1038
+#: builtin/remote.c:1129
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s força em %-*s (%s)"
 
-#: builtin/remote.c:1041
+#: builtin/remote.c:1132
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s publica em %-*s (%s)"
 
-#: builtin/remote.c:1045
+#: builtin/remote.c:1136
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s força em %s"
 
-#: builtin/remote.c:1048
+#: builtin/remote.c:1139
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s publica em %s"
 
-#: builtin/remote.c:1116
+#: builtin/remote.c:1207
 msgid "do not query remotes"
 msgstr "não consultar remotos"
 
-#: builtin/remote.c:1143
+#: builtin/remote.c:1234
 #, c-format
 msgid "* remote %s"
 msgstr "* remoto %s"
 
-#: builtin/remote.c:1144
+#: builtin/remote.c:1235
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  Obter    do URL: %s"
 
-#: builtin/remote.c:1145 builtin/remote.c:1158 builtin/remote.c:1297
+#: builtin/remote.c:1236 builtin/remote.c:1252 builtin/remote.c:1391
 msgid "(no URL)"
 msgstr "(nenhum URL)"
 
-#. TRANSLATORS: the colon ':' should align with
-#. the one in "  Fetch URL: %s" translation
-#: builtin/remote.c:1156 builtin/remote.c:1158
+#. TRANSLATORS: the colon ':' should align
+#. with the one in " Fetch URL: %s"
+#. translation.
+#.
+#: builtin/remote.c:1250 builtin/remote.c:1252
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  Publicar no URL: %s"
 
-#: builtin/remote.c:1160 builtin/remote.c:1162 builtin/remote.c:1164
+#: builtin/remote.c:1254 builtin/remote.c:1256 builtin/remote.c:1258
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Ramo HEAD: %s"
 
-#: builtin/remote.c:1160
+#: builtin/remote.c:1254
 msgid "(not queried)"
 msgstr "(não consultado)"
 
-#: builtin/remote.c:1162
+#: builtin/remote.c:1256
 msgid "(unknown)"
 msgstr "(desconhecido)"
 
-#: builtin/remote.c:1166
+#: builtin/remote.c:1260
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
 msgstr "  Ramo HEAD (o remoto HEAD é ambíguo, pode ser um dos seguintes):\n"
 
-#: builtin/remote.c:1178
+#: builtin/remote.c:1272
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Ramo remoto:%s"
 msgstr[1] "  Ramos remotos:%s"
 
-#: builtin/remote.c:1181 builtin/remote.c:1207
+#: builtin/remote.c:1275 builtin/remote.c:1301
 msgid " (status not queried)"
 msgstr " (estado não consultado)"
 
-#: builtin/remote.c:1190
+#: builtin/remote.c:1284
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  Ramo local configurado para 'git pull':"
 msgstr[1] "  Ramos locais configurados para 'git pull':"
 
-#: builtin/remote.c:1198
+#: builtin/remote.c:1292
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  Referências locais serão refletidas (mirror) por 'git push'"
 
-#: builtin/remote.c:1204
+#: builtin/remote.c:1298
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  Referência local configurada para 'git push'%s:"
 msgstr[1] "  Referências locais configuradas para 'git push'%s:"
 
-#: builtin/remote.c:1225
+#: builtin/remote.c:1319
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "definir refs/remotes/<nome>/HEAD de acordo com o remoto"
 
-#: builtin/remote.c:1227
+#: builtin/remote.c:1321
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "eliminar refs/remotes/<nome>/HEAD"
 
-#: builtin/remote.c:1242
+#: builtin/remote.c:1336
 msgid "Cannot determine remote HEAD"
 msgstr "Não é possível determinar o remoto HEAD"
 
-#: builtin/remote.c:1244
+#: builtin/remote.c:1338
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr "Múltiplos ramos HEAD remotos. Escolha um explicitamente com:"
 
-#: builtin/remote.c:1254
+#: builtin/remote.c:1348
 #, c-format
 msgid "Could not delete %s"
 msgstr "Não foi possível eliminar %s"
 
-#: builtin/remote.c:1262
+#: builtin/remote.c:1356
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Referência inválida: %s"
 
-#: builtin/remote.c:1264
+#: builtin/remote.c:1358
 #, c-format
 msgid "Could not setup %s"
 msgstr "Não foi possível configurar %s"
 
-#: builtin/remote.c:1282
+#: builtin/remote.c:1376
 #, c-format
 msgid " %s will become dangling!"
 msgstr " %s ficará suspenso!"
 
-#: builtin/remote.c:1283
+#: builtin/remote.c:1377
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s ficou suspenso!"
 
-#: builtin/remote.c:1293
+#: builtin/remote.c:1387
 #, c-format
 msgid "Pruning %s"
 msgstr "A eliminar %s"
 
-#: builtin/remote.c:1294
+#: builtin/remote.c:1388
 #, c-format
 msgid "URL: %s"
 msgstr "URL: %s"
 
-#: builtin/remote.c:1310
+#: builtin/remote.c:1404
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [eliminaria] %s"
 
-#: builtin/remote.c:1313
+#: builtin/remote.c:1407
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [eliminado] %s"
 
-#: builtin/remote.c:1358
+#: builtin/remote.c:1452
 msgid "prune remotes after fetching"
 msgstr "eliminar remotos depois de obter"
 
-#: builtin/remote.c:1421 builtin/remote.c:1475 builtin/remote.c:1543
+#: builtin/remote.c:1515 builtin/remote.c:1569 builtin/remote.c:1637
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Remoto inexistente '%s'"
 
-#: builtin/remote.c:1437
+#: builtin/remote.c:1531
 msgid "add branch"
 msgstr "adicionar ramo"
 
-#: builtin/remote.c:1444
+#: builtin/remote.c:1538
 msgid "no remote specified"
 msgstr "nenhum remoto especificado"
 
-#: builtin/remote.c:1461
+#: builtin/remote.c:1555
 msgid "query push URLs rather than fetch URLs"
 msgstr "consultar URLs de publicação em vez de URLs utilizados para obter"
 
-#: builtin/remote.c:1463
+#: builtin/remote.c:1557
 msgid "return all URLs"
 msgstr "retornar todos os URLs"
 
-#: builtin/remote.c:1491
+#: builtin/remote.c:1585
 #, c-format
 msgid "no URLs configured for remote '%s'"
 msgstr "o remoto '%s' não tem nenhum URL configurado"
 
-#: builtin/remote.c:1517
+#: builtin/remote.c:1611
 msgid "manipulate push URLs"
 msgstr "manipular URLs de publicação"
 
-#: builtin/remote.c:1519
+#: builtin/remote.c:1613
 msgid "add URL"
 msgstr "adicionar URL"
 
-#: builtin/remote.c:1521
+#: builtin/remote.c:1615
 msgid "delete URLs"
 msgstr "eliminar URLs"
 
-#: builtin/remote.c:1528
+#: builtin/remote.c:1622
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete não faz sentido"
 
-#: builtin/remote.c:1569
+#: builtin/remote.c:1661
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Padrão de URL antigo inválido: %s"
 
-#: builtin/remote.c:1577
+#: builtin/remote.c:1669
 #, c-format
 msgid "No such URL found: %s"
 msgstr "URL não encontrado: %s"
 
-#: builtin/remote.c:1579
+#: builtin/remote.c:1671
 msgid "Will not delete all non-push URLs"
 msgstr "Não é possível remover todos os URLs de não publicação"
 
-#: builtin/remote.c:1593
-msgid "be verbose; must be placed before a subcommand"
-msgstr "ser verboso; deve ser colocado antes de um subcomando"
-
-#: builtin/remote.c:1624
-#, c-format
-msgid "Unknown subcommand: %s"
-msgstr "Subcomando desconhecido: %s"
-
-#: builtin/repack.c:17
+#: builtin/repack.c:25
 msgid "git repack [<options>]"
 msgstr "git repack [<opções>]"
 
-#: builtin/repack.c:22
+#: builtin/repack.c:30
 msgid ""
 "Incremental repacks are incompatible with bitmap indexes.  Use\n"
 "--no-write-bitmap-index or disable the pack.writebitmaps configuration."
@@ -12266,125 +20258,273 @@ msgstr ""
 "Repacks incrementais são incompatíveis com índices bitmap. Use\n"
 "--no-write-bitmap-índex ou desative a configuração pack.writebitmaps."
 
-#: builtin/repack.c:166
+#: builtin/repack.c:197
+msgid "could not start pack-objects to repack promisor objects"
+msgstr ""
+
+#: builtin/repack.c:236 builtin/repack.c:421
+msgid "repack: Expecting full hex object ID lines only from pack-objects."
+msgstr ""
+
+#: builtin/repack.c:260
+msgid "could not finish pack-objects to repack promisor objects"
+msgstr ""
+
+#: builtin/repack.c:297
 msgid "pack everything in a single pack"
 msgstr "compactar tudo num único pacote"
 
-#: builtin/repack.c:168
+#: builtin/repack.c:299
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "o mesmo que -a, e soltar objetos inalcançáveis"
 
-#: builtin/repack.c:171
+#: builtin/repack.c:302
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "remover pacotes redundantes e executar git-prune-packed"
 
-#: builtin/repack.c:173
+#: builtin/repack.c:304
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "passar --no-reuse-delta ao git-pack-objects"
 
-#: builtin/repack.c:175
+#: builtin/repack.c:306
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "passar --no-reuse-object ao git-pack-objects"
 
-#: builtin/repack.c:177
+#: builtin/repack.c:308
 msgid "do not run git-update-server-info"
 msgstr "não executar git-update-server-info"
 
-#: builtin/repack.c:180
+#: builtin/repack.c:311
 msgid "pass --local to git-pack-objects"
 msgstr "passar --local ao git-pack-objects"
 
-#: builtin/repack.c:182
+#: builtin/repack.c:313
 msgid "write bitmap index"
 msgstr "escrever índice de mapa de bits"
 
-#: builtin/repack.c:183
+#: builtin/repack.c:315
+#, fuzzy
+msgid "pass --delta-islands to git-pack-objects"
+msgstr "passar --local ao git-pack-objects"
+
+#: builtin/repack.c:316
 msgid "approxidate"
 msgstr "aproximar"
 
-#: builtin/repack.c:184
+#: builtin/repack.c:317
 msgid "with -A, do not loosen objects older than this"
 msgstr "com -A, não soltar mais objetos além destes"
 
-#: builtin/repack.c:186
+#: builtin/repack.c:319
 msgid "with -a, repack unreachable objects"
 msgstr "com -a, reempacotar objetos inalcançáveis"
 
-#: builtin/repack.c:188
+#: builtin/repack.c:321
 msgid "size of the window used for delta compression"
 msgstr "dimensão da janela usada em compressão de deltas"
 
-#: builtin/repack.c:189 builtin/repack.c:193
+#: builtin/repack.c:322 builtin/repack.c:328
 msgid "bytes"
 msgstr "bytes"
 
-#: builtin/repack.c:190
+#: builtin/repack.c:323
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr ""
 "o mesmo que o anterior, mas limitar a memória usada em vez do número de "
 "entradas"
 
-#: builtin/repack.c:192
+#: builtin/repack.c:325
 msgid "limits the maximum delta depth"
 msgstr "limitar a profundidade máxima de delta"
 
-#: builtin/repack.c:194
+#: builtin/repack.c:327
+#, fuzzy
+msgid "limits the maximum number of threads"
+msgstr "limitar a profundidade máxima de delta"
+
+#: builtin/repack.c:329
 msgid "maximum size of each packfile"
 msgstr "tamanho máximo de cada ficheiro de pacote"
 
-#: builtin/repack.c:196
+#: builtin/repack.c:331
 msgid "repack objects in packs marked with .keep"
 msgstr "reempacotar objetos em pacotes marcados com .keep"
 
-#: builtin/repack.c:206
+#: builtin/repack.c:333
+#, fuzzy
+msgid "do not repack this pack"
+msgstr "criar pacotes finos"
+
+#: builtin/repack.c:343
 msgid "cannot delete packs in a precious-objects repo"
 msgstr "não é possível eliminar pacotes num repositório de objetos-preciosos"
 
-#: builtin/repack.c:210
+#: builtin/repack.c:347
 msgid "--keep-unreachable and -A are incompatible"
 msgstr "--keep-unreachable e -A são incompatíveis"
 
-#: builtin/repack.c:400 builtin/worktree.c:115
+#: builtin/repack.c:430
+msgid "Nothing new to pack."
+msgstr ""
+
+#: builtin/repack.c:486
+#, c-format
+msgid ""
+"WARNING: Some packs in use have been renamed by\n"
+"WARNING: prefixing old- to their name, in order to\n"
+"WARNING: replace them with the new version of the\n"
+"WARNING: file.  But the operation failed, and the\n"
+"WARNING: attempt to rename them back to their\n"
+"WARNING: original names also failed.\n"
+"WARNING: Please rename them in %s manually:\n"
+msgstr ""
+
+#: builtin/repack.c:534
 #, c-format
 msgid "failed to remove '%s'"
 msgstr "falha ao remover '%s'"
 
-#: builtin/replace.c:19
+#: builtin/replace.c:22
 msgid "git replace [-f] <object> <replacement>"
 msgstr "git replace [-f] <objeto> <substituição>"
 
-#: builtin/replace.c:20
+#: builtin/replace.c:23
 msgid "git replace [-f] --edit <object>"
 msgstr "git replace [-f] --edit <objeto>"
 
-#: builtin/replace.c:21
+#: builtin/replace.c:24
 msgid "git replace [-f] --graft <commit> [<parent>...]"
 msgstr "git replace [-f] --graft <commit> [<pai>...]"
 
-#: builtin/replace.c:22
+#: builtin/replace.c:25
+#, fuzzy
+msgid "git replace [-f] --convert-graft-file"
+msgstr "git replace [-f] --edit <objeto>"
+
+#: builtin/replace.c:26
 msgid "git replace -d <object>..."
 msgstr "git replace -d <objeto>..."
 
-#: builtin/replace.c:23
+#: builtin/replace.c:27
 msgid "git replace [--format=<format>] [-l [<pattern>]]"
 msgstr "git replace [--format=<formato>] [-l [<padrão>]]"
 
-#: builtin/replace.c:329 builtin/replace.c:367 builtin/replace.c:395
+#: builtin/replace.c:90
 #, c-format
-msgid "Not a valid object name: '%s'"
+msgid ""
+"invalid replace format '%s'\n"
+"valid formats are 'short', 'medium' and 'long'"
+msgstr ""
+
+#: builtin/replace.c:125
+#, fuzzy, c-format
+msgid "replace ref '%s' not found"
+msgstr "ramo '%s' não encontrado."
+
+#: builtin/replace.c:141
+#, fuzzy, c-format
+msgid "Deleted replace ref '%s'"
+msgstr "eliminar referências substituídas"
+
+#: builtin/replace.c:153
+#, fuzzy, c-format
+msgid "'%s' is not a valid ref name"
+msgstr "'%s' não é um nome de remoto válido"
+
+#: builtin/replace.c:158
+#, fuzzy, c-format
+msgid "replace ref '%s' already exists"
+msgstr "a tag '%s' já existe"
+
+#: 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 ""
+
+#: builtin/replace.c:229
+#, fuzzy, c-format
+msgid "unable to open %s for writing"
+msgstr "não foi possível abrir %s para escrita"
+
+#: builtin/replace.c:242
+msgid "cat-file reported failure"
+msgstr ""
+
+#: builtin/replace.c:258
+#, fuzzy, c-format
+msgid "unable to open %s for reading"
+msgstr "não é possível abrir ou ler %s"
+
+#: builtin/replace.c:272
+#, fuzzy
+msgid "unable to spawn mktree"
+msgstr "não foi possível ler a árvore (%s)"
+
+#: builtin/replace.c:276
+#, fuzzy
+msgid "unable to read from mktree"
+msgstr "não foi possível ler a árvore (%s)"
+
+#: builtin/replace.c:285
+#, fuzzy
+msgid "mktree reported failure"
+msgstr "falha ao reverter"
+
+#: builtin/replace.c:289
+#, fuzzy
+msgid "mktree did not return an object name"
+msgstr "o remoto não enviou todos os objetos necessários"
+
+#: builtin/replace.c:298
+#, fuzzy, c-format
+msgid "unable to fstat %s"
+msgstr "não foi possível atualizar %s"
+
+#: builtin/replace.c:303
+#, fuzzy
+msgid "unable to write object to database"
+msgstr "não é possível escrever o objeto de nota"
+
+#: builtin/replace.c:322 builtin/replace.c:378 builtin/replace.c:424
+#: builtin/replace.c:454
+#, fuzzy, c-format
+msgid "not a valid object name: '%s'"
 msgstr "Nome de objeto inválido: '%s'"
 
-#: builtin/replace.c:359
+#: builtin/replace.c:326
+#, fuzzy, c-format
+msgid "unable to get object type for %s"
+msgstr "não foi possível efetuar grep de objetos do tipo %s"
+
+#: builtin/replace.c:342
+#, fuzzy
+msgid "editing object file failed"
+msgstr "falha ao ler referências bissetadas"
+
+#: builtin/replace.c:351
+#, c-format
+msgid "new object is the same as the old one: '%s'"
+msgstr ""
+
+#: builtin/replace.c:384
+#, fuzzy, c-format
+msgid "could not parse %s as a commit"
+msgstr "não foi possível analisar o commit HEAD"
+
+#: builtin/replace.c:416
 #, c-format
 msgid "bad mergetag in commit '%s'"
 msgstr "mergetag incorreta no commit '%s'"
 
-#: builtin/replace.c:361
+#: builtin/replace.c:418
 #, c-format
 msgid "malformed mergetag in commit '%s'"
 msgstr "mergetag malformada no commit '%s'"
 
-#: builtin/replace.c:372
+#: builtin/replace.c:430
 #, c-format
 msgid ""
 "original commit '%s' contains mergetag '%s' that is discarded; use --edit "
@@ -12393,205 +20533,308 @@ msgstr ""
 "o commit original '%s' contém a mergetag '%s' que foi excluída; use --edit "
 "em vez de --graft"
 
-#: builtin/replace.c:405
-#, c-format
-msgid "the original commit '%s' has a gpg signature."
+#: builtin/replace.c:469
+#, fuzzy, c-format
+msgid "the original commit '%s' has a gpg signature"
 msgstr "o commit original '%s' tem uma assinatura gpg."
 
-#: builtin/replace.c:406
+#: builtin/replace.c:470
 msgid "the signature will be removed in the replacement commit!"
 msgstr "a assinatura será removida do commit suplente!"
 
-#: builtin/replace.c:412
+#: builtin/replace.c:480
 #, c-format
 msgid "could not write replacement commit for: '%s'"
 msgstr "não foi possível escrever o commit suplente de: '%s'"
 
-#: builtin/replace.c:436
+#: builtin/replace.c:488
+#, c-format
+msgid "graft for '%s' unnecessary"
+msgstr ""
+
+#: builtin/replace.c:492
+#, c-format
+msgid "new commit is the same as the old one: '%s'"
+msgstr ""
+
+#: builtin/replace.c:527
+#, fuzzy, c-format
+msgid ""
+"could not convert the following graft(s):\n"
+"%s"
+msgstr "Removeria o seguinte item:"
+
+#: builtin/replace.c:548
 msgid "list replace refs"
 msgstr "listar referências substituídas"
 
-#: builtin/replace.c:437
+#: builtin/replace.c:549
 msgid "delete replace refs"
 msgstr "eliminar referências substituídas"
 
-#: builtin/replace.c:438
+#: builtin/replace.c:550
 msgid "edit existing object"
 msgstr "editar objeto existente"
 
-#: builtin/replace.c:439
+#: builtin/replace.c:551
 msgid "change a commit's parents"
 msgstr "mudar os pais de um commit"
 
-#: builtin/replace.c:440
+#: builtin/replace.c:552
+#, fuzzy
+msgid "convert existing graft file"
+msgstr "forçar substituição dos ficheiros existentes"
+
+#: builtin/replace.c:553
 msgid "replace the ref if it exists"
 msgstr "substituir a referência se esta existir"
 
-#: builtin/replace.c:441
+#: builtin/replace.c:555
 msgid "do not pretty-print contents for --edit"
 msgstr "não mostrar o conteúdo de --edit com impressão bonita"
 
-#: builtin/replace.c:442
+#: builtin/replace.c:556
 msgid "use this format"
 msgstr "usar este formato"
 
-#: builtin/rerere.c:12
+#: builtin/replace.c:569
+#, fuzzy
+msgid "--format cannot be used when not listing"
+msgstr "--fix-thin não pode ser usado sem --stdin"
+
+#: builtin/replace.c:577
+#, fuzzy
+msgid "-f only makes sense when writing a replacement"
+msgstr "-z só faz sentido com --stdin"
+
+#: builtin/replace.c:581
+#, fuzzy
+msgid "--raw only makes sense with --edit"
+msgstr "-z só faz sentido com --stdin"
+
+#: builtin/replace.c:587
+msgid "-d needs at least one argument"
+msgstr ""
+
+#: builtin/replace.c:593
+msgid "bad number of arguments"
+msgstr ""
+
+#: builtin/replace.c:599
+#, fuzzy
+msgid "-e needs exactly one argument"
+msgstr "É necessário exatamente um intervalo."
+
+#: builtin/replace.c:605
+msgid "-g needs at least one argument"
+msgstr ""
+
+#: builtin/replace.c:611
+#, fuzzy
+msgid "--convert-graft-file takes no argument"
+msgstr "--continue não leva argumentos"
+
+#: builtin/replace.c:617
+#, fuzzy
+msgid "only one pattern can be given with -l"
+msgstr "combinar padrões especificados com -e"
+
+#: builtin/rerere.c:13
 msgid "git rerere [clear | forget <path>... | status | remaining | diff | gc]"
 msgstr ""
 "git rerere [clear | forget <caminho>... | status | remaining | diff | gc]"
 
-#: builtin/rerere.c:58
+#: builtin/rerere.c:60
 msgid "register clean resolutions in index"
 msgstr "registar resoluções limpas no índice"
 
-#: builtin/reset.c:26
+#: builtin/rerere.c:79
+msgid "'git rerere forget' without paths is deprecated"
+msgstr ""
+
+#: builtin/rerere.c:113
+#, fuzzy, c-format
+msgid "unable to generate diff for '%s'"
+msgstr "não foi possível criar '%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:27
-msgid "git reset [-q] [<tree-ish>] [--] <paths>..."
+#: builtin/reset.c:33
+#, fuzzy
+msgid "git reset [-q] [<tree-ish>] [--] <pathspec>..."
 msgstr "git reset [-q] [<árvore-etc>] [--] <caminhos>..."
 
-#: builtin/reset.c:28
-msgid "git reset --patch [<tree-ish>] [--] [<paths>...]"
+#: builtin/reset.c:34
+msgid ""
+"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<tree-ish>]"
+msgstr ""
+
+#: builtin/reset.c:35
+#, fuzzy
+msgid "git reset --patch [<tree-ish>] [--] [<pathspec>...]"
 msgstr "git reset --patch [<árvore-etc>] [--] [<caminhos>...]"
 
-#: builtin/reset.c:34
+#: builtin/reset.c:41
 msgid "mixed"
 msgstr "misturado"
 
-#: builtin/reset.c:34
+#: builtin/reset.c:41
 msgid "soft"
 msgstr "suave"
 
-#: builtin/reset.c:34
+#: builtin/reset.c:41
 msgid "hard"
 msgstr "forte"
 
-#: builtin/reset.c:34
+#: builtin/reset.c:41
 msgid "merge"
 msgstr "merge"
 
-#: builtin/reset.c:34
+#: builtin/reset.c:41
 msgid "keep"
 msgstr "conservador"
 
-#: builtin/reset.c:74
+#: builtin/reset.c:83
 msgid "You do not have a valid HEAD."
 msgstr "HEAD inválida."
 
-#: builtin/reset.c:76
+#: builtin/reset.c:85
 msgid "Failed to find tree of HEAD."
 msgstr "Falha ao procurar árvore de HEAD."
 
-#: builtin/reset.c:82
+#: builtin/reset.c:91
 #, c-format
 msgid "Failed to find tree of %s."
 msgstr "Falha ao procurar árvore de %s."
 
-#: builtin/reset.c:100
+#: builtin/reset.c:116
 #, c-format
 msgid "HEAD is now at %s"
 msgstr "HEAD está agora em %s"
 
-#: builtin/reset.c:183
+#: builtin/reset.c:195
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "Não é possível repor de modo %s durante uma integração."
 
-#: builtin/reset.c:276
+#: builtin/reset.c:295 builtin/stash.c:520 builtin/stash.c:595
+#: builtin/stash.c:619
 msgid "be quiet, only report errors"
 msgstr "silencioso, só reportar erros"
 
-#: builtin/reset.c:278
+#: builtin/reset.c:297
 msgid "reset HEAD and index"
 msgstr "repor HEAD e índice"
 
-#: builtin/reset.c:279
+#: builtin/reset.c:298
 msgid "reset only HEAD"
 msgstr "repor HEAD apenas"
 
-#: builtin/reset.c:281 builtin/reset.c:283
+#: builtin/reset.c:300 builtin/reset.c:302
 msgid "reset HEAD, index and working tree"
 msgstr "repor HEAD, índice e árvore de trabalho"
 
-#: builtin/reset.c:285
+#: builtin/reset.c:304
 msgid "reset HEAD but keep local changes"
 msgstr "repor HEAD mas conservar alterações locais"
 
-#: builtin/reset.c:288
+#: builtin/reset.c:310
 msgid "record only the fact that removed paths will be added later"
 msgstr "registar apenas o facto de que os caminhos removidos serão adicionados"
 
-#: builtin/reset.c:305
+#: builtin/reset.c:344
 #, c-format
 msgid "Failed to resolve '%s' as a valid revision."
 msgstr "Falha ao resolver '%s' como referência válida."
 
-#: builtin/reset.c:313
+#: builtin/reset.c:352
 #, c-format
 msgid "Failed to resolve '%s' as a valid tree."
 msgstr "Falha ao resolver '%s' como árvore válida."
 
-#: builtin/reset.c:322
+#: builtin/reset.c:361
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr "--patch é incompatível com --{hard,mixed,soft}"
 
-#: builtin/reset.c:331
+#: builtin/reset.c:371
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr ""
 "--mixed acompanhado com caminhos é obsoleto; use 'git reset -- <caminhos>'."
 
-#: builtin/reset.c:333
+#: builtin/reset.c:373
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "Não é possível repor de modo %s com caminhos."
 
-#: builtin/reset.c:343
+#: builtin/reset.c:388
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr "Não é permitido repor de modo %s num repositório nu"
 
-#: builtin/reset.c:347
+#: builtin/reset.c:392
 msgid "-N can only be used with --mixed"
 msgstr "-N só pode ser usado com --mixed"
 
-#: builtin/reset.c:364
+#: builtin/reset.c:413
 msgid "Unstaged changes after reset:"
 msgstr "Alterações não preparadas depois de repor:"
 
-#: builtin/reset.c:370
+#: builtin/reset.c:416
+#, c-format
+msgid ""
+"\n"
+"It took %.2f seconds to enumerate unstaged changes after reset.  You can\n"
+"use '--quiet' to avoid this.  Set the config setting reset.quiet to true\n"
+"to make this the default.\n"
+msgstr ""
+
+#: builtin/reset.c:434
 #, c-format
 msgid "Could not reset index file to revision '%s'."
 msgstr "Não foi possível repor o ficheiro índice para a revisão '%s'."
 
-#: builtin/reset.c:374
+#: builtin/reset.c:439
 msgid "Could not write new index file."
 msgstr "Não foi possível escrever novo ficheiro de índice."
 
-#: builtin/rev-list.c:354
+#: builtin/rev-list.c:499
+msgid "cannot combine --exclude-promisor-objects and --missing"
+msgstr ""
+
+#: builtin/rev-list.c:560
+msgid "object filtering requires --objects"
+msgstr ""
+
+#: builtin/rev-list.c:610
 msgid "rev-list does not support display of notes"
 msgstr "rev-list não suporta apresentação de notas"
 
-#: builtin/rev-parse.c:393
+#: builtin/rev-list.c:615
+#, fuzzy
+msgid "marked counting is incompatible with --objects"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: builtin/rev-parse.c:409
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
 msgstr "git rev-parse --parseopt [<opções>] -- [<argumentos>...]"
 
-#: builtin/rev-parse.c:398
+#: builtin/rev-parse.c:414
 msgid "keep the `--` passed as an arg"
 msgstr "conservar '--' passado como argumento"
 
-#: builtin/rev-parse.c:400
+#: builtin/rev-parse.c:416
 msgid "stop parsing after the first non-option argument"
 msgstr "parar de analisar depois do primeiro argumento que não seja uma opção"
 
-#: builtin/rev-parse.c:403
+#: builtin/rev-parse.c:419
 msgid "output in stuck long form"
 msgstr "mostrar em formato fixo e longo"
 
-#: builtin/rev-parse.c:534
+#: builtin/rev-parse.c:552
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -12606,96 +20849,98 @@ msgstr ""
 "Execute \"git rev-parse --parseopt -h\" para obter mais informação sobre a "
 "primeira utilização."
 
-#: builtin/revert.c:22
+#: builtin/revert.c:24
 msgid "git revert [<options>] <commit-ish>..."
 msgstr "git revert [<opções>] <commit-etc>..."
 
-#: builtin/revert.c:23
+#: builtin/revert.c:25
 msgid "git revert <subcommand>"
 msgstr "git revert <subcommando>"
 
-#: builtin/revert.c:28
+#: builtin/revert.c:30
 msgid "git cherry-pick [<options>] <commit-ish>..."
 msgstr "git cherry-pick [<opções>] <commit-etc>..."
 
-#: builtin/revert.c:29
+#: builtin/revert.c:31
 msgid "git cherry-pick <subcommand>"
 msgstr "git cherry-pick <subcommando>"
 
-#: builtin/revert.c:89
+#: builtin/revert.c:72
+#, fuzzy, c-format
+msgid "option `%s' expects a number greater than zero"
+msgstr "a opção '%c' espera um valor numérico"
+
+#: builtin/revert.c:92
 #, c-format
 msgid "%s: %s cannot be used with %s"
 msgstr "%s: %s não pode ser usado com %s"
 
-#: builtin/revert.c:98
+#: builtin/revert.c:102
 msgid "end revert or cherry-pick sequence"
 msgstr "terminar reversão ou cherry-pick"
 
-#: builtin/revert.c:99
+#: builtin/revert.c:103
 msgid "resume revert or cherry-pick sequence"
 msgstr "retomar a reversão ou cherry-pick"
 
-#: builtin/revert.c:100
+#: builtin/revert.c:104
 msgid "cancel revert or cherry-pick sequence"
 msgstr "cancelar reversão ou cherry-pick"
 
-#: builtin/revert.c:101
+#: builtin/revert.c:105
+#, fuzzy
+msgid "skip current commit and continue"
+msgstr "imprimir conteúdo do commit"
+
+#: builtin/revert.c:107
 msgid "don't automatically commit"
 msgstr "não submeter automaticamente"
 
-#: builtin/revert.c:102
+#: builtin/revert.c:108
 msgid "edit the commit message"
 msgstr "editar a mensagem de commit"
 
-#: builtin/revert.c:105
+#: builtin/revert.c:111
 msgid "parent-number"
 msgstr "número-pai"
 
-#: builtin/revert.c:106
+#: builtin/revert.c:112
 msgid "select mainline parent"
 msgstr "selecionar pai principal"
 
-#: builtin/revert.c:108
+#: builtin/revert.c:114
 msgid "merge strategy"
 msgstr "estratégia de integração"
 
-#: builtin/revert.c:109
-msgid "option"
-msgstr "opção"
-
-#: builtin/revert.c:110
+#: builtin/revert.c:116
 msgid "option for merge strategy"
 msgstr "opção de estratégia de integração"
 
-#: builtin/revert.c:119
+#: builtin/revert.c:125
 msgid "append commit name"
 msgstr "acrescentar nome do commit"
 
-#: builtin/revert.c:121
+#: builtin/revert.c:127
 msgid "preserve initially empty commits"
 msgstr "preservar commits inicialmente vazios"
 
-#: builtin/revert.c:122
-msgid "allow commits with empty messages"
-msgstr "permitir commits com mensagens vazias"
-
-#: builtin/revert.c:123
+#: builtin/revert.c:129
 msgid "keep redundant, empty commits"
 msgstr "manter commits redundantes e vazios"
 
-#: builtin/revert.c:211
+#: builtin/revert.c:232
 msgid "revert failed"
 msgstr "falha ao reverter"
 
-#: builtin/revert.c:224
+#: builtin/revert.c:245
 msgid "cherry-pick failed"
 msgstr "falha ao efetuar cherry-pick"
 
-#: builtin/rm.c:17
+#: builtin/rm.c:19
 msgid "git rm [<options>] [--] <file>..."
 msgstr "git rm [<opções>] [--] <ficheiro>..."
 
-#: builtin/rm.c:205
+#: builtin/rm.c:207
 msgid ""
 "the following file has staged content different from both the\n"
 "file and the HEAD:"
@@ -12709,7 +20954,7 @@ msgstr[1] ""
 "os seguintes ficheiros têm conteúdo preparado no índice diferente\n"
 "do conteúdo no ficheiro e em HEAD:"
 
-#: builtin/rm.c:210
+#: builtin/rm.c:212
 msgid ""
 "\n"
 "(use -f to force removal)"
@@ -12717,13 +20962,13 @@ msgstr ""
 "\n"
 "(use -f para forçar remoção)"
 
-#: builtin/rm.c:214
+#: 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] "o seguinte ficheiro contém alterações preparadas no índice:"
 msgstr[1] "os seguintes ficheiros contêm alterações preparadas no índice:"
 
-#: builtin/rm.c:218 builtin/rm.c:227
+#: builtin/rm.c:220 builtin/rm.c:229
 msgid ""
 "\n"
 "(use --cached to keep the file, or -f to force removal)"
@@ -12731,48 +20976,53 @@ msgstr ""
 "\n"
 "(use --cached para manter o ficheiro, ou -f para forçar remoção)"
 
-#: builtin/rm.c:224
+#: builtin/rm.c:226
 msgid "the following file has local modifications:"
 msgid_plural "the following files have local modifications:"
 msgstr[0] "o seguinte ficheiro contém alterações locais:"
 msgstr[1] "os seguintes ficheiros contêm alterações locais:"
 
-#: builtin/rm.c:242
+#: builtin/rm.c:243
 msgid "do not list removed files"
 msgstr "não listar ficheiros removidos"
 
-#: builtin/rm.c:243
+#: builtin/rm.c:244
 msgid "only remove from the index"
 msgstr "remover apenas do índice"
 
-#: builtin/rm.c:244
+#: builtin/rm.c:245
 msgid "override the up-to-date check"
 msgstr "ignorar verificação de atualização"
 
-#: builtin/rm.c:245
+#: builtin/rm.c:246
 msgid "allow recursive removal"
 msgstr "permitir remoção recursiva"
 
-#: builtin/rm.c:247
+#: builtin/rm.c:248
 msgid "exit with a zero status even if nothing matched"
 msgstr "sair com valor zero mesmo quando não há correspondência"
 
-#: builtin/rm.c:308
+#: builtin/rm.c:282
+msgid "No pathspec was given. Which files should I remove?"
+msgstr ""
+
+#: builtin/rm.c:305
+#, fuzzy
+msgid "please stage your changes to .gitmodules or stash them to proceed"
+msgstr ""
+"Prepare as suas alterações em .gitmodules ou esconda-as para prosseguir"
+
+#: builtin/rm.c:323
 #, c-format
 msgid "not removing '%s' recursively without -r"
 msgstr "não remover '%s' recursivamente sem -r"
 
-#: builtin/rm.c:347
+#: builtin/rm.c:362
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr "git rm: não é possível remover %s"
 
-#: builtin/rm.c:370
-#, c-format
-msgid "could not remove '%s'"
-msgstr "não foi possível remover '%s'"
-
-#: builtin/send-pack.c:18
+#: builtin/send-pack.c:20
 msgid ""
 "git send-pack [--all | --mirror] [--dry-run] [--force] [--receive-pack=<git-"
 "receive-pack>] [--verbose] [--thin] [--atomic] [<host>:]<directory> "
@@ -12785,52 +21035,84 @@ msgstr ""
 "  --all e especificação explicita duma <referência> são mutuamente "
 "exclusivos."
 
-#: builtin/send-pack.c:161
+#: builtin/send-pack.c:182
 msgid "remote name"
 msgstr "nome do remoto"
 
-#: builtin/send-pack.c:175
+#: builtin/send-pack.c:195
 msgid "use stateless RPC protocol"
 msgstr "use protocolo RPC sem estado"
 
-#: builtin/send-pack.c:176
+#: builtin/send-pack.c:196
 msgid "read refs from stdin"
 msgstr "ler referências do stdin"
 
-#: builtin/send-pack.c:177
+#: builtin/send-pack.c:197
 msgid "print status from remote helper"
 msgstr "imprimir estado do programa auxiliar remoto"
 
-#: builtin/shortlog.c:13
-msgid "git shortlog [<options>] [<revision-range>] [[--] [<path>...]]"
+#: builtin/shortlog.c:15
+#, fuzzy
+msgid "git shortlog [<options>] [<revision-range>] [[--] <path>...]"
 msgstr ""
 "git shortlog [<opções>] [<intervalo-de-revisões>] [[--] [<caminho>...]]"
 
-#: builtin/shortlog.c:248
+#: builtin/shortlog.c:16
+#, fuzzy
+msgid "git log --pretty=short | git shortlog [<options>]"
+msgstr "git worktree list [<opções>]"
+
+#: builtin/shortlog.c:134
+msgid "using multiple --group options with stdin is not supported"
+msgstr ""
+
+#: builtin/shortlog.c:144
+msgid "using --group=trailer with stdin is not supported"
+msgstr ""
+
+#: builtin/shortlog.c:388
+#, fuzzy, c-format
+msgid "unknown group type: %s"
+msgstr "Tipo desconhecido: %d"
+
+#: builtin/shortlog.c:416
 msgid "Group by committer rather than author"
 msgstr "agrupar por committer em vez de autor"
 
-#: builtin/shortlog.c:250
+#: builtin/shortlog.c:419
 msgid "sort output according to the number of commits per author"
 msgstr "ordenar saída de acordo com o número de commits por autor"
 
-#: builtin/shortlog.c:252
+#: builtin/shortlog.c:421
 msgid "Suppress commit descriptions, only provides commit count"
 msgstr "suprimir a descrição dos commits, fornecer apenas o número de commits"
 
-#: builtin/shortlog.c:254
+#: builtin/shortlog.c:423
 msgid "Show the email address of each author"
 msgstr "Mostrar o endereço de e-mail de cada autor"
 
-#: builtin/shortlog.c:255
-msgid "w[,i1[,i2]]"
-msgstr "w[,i1[,i2]]"
+#: builtin/shortlog.c:424
+msgid "<w>[,<i1>[,<i2>]]"
+msgstr ""
 
-#: builtin/shortlog.c:256
+#: builtin/shortlog.c:425
 msgid "Linewrap output"
 msgstr "ajustar linhas"
 
-#: builtin/show-branch.c:10
+#: builtin/shortlog.c:427
+msgid "field"
+msgstr ""
+
+#: builtin/shortlog.c:428
+msgid "Group by field"
+msgstr ""
+
+#: builtin/shortlog.c:456
+#, fuzzy
+msgid "too many arguments given outside repository"
+msgstr "%s: '%s' está fora do repositório"
+
+#: 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"
@@ -12842,131 +21124,139 @@ msgstr ""
 "\t\t[--more=<n> | --list | --independent | --merge-base]\n"
 "\t\t[--no-name | --sha1-name] [--topics] [(<revisão> | <glob>)...]"
 
-#: builtin/show-branch.c:14
+#: builtin/show-branch.c:17
 msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
 msgstr "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<referência>]"
 
-#: builtin/show-branch.c:374
+#: 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] "ignorar %s; não é possível processar mais do que %d referência"
 msgstr[1] "ingorar %s; não é possível processar mais do que %d referências"
 
-#: builtin/show-branch.c:536
+#: builtin/show-branch.c:548
 #, c-format
 msgid "no matching refs with %s"
 msgstr "nenhuma referência corresponde com %s"
 
-#: builtin/show-branch.c:632
+#: builtin/show-branch.c:645
 msgid "show remote-tracking and local branches"
 msgstr "mostrar os ramos de monitorização remotos e os ramos locais"
 
-#: builtin/show-branch.c:634
+#: builtin/show-branch.c:647
 msgid "show remote-tracking branches"
 msgstr "mostrar os ramos de monitorização remotos"
 
-#: builtin/show-branch.c:636
+#: builtin/show-branch.c:649
 msgid "color '*!+-' corresponding to the branch"
 msgstr "colorir '*!+-' correspondendo ao ramo"
 
-#: builtin/show-branch.c:638
+#: builtin/show-branch.c:651
 msgid "show <n> more commits after the common ancestor"
 msgstr "mostrar mais <n> commits depois do antecessor comum"
 
-#: builtin/show-branch.c:640
+#: builtin/show-branch.c:653
 msgid "synonym to more=-1"
 msgstr "sinónimo de more=-1"
 
-#: builtin/show-branch.c:641
+#: builtin/show-branch.c:654
 msgid "suppress naming strings"
 msgstr "suprimir a cadeias de caracteres de nomes"
 
-#: builtin/show-branch.c:643
+#: builtin/show-branch.c:656
 msgid "include the current branch"
 msgstr "incluir o ramo atual"
 
-#: builtin/show-branch.c:645
+#: builtin/show-branch.c:658
 msgid "name commits with their object names"
 msgstr "designar commits pelos seus nomes de objeto"
 
-#: builtin/show-branch.c:647
+#: builtin/show-branch.c:660
 msgid "show possible merge bases"
 msgstr "mostrar possíveis bases de integração"
 
-#: builtin/show-branch.c:649
+#: builtin/show-branch.c:662
 msgid "show refs unreachable from any other ref"
 msgstr "mostrar referências inalcançáveis a partir de outras referências"
 
-#: builtin/show-branch.c:651
+#: builtin/show-branch.c:664
 msgid "show commits in topological order"
 msgstr "mostrar commits em ordem topológica"
 
-#: builtin/show-branch.c:654
+#: builtin/show-branch.c:667
 msgid "show only commits not on the first branch"
 msgstr "mostrar apenas commits não presentes no primeiro ramo"
 
-#: builtin/show-branch.c:656
+#: builtin/show-branch.c:669
 msgid "show merges reachable from only one tip"
 msgstr "mostrar integrações alcançáveis a partir duma única ponta"
 
-#: builtin/show-branch.c:658
+#: builtin/show-branch.c:671
 msgid "topologically sort, maintaining date order where possible"
 msgstr ""
 "ordenar topologicamente, mantendo a ordenação por data sempre que possível"
 
-#: builtin/show-branch.c:661
+#: builtin/show-branch.c:674
 msgid "<n>[,<base>]"
 msgstr "<n>[,<base>]"
 
-#: builtin/show-branch.c:662
+#: builtin/show-branch.c:675
 msgid "show <n> most recent ref-log entries starting at base"
 msgstr "mostrar as <n> entradas de ref-log mais recente a partir da base"
 
-#: builtin/show-branch.c:696
+#: builtin/show-branch.c:711
 msgid ""
 "--reflog is incompatible with --all, --remotes, --independent or --merge-base"
 msgstr ""
 "--reflog é incompatível com --all, --remotes, --independent or --merge-base"
 
-#: builtin/show-branch.c:720
+#: builtin/show-branch.c:735
 msgid "no branches given, and HEAD is not valid"
 msgstr "nenhum ramo fornecido e HEAD não é válida"
 
-#: builtin/show-branch.c:723
+#: builtin/show-branch.c:738
 msgid "--reflog option needs one branch name"
 msgstr "a opção --reflog precisa do nome de um ramo"
 
-#: builtin/show-branch.c:726
+#: 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] "apenas %d entrada podem ser mostradas neste momento."
 msgstr[1] "apenas %d entradas podem ser mostradas neste momento."
 
-#: builtin/show-branch.c:730
+#: builtin/show-branch.c:745
 #, c-format
 msgid "no such ref %s"
 msgstr "referência inexistente %s"
 
-#: builtin/show-branch.c:814
+#: builtin/show-branch.c:831
 #, c-format
 msgid "cannot handle more than %d rev."
 msgid_plural "cannot handle more than %d revs."
 msgstr[0] "não é possível processar mais do que %d revisão."
 msgstr[1] "não é possível processar mais do que %d revisões."
 
-#: builtin/show-branch.c:818
+#: builtin/show-branch.c:835
 #, c-format
 msgid "'%s' is not a valid ref."
 msgstr "'%s' não é uma referência válida."
 
-#: builtin/show-branch.c:821
+#: builtin/show-branch.c:838
 #, c-format
 msgid "cannot find commit %s (%s)"
 msgstr "não é possível encontrar o commit %s (%s)"
 
-#: builtin/show-ref.c:10
+#: builtin/show-index.c:21
+msgid "hash-algorithm"
+msgstr ""
+
+#: builtin/show-index.c:31
+msgid "Unknown hash algorithm"
+msgstr ""
+
+#: builtin/show-ref.c:12
 msgid ""
 "git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
 "hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
@@ -12974,257 +21264,826 @@ msgstr ""
 "git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
 "hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<padrão>...]"
 
-#: builtin/show-ref.c:11
+#: builtin/show-ref.c:13
 msgid "git show-ref --exclude-existing[=<pattern>]"
 msgstr "git show-ref --exclude-existing[=<padrão>]"
 
-#: builtin/show-ref.c:159
+#: builtin/show-ref.c:162
 msgid "only show tags (can be combined with heads)"
 msgstr "mostrar apenas tags (pode ser combinado com heads)"
 
-#: builtin/show-ref.c:160
+#: builtin/show-ref.c:163
 msgid "only show heads (can be combined with tags)"
 msgstr "mostrar apenas cabeças (pode ser combinado com tags)"
 
-#: builtin/show-ref.c:161
+#: builtin/show-ref.c:164
 msgid "stricter reference checking, requires exact ref path"
 msgstr ""
 "verificação de referências mais rigorosa, requer o caminho exato da "
 "referência"
 
-#: builtin/show-ref.c:164 builtin/show-ref.c:166
+#: builtin/show-ref.c:167 builtin/show-ref.c:169
 msgid "show the HEAD reference, even if it would be filtered out"
 msgstr "mostrar a referência HEAD, mesmo que fosse filtrada"
 
-#: builtin/show-ref.c:168
+#: builtin/show-ref.c:171
 msgid "dereference tags into object IDs"
 msgstr "desreferenciar tags em IDs de objeto"
 
-#: builtin/show-ref.c:170
+#: builtin/show-ref.c:173
 msgid "only show SHA1 hash using <n> digits"
 msgstr "mostrar hash SHA1 com <n> digitos"
 
-#: builtin/show-ref.c:174
+#: builtin/show-ref.c:177
 msgid "do not print results to stdout (useful with --verify)"
 msgstr "não imprimir resultados para o stdout (útil com --verify)"
 
-#: builtin/show-ref.c:176
+#: builtin/show-ref.c:179
 msgid "show refs from stdin that aren't in local repository"
 msgstr "mostrar referências do stdin que não estão no repositório local"
 
-#: builtin/stripspace.c:17
+#: builtin/sparse-checkout.c:21
+msgid "git sparse-checkout (init|list|set|add|reapply|disable) <options>"
+msgstr ""
+
+#: builtin/sparse-checkout.c:50
+#, fuzzy
+msgid "git sparse-checkout list"
+msgstr "git archive --list"
+
+#: builtin/sparse-checkout.c:76
+msgid "this worktree is not sparse (sparse-checkout file may not exist)"
+msgstr ""
+
+#: builtin/sparse-checkout.c:228
+#, fuzzy
+msgid "failed to create directory for sparse-checkout file"
+msgstr "falha ao criar o diretório %s"
+
+#: builtin/sparse-checkout.c:269
+msgid "unable to upgrade repository format to enable worktreeConfig"
+msgstr ""
+
+#: builtin/sparse-checkout.c:271
+msgid "failed to set extensions.worktreeConfig setting"
+msgstr ""
+
+#: builtin/sparse-checkout.c:288
+msgid "git sparse-checkout init [--cone]"
+msgstr ""
+
+#: builtin/sparse-checkout.c:307
+msgid "initialize the sparse-checkout in cone mode"
+msgstr ""
+
+#: builtin/sparse-checkout.c:344
+#, c-format
+msgid "failed to open '%s'"
+msgstr "falha ao abrir '%s'"
+
+#: builtin/sparse-checkout.c:401
+#, fuzzy, c-format
+msgid "could not normalize path %s"
+msgstr "não foi possível analisar o patch '%s'"
+
+#: builtin/sparse-checkout.c:413
+msgid "git sparse-checkout (set|add) (--stdin | <patterns>)"
+msgstr ""
+
+#: builtin/sparse-checkout.c:438
+#, fuzzy, c-format
+msgid "unable to unquote C-style string '%s'"
+msgstr "não é possível ler a ligação simbólica %s"
+
+#: builtin/sparse-checkout.c:492 builtin/sparse-checkout.c:516
+msgid "unable to load existing sparse-checkout patterns"
+msgstr ""
+
+#: builtin/sparse-checkout.c:561
+#, fuzzy
+msgid "read patterns from standard in"
+msgstr "ler atualizações da entrada padrão"
+
+#: builtin/sparse-checkout.c:576
+msgid "git sparse-checkout reapply"
+msgstr ""
+
+#: builtin/sparse-checkout.c:595
+#, fuzzy
+msgid "git sparse-checkout disable"
+msgstr "ignorar a aplicação do filtro de extração esparsa"
+
+#: builtin/sparse-checkout.c:623
+#, fuzzy
+msgid "error while refreshing working directory"
+msgstr "não é possível de obter o diretório de trabalho atual"
+
+#: builtin/stash.c:22 builtin/stash.c:38
+#, fuzzy
+msgid "git stash list [<options>]"
+msgstr "git worktree list [<opções>]"
+
+#: builtin/stash.c:23 builtin/stash.c:43
+#, fuzzy
+msgid "git stash show [<options>] [<stash>]"
+msgstr "git remote show [<opções>] <nome>"
+
+#: builtin/stash.c:24 builtin/stash.c:48
+msgid "git stash drop [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:25
+msgid "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:26 builtin/stash.c:63
+#, fuzzy
+msgid "git stash branch <branchname> [<stash>]"
+msgstr "git branch [<opções>] [-l] [-f] <nome-ramo> [<ponto-de-partida>]"
+
+#: builtin/stash.c:27 builtin/stash.c:68
+msgid "git stash clear"
+msgstr ""
+
+#: 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 ""
+
+#: builtin/stash.c:32 builtin/stash.c:85
+msgid ""
+"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [<message>]"
+msgstr ""
+
+#: builtin/stash.c:53
+msgid "git stash pop [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:58
+msgid "git stash apply [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:73
+msgid "git stash store [-m|--message <message>] [-q|--quiet] <commit>"
+msgstr ""
+
+#: 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 ""
+
+#: builtin/stash.c:128
+#, fuzzy, c-format
+msgid "'%s' is not a stash-like commit"
+msgstr "'$args' não é um commit semelhante a pilha"
+
+#: builtin/stash.c:148
+#, fuzzy, c-format
+msgid "Too many revisions specified:%s"
+msgstr "Demasiadas revisões especificadas: $REV"
+
+#: builtin/stash.c:162
+#, fuzzy
+msgid "No stash entries found."
+msgstr "Nenhuma pilha encontrada."
+
+#: builtin/stash.c:176
+#, fuzzy, c-format
+msgid "%s is not a valid reference"
+msgstr "'%s' não é uma referência válida."
+
+#: builtin/stash.c:225
+msgid "git stash clear with parameters is unimplemented"
+msgstr "não está implementado git stash clear com parâmetros"
+
+#: builtin/stash.c:404
+#, fuzzy
+msgid "cannot apply a stash in the middle of a merge"
+msgstr "Não é possível aplicar uma pilha durante uma integração"
+
+#: builtin/stash.c:415
+#, fuzzy, c-format
+msgid "could not generate diff %s^!."
+msgstr "não foi possível ler '%s'."
+
+#: builtin/stash.c:422
+#, fuzzy
+msgid "conflicts in index.Try without --index."
+msgstr "Conflitos no índice. Tente sem --index."
+
+#: builtin/stash.c:428
+#, fuzzy
+msgid "could not save index tree"
+msgstr "Não foi possível guardar árvore do índice"
+
+#: builtin/stash.c:437
+#, fuzzy
+msgid "could not restore untracked files from stash"
+msgstr "Não foi possível restaurar os ficheiros não controlados da pilha"
+
+#: builtin/stash.c:451
+#, fuzzy, c-format
+msgid "Merging %s with %s"
+msgstr "A integrar %s com %s\n"
+
+#: builtin/stash.c:461
+msgid "Index was not unstashed."
+msgstr "O índice não foi reposto."
+
+#: builtin/stash.c:522 builtin/stash.c:621
+#, fuzzy
+msgid "attempt to recreate the index"
+msgstr "falha ao ler o índice"
+
+#: builtin/stash.c:555
+#, fuzzy, c-format
+msgid "Dropped %s (%s)"
+msgstr "A descartar ${REV} ($s)"
+
+#: builtin/stash.c:558
+#, fuzzy, c-format
+msgid "%s: Could not drop stash entry"
+msgstr "${REV}: Não foi possível descartar elemento da pilha"
+
+#: builtin/stash.c:583
+#, fuzzy, c-format
+msgid "'%s' is not a stash reference"
+msgstr "'$args' não é uma referência de pilha"
+
+#: builtin/stash.c:633
+#, fuzzy
+msgid "The stash entry is kept in case you need it again."
+msgstr "A pilha é guarda no caso de precisar dela de novo."
+
+#: builtin/stash.c:656
+msgid "No branch name specified"
+msgstr "Nenhum nome de ramo especificado"
+
+#: builtin/stash.c:800 builtin/stash.c:837
+#, fuzzy, c-format
+msgid "Cannot update %s with %s"
+msgstr "Não é possível atualizar $ref_stash com $w_commit"
+
+#: builtin/stash.c:818 builtin/stash.c:1472 builtin/stash.c:1537
+#, fuzzy
+msgid "stash message"
+msgstr "mensagem da tag"
+
+#: builtin/stash.c:828
+msgid "\"git stash store\" requires one <commit> argument"
+msgstr ""
+
+#: builtin/stash.c:1043
+msgid "No changes selected"
+msgstr "Nenhuma alteração selecionada"
+
+#: builtin/stash.c:1143
+msgid "You do not have the initial commit yet"
+msgstr "O commit inicial ainda não existe"
+
+#: builtin/stash.c:1170
+msgid "Cannot save the current index state"
+msgstr "Não é possível guardar o estado atual do índice"
+
+#: builtin/stash.c:1179
+msgid "Cannot save the untracked files"
+msgstr "Não é possível guardar os ficheiros não controlados"
+
+#: builtin/stash.c:1190 builtin/stash.c:1199
+msgid "Cannot save the current worktree state"
+msgstr "Não é possível guardar o estado atual da árvore de trabalho"
+
+#: builtin/stash.c:1227
+msgid "Cannot record working tree state"
+msgstr "Não é possível gravar o estado da árvore de trabalho"
+
+#: builtin/stash.c:1276
+msgid "Can't use --patch and --include-untracked or --all at the same time"
+msgstr ""
+"Não é possível usar --patch e --include-untracked ou --all ao mesmo tempo"
+
+#: builtin/stash.c:1292
+#, fuzzy
+msgid "Did you forget to 'git add'?"
+msgstr "Queria dizer 'git add .'?\n"
+
+#: builtin/stash.c:1307
+msgid "No local changes to save"
+msgstr "Não há alterações locais para guardar"
+
+#: builtin/stash.c:1314
+msgid "Cannot initialize stash"
+msgstr "Não é possível inicializar a pilha"
+
+#: builtin/stash.c:1329
+msgid "Cannot save the current status"
+msgstr "Não é possível guardar o estado atual"
+
+#: builtin/stash.c:1334
+#, fuzzy, c-format
+msgid "Saved working directory and index state %s"
+msgstr "Diretório de trabalho e estado do índice $stash_msg guardados"
+
+#: builtin/stash.c:1424
+msgid "Cannot remove worktree changes"
+msgstr "Não é possível remover as alterações da árvore de trabalho"
+
+#: builtin/stash.c:1463 builtin/stash.c:1528
+msgid "keep index"
+msgstr ""
+
+#: builtin/stash.c:1465 builtin/stash.c:1530
+msgid "stash in patch mode"
+msgstr ""
+
+#: builtin/stash.c:1466 builtin/stash.c:1531
+#, fuzzy
+msgid "quiet mode"
+msgstr "silencioso"
+
+#: builtin/stash.c:1468 builtin/stash.c:1533
+#, fuzzy
+msgid "include untracked files in stash"
+msgstr "listar ficheiros não controlados em colunas"
+
+#: builtin/stash.c:1470 builtin/stash.c:1535
+#, fuzzy
+msgid "include ignore files"
+msgstr "mostrar ficheiros ignorados"
+
+#: builtin/stash.c:1570
+msgid ""
+"the stash.useBuiltin support has been removed!\n"
+"See its entry in 'git help config' for details."
+msgstr ""
+
+#: builtin/stripspace.c:18
 msgid "git stripspace [-s | --strip-comments]"
 msgstr "git stripspace [-s | --strip-comments]"
 
-#: builtin/stripspace.c:18
+#: builtin/stripspace.c:19
 msgid "git stripspace [-c | --comment-lines]"
 msgstr "git stripspace [-c | --comment-lines]"
 
-#: builtin/stripspace.c:35
+#: builtin/stripspace.c:37
 msgid "skip and remove all lines starting with comment character"
 msgstr ""
 "ignorar e remover todas as linhas começadas com um carácter de comentário"
 
-#: builtin/stripspace.c:38
+#: builtin/stripspace.c:40
 msgid "prepend comment character and space to each line"
 msgstr "preceder cada linha com um carácter de comentário e um espaço"
 
-#: builtin/submodule--helper.c:24 builtin/submodule--helper.c:1075
-#, c-format
-msgid "No such ref: %s"
-msgstr "Referência inexistente: %s"
-
-#: builtin/submodule--helper.c:31 builtin/submodule--helper.c:1084
+#: builtin/submodule--helper.c:47 builtin/submodule--helper.c:2423
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr "Esperava-se um nome completo de uma referência, obteve-se %s"
 
-#: builtin/submodule--helper.c:71
+#: builtin/submodule--helper.c:64
+msgid "submodule--helper print-default-remote takes no arguments"
+msgstr ""
+
+#: builtin/submodule--helper.c:102
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr "não é possível tirar um componente do URL '%s'"
 
-#: builtin/submodule--helper.c:305 builtin/submodule--helper.c:630
+#: builtin/submodule--helper.c:410 builtin/submodule--helper.c:1819
 msgid "alternative anchor for relative paths"
 msgstr "âncora alternativa para caminhos relativos"
 
-#: builtin/submodule--helper.c:310
+#: builtin/submodule--helper.c:415
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper list [--prefix=<caminho>] [<caminho>...]"
 
-#: builtin/submodule--helper.c:356 builtin/submodule--helper.c:382
+#: builtin/submodule--helper.c:472 builtin/submodule--helper.c:629
+#: builtin/submodule--helper.c:652
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
 msgstr "Nenhum URL encontrado para o caminho de submódulo '%s' em .gitmodules"
 
-#: builtin/submodule--helper.c:395
+#: builtin/submodule--helper.c:524
+#, fuzzy, c-format
+msgid "Entering '%s'\n"
+msgstr "a substituir '%s'"
+
+#: builtin/submodule--helper.c:527
 #, c-format
 msgid ""
-"could not lookup configuration '%s'. Assuming this repository is its own "
+"run_command returned non-zero status for %s\n"
+"."
+msgstr ""
+
+#: builtin/submodule--helper.c:549
+#, c-format
+msgid ""
+"run_command returned non-zero status while recursing in the nested "
+"submodules of %s\n"
+"."
+msgstr ""
+
+#: builtin/submodule--helper.c:565
+#, fuzzy
+msgid "Suppress output of entering each submodule command"
+msgstr "Suprimir a saída ao inicializar um submódulo"
+
+#: builtin/submodule--helper.c:567 builtin/submodule--helper.c:1487
+#, fuzzy
+msgid "Recurse into nested submodules"
+msgstr "percorrer submódulos recursivamente"
+
+#: builtin/submodule--helper.c:572
+msgid "git submodule--helper foreach [--quiet] [--recursive] [--] <command>"
+msgstr ""
+
+#: builtin/submodule--helper.c:599
+#, fuzzy, c-format
+msgid ""
+"could not look up configuration '%s'. Assuming this repository is its own "
 "authoritative upstream."
 msgstr ""
 "não é possível encontrar configuração '%s'. Assumir que este repositório é o "
 "próprio repositório a montante autoritário."
 
-#: builtin/submodule--helper.c:406
+#: builtin/submodule--helper.c:666
 #, c-format
 msgid "Failed to register url for submodule path '%s'"
 msgstr "Falha ao registar o URL do caminho de submódulo '%s'"
 
-#: builtin/submodule--helper.c:410
+#: builtin/submodule--helper.c:670
 #, c-format
 msgid "Submodule '%s' (%s) registered for path '%s'\n"
 msgstr "Submódulo '%s' (%s) registado com caminho '%s'\n"
 
-#: builtin/submodule--helper.c:420
+#: builtin/submodule--helper.c:680
 #, c-format
 msgid "warning: command update mode suggested for submodule '%s'\n"
 msgstr "aviso: modo de atualização do comando sugerido para o submódulo '%s'\n"
 
-#: builtin/submodule--helper.c:427
+#: builtin/submodule--helper.c:687
 #, c-format
 msgid "Failed to register update mode for submodule path '%s'"
 msgstr "Falha ao registar o modo de atualização do caminho de submódulo '%s'"
 
-#: builtin/submodule--helper.c:443
+#: builtin/submodule--helper.c:709
 msgid "Suppress output for initializing a submodule"
 msgstr "Suprimir a saída ao inicializar um submódulo"
 
-#: builtin/submodule--helper.c:448
-msgid "git submodule--helper init [<path>]"
+#: builtin/submodule--helper.c:714
+#, fuzzy
+msgid "git submodule--helper init [<options>] [<path>]"
 msgstr "git submodule--helper init [<caminho>]"
 
-#: builtin/submodule--helper.c:476
+#: builtin/submodule--helper.c:787 builtin/submodule--helper.c:922
+#, c-format
+msgid "no submodule mapping found in .gitmodules for path '%s'"
+msgstr ""
+"nenhum mapeamento de submódulo do caminho '%s' encontrado em .gitmodules"
+
+#: builtin/submodule--helper.c:835
+#, fuzzy, c-format
+msgid "could not resolve HEAD ref inside the submodule '%s'"
+msgstr "não foi possível percorrer recursivamente o submódulo '%s'"
+
+#: builtin/submodule--helper.c:862 builtin/submodule--helper.c:1457
+#, fuzzy, c-format
+msgid "failed to recurse into submodule '%s'"
+msgstr "não foi possível percorrer recursivamente o submódulo '%s'"
+
+#: builtin/submodule--helper.c:886 builtin/submodule--helper.c:1623
+#, fuzzy
+msgid "Suppress submodule status output"
+msgstr "preceder isto ao caminho do submódulo"
+
+#: builtin/submodule--helper.c:887
+msgid ""
+"Use commit stored in the index instead of the one stored in the submodule "
+"HEAD"
+msgstr ""
+
+#: builtin/submodule--helper.c:888
+#, fuzzy
+msgid "recurse into nested submodules"
+msgstr "percorrer submódulos recursivamente"
+
+#: builtin/submodule--helper.c:893
+#, fuzzy
+msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
+msgstr "git submodule--helper update_clone [--prefix=<caminho>] [<caminho>...]"
+
+#: builtin/submodule--helper.c:917
 msgid "git submodule--helper name <path>"
 msgstr "git submodule--helper name <caminho>"
 
-#: builtin/submodule--helper.c:482
+#: builtin/submodule--helper.c:989
 #, c-format
-msgid "no submodule mapping found in .gitmodules for path '%s'"
+msgid "* %s %s(blob)->%s(submodule)"
 msgstr ""
-"nenhum mapeamento de submódulo do caminho '%s' encontrado em .gitmodules"
 
-#: builtin/submodule--helper.c:565 builtin/submodule--helper.c:568
+#: builtin/submodule--helper.c:992
+#, c-format
+msgid "* %s %s(submodule)->%s(blob)"
+msgstr ""
+
+#: builtin/submodule--helper.c:1005
+#, fuzzy, c-format
+msgid "%s"
+msgstr "[%s]"
+
+#: builtin/submodule--helper.c:1055
+#, fuzzy, c-format
+msgid "couldn't hash object from '%s'"
+msgstr "não foi possível analisar o objeto '%s'"
+
+#: builtin/submodule--helper.c:1059
+#, fuzzy, c-format
+msgid "unexpected mode %o\n"
+msgstr "modo inesperado $mod_dst"
+
+#: builtin/submodule--helper.c:1300
+#, fuzzy
+msgid "use the commit stored in the index instead of the submodule HEAD"
+msgstr "extrair <ramo> em vez da HEAD do remoto"
+
+#: builtin/submodule--helper.c:1302
+msgid "to compare the commit in the index with that in the submodule HEAD"
+msgstr ""
+
+#: builtin/submodule--helper.c:1304
+msgid "skip submodules with 'ignore_config' value set to 'all'"
+msgstr ""
+
+#: builtin/submodule--helper.c:1306
+#, fuzzy
+msgid "limit the summary size"
+msgstr "restringir-se a cabeças"
+
+#: builtin/submodule--helper.c:1311
+#, fuzzy
+msgid "git submodule--helper summary [<options>] [<commit>] [--] [<path>]"
+msgstr "git submodule--helper init [<caminho>]"
+
+#: builtin/submodule--helper.c:1335
+#, fuzzy
+msgid "could not fetch a revision for HEAD"
+msgstr "não foi possível destacar HEAD"
+
+#: builtin/submodule--helper.c:1340
+#, fuzzy
+msgid "--cached and --files are mutually exclusive"
+msgstr "--deepen e --depth são mutuamente exclusivos"
+
+#: builtin/submodule--helper.c:1407
+#, fuzzy, c-format
+msgid "Synchronizing submodule url for '%s'\n"
+msgstr "A sincronizar o URL do submódulo '$displaypath'"
+
+#: builtin/submodule--helper.c:1413
+#, fuzzy, c-format
+msgid "failed to register url for submodule path '%s'"
+msgstr "Falha ao registar o URL do caminho de submódulo '%s'"
+
+#: builtin/submodule--helper.c:1427
+#, fuzzy, c-format
+msgid "failed to get the default remote for submodule '%s'"
+msgstr "Falha ao registar o modo de atualização do caminho de submódulo '%s'"
+
+#: builtin/submodule--helper.c:1438
+#, fuzzy, c-format
+msgid "failed to update remote for submodule '%s'"
+msgstr "Falha ao registar o modo de atualização do caminho de submódulo '%s'"
+
+#: builtin/submodule--helper.c:1485
+#, fuzzy
+msgid "Suppress output of synchronizing submodule url"
+msgstr "Suprimir a saída ao inicializar um submódulo"
+
+#: builtin/submodule--helper.c:1492
+#, fuzzy
+msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
+msgstr "git submodule--helper init [<caminho>]"
+
+#: builtin/submodule--helper.c:1546
+#, fuzzy, 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 ""
+"A árvore de trabalho do submódulo '$displaypath' contém um diretório .git\n"
+"(use 'rm -rf' se pretende mesmo removê-lo, incluindo todo o seu histórico)"
+
+#: builtin/submodule--helper.c:1558
+#, fuzzy, c-format
+msgid ""
+"Submodule work tree '%s' contains local modifications; use '-f' to discard "
+"them"
+msgstr ""
+"A árvore de trabalho do submódulo '$displaypath' contém alterações locais; "
+"use '-f' para as descartar"
+
+#: builtin/submodule--helper.c:1566
+#, fuzzy, c-format
+msgid "Cleared directory '%s'\n"
+msgstr "Diretório '$displaypath' limpo"
+
+#: builtin/submodule--helper.c:1568
+#, fuzzy, c-format
+msgid "Could not remove submodule work tree '%s'\n"
+msgstr ""
+"Não foi possível remover a árvore de trabalho do submódulo '$displaypath'"
+
+#: builtin/submodule--helper.c:1579
+#, fuzzy, c-format
+msgid "could not create empty submodule directory %s"
+msgstr "Não foi possível criar o diretório vazio do submódulo '$displaypath'"
+
+#: builtin/submodule--helper.c:1595
+#, fuzzy, c-format
+msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
+msgstr "Submódulo '%s' (%s) registado com caminho '%s'\n"
+
+#: builtin/submodule--helper.c:1624
+msgid "Remove submodule working trees even if they contain local changes"
+msgstr ""
+
+#: builtin/submodule--helper.c:1625
+#, fuzzy
+msgid "Unregister all submodules"
+msgstr "percorrer submódulos recursivamente"
+
+#: builtin/submodule--helper.c:1630
+msgid ""
+"git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
+msgstr ""
+
+#: builtin/submodule--helper.c:1644
+msgid "Use '--all' if you really want to deinitialize all submodules"
+msgstr ""
+"Use '--all' se pretende mesmo anular a inicialização todos os submódulos"
+
+#: builtin/submodule--helper.c:1713
+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 ""
+
+#: builtin/submodule--helper.c:1752 builtin/submodule--helper.c:1755
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
 msgstr "o submódulo '%s' não pode adicionar sobressalente: %s"
 
-#: builtin/submodule--helper.c:604
+#: builtin/submodule--helper.c:1791
 #, c-format
 msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
 msgstr "O valor '%s' de submodule.alternateErrorStrategy não é reconhecido"
 
-#: builtin/submodule--helper.c:611
+#: builtin/submodule--helper.c:1798
 #, c-format
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
 msgstr "O valor '%s' de submodule.alternateLocation não é reconhecido"
 
-#: builtin/submodule--helper.c:633
+#: builtin/submodule--helper.c:1822
 msgid "where the new submodule will be cloned to"
 msgstr "sítio para aonde o novo submódulo será clonado"
 
-#: builtin/submodule--helper.c:636
+#: builtin/submodule--helper.c:1825
 msgid "name of the new submodule"
 msgstr "nome do novo submódulo"
 
-#: builtin/submodule--helper.c:639
+#: builtin/submodule--helper.c:1828
 msgid "url where to clone the submodule from"
 msgstr "url donde clonar o submódulos"
 
-#: builtin/submodule--helper.c:645
+#: builtin/submodule--helper.c:1836
 msgid "depth for shallow clones"
 msgstr "profundidade de clones rasos"
 
-#: builtin/submodule--helper.c:648 builtin/submodule--helper.c:993
+#: builtin/submodule--helper.c:1839 builtin/submodule--helper.c:2348
 msgid "force cloning progress"
 msgstr "forçar progresso da clonagem"
 
-#: builtin/submodule--helper.c:653
+#: builtin/submodule--helper.c:1841 builtin/submodule--helper.c:2350
+#, fuzzy
+msgid "disallow cloning into non-empty directory"
+msgstr "a aplicar a um histórico vazio"
+
+#: builtin/submodule--helper.c:1848
+#, fuzzy
 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=<caminho>] [--quiet] [--reference "
 "<repositório>] [--name <nome>] [--depth <depth>] --url <url> --path <caminho>"
 
-#: builtin/submodule--helper.c:684
+#: builtin/submodule--helper.c:1873
+#, c-format
+msgid "refusing to create/use '%s' in another submodule's git dir"
+msgstr ""
+
+#: builtin/submodule--helper.c:1884
 #, c-format
 msgid "clone of '%s' into submodule path '%s' failed"
 msgstr "falha ao clonar '%s' no caminho de submódulo '%s'"
 
-#: builtin/submodule--helper.c:699
+#: builtin/submodule--helper.c:1888
+#, fuzzy, c-format
+msgid "directory not empty: '%s'"
+msgstr "o diretório de origem está vazio"
+
+#: builtin/submodule--helper.c:1900
 #, c-format
 msgid "could not get submodule directory for '%s'"
 msgstr "não foi possível obter o diretório do submódulo de '%s'"
 
-#: builtin/submodule--helper.c:764
+#: builtin/submodule--helper.c:1936
+#, fuzzy, c-format
+msgid "Invalid update mode '%s' for submodule path '%s'"
+msgstr "Falha ao registar o modo de atualização do caminho de submódulo '%s'"
+
+#: builtin/submodule--helper.c:1940
+#, fuzzy, c-format
+msgid "Invalid update mode '%s' configured for submodule path '%s'"
+msgstr "Falha ao registar o modo de atualização do caminho de submódulo '%s'"
+
+#: builtin/submodule--helper.c:2041
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr "Caminho de submódulo '%s' não inicializado"
 
-#: builtin/submodule--helper.c:768
+#: builtin/submodule--helper.c:2045
 msgid "Maybe you want to use 'update --init'?"
 msgstr "Pretendia usar 'update --init'?"
 
-#: builtin/submodule--helper.c:793
+#: builtin/submodule--helper.c:2075
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr "A ignorar submódulo %s não integrado"
 
-#: builtin/submodule--helper.c:814
+#: builtin/submodule--helper.c:2104
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr "A ignorar submódulo '%s'"
 
-#: builtin/submodule--helper.c:942
+#: builtin/submodule--helper.c:2254
 #, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
 msgstr "Falha ao clonar '%s'. Nova tentativa agendada"
 
-#: builtin/submodule--helper.c:953
+#: builtin/submodule--helper.c:2265
 #, c-format
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr "Falha ao clonar '%s' pela segunda vez, abortado"
 
-#: builtin/submodule--helper.c:974 builtin/submodule--helper.c:1162
+#: builtin/submodule--helper.c:2327 builtin/submodule--helper.c:2573
 msgid "path into the working tree"
 msgstr "caminho para a árvore de trabalho"
 
-#: builtin/submodule--helper.c:977
+#: builtin/submodule--helper.c:2330
 msgid "path into the working tree, across nested submodule boundaries"
 msgstr ""
 "caminho para a árvore de trabalho, atravessando limites de submódulos "
 "aninhados"
 
-#: builtin/submodule--helper.c:981
+#: builtin/submodule--helper.c:2334
 msgid "rebase, merge, checkout or none"
 msgstr "rebase, merge, checkout ou none"
 
-#: builtin/submodule--helper.c:985
+#: builtin/submodule--helper.c:2340
 msgid "Create a shallow clone truncated to the specified number of revisions"
 msgstr "criar um clone raso, truncado ao número especificado de revisões"
 
-#: builtin/submodule--helper.c:988
+#: builtin/submodule--helper.c:2343
 msgid "parallel jobs"
 msgstr "trabalhos em paralelo"
 
-#: builtin/submodule--helper.c:990
+#: builtin/submodule--helper.c:2345
 msgid "whether the initial clone should follow the shallow recommendation"
 msgstr "se o clone inicial deve seguir a recomendação rasa"
 
-#: builtin/submodule--helper.c:991
+#: builtin/submodule--helper.c:2346
 msgid "don't print cloning progress"
 msgstr "não imprimir progresso da clonagem"
 
-#: builtin/submodule--helper.c:998
-msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
+#: builtin/submodule--helper.c:2357
+#, fuzzy
+msgid "git submodule--helper update-clone [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper update_clone [--prefix=<caminho>] [<caminho>...]"
 
-#: builtin/submodule--helper.c:1008
+#: builtin/submodule--helper.c:2370
 msgid "bad value for update parameter"
 msgstr "valor incorreto no parâmetro update"
 
-#: builtin/submodule--helper.c:1079
+#: builtin/submodule--helper.c:2418
 #, c-format
 msgid ""
 "Submodule (%s) branch configured to inherit branch from superproject, but "
@@ -13233,33 +22092,106 @@ msgstr ""
 "O ramo do submódulo (%s) foi configurado para herdar o ramo do superprojeto, "
 "mas o superprojeto não está em nenhum ramo"
 
-#: builtin/submodule--helper.c:1163
+#: builtin/submodule--helper.c:2541
+#, fuzzy, c-format
+msgid "could not get a repository handle for submodule '%s'"
+msgstr "não foi possível procurar pelo submódulo '%s'"
+
+#: builtin/submodule--helper.c:2574
 msgid "recurse into submodules"
 msgstr "percorrer submódulos recursivamente"
 
-#: builtin/submodule--helper.c:1169
-msgid "git submodule--helper embed-git-dir [<path>...]"
+#: builtin/submodule--helper.c:2580
+#, fuzzy
+msgid "git submodule--helper absorb-git-dirs [<options>] [<path>...]"
 msgstr "git submodule--helper embed-git-dir [<caminho>...]"
 
-#: builtin/submodule--helper.c:1226
-msgid "submodule--helper subcommand must be called with a subcommand"
-msgstr "o subcomando submodule--helper deve ser invocado com um subcomando"
+#: builtin/submodule--helper.c:2636
+msgid "check if it is safe to write to the .gitmodules file"
+msgstr ""
+
+#: builtin/submodule--helper.c:2639
+#, fuzzy
+msgid "unset the config in the .gitmodules file"
+msgstr "falha ao preparar .gitmodules atualizado"
+
+#: builtin/submodule--helper.c:2644
+#, fuzzy
+msgid "git submodule--helper config <name> [<value>]"
+msgstr "git submodule--helper name <caminho>"
+
+#: builtin/submodule--helper.c:2645
+#, fuzzy
+msgid "git submodule--helper config --unset <name>"
+msgstr "git submodule--helper init [<caminho>]"
+
+#: builtin/submodule--helper.c:2646
+#, fuzzy
+msgid "git submodule--helper config --check-writeable"
+msgstr "git submodule--helper init [<caminho>]"
+
+#: builtin/submodule--helper.c:2665 git-submodule.sh:151
+#, fuzzy, sh-format
+msgid "please make sure that the .gitmodules file is in the working tree"
+msgstr ""
+"Prepare as suas alterações em .gitmodules ou esconda-as para prosseguir"
+
+#: builtin/submodule--helper.c:2681
+#, fuzzy
+msgid "Suppress output for setting url of a submodule"
+msgstr "Suprimir a saída ao inicializar um submódulo"
+
+#: builtin/submodule--helper.c:2685
+#, fuzzy
+msgid "git submodule--helper set-url [--quiet] <path> <newurl>"
+msgstr "git submodule--helper init [<caminho>]"
+
+#: builtin/submodule--helper.c:2718
+#, fuzzy
+msgid "set the default tracking branch to master"
+msgstr "mostrar os ramos de monitorização remotos"
 
-#: builtin/submodule--helper.c:1233
+#: builtin/submodule--helper.c:2720
+#, fuzzy
+msgid "set the default tracking branch"
+msgstr "mostrar os ramos de monitorização remotos"
+
+#: builtin/submodule--helper.c:2724
+#, fuzzy
+msgid "git submodule--helper set-branch [-q|--quiet] (-d|--default) <path>"
+msgstr "git submodule--helper list [--prefix=<caminho>] [<caminho>...]"
+
+#: builtin/submodule--helper.c:2725
+#, fuzzy
+msgid ""
+"git submodule--helper set-branch [-q|--quiet] (-b|--branch) <branch> <path>"
+msgstr "git submodule--helper list [--prefix=<caminho>] [<caminho>...]"
+
+#: builtin/submodule--helper.c:2732
+#, fuzzy
+msgid "--branch or --default required"
+msgstr "nome do ramo é obrigatório"
+
+#: builtin/submodule--helper.c:2735
+#, fuzzy
+msgid "--branch and --default are mutually exclusive"
+msgstr "--deepen e --depth são mutuamente exclusivos"
+
+#: builtin/submodule--helper.c:2792 git.c:438 git.c:710
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr "%s não suporta --super-prefix"
 
-#: builtin/submodule--helper.c:1239
+#: builtin/submodule--helper.c:2798
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr "'%s' não é um subcomando válido de submodule--helper"
 
-#: builtin/symbolic-ref.c:7
+#: builtin/symbolic-ref.c:8
 msgid "git symbolic-ref [<options>] <name> [<ref>]"
 msgstr "git symbolic-ref [<opções>] <nome> [<referência>]"
 
-#: builtin/symbolic-ref.c:8
+#: builtin/symbolic-ref.c:9
 msgid "git symbolic-ref -d [-q] <name>"
 msgstr "git symbolic-ref -d [-q] <nome>"
 
@@ -13276,51 +22208,54 @@ msgstr "eliminar referências simbólicas"
 msgid "shorten ref output"
 msgstr "encurtar a apresentação de referências"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:486
 msgid "reason"
 msgstr "razão"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:486
 msgid "reason of the update"
 msgstr "razão da atualização"
 
-#: builtin/tag.c:23
+#: builtin/tag.c:25
+#, fuzzy
 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-chave>] [-f] [-m <msg> | -F <ficheiro>] <nome-da-"
 "tag> [<head>]"
 
-#: builtin/tag.c:24
+#: builtin/tag.c:27
 msgid "git tag -d <tagname>..."
 msgstr "git tag -d <nome-da-tag>..."
 
-#: builtin/tag.c:25
+#: builtin/tag.c:28
+#, fuzzy
 msgid ""
 "git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
 "points-at <object>]\n"
-"\t\t[--format=<format>] [--[no-]merged [<commit>]] [<pattern>...]"
+"\t\t[--format=<format>] [--merged <commit>] [--no-merged <commit>] "
+"[<pattern>...]"
 msgstr ""
-"git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] "
-"[--points-at <objeto>]\n"
+"git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
+"points-at <objeto>]\n"
 "\t\t[--format=<formato>] [--[no-]merged [<commit>]] [<padrão>...]"
 
-#: builtin/tag.c:27
+#: builtin/tag.c:30
 msgid "git tag -v [--format=<format>] <tagname>..."
 msgstr "git tag -v [--format=<formato>] <nometag>..."
 
-#: builtin/tag.c:83
+#: builtin/tag.c:89
 #, c-format
 msgid "tag '%s' not found."
 msgstr "tag '%s' não encontrada."
 
-#: builtin/tag.c:99
+#: builtin/tag.c:105
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr "Tag '%s' eliminada (era %s)\n"
 
-#: builtin/tag.c:128
+#: builtin/tag.c:135
 #, c-format
 msgid ""
 "\n"
@@ -13333,7 +22268,7 @@ msgstr ""
 "  %s\n"
 "Linha começadas com '%c' serão ignoradas.\n"
 
-#: builtin/tag.c:132
+#: builtin/tag.c:139
 #, c-format
 msgid ""
 "\n"
@@ -13347,365 +22282,372 @@ msgstr ""
 "  %s\n"
 "Linhas começadas com '%c' serão mantidas; pode removê-las se o desejar.\n"
 
-#: builtin/tag.c:210
+#: builtin/tag.c:198
 msgid "unable to sign the tag"
 msgstr "não foi possível assinar a tag"
 
-#: builtin/tag.c:212
+#: builtin/tag.c:200
 msgid "unable to write tag file"
 msgstr "não foi possível escrever o ficheiro da tag"
 
-#: builtin/tag.c:236
+#: 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 ""
+
+#: builtin/tag.c:232
 msgid "bad object type."
 msgstr "tipo de objeto incorreto."
 
-#: builtin/tag.c:282
+#: builtin/tag.c:285
 msgid "no tag message?"
 msgstr "sem mensagem de tag?"
 
-#: builtin/tag.c:289
+#: builtin/tag.c:292
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr "A mensagem da tag foi guardada em %s\n"
 
-#: builtin/tag.c:312
-msgid "tag: tagging "
-msgstr "tag: a colocar tag"
-
-#: builtin/tag.c:320
-msgid "object of unknown type"
-msgstr "objeto de tipo desconhecido"
-
-#: builtin/tag.c:327
-msgid "commit object"
-msgstr "objeto commit"
-
-#: builtin/tag.c:335
-msgid "tree object"
-msgstr "objeto árvore"
-
-#: builtin/tag.c:338
-msgid "blob object"
-msgstr "objeto blob"
-
-#: builtin/tag.c:341
-msgid "other tag object"
-msgstr "outro objeto tag"
-
-#: builtin/tag.c:397
+#: builtin/tag.c:403
 msgid "list tag names"
 msgstr "listar os nomes das tag"
 
-#: builtin/tag.c:399
+#: builtin/tag.c:405
 msgid "print <n> lines of each tag message"
 msgstr "imprimir <n> linhas de cada mensagem de tag"
 
-#: builtin/tag.c:401
+#: builtin/tag.c:407
 msgid "delete tags"
 msgstr "eliminar tags"
 
-#: builtin/tag.c:402
+#: builtin/tag.c:408
 msgid "verify tags"
 msgstr "verificar tags"
 
-#: builtin/tag.c:404
+#: builtin/tag.c:410
 msgid "Tag creation options"
 msgstr "Opções de criação de tags"
 
-#: builtin/tag.c:406
+#: builtin/tag.c:412
 msgid "annotated tag, needs a message"
 msgstr "tag anotada, é necessário uma mensagem"
 
-#: builtin/tag.c:408
+#: builtin/tag.c:414
 msgid "tag message"
 msgstr "mensagem da tag"
 
-#: builtin/tag.c:410
+#: builtin/tag.c:416
+#, fuzzy
+msgid "force edit of tag message"
+msgstr "forçar edição do commit"
+
+#: builtin/tag.c:417
 msgid "annotated and GPG-signed tag"
 msgstr "tag anotada e assinada com GPG"
 
-#: builtin/tag.c:414
+#: builtin/tag.c:420
 msgid "use another key to sign the tag"
 msgstr "usar outra chave para assinar a tag"
 
-#: builtin/tag.c:415
+#: builtin/tag.c:421
 msgid "replace the tag if exists"
 msgstr "substituir a tag se esta existir"
 
-#: builtin/tag.c:416 builtin/update-ref.c:368
+#: builtin/tag.c:422 builtin/update-ref.c:492
 msgid "create a reflog"
 msgstr "criar um reflog"
 
-#: builtin/tag.c:418
+#: builtin/tag.c:424
 msgid "Tag listing options"
 msgstr "Opções de listagem de tags"
 
-#: builtin/tag.c:419
+#: builtin/tag.c:425
 msgid "show tag list in columns"
 msgstr "mostrar a lista de tags em colunas"
 
-#: builtin/tag.c:420 builtin/tag.c:422
+#: builtin/tag.c:426 builtin/tag.c:428
 msgid "print only tags that contain the commit"
 msgstr "imprimir apenas tags que contenham o commit"
 
-#: builtin/tag.c:421 builtin/tag.c:423
+#: builtin/tag.c:427 builtin/tag.c:429
 msgid "print only tags that don't contain the commit"
 msgstr "imprimir apenas tags que não contenham o commit"
 
-#: builtin/tag.c:424
+#: builtin/tag.c:430
 msgid "print only tags that are merged"
 msgstr "imprimir apenas as tags que foram integradas"
 
-#: builtin/tag.c:425
+#: builtin/tag.c:431
 msgid "print only tags that are not merged"
 msgstr "imprimir apenas as tags que não foram integradas"
 
-#: builtin/tag.c:430
+#: builtin/tag.c:435
 msgid "print only tags of the object"
 msgstr "imprimir apenas as tags do objeto"
 
-#: builtin/tag.c:469
+#: builtin/tag.c:483
 msgid "--column and -n are incompatible"
 msgstr "--column e -n são incompatíveis"
 
-#: builtin/tag.c:491
+#: builtin/tag.c:505
 msgid "-n option is only allowed in list mode"
 msgstr "a opção -n só é permitida no modo lista"
 
-#: builtin/tag.c:493
+#: builtin/tag.c:507
 msgid "--contains option is only allowed in list mode"
 msgstr "a opção --contains só é permitida no modo lista"
 
-#: builtin/tag.c:495
+#: builtin/tag.c:509
 msgid "--no-contains option is only allowed in list mode"
 msgstr "a opção --contains só é permitida no modo lista"
 
-#: builtin/tag.c:497
+#: builtin/tag.c:511
 msgid "--points-at option is only allowed in list mode"
 msgstr "a opção --points-at só é permitida no modo lista"
 
-#: builtin/tag.c:499
+#: builtin/tag.c:513
 msgid "--merged and --no-merged options are only allowed in list mode"
 msgstr "as opções --merged e --no-merged só são permitidas no modo lista"
 
-#: builtin/tag.c:510
+#: builtin/tag.c:524
 msgid "only one -F or -m option is allowed."
 msgstr "só é permitido um opção -F ou -m."
 
-#: builtin/tag.c:529
+#: builtin/tag.c:543
 msgid "too many params"
 msgstr "demasiado parâmetros"
 
-#: builtin/tag.c:535
+#: builtin/tag.c:549
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "'%s' não é um nome de tag válido."
 
-#: builtin/tag.c:540
+#: builtin/tag.c:554
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "a tag '%s' já existe"
 
-#: builtin/tag.c:570
+#: builtin/tag.c:585
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Tag '%s' atualizada (era %s)\n"
 
-#: builtin/unpack-objects.c:493
+#: builtin/unpack-objects.c:502
 msgid "Unpacking objects"
 msgstr "A descompactar objetos"
 
-#: builtin/update-index.c:79
+#: builtin/update-index.c:84
 #, c-format
 msgid "failed to create directory %s"
 msgstr "falha ao criar o diretório %s"
 
-#: builtin/update-index.c:85
-#, c-format
-msgid "failed to stat %s"
-msgstr "falha ao invocar stat de %s"
-
-#: builtin/update-index.c:95
+#: builtin/update-index.c:100
 #, c-format
 msgid "failed to create file %s"
 msgstr "falha ao criar o ficheiro %s"
 
-#: builtin/update-index.c:103
+#: builtin/update-index.c:108
 #, c-format
 msgid "failed to delete file %s"
 msgstr "falha ao eliminar o ficheiro %s"
 
-#: builtin/update-index.c:110 builtin/update-index.c:216
+#: builtin/update-index.c:115 builtin/update-index.c:221
 #, c-format
 msgid "failed to delete directory %s"
 msgstr "falha ao eliminar o diretório %s"
 
-#: builtin/update-index.c:135
+#: builtin/update-index.c:140
 #, c-format
 msgid "Testing mtime in '%s' "
 msgstr "A testar mtime em '%s' "
 
-#: builtin/update-index.c:149
+#: builtin/update-index.c:154
 msgid "directory stat info does not change after adding a new file"
 msgstr ""
 "a informação de stat do diretório não mudou depois de adicionar um novo "
 "ficheiro"
 
-#: builtin/update-index.c:162
+#: builtin/update-index.c:167
 msgid "directory stat info does not change after adding a new directory"
 msgstr ""
 "a informação de stat do diretório não mudou depois de adicionar um novo "
 "diretório"
 
-#: builtin/update-index.c:175
+#: builtin/update-index.c:180
 msgid "directory stat info changes after updating a file"
 msgstr "a informação de stat mudou depois de atualizar um ficheiro"
 
-#: builtin/update-index.c:186
+#: builtin/update-index.c:191
 msgid "directory stat info changes after adding a file inside subdirectory"
 msgstr ""
 "a informação de stat do diretório mudou depois de adicionar um ficheiro "
 "dentro dum subdiretório"
 
-#: builtin/update-index.c:197
+#: builtin/update-index.c:202
 msgid "directory stat info does not change after deleting a file"
 msgstr ""
 "a informação de stat do diretório não mudou depois de eliminar um ficheiro"
 
-#: builtin/update-index.c:210
+#: builtin/update-index.c:215
 msgid "directory stat info does not change after deleting a directory"
 msgstr ""
 "a informação de stat do diretório não mudou depois de eliminar um diretório"
 
-#: builtin/update-index.c:217
+#: builtin/update-index.c:222
 msgid " OK"
 msgstr " OK"
 
-#: builtin/update-index.c:568
+#: builtin/update-index.c:591
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr "git update-index [<opções>] [--] [<ficheiro>...]"
 
-#: builtin/update-index.c:923
+#: builtin/update-index.c:974
 msgid "continue refresh even when index needs update"
 msgstr "continuar a refrescar mesmo quando o índice precise de ser atualizado"
 
-#: builtin/update-index.c:926
+#: builtin/update-index.c:977
 msgid "refresh: ignore submodules"
 msgstr "refrescar: ignorar submódulos"
 
-#: builtin/update-index.c:929
+#: builtin/update-index.c:980
 msgid "do not ignore new files"
 msgstr "não ignorar novos ficheiros"
 
-#: builtin/update-index.c:931
+#: builtin/update-index.c:982
 msgid "let files replace directories and vice-versa"
 msgstr "deixar que os ficheiros substituam os diretórios e vice-versa"
 
-#: builtin/update-index.c:933
+#: builtin/update-index.c:984
 msgid "notice files missing from worktree"
 msgstr "avisar sobre ficheiros que faltem na árvore de trabalho"
 
-#: builtin/update-index.c:935
+#: builtin/update-index.c:986
 msgid "refresh even if index contains unmerged entries"
 msgstr "refrescar mesmo que o índice contenha entradas não integradas"
 
-#: builtin/update-index.c:938
+#: builtin/update-index.c:989
 msgid "refresh stat information"
 msgstr "refrescar informação de stat"
 
-#: builtin/update-index.c:942
+#: builtin/update-index.c:993
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "como --refresh, mas ignorar a definição assume-unchanged"
 
-#: builtin/update-index.c:946
+#: builtin/update-index.c:997
 msgid "<mode>,<object>,<path>"
 msgstr "<modo>,<objeto>,<caminho>"
 
-#: builtin/update-index.c:947
+#: builtin/update-index.c:998
 msgid "add the specified entry to the index"
 msgstr "adicionar o elemento especificado ao índice"
 
-#: builtin/update-index.c:956
+#: builtin/update-index.c:1008
 msgid "mark files as \"not changing\""
 msgstr "marcar ficheiros como \"não alterados\""
 
-#: builtin/update-index.c:959
+#: builtin/update-index.c:1011
 msgid "clear assumed-unchanged bit"
 msgstr "limpar o bit assumed-unchanged"
 
-#: builtin/update-index.c:962
+#: builtin/update-index.c:1014
 msgid "mark files as \"index-only\""
 msgstr "marcar ficheiros como \"únicos do índice\""
 
-#: builtin/update-index.c:965
+#: builtin/update-index.c:1017
 msgid "clear skip-worktree bit"
 msgstr "limpar o bit ignorar-árvore-de-trabalho"
 
-#: builtin/update-index.c:968
+#: builtin/update-index.c:1020
+msgid "do not touch index-only entries"
+msgstr ""
+
+#: builtin/update-index.c:1022
 msgid "add to index only; do not add content to object database"
 msgstr ""
 "só adicionar ao índice; não adicionar o conteúdo à base de dados de objetos"
 
-#: builtin/update-index.c:970
+#: builtin/update-index.c:1024
 msgid "remove named paths even if present in worktree"
 msgstr ""
 "remover os caminhos mencionado mesmo se estiverem presentes na árvore de "
 "trabalho"
 
-#: builtin/update-index.c:972
+#: builtin/update-index.c:1026
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr "com --stdin: as linhas da entrada são terminadas com bytes nulos"
 
-#: builtin/update-index.c:974
+#: builtin/update-index.c:1028
 msgid "read list of paths to be updated from standard input"
 msgstr "ler lista de caminho a atualizar da entrada padrão"
 
-#: builtin/update-index.c:978
+#: builtin/update-index.c:1032
 msgid "add entries from standard input to the index"
 msgstr "adicionar elementos da entrada padrão ao índice"
 
-#: builtin/update-index.c:982
+#: builtin/update-index.c:1036
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr "repovoar as fases nº2 e nº3 dos caminhos listados"
 
-#: builtin/update-index.c:986
+#: builtin/update-index.c:1040
 msgid "only update entries that differ from HEAD"
 msgstr "atualizar apenas elementos que difiram de HEAD"
 
-#: builtin/update-index.c:990
+#: builtin/update-index.c:1044
 msgid "ignore files missing from worktree"
 msgstr "ignorar ficheiros não presentes na árvore de trabalho"
 
-#: builtin/update-index.c:993
+#: builtin/update-index.c:1047
 msgid "report actions to standard output"
 msgstr "mostrar ações na saída padrão"
 
-#: builtin/update-index.c:995
+#: builtin/update-index.c:1049
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr ""
 "(para porcelanas) esquecer conflitos guardados que não foram resolvidos"
 
-#: builtin/update-index.c:999
+#: builtin/update-index.c:1053
 msgid "write index in this format"
 msgstr "escrever o índice neste formato"
 
-#: builtin/update-index.c:1001
+#: builtin/update-index.c:1055
 msgid "enable or disable split index"
 msgstr "ativar ou desativar a divisão do índice"
 
-#: builtin/update-index.c:1003
+#: builtin/update-index.c:1057
 msgid "enable/disable untracked cache"
 msgstr "ativar ou desativar cache não controlada"
 
-#: builtin/update-index.c:1005
+#: builtin/update-index.c:1059
 msgid "test if the filesystem supports untracked cache"
 msgstr "testar se o sistema de ficheiros suporta cache não controlada"
 
-#: builtin/update-index.c:1007
+#: builtin/update-index.c:1061
 msgid "enable untracked cache without testing the filesystem"
 msgstr "ativar cache não controlada sem testar o sistema de ficheiros"
 
-#: builtin/update-index.c:1107
+#: builtin/update-index.c:1063
+msgid "write out the index even if is not flagged as changed"
+msgstr ""
+
+#: builtin/update-index.c:1065
+#, fuzzy
+msgid "enable or disable file system monitor"
+msgstr "ativar ou desativar a divisão do índice"
+
+#: builtin/update-index.c:1067
+#, fuzzy
+msgid "mark files as fsmonitor valid"
+msgstr "marcar ficheiros como \"não alterados\""
+
+#: builtin/update-index.c:1070
+msgid "clear fsmonitor valid bit"
+msgstr ""
+
+#: builtin/update-index.c:1173
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
@@ -13713,7 +22655,7 @@ msgstr ""
 "core.splitIndex está definida como false; remova ou altere-a se pretende "
 "mesmo ativar índice separado"
 
-#: builtin/update-index.c:1116
+#: builtin/update-index.c:1182
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
@@ -13721,7 +22663,7 @@ msgstr ""
 "core.splitIndex está definida como true; remova ou altere-a se pretende "
 "mesmo desativar índice separado"
 
-#: builtin/update-index.c:1127
+#: 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"
@@ -13729,11 +22671,11 @@ msgstr ""
 "core.untrackedCache está definida como true; remova ou altere-a se pretende "
 "mesmo desativar a cache não controlada"
 
-#: builtin/update-index.c:1131
+#: builtin/update-index.c:1198
 msgid "Untracked cache disabled"
 msgstr "A cache não controlada está desativada"
 
-#: builtin/update-index.c:1139
+#: 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"
@@ -13741,71 +22683,114 @@ msgstr ""
 "core.untrackedCache está definida como false; remova ou altere-a se pretende "
 "mesmo ativar a cache não controlada"
 
-#: builtin/update-index.c:1143
+#: builtin/update-index.c:1210
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr "A cache não controlada de '%s' foi ativada."
 
-#: builtin/update-ref.c:9
+#: builtin/update-index.c:1218
+#, fuzzy
+msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
+msgstr ""
+"core.splitIndex está definida como false; remova ou altere-a se pretende "
+"mesmo ativar índice separado"
+
+#: builtin/update-index.c:1222
+msgid "fsmonitor enabled"
+msgstr ""
+
+#: builtin/update-index.c:1225
+#, fuzzy
+msgid ""
+"core.fsmonitor is set; remove it if you really want to disable fsmonitor"
+msgstr ""
+"core.splitIndex está definida como true; remova ou altere-a se pretende "
+"mesmo desativar índice separado"
+
+#: builtin/update-index.c:1229
+msgid "fsmonitor disabled"
+msgstr ""
+
+#: builtin/update-ref.c:10
 msgid "git update-ref [<options>] -d <refname> [<old-val>]"
 msgstr "git update-ref [<opções>] -d <nome-da-referência> [<valor-antigo>]"
 
-#: builtin/update-ref.c:10
+#: builtin/update-ref.c:11
 msgid "git update-ref [<options>]    <refname> <new-val> [<old-val>]"
 msgstr ""
 "git update-ref [<opções>]    <nome-da-referência> <novo-valor> [<valor-"
 "antigo>]"
 
-#: builtin/update-ref.c:11
+#: builtin/update-ref.c:12
 msgid "git update-ref [<options>] --stdin [-z]"
 msgstr "git update-ref [<opções>] --stdin [-z]"
 
-#: builtin/update-ref.c:363
+#: builtin/update-ref.c:487
 msgid "delete the reference"
 msgstr "eliminar a referência"
 
-#: builtin/update-ref.c:365
+#: builtin/update-ref.c:489
 msgid "update <refname> not the one it points to"
 msgstr ""
 "atualizar a referência <nome-da-referência>, não a referência que esta aponta"
 
-#: builtin/update-ref.c:366
+#: builtin/update-ref.c:490
 msgid "stdin has NUL-terminated arguments"
 msgstr "os argumentos da entrada padrão terminam em NUL"
 
-#: builtin/update-ref.c:367
+#: builtin/update-ref.c:491
 msgid "read updates from stdin"
 msgstr "ler atualizações da entrada padrão"
 
-#: builtin/update-server-info.c:6
+#: builtin/update-server-info.c:7
 msgid "git update-server-info [--force]"
 msgstr "git update-server-info [--force]"
 
-#: builtin/update-server-info.c:14
+#: builtin/update-server-info.c:15
 msgid "update the info files from scratch"
 msgstr "atualizar os ficheiros de informação do zero"
 
-#: builtin/verify-commit.c:17
+#: builtin/upload-pack.c:11
+msgid "git upload-pack [<options>] <dir>"
+msgstr "git upload-pack [<opções>] <dir>"
+
+#: builtin/upload-pack.c:23 t/helper/test-serve-v2.c:17
+msgid "quit after a single request/response exchange"
+msgstr "terminar depois de uma única troca de pedido/resposta"
+
+#: builtin/upload-pack.c:25
+msgid "exit immediately after initial ref advertisement"
+msgstr "sair imediatamente depois do anúncio inicial da referência"
+
+#: builtin/upload-pack.c:27
+msgid "do not try <directory>/.git/ if <directory> is no Git directory"
+msgstr "não tentar <diretório>/.git/ se o <diretório> não for um diretório Git"
+
+#: builtin/upload-pack.c:29
+msgid "interrupt transfer after <n> seconds of inactivity"
+msgstr "interromper transferência depois de <n> segundos de inatividade"
+
+#: builtin/verify-commit.c:19
 msgid "git verify-commit [-v | --verbose] <commit>..."
 msgstr "git verify-commit [-v | --verbose] <commit>..."
 
-#: builtin/verify-commit.c:72
+#: builtin/verify-commit.c:68
 msgid "print commit contents"
 msgstr "imprimir conteúdo do commit"
 
-#: builtin/verify-commit.c:73 builtin/verify-tag.c:37
+#: builtin/verify-commit.c:69 builtin/verify-tag.c:37
 msgid "print raw gpg status output"
 msgstr "imprimir informação do gpg em bruto"
 
-#: builtin/verify-pack.c:54
+#: builtin/verify-pack.c:59
 msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
 msgstr "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
 
-#: builtin/verify-pack.c:64
+#: builtin/verify-pack.c:70
 msgid "verbose"
 msgstr "verboso"
 
-#: builtin/verify-pack.c:66
+#: builtin/verify-pack.c:72
 msgid "show statistics only"
 msgstr "mostrar apenas estatísticas"
 
@@ -13817,198 +22802,501 @@ msgstr "git verify-tag [-v | --verbose] [--format=<formato>] <tag>..."
 msgid "print tag contents"
 msgstr "imprimir conteúdo da tag"
 
-#: builtin/worktree.c:15
-msgid "git worktree add [<options>] <path> [<branch>]"
+#: builtin/worktree.c:17
+#, fuzzy
+msgid "git worktree add [<options>] <path> [<commit-ish>]"
 msgstr "git worktree add [<opções>] <caminho> [<ramo>]"
 
-#: builtin/worktree.c:16
+#: builtin/worktree.c:18
 msgid "git worktree list [<options>]"
 msgstr "git worktree list [<opções>]"
 
-#: builtin/worktree.c:17
+#: builtin/worktree.c:19
 msgid "git worktree lock [<options>] <path>"
 msgstr "git worktree lock [<opções>] <caminho>"
 
-#: builtin/worktree.c:18
+#: builtin/worktree.c:20
+#, fuzzy
+msgid "git worktree move <worktree> <new-path>"
+msgstr "git worktree lock [<opções>] <caminho>"
+
+#: builtin/worktree.c:21
 msgid "git worktree prune [<options>]"
 msgstr "git worktree prune [<opções>]"
 
-#: builtin/worktree.c:19
+#: builtin/worktree.c:22
+#, fuzzy
+msgid "git worktree remove [<options>] <worktree>"
+msgstr "git worktree lock [<opções>] <caminho>"
+
+#: builtin/worktree.c:23
 msgid "git worktree unlock <path>"
 msgstr "git worktree unlock <caminho>"
 
-#: builtin/worktree.c:42
-#, c-format
-msgid "Removing worktrees/%s: not a valid directory"
-msgstr "A remover worktrees/%s: diretório inválido"
+#: builtin/worktree.c:60 builtin/worktree.c:970
+#, fuzzy, c-format
+msgid "failed to delete '%s'"
+msgstr "falha ao executar '%s'"
 
-#: builtin/worktree.c:48
-#, c-format
-msgid "Removing worktrees/%s: gitdir file does not exist"
+#: builtin/worktree.c:85
+#, fuzzy
+msgid "not a valid directory"
+msgstr "nome de objeto inválido: %s"
+
+#: builtin/worktree.c:91
+#, fuzzy
+msgid "gitdir file does not exist"
 msgstr "A remover worktrees/%s: o ficheiro gitdir não existe"
 
-#: builtin/worktree.c:53
-#, c-format
-msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
-msgstr "A remover worktrees/%s: não é possível ler o ficheiro gitdir (%s)"
+#: builtin/worktree.c:96 builtin/worktree.c:105
+#, fuzzy, c-format
+msgid "unable to read gitdir file (%s)"
+msgstr "não foi possível ler a árvore (%s)"
 
-#: builtin/worktree.c:64
+#: builtin/worktree.c:115
 #, c-format
-msgid "Removing worktrees/%s: invalid gitdir file"
-msgstr "A remover worktrees/%s: ficheiro gitdir inválido"
+msgid "short read (expected %<PRIuMAX> bytes, read %<PRIuMAX>)"
+msgstr ""
 
-#: builtin/worktree.c:80
-#, c-format
-msgid "Removing worktrees/%s: gitdir file points to non-existent location"
+#: builtin/worktree.c:123
+#, fuzzy
+msgid "invalid gitdir file"
+msgstr "linha de Data inválida"
+
+#: builtin/worktree.c:131
+#, fuzzy
+msgid "gitdir file points to non-existent location"
 msgstr ""
 "A remover worktrees/%s: o ficheiro gitdir aponta para uma localização "
 "inexistente"
 
-#: builtin/worktree.c:128
+#: builtin/worktree.c:146
+#, fuzzy, c-format
+msgid "Removing %s/%s: %s"
+msgstr "A remover %s"
+
+#: builtin/worktree.c:221
 msgid "report pruned working trees"
 msgstr "reportar árvores de trabalho podadas"
 
-#: builtin/worktree.c:130
+#: builtin/worktree.c:223
 msgid "expire working trees older than <time>"
 msgstr "expirar árvores de trabalho mais antigos que <tempo>"
 
-#: builtin/worktree.c:204
+#: builtin/worktree.c:293
 #, c-format
 msgid "'%s' already exists"
 msgstr "'%s' já existe"
 
-#: builtin/worktree.c:236
+#: builtin/worktree.c:302
+#, fuzzy, c-format
+msgid "unusable worktree destination '%s'"
+msgstr "não é possível ler o ficheiro de assinatura '%s'"
+
+#: builtin/worktree.c:307
+#, c-format
+msgid ""
+"'%s' is a missing but locked worktree;\n"
+"use '%s -f -f' to override, or 'unlock' and 'prune' or 'remove' to clear"
+msgstr ""
+
+#: builtin/worktree.c:309
+#, c-format
+msgid ""
+"'%s' is a missing but already registered worktree;\n"
+"use '%s -f' to override, or 'prune' or 'remove' to clear"
+msgstr ""
+
+#: builtin/worktree.c:360
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "não foi possível criar o diretório de '%s'"
 
-#: builtin/worktree.c:272
+#: builtin/worktree.c:494 builtin/worktree.c:500
+#, fuzzy, c-format
+msgid "Preparing worktree (new branch '%s')"
+msgstr "Erro a eliminar ramo '%s'"
+
+#: builtin/worktree.c:496
 #, c-format
-msgid "Preparing %s (identifier %s)"
+msgid "Preparing worktree (resetting branch '%s'; was at %s)"
+msgstr ""
+
+#: builtin/worktree.c:505
+#, c-format
+msgid "Preparing worktree (checking out '%s')"
+msgstr ""
+
+#: builtin/worktree.c:511
+#, fuzzy, c-format
+msgid "Preparing worktree (detached HEAD %s)"
 msgstr "A preparar %s (identificador %s)"
 
-#: builtin/worktree.c:324
+#: builtin/worktree.c:552
 msgid "checkout <branch> even if already checked out in other worktree"
 msgstr ""
 "extrair o <ramo> mesmo se já tenha sido extraído noutra árvore de trabalho"
 
-#: builtin/worktree.c:326
+#: builtin/worktree.c:555
 msgid "create a new branch"
 msgstr "criar um novo ramo"
 
-#: builtin/worktree.c:328
+#: builtin/worktree.c:557
 msgid "create or reset a branch"
 msgstr "criar ou repor um ramo"
 
-#: builtin/worktree.c:330
+#: builtin/worktree.c:559
 msgid "populate the new working tree"
 msgstr "povoar a nova árvore de trabalho"
 
-#: builtin/worktree.c:338
+#: builtin/worktree.c:560
+#, fuzzy
+msgid "keep the new working tree locked"
+msgstr "povoar a nova árvore de trabalho"
+
+#: builtin/worktree.c:563
+#, fuzzy
+msgid "set up tracking mode (see git-branch(1))"
+msgstr "configurar modo de seguimento (consulte git-pull(1))"
+
+#: builtin/worktree.c:566
+#, fuzzy
+msgid "try to match the new branch name with a remote-tracking branch"
+msgstr ""
+"o ramo a montante '%s' não está guardado como um ramo de monitorização remoto"
+
+#: builtin/worktree.c:574
 msgid "-b, -B, and --detach are mutually exclusive"
 msgstr "-b, -B e --detach são mutuamente exclusivos"
 
-#: builtin/worktree.c:473
+#: builtin/worktree.c:635
+#, fuzzy
+msgid "--[no-]track can only be used if a new branch is created"
+msgstr "A ação --edit-todo só pode ser usada durante um rebase interativo."
+
+#: builtin/worktree.c:755
 msgid "reason for locking"
 msgstr "razão de trancar"
 
-#: builtin/worktree.c:485 builtin/worktree.c:518
+#: builtin/worktree.c:767 builtin/worktree.c:800 builtin/worktree.c:874
+#: builtin/worktree.c:998
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "'%s' não é uma árvore de trabalho"
 
-#: builtin/worktree.c:487 builtin/worktree.c:520
+#: builtin/worktree.c:769 builtin/worktree.c:802
 msgid "The main working tree cannot be locked or unlocked"
 msgstr "A árvore de trabalho principal não pode ser trancada nem destrancada"
 
-#: builtin/worktree.c:492
+#: builtin/worktree.c:774
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr "'%s' já está trancada, razão: %s"
 
-#: builtin/worktree.c:494
+#: builtin/worktree.c:776
 #, c-format
 msgid "'%s' is already locked"
 msgstr "'%s' já está trancada"
 
-#: builtin/worktree.c:522
+#: builtin/worktree.c:804
 #, c-format
 msgid "'%s' is not locked"
 msgstr "'%s' não está trancada"
 
-#: builtin/write-tree.c:13
+#: builtin/worktree.c:845
+msgid "working trees containing submodules cannot be moved or removed"
+msgstr ""
+
+#: builtin/worktree.c:853
+#, fuzzy
+msgid "force move even if worktree is dirty or locked"
+msgstr "forçar mover/mudar o nome mesmo que o destino exista"
+
+#: builtin/worktree.c:876 builtin/worktree.c:1000
+#, fuzzy, c-format
+msgid "'%s' is a main working tree"
+msgstr "'%s' não é uma árvore de trabalho"
+
+#: builtin/worktree.c:881
+#, fuzzy, c-format
+msgid "could not figure out destination name from '%s'"
+msgstr "não foi possível migrar o diretório git de '%s' para '%s'"
+
+#: builtin/worktree.c:894
+#, c-format
+msgid ""
+"cannot move a locked working tree, lock reason: %s\n"
+"use 'move -f -f' to override or unlock first"
+msgstr ""
+
+#: builtin/worktree.c:896
+msgid ""
+"cannot move a locked working tree;\n"
+"use 'move -f -f' to override or unlock first"
+msgstr ""
+
+#: builtin/worktree.c:899
+#, c-format
+msgid "validation failed, cannot move working tree: %s"
+msgstr ""
+
+#: builtin/worktree.c:904
+#, fuzzy, c-format
+msgid "failed to move '%s' to '%s'"
+msgstr "falha ao abrir '%s': %s"
+
+#: builtin/worktree.c:950
+#, fuzzy, c-format
+msgid "failed to run 'git status' on '%s'"
+msgstr "falha ao escrever para '%s'"
+
+#: builtin/worktree.c:954
+#, c-format
+msgid "'%s' contains modified or untracked files, use --force to delete it"
+msgstr ""
+
+#: builtin/worktree.c:959
+#, fuzzy, c-format
+msgid "failed to run 'git status' on '%s', code %d"
+msgstr "não foi possível executar 'git status' no submódulo '%s'"
+
+#: builtin/worktree.c:982
+msgid "force removal even if worktree is dirty or locked"
+msgstr ""
+
+#: builtin/worktree.c:1005
+#, c-format
+msgid ""
+"cannot remove a locked working tree, lock reason: %s\n"
+"use 'remove -f -f' to override or unlock first"
+msgstr ""
+
+#: builtin/worktree.c:1007
+msgid ""
+"cannot remove a locked working tree;\n"
+"use 'remove -f -f' to override or unlock first"
+msgstr ""
+
+#: builtin/worktree.c:1010
+#, c-format
+msgid "validation failed, cannot remove working tree: %s"
+msgstr ""
+
+#: builtin/worktree.c:1034
+#, fuzzy, c-format
+msgid "repair: %s: %s"
+msgstr "%s: %s"
+
+#: builtin/worktree.c:1037
+#, fuzzy, c-format
+msgid "error: %s: %s"
+msgstr "%s: %s"
+
+#: builtin/write-tree.c:15
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
 msgstr "git write-tree [--missing-ok] [--prefix=<prefixo>/]"
 
-#: builtin/write-tree.c:26
+#: builtin/write-tree.c:28
 msgid "<prefix>/"
 msgstr "<prefixo>/"
 
-#: builtin/write-tree.c:27
+#: builtin/write-tree.c:29
 msgid "write tree object for a subdirectory <prefix>"
 msgstr "escrever objeto árvore do subdiretório <prefixo>"
 
-#: builtin/write-tree.c:30
+#: builtin/write-tree.c:31
 msgid "only useful for debugging"
 msgstr "apenas útil para depuração"
 
-#: upload-pack.c:22
-msgid "git upload-pack [<options>] <dir>"
-msgstr "git upload-pack [<opções>] <dir>"
+#: http-fetch.c:114
+#, c-format
+msgid "argument to --packfile must be a valid hash (got '%s')"
+msgstr ""
 
-#: upload-pack.c:1040
-msgid "quit after a single request/response exchange"
-msgstr "terminar depois de uma única troca de pedido/resposta"
+#: http-fetch.c:122
+#, fuzzy
+msgid "not a git repository"
+msgstr "Não é um repositório git"
 
-#: upload-pack.c:1042
-msgid "exit immediately after initial ref advertisement"
-msgstr "sair imediatamente depois do anúncio inicial da referência"
+#: t/helper/test-reach.c:154
+#, fuzzy, c-format
+msgid "commit %s is not marked reachable"
+msgstr "o commit %s não tem o pai %d"
 
-#: upload-pack.c:1044
-msgid "do not try <directory>/.git/ if <directory> is no Git directory"
-msgstr "não tentar <diretório>/.git/ se o <diretório> não for um diretório Git"
+#: t/helper/test-reach.c:164
+msgid "too many commits marked reachable"
+msgstr ""
 
-#: upload-pack.c:1046
-msgid "interrupt transfer after <n> seconds of inactivity"
-msgstr "interromper transferência depois de <n> segundos de inatividade"
+#: t/helper/test-serve-v2.c:7
+#, fuzzy
+msgid "test-tool serve-v2 [<options>]"
+msgstr "git rebase--helper [<opções>]"
 
-#: credential-cache--daemon.c:223
-#, c-format
+#: t/helper/test-serve-v2.c:19
+#, fuzzy
+msgid "exit immediately after advertising capabilities"
+msgstr "sair imediatamente depois do anúncio inicial da referência"
+
+#: git.c:28
 msgid ""
-"The permissions on your socket directory are too loose; other\n"
-"users may be able to read your cached credentials. Consider running:\n"
-"\n"
-"\tchmod 0700 %s"
+"git [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
+"           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
+"           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--"
+"bare]\n"
+"           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
+"           <command> [<args>]"
 msgstr ""
-"As permissões do diretório do socket são demasiado fracas; outros\n"
-"utilizadores poderão conseguir as suas credenciais em cache. Considere "
-"executar:\n"
-"\n"
-"\tchmod 0700 %s"
 
-#: credential-cache--daemon.c:271
-msgid "print debugging messages to stderr"
-msgstr "imprimir mensagens de depuração no stderr"
-
-#: git.c:14
+#: git.c:35
+#, fuzzy
 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' listam os subcomandos disponíveis e alguns\n"
 "guias de conceitos. Consulte 'git help <comando>' ou 'git help <conceito>'\n"
 "para ler sobre um subcomando ou conceito específico."
 
-#: http.c:355
+#: git.c:187
+#, c-format
+msgid "no directory given for --git-dir\n"
+msgstr ""
+
+#: git.c:201
+#, c-format
+msgid "no namespace given for --namespace\n"
+msgstr ""
+
+#: git.c:215
+#, c-format
+msgid "no directory given for --work-tree\n"
+msgstr ""
+
+#: git.c:229
+#, fuzzy, c-format
+msgid "no prefix given for --super-prefix\n"
+msgstr "%s não suporta --super-prefix"
+
+#: git.c:251
+#, c-format
+msgid "-c expects a configuration string\n"
+msgstr ""
+
+#: git.c:289
+#, c-format
+msgid "no directory given for -C\n"
+msgstr ""
+
+#: git.c:315
+#, fuzzy, c-format
+msgid "unknown option: %s\n"
+msgstr "opção desconhecido %s"
+
+#: git.c:364
+#, c-format
+msgid "while expanding alias '%s': '%s'"
+msgstr ""
+
+#: git.c:373
+#, c-format
+msgid ""
+"alias '%s' changes environment variables.\n"
+"You can use '!git' in the alias to do this"
+msgstr ""
+
+#: git.c:380
+#, c-format
+msgid "empty alias for %s"
+msgstr ""
+
+#: git.c:383
+#, c-format
+msgid "recursive alias: %s"
+msgstr ""
+
+#: git.c:465
+#, fuzzy
+msgid "write failure on standard output"
+msgstr "mostrar ações na saída padrão"
+
+#: git.c:467
+#, fuzzy
+msgid "unknown write failure on standard output"
+msgstr "mostrar ações na saída padrão"
+
+#: git.c:469
+#, fuzzy
+msgid "close failed on standard output"
+msgstr "enviar resultados para a saída padrão"
+
+#: git.c:819
+#, c-format
+msgid "alias loop detected: expansion of '%s' does not terminate:%s"
+msgstr ""
+
+#: git.c:869
+#, fuzzy, c-format
+msgid "cannot handle %s as a builtin"
+msgstr "não é possível enviar mensagem como 7bit"
+
+#: git.c:882
+#, fuzzy, c-format
+msgid ""
+"usage: %s\n"
+"\n"
+msgstr "utilização: %s"
+
+#: git.c:902
+#, c-format
+msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
+msgstr ""
+
+#: git.c:914
+#, fuzzy, c-format
+msgid "failed to run command '%s': %s\n"
+msgstr "falha ao abrir '%s': %s"
+
+#: http.c:399
+#, c-format
+msgid "negative value for http.postbuffer; defaulting to %d"
+msgstr ""
+
+#: http.c:420
 msgid "Delegation control is not supported with cURL < 7.22.0"
 msgstr "Não é suportado delegar controlo com cURL < 7.22.0"
 
-#: http.c:364
+#: http.c:429
 msgid "Public key pinning not supported with cURL < 7.44.0"
 msgstr "Não é suportado afixar chaves públicas com cURL < 7.44.0"
 
-#: http.c:1755
+#: http.c:910
+#, fuzzy
+msgid "CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0"
+msgstr "Não é suportado afixar chaves públicas com cURL < 7.44.0"
+
+#: http.c:989
+#, fuzzy
+msgid "Protocol restrictions not supported with cURL < 7.19.4"
+msgstr "Não é suportado afixar chaves públicas com cURL < 7.44.0"
+
+#: http.c:1132
+#, c-format
+msgid "Unsupported SSL backend '%s'. Supported SSL backends:"
+msgstr ""
+
+#: http.c:1139
+#, c-format
+msgid "Could not set SSL backend to '%s': cURL was built without SSL backends"
+msgstr ""
+
+#: http.c:1143
+#, fuzzy, c-format
+msgid "Could not set SSL backend to '%s': already set"
+msgstr "Não foi possível voltar para $head_name"
+
+#: http.c:2025
 #, c-format
 msgid ""
 "unable to update url base from redirection:\n"
@@ -14019,275 +23307,993 @@ msgstr ""
 "  pedido para: %s\n"
 "    redireção: %s"
 
-#: remote-curl.c:323
+#: remote-curl.c:174
+#, fuzzy, c-format
+msgid "invalid quoting in push-option value: '%s'"
+msgstr "opção inválida: %s"
+
+#: remote-curl.c:298
+#, fuzzy, c-format
+msgid "%sinfo/refs not valid: is this a git repository?"
+msgstr "'%s' não é reconhecido como um repositório git"
+
+#: remote-curl.c:399
+msgid "invalid server response; expected service, got flush packet"
+msgstr ""
+
+#: remote-curl.c:430
+#, fuzzy, c-format
+msgid "invalid server response; got '%s'"
+msgstr "referência inválida: %s"
+
+#: remote-curl.c:490
+#, fuzzy, c-format
+msgid "repository '%s' not found"
+msgstr "o repositório '%s' não existe"
+
+#: remote-curl.c:494
+#, fuzzy, c-format
+msgid "Authentication failed for '%s'"
+msgstr "Falha ao executar: $rest"
+
+#: remote-curl.c:498
+#, c-format
+msgid "unable to access '%s': %s"
+msgstr "não é possível aceder a '%s': %s"
+
+#: remote-curl.c:504
 #, c-format
 msgid "redirecting to %s"
 msgstr "a redirecionar para %s "
 
-#: common-cmds.h:9
-msgid "start a working area (see also: git help tutorial)"
-msgstr "iniciar uma área de trabalho (consulte também: git help tutorial)"
+#: remote-curl.c:633
+msgid "shouldn't have EOF when not gentle on EOF"
+msgstr ""
 
-#: common-cmds.h:10
-msgid "work on the current change (see also: git help everyday)"
-msgstr "trabalhar na alteração atual (consulte também: git help everyday)"
+#: remote-curl.c:645
+msgid "remote server sent stateless separator"
+msgstr ""
 
-#: common-cmds.h:11
-msgid "examine the history and state (see also: git help revisions)"
-msgstr "examinar o histórico e estado (consulte também: git help revisions)"
+#: remote-curl.c:715
+msgid "unable to rewind rpc post data - try increasing http.postBuffer"
+msgstr ""
 
-#: common-cmds.h:12
-msgid "grow, mark and tweak your common history"
-msgstr "aumentar, marcar e ajustar o seu histórico comum"
+#: remote-curl.c:745
+#, c-format
+msgid "remote-curl: bad line length character: %.4s"
+msgstr ""
 
-#: common-cmds.h:13
-msgid "collaborate (see also: git help workflows)"
-msgstr "colaborar (consulte também: git help workflows)"
+#: remote-curl.c:747
+msgid "remote-curl: unexpected response end packet"
+msgstr ""
+
+#: remote-curl.c:823
+#, fuzzy, c-format
+msgid "RPC failed; %s"
+msgstr "falha: %d"
+
+#: remote-curl.c:863
+#, fuzzy
+msgid "cannot handle pushes this big"
+msgstr "não é possível processar mais do que %d revisão."
+
+#: remote-curl.c:978
+#, c-format
+msgid "cannot deflate request; zlib deflate error %d"
+msgstr ""
+
+#: remote-curl.c:982
+#, c-format
+msgid "cannot deflate request; zlib end error %d"
+msgstr ""
+
+#: remote-curl.c:1032
+#, c-format
+msgid "%d bytes of length header were received"
+msgstr ""
+
+#: remote-curl.c:1034
+#, c-format
+msgid "%d bytes of body are still expected"
+msgstr ""
+
+#: remote-curl.c:1123
+#, fuzzy
+msgid "dumb http transport does not support shallow capabilities"
+msgstr "O servidor não suporta clientes rasos"
+
+#: remote-curl.c:1138
+#, fuzzy
+msgid "fetch failed."
+msgstr "falha ao executar o comando stash"
+
+#: remote-curl.c:1184
+msgid "cannot fetch by sha1 over smart http"
+msgstr ""
+
+#: remote-curl.c:1228 remote-curl.c:1234
+#, fuzzy, c-format
+msgid "protocol error: expected sha/ref, got '%s'"
+msgstr "erro de protocolo: cabeçalho de pacote incorreto"
+
+#: remote-curl.c:1246 remote-curl.c:1361
+#, fuzzy, c-format
+msgid "http transport does not support %s"
+msgstr "O servidor não suporta STARTTLS! %s"
+
+#: remote-curl.c:1282
+#, fuzzy
+msgid "git-http-push failed"
+msgstr "falha ao executar o comando stash"
+
+#: remote-curl.c:1467
+msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
+msgstr ""
+
+#: remote-curl.c:1499
+msgid "remote-curl: error reading command stream from git"
+msgstr ""
 
-#: common-cmds.h:17
+#: remote-curl.c:1506
+msgid "remote-curl: fetch attempted without a local repo"
+msgstr ""
+
+#: remote-curl.c:1547
+#, c-format
+msgid "remote-curl: unknown command '%s' from git"
+msgstr ""
+
+#: compat/compiler.h:26
+msgid "no compiler information available\n"
+msgstr ""
+
+#: compat/compiler.h:38
+#, fuzzy
+msgid "no libc information available\n"
+msgstr "mostrar informação do ramo"
+
+#: list-objects-filter-options.h:91
+msgid "args"
+msgstr ""
+
+#: list-objects-filter-options.h:92
+#, fuzzy
+msgid "object filtering"
+msgstr "tipo do objeto"
+
+#: parse-options.h:183
+msgid "expiry-date"
+msgstr "data-de-validade"
+
+#: parse-options.h:197
+msgid "no-op (backward compatibility)"
+msgstr "sem-ação (retrocompatibilidade)"
+
+#: parse-options.h:309
+msgid "be more verbose"
+msgstr "ser mais verboso"
+
+#: parse-options.h:311
+msgid "be more quiet"
+msgstr "ser mais silencioso"
+
+#: parse-options.h:317
+#, fuzzy
+msgid "use <n> digits to display object names"
+msgstr "usar <n> dígitos para mostrar SHA-1s"
+
+#: parse-options.h:336
+msgid "how to strip spaces and #comments from message"
+msgstr "como retirar espaços e #comentários da mensagem"
+
+#: parse-options.h:337
+#, fuzzy
+msgid "read pathspec from file"
+msgstr "ler padrões do ficheiro"
+
+#: parse-options.h:338
+#, fuzzy
+msgid ""
+"with --pathspec-from-file, pathspec elements are separated with NUL character"
+msgstr "os caminhos estão separados por caracteres NUL"
+
+#: ref-filter.h:96
+msgid "key"
+msgstr "chave"
+
+#: ref-filter.h:96
+msgid "field name to sort on"
+msgstr "nome do campo pelo qual ordernar"
+
+#: rerere.h:44
+msgid "update the index with reused conflict resolution if possible"
+msgstr ""
+"atualizar o índice com resoluções de conflitos reutilizadas se possível"
+
+#: wt-status.h:80
+msgid "HEAD detached at "
+msgstr "HEAD destacada em "
+
+#: wt-status.h:81
+msgid "HEAD detached from "
+msgstr "HEAD destacada de "
+
+#: command-list.h:50
 msgid "Add file contents to the index"
 msgstr "Adicionar conteúdos de ficheiros ao índice"
 
-#: common-cmds.h:18
+#: command-list.h:51
+msgid "Apply a series of patches from a mailbox"
+msgstr ""
+
+#: command-list.h:52
+#, fuzzy
+msgid "Annotate file lines with commit information"
+msgstr "Mostrar em formato de porcelana com informações de commit por linha"
+
+#: command-list.h:53
+#, fuzzy
+msgid "Apply a patch to files and/or to the index"
+msgstr "adicionar o elemento especificado ao índice"
+
+#: command-list.h:54
+msgid "Import a GNU Arch repository into Git"
+msgstr ""
+
+#: command-list.h:55
+#, fuzzy
+msgid "Create an archive of files from a named tree"
+msgstr "listar ficheiros arquivados para stderr"
+
+#: command-list.h:56
 msgid "Use binary search to find the commit that introduced a bug"
 msgstr "Use procura binário para encontrar o commit que introduziu um bug"
 
-#: common-cmds.h:19
+#: command-list.h:57
+msgid "Show what revision and author last modified each line of a file"
+msgstr ""
+
+#: command-list.h:58
 msgid "List, create, or delete branches"
 msgstr "Listar, criar ou eliminar ramos"
 
-#: common-cmds.h:20
+#: command-list.h:59
+msgid "Collect information for user to file a bug report"
+msgstr ""
+
+#: command-list.h:60
+msgid "Move objects and refs by archive"
+msgstr ""
+
+#: command-list.h:61
+msgid "Provide content or type and size information for repository objects"
+msgstr ""
+
+#: command-list.h:62
+#, fuzzy
+msgid "Display gitattributes information"
+msgstr "usar .gitattributes apenas a partir do índice"
+
+#: command-list.h:63
+msgid "Debug gitignore / exclude files"
+msgstr ""
+
+#: command-list.h:64
+#, fuzzy
+msgid "Show canonical names and email addresses of contacts"
+msgstr "Mostrar o endereço de e-mail de cada autor"
+
+#: command-list.h:65
 msgid "Switch branches or restore working tree files"
 msgstr "Mudar de ramos ou restaurar os ficheiros da árvore de trabalho"
 
-#: common-cmds.h:21
+#: command-list.h:66
+#, fuzzy
+msgid "Copy files from the index to the working tree"
+msgstr "caminho para a árvore de trabalho"
+
+#: command-list.h:67
+msgid "Ensures that a reference name is well formed"
+msgstr ""
+
+#: command-list.h:68
+msgid "Find commits yet to be applied to upstream"
+msgstr ""
+
+#: command-list.h:69
+msgid "Apply the changes introduced by some existing commits"
+msgstr ""
+
+#: command-list.h:70
+msgid "Graphical alternative to git-commit"
+msgstr ""
+
+#: command-list.h:71
+#, fuzzy
+msgid "Remove untracked files from the working tree"
+msgstr "Remover ficheiros da árvore de trabalho e do índice"
+
+#: command-list.h:72
 msgid "Clone a repository into a new directory"
 msgstr "Clonar um repositório num novo diretório"
 
-#: common-cmds.h:22
+#: command-list.h:73
+#, fuzzy
+msgid "Display data in columns"
+msgstr "listar os ramos em colunas"
+
+#: command-list.h:74
 msgid "Record changes to the repository"
 msgstr "Gravar alterações no repositório"
 
-#: common-cmds.h:23
+#: command-list.h:75
+msgid "Write and verify Git commit-graph files"
+msgstr ""
+
+#: command-list.h:76
+#, fuzzy
+msgid "Create a new commit object"
+msgstr "falha ao escrever objeto de commit"
+
+#: command-list.h:77
+msgid "Get and set repository or global options"
+msgstr ""
+
+#: command-list.h:78
+msgid "Count unpacked number of objects and their disk consumption"
+msgstr ""
+
+#: command-list.h:79
+msgid "Retrieve and store user credentials"
+msgstr ""
+
+#: command-list.h:80
+msgid "Helper to temporarily store passwords in memory"
+msgstr ""
+
+#: command-list.h:81
+msgid "Helper to store credentials on disk"
+msgstr ""
+
+#: command-list.h:82
+msgid "Export a single commit to a CVS checkout"
+msgstr ""
+
+#: command-list.h:83
+msgid "Salvage your data out of another SCM people love to hate"
+msgstr ""
+
+#: command-list.h:84
+msgid "A CVS server emulator for Git"
+msgstr ""
+
+#: command-list.h:85
+msgid "A really simple server for Git repositories"
+msgstr ""
+
+#: command-list.h:86
+msgid "Give an object a human readable name based on an available ref"
+msgstr ""
+
+#: command-list.h:87
 msgid "Show changes between commits, commit and working tree, etc"
 msgstr ""
 "Mostrar alterações entre commits, entre commit e árvore de trabalho, etc"
 
-#: common-cmds.h:24
+#: command-list.h:88
+#, fuzzy
+msgid "Compares files in the working tree and the index"
+msgstr "Remover ficheiros da árvore de trabalho e do índice"
+
+#: command-list.h:89
+#, fuzzy
+msgid "Compare a tree to the working tree or index"
+msgstr "caminho para a árvore de trabalho"
+
+#: command-list.h:90
+msgid "Compares the content and mode of blobs found via two tree objects"
+msgstr ""
+
+#: command-list.h:91
+msgid "Show changes using common diff tools"
+msgstr ""
+
+#: command-list.h:92
+msgid "Git data exporter"
+msgstr ""
+
+#: command-list.h:93
+msgid "Backend for fast Git data importers"
+msgstr ""
+
+#: command-list.h:94
 msgid "Download objects and refs from another repository"
 msgstr "Transferir objetos e referências doutro repositório"
 
-#: common-cmds.h:25
+#: command-list.h:95
+#, fuzzy
+msgid "Receive missing objects from another repository"
+msgstr "Transferir objetos e referências doutro repositório"
+
+#: command-list.h:96
+#, fuzzy
+msgid "Rewrite branches"
+msgstr "  Ramo remoto:%s"
+
+#: command-list.h:97
+#, fuzzy
+msgid "Produce a merge commit message"
+msgstr "editar a mensagem de commit"
+
+#: command-list.h:98
+#, fuzzy
+msgid "Output information on each ref"
+msgstr "atualizar informação de stat no ficheiro de índice"
+
+#: command-list.h:99
+msgid "Prepare patches for e-mail submission"
+msgstr ""
+
+#: command-list.h:100
+#, fuzzy
+msgid "Verifies the connectivity and validity of the objects in the database"
+msgstr "escrever o objeto na base de dados de objetos"
+
+#: command-list.h:101
+msgid "Cleanup unnecessary files and optimize the local repository"
+msgstr ""
+
+#: command-list.h:102
+msgid "Extract commit ID from an archive created using git-archive"
+msgstr ""
+
+#: command-list.h:103
 msgid "Print lines matching a pattern"
 msgstr "Imprimir linhas que correspondam a um padrão"
 
-#: common-cmds.h:26
+#: command-list.h:104
+msgid "A portable graphical interface to Git"
+msgstr ""
+
+#: command-list.h:105
+msgid "Compute object ID and optionally creates a blob from a file"
+msgstr ""
+
+#: command-list.h:106
+msgid "Display help information about Git"
+msgstr ""
+
+#: command-list.h:107
+msgid "Server side implementation of Git over HTTP"
+msgstr ""
+
+#: command-list.h:108
+#, fuzzy
+msgid "Download from a remote Git repository via HTTP"
+msgstr "Transferir objetos e referências doutro repositório"
+
+#: command-list.h:109
+#, fuzzy
+msgid "Push objects over HTTP/DAV to another repository"
+msgstr "Transferir objetos e referências doutro repositório"
+
+#: command-list.h:110
+msgid "Send a collection of patches from stdin to an IMAP folder"
+msgstr ""
+
+#: command-list.h:111
+msgid "Build pack index file for an existing packed archive"
+msgstr ""
+
+#: command-list.h:112
 msgid "Create an empty Git repository or reinitialize an existing one"
 msgstr "Criar um repositório Git vazio ou reinicializar um já existente"
 
-#: common-cmds.h:27
+#: command-list.h:113
+msgid "Instantly browse your working repository in gitweb"
+msgstr ""
+
+#: command-list.h:114
+msgid "Add or parse structured information in commit messages"
+msgstr ""
+
+#: command-list.h:115
+#, fuzzy
+msgid "The Git repository browser"
+msgstr "Não é um repositório git"
+
+#: command-list.h:116
 msgid "Show commit logs"
 msgstr "Mostrar histórico de commits"
 
-#: common-cmds.h:28
+#: command-list.h:117
+#, fuzzy
+msgid "Show information about files in the index and the working tree"
+msgstr "e fez alterações ao índice e/ou à árvore de trabalho"
+
+#: command-list.h:118
+#, fuzzy
+msgid "List references in a remote repository"
+msgstr "repositório de referência"
+
+#: command-list.h:119
+#, fuzzy
+msgid "List the contents of a tree object"
+msgstr "imprimir apenas as tags do objeto"
+
+#: command-list.h:120
+msgid "Extracts patch and authorship from a single e-mail message"
+msgstr ""
+
+#: command-list.h:121
+msgid "Simple UNIX mbox splitter program"
+msgstr ""
+
+#: command-list.h:122
+msgid "Run tasks to optimize Git repository data"
+msgstr ""
+
+#: command-list.h:123
 msgid "Join two or more development histories together"
 msgstr "Juntar duas ou mais histórias de desenvolvimento numa só"
 
-#: common-cmds.h:29
+#: command-list.h:124
+#, fuzzy
+msgid "Find as good common ancestors as possible for a merge"
+msgstr "encontrar antecessores de uma única integração com n pontos"
+
+#: command-list.h:125
+#, fuzzy
+msgid "Run a three-way file merge"
+msgstr "A recorrer a integração com 3 pontos...\n"
+
+#: command-list.h:126
+#, fuzzy
+msgid "Run a merge for files needing merging"
+msgstr ""
+"integrar com 3 pontos se a integração ao nível de ficheiros não for "
+"necessária"
+
+#: command-list.h:127
+msgid "The standard helper program to use with git-merge-index"
+msgstr ""
+
+#: command-list.h:128
+msgid "Run merge conflict resolution tools to resolve merge conflicts"
+msgstr ""
+
+#: command-list.h:129
+msgid "Show three-way merge without touching index"
+msgstr ""
+
+#: command-list.h:130
+msgid "Write and verify multi-pack-indexes"
+msgstr ""
+
+#: command-list.h:131
+#, fuzzy
+msgid "Creates a tag object"
+msgstr "outro objeto tag"
+
+#: command-list.h:132
+msgid "Build a tree-object from ls-tree formatted text"
+msgstr ""
+
+#: command-list.h:133
 msgid "Move or rename a file, a directory, or a symlink"
 msgstr "Mover ou mudar o nome de um ficheiro, diretório ou ligação simbólica"
 
-#: common-cmds.h:30
+#: command-list.h:134
+msgid "Find symbolic names for given revs"
+msgstr ""
+
+#: command-list.h:135
+#, fuzzy
+msgid "Add or inspect object notes"
+msgstr "o objeto esperado %s não foi recebido"
+
+#: command-list.h:136
+msgid "Import from and submit to Perforce repositories"
+msgstr ""
+
+#: command-list.h:137
+#, fuzzy
+msgid "Create a packed archive of objects"
+msgstr "ignorar objetos compactados"
+
+#: command-list.h:138
+#, fuzzy
+msgid "Find redundant pack files"
+msgstr "não é possível invocar pread sobre o ficheiro de pacote"
+
+#: command-list.h:139
+msgid "Pack heads and tags for efficient repository access"
+msgstr ""
+
+#: command-list.h:140
+msgid "Routines to help parsing remote repository access parameters"
+msgstr ""
+
+#: command-list.h:141
+msgid "Compute unique ID for a patch"
+msgstr ""
+
+#: command-list.h:142
+#, fuzzy
+msgid "Prune all unreachable objects from the object database"
+msgstr "escrever o objeto na base de dados de objetos"
+
+#: command-list.h:143
+msgid "Remove extra objects that are already in pack files"
+msgstr ""
+
+#: command-list.h:144
 msgid "Fetch from and integrate with another repository or a local branch"
 msgstr "Obter e integrar com outro repositório ou outro ramo local"
 
-#: common-cmds.h:31
+#: command-list.h:145
 msgid "Update remote refs along with associated objects"
 msgstr "Atualizar referências remotas juntamente com objetos associados"
 
-#: common-cmds.h:32
+#: command-list.h:146
+#, fuzzy
+msgid "Applies a quilt patchset onto the current branch"
+msgstr "Não está definido nenhum ramo a montante para o ramo atual."
+
+#: command-list.h:147
+msgid "Compare two commit ranges (e.g. two versions of a branch)"
+msgstr ""
+
+#: command-list.h:148
+#, fuzzy
+msgid "Reads tree information into the index"
+msgstr "atualizar informação de stat no ficheiro de índice"
+
+#: command-list.h:149
 msgid "Reapply commits on top of another base tip"
 msgstr "Reaplicar commits no topo de outra base"
 
-#: common-cmds.h:33
+#: command-list.h:150
+#, fuzzy
+msgid "Receive what is pushed into the repository"
+msgstr "Gravar alterações no repositório"
+
+#: command-list.h:151
+#, fuzzy
+msgid "Manage reflog information"
+msgstr "mostrar informação de resolver-desfazer"
+
+#: command-list.h:152
+#, fuzzy
+msgid "Manage set of tracked repositories"
+msgstr "Gravar alterações no repositório"
+
+#: command-list.h:153
+#, fuzzy
+msgid "Pack unpacked objects in a repository"
+msgstr "--cached fora de um repositório"
+
+#: command-list.h:154
+#, fuzzy
+msgid "Create, list, delete refs to replace objects"
+msgstr "Criar, listar, eliminar ou verificar um objeto tag assinado com GPG"
+
+#: command-list.h:155
+msgid "Generates a summary of pending changes"
+msgstr ""
+
+#: command-list.h:156
+msgid "Reuse recorded resolution of conflicted merges"
+msgstr ""
+
+#: command-list.h:157
 msgid "Reset current HEAD to the specified state"
 msgstr "Repor a HEAD atual no estado especificado"
 
-#: common-cmds.h:34
+#: command-list.h:158
+#, fuzzy
+msgid "Restore working tree files"
+msgstr "Mudar de ramos ou restaurar os ficheiros da árvore de trabalho"
+
+#: command-list.h:159
+#, fuzzy
+msgid "Revert some existing commits"
+msgstr "não é possível emendar commit não-existente"
+
+#: command-list.h:160
+#, fuzzy
+msgid "Lists commit objects in reverse chronological order"
+msgstr "mostrar commits em ordem topológica"
+
+#: command-list.h:161
+#, fuzzy
+msgid "Pick out and massage parameters"
+msgstr "demasiados parâmetros"
+
+#: command-list.h:162
 msgid "Remove files from the working tree and from the index"
 msgstr "Remover ficheiros da árvore de trabalho e do índice"
 
-#: common-cmds.h:35
+#: command-list.h:163
+msgid "Send a collection of patches as emails"
+msgstr ""
+
+#: command-list.h:164
+#, fuzzy
+msgid "Push objects over Git protocol to another repository"
+msgstr "Transferir objetos e referências doutro repositório"
+
+#: command-list.h:165
+msgid "Restricted login shell for Git-only SSH access"
+msgstr ""
+
+#: command-list.h:166
+msgid "Summarize 'git log' output"
+msgstr ""
+
+#: command-list.h:167
 msgid "Show various types of objects"
 msgstr "Mostrar vários tipos objetos"
 
-#: common-cmds.h:36
+#: command-list.h:168
+#, fuzzy
+msgid "Show branches and their commits"
+msgstr "imprimir apenas ramos que contenham o commit"
+
+#: command-list.h:169
+msgid "Show packed archive index"
+msgstr ""
+
+#: command-list.h:170
+#, fuzzy
+msgid "List references in a local repository"
+msgstr "o repositório de referência '%s' não é um repositório local."
+
+#: command-list.h:171
+msgid "Git's i18n setup code for shell scripts"
+msgstr ""
+
+#: command-list.h:172
+msgid "Common Git shell script setup code"
+msgstr ""
+
+#: command-list.h:173
+msgid "Initialize and modify the sparse-checkout"
+msgstr ""
+
+#: command-list.h:174
+#, fuzzy
+msgid "Stash the changes in a dirty working directory away"
+msgstr "%s: já existe no diretório de trabalho"
+
+#: command-list.h:175
+#, fuzzy
+msgid "Add file contents to the staging area"
+msgstr "Adicionar conteúdos de ficheiros ao índice"
+
+#: command-list.h:176
 msgid "Show the working tree status"
 msgstr "Mostrar o estado da árvores de trabalho"
 
-#: common-cmds.h:37
+#: command-list.h:177
+msgid "Remove unnecessary whitespace"
+msgstr ""
+
+#: command-list.h:178
+msgid "Initialize, update or inspect submodules"
+msgstr ""
+
+#: command-list.h:179
+msgid "Bidirectional operation between a Subversion repository and Git"
+msgstr ""
+
+#: command-list.h:180
+#, fuzzy
+msgid "Switch branches"
+msgstr "Mudou para o ramo '%s'\n"
+
+#: command-list.h:181
+#, fuzzy
+msgid "Read, modify and delete symbolic refs"
+msgstr "eliminar referências simbólicas"
+
+#: command-list.h:182
 msgid "Create, list, delete or verify a tag object signed with GPG"
 msgstr "Criar, listar, eliminar ou verificar um objeto tag assinado com GPG"
 
-#: parse-options.h:145
-msgid "expiry-date"
-msgstr "data-de-validade"
+#: command-list.h:183
+msgid "Creates a temporary file with a blob's contents"
+msgstr ""
 
-#: parse-options.h:160
-msgid "no-op (backward compatibility)"
-msgstr "sem-ação (retrocompatibilidade)"
+#: command-list.h:184
+msgid "Unpack objects from a packed archive"
+msgstr ""
 
-#: parse-options.h:238
-msgid "be more verbose"
-msgstr "ser mais verboso"
+#: command-list.h:185
+#, fuzzy
+msgid "Register file contents in the working tree to the index"
+msgstr "Remover ficheiros da árvore de trabalho e do índice"
 
-#: parse-options.h:240
-msgid "be more quiet"
-msgstr "ser mais silencioso"
+#: command-list.h:186
+msgid "Update the object name stored in a ref safely"
+msgstr ""
 
-#: parse-options.h:246
-msgid "use <n> digits to display SHA-1s"
-msgstr "usar <n> dígitos para mostrar SHA-1s"
+#: command-list.h:187
+msgid "Update auxiliary info file to help dumb servers"
+msgstr ""
 
-#: rerere.h:40
-msgid "update the index with reused conflict resolution if possible"
+#: command-list.h:188
+msgid "Send archive back to git-archive"
 msgstr ""
-"atualizar o índice com resoluções de conflitos reutilizadas se possível"
 
-#: git-bisect.sh:54
-msgid "You need to start by \"git bisect start\""
-msgstr "Deve começar por executar \"git bisect start\""
+#: command-list.h:189
+msgid "Send objects packed back to git-fetch-pack"
+msgstr ""
 
-#. TRANSLATORS: Make sure to include [Y] and [n] in your
-#. translation. The program will only accept English input
-#. at this point.
-#: git-bisect.sh:60
-msgid "Do you want me to do it for you [Y/n]? "
-msgstr "Quer que o Git o faça por si [Y/n]? "
+#: command-list.h:190
+msgid "Show a Git logical variable"
+msgstr ""
 
-#: git-bisect.sh:121
-#, sh-format
-msgid "unrecognised option: '$arg'"
-msgstr "opção não reconhecida: '$arg'"
+#: command-list.h:191
+#, fuzzy
+msgid "Check the GPG signature of commits"
+msgstr "assinar o commit com GPG"
 
-#: git-bisect.sh:125
-#, sh-format
-msgid "'$arg' does not appear to be a valid revision"
-msgstr "'$arg' não parecer ser uma revisão válida"
+#: command-list.h:192
+#, fuzzy
+msgid "Validate packed Git archive files"
+msgstr "não foi possível criar o ficheiro de arquivo '%s'"
 
-#: git-bisect.sh:154
-msgid "Bad HEAD - I need a HEAD"
-msgstr "HEAD incorreta - é necessário uma HEAD"
+#: command-list.h:193
+msgid "Check the GPG signature of tags"
+msgstr ""
 
-#: git-bisect.sh:167
-#, sh-format
-msgid ""
-"Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
+#: command-list.h:194
+msgid "Git web interface (web frontend to Git repositories)"
 msgstr ""
-"Falha ao extrair '$start_head'. Tente 'git bisect reset <ramo-válido>'."
 
-#: git-bisect.sh:177
-msgid "won't bisect on cg-seek'ed tree"
-msgstr "não é possível bissetar numa árvore \"cg-seek'ed\""
+#: command-list.h:195
+msgid "Show logs with difference each commit introduces"
+msgstr ""
 
-#: git-bisect.sh:181
-msgid "Bad HEAD - strange symbolic ref"
-msgstr "HEAD incorreta - referência simbólica desconhecida"
+#: command-list.h:196
+#, fuzzy
+msgid "Manage multiple working trees"
+msgstr "caminho para a árvore de trabalho"
 
-#: git-bisect.sh:233
-#, sh-format
-msgid "Bad bisect_write argument: $state"
-msgstr "Argumento de bisect_write incorreto: $state"
+#: command-list.h:197
+#, fuzzy
+msgid "Create a tree object from the current index"
+msgstr "ler o objeto da entrada padrão"
+
+#: command-list.h:198
+msgid "Defining attributes per path"
+msgstr "Definir atributos por caminho"
+
+#: command-list.h:199
+msgid "Git command-line interface and conventions"
+msgstr ""
+
+#: command-list.h:200
+msgid "A Git core tutorial for developers"
+msgstr ""
+
+#: command-list.h:201
+msgid "Providing usernames and passwords to Git"
+msgstr ""
+
+#: command-list.h:202
+msgid "Git for CVS users"
+msgstr ""
+
+#: command-list.h:203
+#, fuzzy
+msgid "Tweaking diff output"
+msgstr "suprimir saída do diff"
+
+#: command-list.h:204
+msgid "A useful minimum set of commands for Everyday Git"
+msgstr ""
+
+#: command-list.h:205
+msgid "Frequently asked questions about using Git"
+msgstr ""
+
+#: command-list.h:206
+#, fuzzy
+msgid "A Git Glossary"
+msgstr "Um Glossário do Git"
+
+#: command-list.h:207
+msgid "Hooks used by Git"
+msgstr ""
+
+#: command-list.h:208
+msgid "Specifies intentionally untracked files to ignore"
+msgstr ""
+"Especificar ficheiros não controlados para serem intencionalmente ignorados"
+
+#: command-list.h:209
+msgid "Defining submodule properties"
+msgstr "Definir propriedades de submódulos"
+
+#: command-list.h:210
+msgid "Git namespaces"
+msgstr ""
+
+#: command-list.h:211
+msgid "Helper programs to interact with remote repositories"
+msgstr ""
 
-#: git-bisect.sh:262
+#: command-list.h:212
+msgid "Git Repository Layout"
+msgstr ""
+
+#: command-list.h:213
+msgid "Specifying revisions and ranges for Git"
+msgstr "Especificar revisões e intervalos do Git"
+
+#: command-list.h:214
+msgid "Mounting one repository inside another"
+msgstr ""
+
+#: command-list.h:215
+#, fuzzy
+msgid "A tutorial introduction to Git: part two"
+msgstr "Uma introdução ao Git (versão 1.5.1 ou mais recente)"
+
+#: command-list.h:216
+#, fuzzy
+msgid "A tutorial introduction to Git"
+msgstr "Uma introdução ao Git (versão 1.5.1 ou mais recente)"
+
+#: command-list.h:217
+msgid "An overview of recommended workflows with Git"
+msgstr "Uma descrição geral dos fluxos de trabalho recomendados para o Git"
+
+#: git-bisect.sh:79
 #, sh-format
 msgid "Bad rev input: $arg"
 msgstr "Revisão incorreta na entrada: $arg"
 
-#: git-bisect.sh:281
+#: git-bisect.sh:99
 #, sh-format
 msgid "Bad rev input: $bisected_head"
 msgstr "Revisão incorreta na entrada: $bisected_head"
 
-#: git-bisect.sh:290
+#: git-bisect.sh:108
 #, sh-format
 msgid "Bad rev input: $rev"
 msgstr "Revisão incorreta na entrada: $rev"
 
-#: git-bisect.sh:299
+#: git-bisect.sh:117
 #, sh-format
 msgid "'git bisect $TERM_BAD' can take only one argument."
 msgstr "'git bisect $TERM_BAD' só leva um argumento."
 
-#: git-bisect.sh:322
-#, sh-format
-msgid "Warning: bisecting only with a $TERM_BAD commit."
-msgstr "Aviso: a bissetar só com um commit $TERM_BAD."
-
-#. TRANSLATORS: Make sure to include [Y] and [n] in your
-#. translation. The program will only accept English input
-#. at this point.
-#: git-bisect.sh:328
-msgid "Are you sure [Y/n]? "
-msgstr "Tem a certeza [Y/n]? "
-
-#: git-bisect.sh:340
-#, sh-format
-msgid ""
-"You need to give me at least one $bad_syn and one $good_syn revision.\n"
-"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
-msgstr ""
-"Deve indicar pelo menos uma revisão $bad_syn e uma revisão $good_syn.\n"
-"(Pode usar \"git bisect $bad_syn\" e \"git bisect $good_syn\" para esse fim.)"
-
-#: git-bisect.sh:343
-#, sh-format
-msgid ""
-"You need to start by \"git bisect start\".\n"
-"You then need to give me at least one $good_syn and one $bad_syn revision.\n"
-"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
-msgstr ""
-"Deve começar por executar \"git bisect start\".\n"
-"Indique pelo menos uma revisão $good_syn e uma revisão $bad_syn.\n"
-"(Pode usar \"git bisect $bad_syn\" e \"git bisect $good_syn\" para esse fim.)"
-
-#: git-bisect.sh:414 git-bisect.sh:546
-msgid "We are not bisecting."
-msgstr "Não se está a bissetar."
-
-#: git-bisect.sh:421
-#, sh-format
-msgid "'$invalid' is not a valid commit"
-msgstr "'$invalid' não é um commit válido"
-
-#: git-bisect.sh:430
-#, sh-format
-msgid ""
-"Could not check out original HEAD '$branch'.\n"
-"Try 'git bisect reset <commit>'."
-msgstr ""
-"Não foi possível extrair a HEAD original de '$branch'.\n"
-"Tente 'git bisect reset <commit>'."
-
-#: git-bisect.sh:458
+#: git-bisect.sh:149
 msgid "No logfile given"
 msgstr "Nenhum ficheiro de log fornecido"
 
-#: git-bisect.sh:459
+#: git-bisect.sh:150
 #, sh-format
 msgid "cannot read $file for replaying"
 msgstr "não é possível ler $file para reproduzir"
 
-#: git-bisect.sh:480
+#: git-bisect.sh:173
 msgid "?? what are you talking about?"
 msgstr "?? do que é que está a falar?"
 
-#: git-bisect.sh:492
+#: git-bisect.sh:183
+msgid "bisect run failed: no command provided."
+msgstr ""
+
+#: git-bisect.sh:188
 #, sh-format
 msgid "running $command"
 msgstr "a executar $command"
 
-#: git-bisect.sh:499
+#: git-bisect.sh:195
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -14296,11 +24302,11 @@ msgstr ""
 "falha ao bissetar:\n"
 "código de saída $res de '$command' é < 0 ou >= 128"
 
-#: git-bisect.sh:525
+#: git-bisect.sh:221
 msgid "bisect run cannot continue any more"
 msgstr "não é possível continuar a bissetar"
 
-#: git-bisect.sh:531
+#: git-bisect.sh:227
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -14309,47 +24315,13 @@ msgstr ""
 "falha ao bissetar:\n"
 "'bisect_state $state' retornou com o código de erro $res"
 
-#: git-bisect.sh:538
+#: git-bisect.sh:234
 msgid "bisect run success"
 msgstr "bissecção concluída com sucesso"
 
-#: git-bisect.sh:565
-msgid "please use two different terms"
-msgstr "use dois termos diferentes"
-
-#: git-bisect.sh:575
-#, sh-format
-msgid "'$term' is not a valid term"
-msgstr "'$term' não é um termo válido"
-
-#: git-bisect.sh:578
-#, sh-format
-msgid "can't use the builtin command '$term' as a term"
-msgstr "não é possível usar o comando '$term' como um termo"
-
-#: git-bisect.sh:587 git-bisect.sh:593
-#, sh-format
-msgid "can't change the meaning of term '$term'"
-msgstr "não é possível alterar o significado do termo '$term'"
-
-#: git-bisect.sh:606
-#, sh-format
-msgid "Invalid command: you're currently in a $TERM_BAD/$TERM_GOOD bisect."
-msgstr ""
-"Comando inválido: está-se a bissetar usando os termos $TERM_BAD/$TERM_GOOD."
-
-#: git-bisect.sh:636
-msgid "no terms defined"
-msgstr "nenhum termo definido"
-
-#: git-bisect.sh:653
-#, sh-format
-msgid ""
-"invalid argument $arg for 'git bisect terms'.\n"
-"Supported options are: --term-good|--term-old and --term-bad|--term-new."
-msgstr ""
-"argumento inválido $arg de 'git bisect terms'.\n"
-"Opções suportadas: --term-good|--term-old e --term-bad|--term-new."
+#: git-bisect.sh:242
+msgid "We are not bisecting."
+msgstr "Não se está a bissetar."
 
 #: git-merge-octopus.sh:46
 msgid ""
@@ -14373,8 +24345,8 @@ msgid "Unable to find common commit with $pretty_name"
 msgstr "Não é possível encontrar commit comum com $pretty_name"
 
 #: git-merge-octopus.sh:77
-#, sh-format
-msgid "Already up-to-date with $pretty_name"
+#, fuzzy, sh-format
+msgid "Already up to date with $pretty_name"
 msgstr "Já está atualizado com $pretty_name"
 
 #: git-merge-octopus.sh:89
@@ -14391,350 +24363,49 @@ msgstr "A tentar integração simples com $pretty_name"
 msgid "Simple merge did not work, trying automatic merge."
 msgstr "A integração simples não funcionou, a tentar integração automática."
 
-#: git-rebase.sh:57
-msgid ""
-"When you have resolved this problem, run \"git rebase --continue\".\n"
-"If you prefer to skip this patch, run \"git rebase --skip\" instead.\n"
-"To check out the original branch and stop rebasing, run \"git rebase --abort"
-"\"."
-msgstr ""
-"Depois de resolver este problema, execute \"git rebase --continue\".\n"
-"Se prefere ignorar este patch, execute \"git rebase --skip\".\n"
-"Para extrair o ramo original e interromper o rebase, execute \"git rebase --"
-"abort\"."
-
-#: git-rebase.sh:157 git-rebase.sh:396
-#, sh-format
-msgid "Could not move back to $head_name"
-msgstr "Não foi possível voltar para $head_name"
-
-#: git-rebase.sh:171
-#, sh-format
-msgid "Cannot store $stash_sha1"
-msgstr "Não é possível guardar $stash_sha1"
-
-#: git-rebase.sh:211
-msgid "The pre-rebase hook refused to rebase."
-msgstr "Rebase recusado pelo hook pre-rebase."
-
-#: git-rebase.sh:216
-msgid "It looks like git-am is in progress. Cannot rebase."
-msgstr "Parece que o git-am está em curso. Não é possível efetuar rebase."
-
-#: git-rebase.sh:357
-msgid "No rebase in progress?"
-msgstr "Rebase não está em curso?"
-
-#: git-rebase.sh:368
-msgid "The --edit-todo action can only be used during interactive rebase."
-msgstr "A ação --edit-todo só pode ser usada durante um rebase interativo."
-
-#: git-rebase.sh:375
-msgid "Cannot read HEAD"
-msgstr "Não é possível ler HEAD"
-
-#: git-rebase.sh:378
-msgid ""
-"You must edit all merge conflicts and then\n"
-"mark them as resolved using git add"
-msgstr ""
-"Deve editar todos os conflitos da integração\n"
-"e marcá-los como resolvidos usando git add"
-
-#: git-rebase.sh:418
-#, 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 ""
-"Parece que já existe um diretório $state_dir_base e\n"
-"é possível que outro processo de rebase já esteja em curso.\n"
-"Se for o caso, tente\n"
-"\t$cmd_live_rebase\n"
-"Se não for o caso,\n"
-"\t$cmd_clear_stale_rebase\n"
-"e execute o comando de novo. A execução foi interrompida no caso de\n"
-"ainda ter algo importante nesse sítio."
-
-#: git-rebase.sh:469
-#, sh-format
-msgid "invalid upstream $upstream_name"
-msgstr "$upstream_name a montante inválido"
-
-#: git-rebase.sh:493
-#, sh-format
-msgid "$onto_name: there are more than one merge bases"
-msgstr "$onto_name: há mais do que uma base de integração"
-
-#: git-rebase.sh:496 git-rebase.sh:500
-#, sh-format
-msgid "$onto_name: there is no merge base"
-msgstr "$onto_name: não há nenhuma base de integração"
-
-#: git-rebase.sh:505
-#, sh-format
-msgid "Does not point to a valid commit: $onto_name"
-msgstr "Não aponta para um commit válido: $onto_name"
-
-#: git-rebase.sh:528
-#, sh-format
-msgid "fatal: no such branch: $branch_name"
-msgstr "fatal: ramo inexistente: $branch_name"
-
-#: git-rebase.sh:561
-msgid "Cannot autostash"
-msgstr "Não é possível empilhar automaticamente (autostash)"
-
-#: git-rebase.sh:566
-#, sh-format
-msgid "Created autostash: $stash_abbrev"
-msgstr "Pilha automática (autostash) criada: $stash_abbrev"
-
-#: git-rebase.sh:570
-msgid "Please commit or stash them."
-msgstr "Submeta ou esconda-as."
-
-#: git-rebase.sh:590
-#, sh-format
-msgid "Current branch $branch_name is up to date."
-msgstr "O ramo atual $branch_name está atualizado."
-
-#: git-rebase.sh:594
-#, sh-format
-msgid "Current branch $branch_name is up to date, rebase forced."
-msgstr "O ramo atual $branch_name está atualizado, rebase forçado."
-
-#: git-rebase.sh:605
-#, sh-format
-msgid "Changes from $mb to $onto:"
-msgstr "Alterações de $mb para $onto:"
-
-#: git-rebase.sh:614
-msgid "First, rewinding head to replay your work on top of it..."
-msgstr ""
-"Primeiro, a recuar a cabeça para replicar as suas alterações no topo dela..."
-
-#: git-rebase.sh:624
-#, sh-format
-msgid "Fast-forwarded $branch_name to $onto_name."
-msgstr "$branch_name avançado rapidamente para $onto_name."
-
-#: git-stash.sh:53
-msgid "git stash clear with parameters is unimplemented"
-msgstr "não está implementado git stash clear com parâmetros"
-
-#: git-stash.sh:94
-msgid "You do not have the initial commit yet"
-msgstr "O commit inicial ainda não existe"
-
-#: git-stash.sh:109
-msgid "Cannot save the current index state"
-msgstr "Não é possível guardar o estado atual do índice"
-
-#: git-stash.sh:124
-msgid "Cannot save the untracked files"
-msgstr "Não é possível guardar os ficheiros não controlados"
-
-#: git-stash.sh:144 git-stash.sh:157
-msgid "Cannot save the current worktree state"
-msgstr "Não é possível guardar o estado atual da árvore de trabalho"
-
-#: git-stash.sh:161
-msgid "No changes selected"
-msgstr "Nenhuma alteração selecionada"
-
-#: git-stash.sh:164
-msgid "Cannot remove temporary index (can't happen)"
-msgstr "Não é possível remover o índice temporário (não pode acontecer)"
-
-#: git-stash.sh:177
-msgid "Cannot record working tree state"
-msgstr "Não é possível gravar o estado da árvore de trabalho"
-
-#: git-stash.sh:209
-#, sh-format
-msgid "Cannot update $ref_stash with $w_commit"
-msgstr "Não é possível atualizar $ref_stash com $w_commit"
-
-#. TRANSLATORS: $option is an invalid option, like
-#. `--blah-blah'. The 7 spaces at the beginning of the
-#. second line correspond to "error: ". So you should line
-#. up the second line with however many characters the
-#. translation of "error: " takes in your language. E.g. in
-#. English this is:
-#.
-#. $ git stash save --blah-blah 2>&1 | head -n 2
-#. error: unknown option for 'stash save': --blah-blah
-#. To provide a message, use git stash save -- '--blah-blah'
-#: git-stash.sh:265
-#, sh-format
-msgid ""
-"error: unknown option for 'stash save': $option\n"
-"       To provide a message, use git stash save -- '$option'"
-msgstr ""
-"erro: opção desconhecida de 'stash save': $option\n"
-"      Para fornecer uma mensagem, use git stash save -- '$option'"
-
-#: git-stash.sh:278
-msgid "Can't use --patch and --include-untracked or --all at the same time"
-msgstr ""
-"Não é possível usar --patch e --include-untracked ou --all ao mesmo tempo"
-
-#: git-stash.sh:286
-msgid "No local changes to save"
-msgstr "Não há alterações locais para guardar"
-
-#: git-stash.sh:291
-msgid "Cannot initialize stash"
-msgstr "Não é possível inicializar a pilha"
-
-#: git-stash.sh:295
-msgid "Cannot save the current status"
-msgstr "Não é possível guardar o estado atual"
-
-#: git-stash.sh:296
-#, sh-format
-msgid "Saved working directory and index state $stash_msg"
-msgstr "Diretório de trabalho e estado do índice $stash_msg guardados"
-
-#: git-stash.sh:323
-msgid "Cannot remove worktree changes"
-msgstr "Não é possível remover as alterações da árvore de trabalho"
-
-#: git-stash.sh:471
-#, sh-format
-msgid "unknown option: $opt"
-msgstr "opção desconhecido: $opt"
-
-#: git-stash.sh:484
-msgid "No stash found."
-msgstr "Nenhuma pilha encontrada."
-
-#: git-stash.sh:491
-#, sh-format
-msgid "Too many revisions specified: $REV"
-msgstr "Demasiadas revisões especificadas: $REV"
-
-#: git-stash.sh:506
-#, sh-format
-msgid "$reference is not a valid reference"
-msgstr "$reference não é uma referência válida"
-
-#: git-stash.sh:534
-#, sh-format
-msgid "'$args' is not a stash-like commit"
-msgstr "'$args' não é um commit semelhante a pilha"
-
-#: git-stash.sh:545
-#, sh-format
-msgid "'$args' is not a stash reference"
-msgstr "'$args' não é uma referência de pilha"
-
-#: git-stash.sh:553
-msgid "unable to refresh index"
-msgstr "não foi possível refrescar o índice"
-
-#: git-stash.sh:557
-msgid "Cannot apply a stash in the middle of a merge"
-msgstr "Não é possível aplicar uma pilha durante uma integração"
-
-#: git-stash.sh:565
-msgid "Conflicts in index. Try without --index."
-msgstr "Conflitos no índice. Tente sem --index."
-
-#: git-stash.sh:567
-msgid "Could not save index tree"
-msgstr "Não foi possível guardar árvore do índice"
-
-#: git-stash.sh:576
-msgid "Could not restore untracked files from stash"
-msgstr "Não foi possível restaurar os ficheiros não controlados da pilha"
-
-#: git-stash.sh:601
-msgid "Cannot unstage modified files"
-msgstr "Não é possível despreparar os ficheiros modificado"
-
-#: git-stash.sh:616
-msgid "Index was not unstashed."
-msgstr "O índice não foi reposto."
-
-#: git-stash.sh:630
-msgid "The stash is kept in case you need it again."
-msgstr "A pilha é guarda no caso de precisar dela de novo."
-
-#: git-stash.sh:639
-#, sh-format
-msgid "Dropped ${REV} ($s)"
-msgstr "A descartar ${REV} ($s)"
-
-#: git-stash.sh:640
-#, sh-format
-msgid "${REV}: Could not drop stash entry"
-msgstr "${REV}: Não foi possível descartar elemento da pilha"
-
-#: git-stash.sh:648
-msgid "No branch name specified"
-msgstr "Nenhum nome de ramo especificado"
-
-#: git-stash.sh:727
-msgid "(To restore them type \"git stash apply\")"
-msgstr "(Para os restaurar execute \"git stash apply\")"
-
-#: git-submodule.sh:181
+#: git-submodule.sh:180
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 "Os caminhos relativos só podem ser usados a partir do topo da árvore de "
 "trabalho"
 
-#: git-submodule.sh:191
+#: git-submodule.sh:190
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr "URL do repositório: '$repo' deve ser absoluto ou começar com ./|../"
 
-#: git-submodule.sh:210
+#: git-submodule.sh:209
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr "'$sm_path' já existe no índice"
 
-#: git-submodule.sh:213
+#: git-submodule.sh:212
 #, sh-format
 msgid "'$sm_path' already exists in the index and is not a submodule"
 msgstr "'$sm_path' já existe no índicee não é um submódulo"
 
-#: git-submodule.sh:218
-#, 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 ""
-"O seguinte caminho foi ignorado por um ficheiro .gitignore:\n"
-"$sm_path\n"
-"Use -f se pretende mesmo adicioná-lo."
+#: git-submodule.sh:219
+#, fuzzy, sh-format
+msgid "'$sm_path' does not have a commit checked out"
+msgstr "o caminho '%s' não tem a versão deles"
 
-#: git-submodule.sh:236
+#: git-submodule.sh:250
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr "A adicionar repositório existente em '$sm_path' ao índice"
 
-#: git-submodule.sh:238
+#: git-submodule.sh:252
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr "'$sm_path' já existe e não é uma repositório git válido"
 
-#: git-submodule.sh:246
+#: git-submodule.sh:260
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
 "Um diretório git de '$sm_name' foi encontrado localmente com os remotos:"
 
-#: git-submodule.sh:248
+#: git-submodule.sh:262
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from\n"
@@ -14750,101 +24421,39 @@ msgstr ""
 "ou não tem a certeza o que isto significa escolha outro nome com a opção '--"
 "name'."
 
-#: git-submodule.sh:254
+#: git-submodule.sh:268
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
 msgstr "A reativar o diretório git local do submódulo '$sm_name'."
 
-#: git-submodule.sh:266
+#: git-submodule.sh:280
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr "Não foi possível extrair o submódulo '$sm_path'"
 
-#: git-submodule.sh:271
+#: git-submodule.sh:285
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr "Falha ao adicionar o submódulo '$sm_path'"
 
-#: git-submodule.sh:280
+#: git-submodule.sh:294
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr "Falha ao registar o submódulo '$sm_path'"
 
-#: git-submodule.sh:341
-#, sh-format
-msgid "Entering '$displaypath'"
-msgstr "A entrar em '$displaypath'"
-
-#: git-submodule.sh:361
-#, sh-format
-msgid "Stopping at '$displaypath'; script returned non-zero status."
-msgstr ""
-"Interrompido em '$displaypath'; o script retornou um valor diferente de zero."
-
-#: git-submodule.sh:432
-#, sh-format
-msgid "pathspec and --all are incompatible"
-msgstr "especificador de caminho e --all são incompatíveis"
-
-#: git-submodule.sh:437
-#, sh-format
-msgid "Use '--all' if you really want to deinitialize all submodules"
-msgstr ""
-"Use '--all' se pretende mesmo anular a inicialização todos os submódulos"
-
-#: git-submodule.sh:457
-#, sh-format
-msgid ""
-"Submodule work tree '$displaypath' contains a .git directory\n"
-"(use 'rm -rf' if you really want to remove it including all of its history)"
-msgstr ""
-"A árvore de trabalho do submódulo '$displaypath' contém um diretório .git\n"
-"(use 'rm -rf' se pretende mesmo removê-lo, incluindo todo o seu histórico)"
-
-#: git-submodule.sh:465
-#, sh-format
-msgid ""
-"Submodule work tree '$displaypath' contains local modifications; use '-f' to "
-"discard them"
-msgstr ""
-"A árvore de trabalho do submódulo '$displaypath' contém alterações locais; "
-"use '-f' para as descartar"
-
-#: git-submodule.sh:468
-#, sh-format
-msgid "Cleared directory '$displaypath'"
-msgstr "Diretório '$displaypath' limpo"
-
-#: git-submodule.sh:469
-#, sh-format
-msgid "Could not remove submodule work tree '$displaypath'"
-msgstr ""
-"Não foi possível remover a árvore de trabalho do submódulo '$displaypath'"
-
-#: git-submodule.sh:472
-#, sh-format
-msgid "Could not create empty submodule directory '$displaypath'"
-msgstr "Não foi possível criar o diretório vazio do submódulo '$displaypath'"
-
-#: git-submodule.sh:481
-#, sh-format
-msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
-msgstr ""
-"O registo do submódulo '$name' ($url) foi removido do caminho '$displaypath'"
-
-#: git-submodule.sh:637
+#: git-submodule.sh:567
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
 "Não foi possível encontrar a revisão atual no caminho de submódulo "
 "'$displaypath'"
 
-#: git-submodule.sh:647
+#: git-submodule.sh:577
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr "Não foi possível obter no caminho de submódulo '$sm_path'"
 
-#: git-submodule.sh:652
+#: git-submodule.sh:582
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
@@ -14853,12 +24462,14 @@ msgstr ""
 "Não foi possível encontrar a revisão atual ${remote_name}/${branch} no "
 "caminho de submódulo '$sm_path'"
 
-#: git-submodule.sh:670
-#, sh-format
-msgid "Unable to fetch in submodule path '$displaypath'"
+#: git-submodule.sh:600
+#, fuzzy, sh-format
+msgid ""
+"Unable to fetch in submodule path '$displaypath'; trying to directly fetch "
+"$sha1:"
 msgstr "Não é possível obter no caminho de submódulo '$displaypath'"
 
-#: git-submodule.sh:676
+#: git-submodule.sh:606
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
@@ -14867,109 +24478,101 @@ msgstr ""
 "Obteve-se no caminho de submódulo '$displaypath', mas não continha $sha1. "
 "Falha ao obter aquele commit diretamente."
 
-#: git-submodule.sh:683
+#: git-submodule.sh:613
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr "Não é possível extrair '$sha1' no caminho de submódulo '$displaypath'"
 
-#: git-submodule.sh:684
+#: git-submodule.sh:614
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr "Caminho de submódulo '$displaypath': '$sha1' extraído"
 
-#: git-submodule.sh:688
+#: git-submodule.sh:618
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Não foi possível efetuar rebase de '$sha1' no caminho de submódulo "
 "'$displaypath'"
 
-#: git-submodule.sh:689
+#: git-submodule.sh:619
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr "Caminho de submódulo '$displaypath': rebase concluído em '$sha1'"
 
-#: git-submodule.sh:694
+#: git-submodule.sh:624
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr "Não é possível integrar '$sha1' no caminho de submódulo '$displaypath'"
 
-#: git-submodule.sh:695
+#: git-submodule.sh:625
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr "Caminho de submódulo '$displaypath': integrado em '$sha1'"
 
-#: git-submodule.sh:700
+#: git-submodule.sh:630
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
 "Falha ao executar '$command $sha1' no caminho de submódulo '$displaypath'"
 
-#: git-submodule.sh:701
+#: git-submodule.sh:631
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
 msgstr "Caminho de submódulo '$displaypath': '$command $sha1'"
 
-#: git-submodule.sh:732
+#: git-submodule.sh:662
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr "Falha ao percorrer o caminho de submódulo '$displaypath'"
 
-#: git-submodule.sh:840
-msgid "The --cached option cannot be used with the --files option"
-msgstr "A opção --cached não pode ser usada com a opção --files"
-
-#: git-submodule.sh:892
-#, sh-format
-msgid "unexpected mode $mod_dst"
-msgstr "modo inesperado $mod_dst"
-
-#: git-submodule.sh:912
-#, sh-format
-msgid "  Warn: $display_name doesn't contain commit $sha1_src"
-msgstr "  Aviso: $display_name não contém o commit $sha1_src"
-
-#: git-submodule.sh:915
-#, sh-format
-msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
-msgstr "  Warn: $display_name não contém o commit $sha1_dst"
-
-#: git-submodule.sh:918
+#: git-parse-remote.sh:89
 #, sh-format
-msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
-msgstr "  Warn: $display_name contém os commits $sha1_src e $sha1_dst"
+msgid "See git-${cmd}(1) for details."
+msgstr "Consulte git-${cmd}(1) para obter mais detalhes."
 
-#: git-submodule.sh:1064
-#, sh-format
-msgid "Failed to recurse into submodule path '$sm_path'"
-msgstr "Falha ao percorrer recursivamente o caminho de submódulo '$sm_path'"
+#: git-rebase--preserve-merges.sh:109
+msgid "Applied autostash."
+msgstr "Pilha automática (autostash) aplicada."
 
-#: git-submodule.sh:1136
+#: git-rebase--preserve-merges.sh:112
 #, sh-format
-msgid "Synchronizing submodule url for '$displaypath'"
-msgstr "A sincronizar o URL do submódulo '$displaypath'"
+msgid "Cannot store $stash_sha1"
+msgstr "Não é possível guardar $stash_sha1"
 
-#: git-parse-remote.sh:89
-#, sh-format
-msgid "See git-${cmd}(1) for details."
-msgstr "Consulte git-${cmd}(1) para obter mais detalhes."
+#: git-rebase--preserve-merges.sh:113
+msgid ""
+"Applying autostash resulted in conflicts.\n"
+"Your changes are safe in the stash.\n"
+"You can run \"git stash pop\" or \"git stash drop\" at any time.\n"
+msgstr ""
+"Surgiram conflitos ao aplicar a pilha automática (autostash).\n"
+"As suas alterações estão guardadas na pilha.\n"
+"Pode executar \"git stash pop\" ou \"git stash drop\" oportunamente.\n"
 
-#: git-rebase--interactive.sh:140
+#: git-rebase--preserve-merges.sh:191
 #, sh-format
 msgid "Rebasing ($new_count/$total)"
 msgstr "A rebasear ($new_count/$total)"
 
-#: git-rebase--interactive.sh:156
+#: git-rebase--preserve-merges.sh:197
+#, fuzzy
 msgid ""
 "\n"
 "Commands:\n"
-" p, pick = use commit\n"
-" r, reword = use commit, but edit the commit message\n"
-" e, edit = use commit, but stop for amending\n"
-" s, squash = use commit, but meld into previous commit\n"
-" f, fixup = like \"squash\", but discard this commit's log message\n"
-" x, exec = run command (the rest of the line) using shell\n"
-" d, drop = remove commit\n"
+"p, pick <commit> = use commit\n"
+"r, reword <commit> = use commit, but edit the commit message\n"
+"e, edit <commit> = use commit, but stop for amending\n"
+"s, squash <commit> = use commit, but meld into previous commit\n"
+"f, fixup <commit> = like \"squash\", but discard this commit's log message\n"
+"x, exec <commit> = run command (the rest of the line) using shell\n"
+"d, drop <commit> = remove commit\n"
+"l, label <label> = label current HEAD with a name\n"
+"t, reset <label> = reset HEAD to a label\n"
+"m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]\n"
+".       create a merge commit using the original merge commit's\n"
+".       message (or the oneline, if no original merge commit was\n"
+".       specified). Use -c <commit> to reword the commit message.\n"
 "\n"
 "These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
@@ -14985,23 +24588,7 @@ msgstr ""
 "\n"
 "Estas linhas pode ser reordenadas; são executadas de cima para baixo.\n"
 
-#: git-rebase--interactive.sh:171
-msgid ""
-"\n"
-"Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
-msgstr ""
-"\n"
-"Não remover nenhum linha. Use 'drop' explicitamente para remover um commit.\n"
-
-#: git-rebase--interactive.sh:175
-msgid ""
-"\n"
-"If you remove a line here THAT COMMIT WILL BE LOST.\n"
-msgstr ""
-"\n"
-"Se remover uma linha daqui AQUELE COMMIT SERÁ PERDIDO.\n"
-
-#: git-rebase--interactive.sh:211
+#: git-rebase--preserve-merges.sh:260
 #, sh-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -15020,83 +24607,83 @@ msgstr ""
 "\n"
 "\tgit rebase --continue"
 
-#: git-rebase--interactive.sh:236
+#: git-rebase--preserve-merges.sh:285
 #, sh-format
 msgid "$sha1: not a commit that can be picked"
 msgstr "$sha1: não é um commit que se possa apanhar"
 
-#: git-rebase--interactive.sh:275
+#: git-rebase--preserve-merges.sh:324
 #, sh-format
 msgid "Invalid commit name: $sha1"
 msgstr "Nome de commit inválido: $sha1"
 
-#: git-rebase--interactive.sh:317
+#: git-rebase--preserve-merges.sh:354
 msgid "Cannot write current commit's replacement sha1"
 msgstr "Não é possível escrever o sha1 substituto do commit"
 
-#: git-rebase--interactive.sh:369
+#: git-rebase--preserve-merges.sh:405
 #, sh-format
 msgid "Fast-forward to $sha1"
 msgstr "Avanço-rápido para $sha1"
 
-#: git-rebase--interactive.sh:371
+#: git-rebase--preserve-merges.sh:407
 #, sh-format
 msgid "Cannot fast-forward to $sha1"
 msgstr "Não é possível avançar rapidamente para $sha1"
 
-#: git-rebase--interactive.sh:380
+#: git-rebase--preserve-merges.sh:416
 #, sh-format
 msgid "Cannot move HEAD to $first_parent"
 msgstr "Não é possível mover HEAD para $first_parent"
 
-#: git-rebase--interactive.sh:385
+#: git-rebase--preserve-merges.sh:421
 #, sh-format
 msgid "Refusing to squash a merge: $sha1"
 msgstr "Recusa-se a esmagar uma integração: $sha1"
 
-#: git-rebase--interactive.sh:399
+#: git-rebase--preserve-merges.sh:439
 #, sh-format
 msgid "Error redoing merge $sha1"
 msgstr "Erro ao refazer integração $sha1"
 
-#: git-rebase--interactive.sh:407
+#: git-rebase--preserve-merges.sh:448
 #, sh-format
 msgid "Could not pick $sha1"
 msgstr "Não foi possível apanhar $sha1"
 
-#: git-rebase--interactive.sh:416
+#: git-rebase--preserve-merges.sh:457
 #, sh-format
 msgid "This is the commit message #${n}:"
 msgstr "Esta é a mensagem de commit nº${n}:"
 
-#: git-rebase--interactive.sh:421
+#: git-rebase--preserve-merges.sh:462
 #, sh-format
 msgid "The commit message #${n} will be skipped:"
 msgstr "A mensagem de commit nº${n} será ignorada:"
 
-#: git-rebase--interactive.sh:432
+#: git-rebase--preserve-merges.sh:473
 #, sh-format
 msgid "This is a combination of $count commit."
 msgid_plural "This is a combination of $count commits."
 msgstr[0] "Isto é a combinação de $count commit."
 msgstr[1] "Isto é a combinação de $count commits."
 
-#: git-rebase--interactive.sh:441
+#: git-rebase--preserve-merges.sh:482
 #, sh-format
 msgid "Cannot write $fixup_msg"
 msgstr "Não é possível escrever $fixup_msg"
 
-#: git-rebase--interactive.sh:444
+#: git-rebase--preserve-merges.sh:485
 msgid "This is a combination of 2 commits."
 msgstr "Isto é a combinação de 2 commits."
 
-#: git-rebase--interactive.sh:485 git-rebase--interactive.sh:528
-#: git-rebase--interactive.sh:531
+#: git-rebase--preserve-merges.sh:526 git-rebase--preserve-merges.sh:569
+#: git-rebase--preserve-merges.sh:572
 #, sh-format
 msgid "Could not apply $sha1... $rest"
 msgstr "Não foi possível aplicar $sha1... $rest"
 
-#: git-rebase--interactive.sh:559
+#: git-rebase--preserve-merges.sh:601
 #, sh-format
 msgid ""
 "Could not amend commit after successfully picking $sha1... $rest\n"
@@ -15113,31 +24700,31 @@ msgstr ""
 "poder\n"
 "reformular a mensagem do commit."
 
-#: git-rebase--interactive.sh:574
+#: git-rebase--preserve-merges.sh:616
 #, sh-format
 msgid "Stopped at $sha1_abbrev... $rest"
 msgstr "Parou em $sha1_abbrev... $rest"
 
-#: git-rebase--interactive.sh:589
+#: git-rebase--preserve-merges.sh:631
 #, sh-format
 msgid "Cannot '$squash_style' without a previous commit"
 msgstr "Não é possível efetuar '$squash_style' sem um commit anterior"
 
-#: git-rebase--interactive.sh:631
+#: git-rebase--preserve-merges.sh:673
 #, sh-format
 msgid "Executing: $rest"
 msgstr "A executar: $rest"
 
-#: git-rebase--interactive.sh:639
+#: git-rebase--preserve-merges.sh:681
 #, sh-format
 msgid "Execution failed: $rest"
 msgstr "Falha ao executar: $rest"
 
-#: git-rebase--interactive.sh:641
+#: git-rebase--preserve-merges.sh:683
 msgid "and made changes to the index and/or the working tree"
 msgstr "e fez alterações ao índice e/ou à árvore de trabalho"
 
-#: git-rebase--interactive.sh:643
+#: git-rebase--preserve-merges.sh:685
 msgid ""
 "You can fix the problem, and then run\n"
 "\n"
@@ -15148,7 +24735,7 @@ msgstr ""
 "\tgit rebase --continue"
 
 #. TRANSLATORS: after these lines is a command to be issued by the user
-#: git-rebase--interactive.sh:656
+#: git-rebase--preserve-merges.sh:698
 #, sh-format
 msgid ""
 "Execution succeeded: $rest\n"
@@ -15163,94 +24750,25 @@ msgstr ""
 "\n"
 "\tgit rebase --continue"
 
-#: git-rebase--interactive.sh:667
+#: git-rebase--preserve-merges.sh:709
 #, sh-format
 msgid "Unknown command: $command $sha1 $rest"
 msgstr "Comando desconhecido: $command $sha1 $rest"
 
-#: git-rebase--interactive.sh:668
+#: git-rebase--preserve-merges.sh:710
 msgid "Please fix this using 'git rebase --edit-todo'."
 msgstr "Corrija-o usando 'git rebase --edit-todo'."
 
-#: git-rebase--interactive.sh:703
+#: git-rebase--preserve-merges.sh:745
 #, sh-format
 msgid "Successfully rebased and updated $head_name."
 msgstr "$head_name rebaseado e atualizado com sucesso."
 
-#: git-rebase--interactive.sh:750
-msgid "Could not skip unnecessary pick commands"
-msgstr "Não foi possível saltar comandos pick desnecessários"
-
-#: git-rebase--interactive.sh:908
-#, sh-format
-msgid ""
-"Warning: the SHA-1 is missing or isn't a commit in the following line:\n"
-" - $line"
-msgstr ""
-"Aviso: falta o SHA-1 ou a seguinte linha não tem um commit:\n"
-" - $line"
-
-#: git-rebase--interactive.sh:941
-#, sh-format
-msgid ""
-"Warning: the command isn't recognized in the following line:\n"
-" - $line"
-msgstr ""
-"Aviso: o comando não é reconhecido na seguinte linha:\n"
-" - $line"
-
-#: git-rebase--interactive.sh:980
-msgid "could not detach HEAD"
-msgstr "não foi possível destacar HEAD"
-
-#: git-rebase--interactive.sh:1018
-msgid ""
-"Warning: some commits may have been dropped accidentally.\n"
-"Dropped commits (newer to older):"
-msgstr ""
-"Aviso: alguns commits podem ter sido descartados acidentalmente.\n"
-"Commits descartados (mais novo para o mais velho):"
-
-#: git-rebase--interactive.sh:1026
-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."
-msgstr ""
-"Para evitar esta mensagem, use \"drop\" para remover um commit "
-"explicitamente.\n"
-"\n"
-"Use 'git config rebase.missingCommitsCheck' para mudar o nível de avisos.\n"
-"O comportamentos possíveis são: ignore, warn, error."
-
-#: git-rebase--interactive.sh:1037
-#, sh-format
-msgid ""
-"Unrecognized setting $check_level for option rebase.missingCommitsCheck. "
-"Ignoring."
-msgstr ""
-"Definição $check_level desconhecida da opção rebase.missingCommitsCheck. "
-"Ignorado."
-
-#: git-rebase--interactive.sh:1054
-msgid ""
-"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
-"continue'."
-msgstr ""
-"Pode corrí-lo com 'git rebase --edit-todo' e depois executar 'git rebase --"
-"continue'."
-
-#: git-rebase--interactive.sh:1055
-msgid "Or you can abort the rebase with 'git rebase --abort'."
-msgstr "Ou pode abortar o rebase com 'git rebase --abort'."
-
-#: git-rebase--interactive.sh:1083
+#: git-rebase--preserve-merges.sh:802
 msgid "Could not remove CHERRY_PICK_HEAD"
 msgstr "Não foi possível remover CHERRY_PICK_HEAD"
 
-#: git-rebase--interactive.sh:1088
+#: git-rebase--preserve-merges.sh:807
 #, sh-format
 msgid ""
 "You have staged changes in your working tree.\n"
@@ -15281,11 +24799,11 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: git-rebase--interactive.sh:1105
+#: git-rebase--preserve-merges.sh:824
 msgid "Error trying to find the author identity to amend commit"
 msgstr "Erro ao tentar encontrar a identidade do autor para emendar o commit"
 
-#: git-rebase--interactive.sh:1110
+#: git-rebase--preserve-merges.sh:829
 msgid ""
 "You have uncommitted changes in your working tree. Please commit them\n"
 "first and then run 'git rebase --continue' again."
@@ -15293,208 +24811,122 @@ msgstr ""
 "Tem alterações por submeter na árvore de trabalho. Submeta-as primeiro\n"
 "e execute 'git rebase --continue' de novo."
 
-#: git-rebase--interactive.sh:1115 git-rebase--interactive.sh:1119
+#: git-rebase--preserve-merges.sh:834 git-rebase--preserve-merges.sh:838
 msgid "Could not commit staged changes."
 msgstr "Não foi possível submeter as alterações preparadas."
 
-#: git-rebase--interactive.sh:1147
-msgid ""
-"\n"
-"You are editing the todo file of an ongoing interactive rebase.\n"
-"To continue rebase after editing, run:\n"
-"    git rebase --continue\n"
-"\n"
-msgstr ""
-"\n"
-"Está a editar o ficheiro de tarefa de um rebase interativo em curso.\n"
-"Para continuar o rebase depois de editar, execute:\n"
-"    git rebase --continue\n"
-"\n"
-
-#: git-rebase--interactive.sh:1155 git-rebase--interactive.sh:1313
+#: git-rebase--preserve-merges.sh:869 git-rebase--preserve-merges.sh:955
 msgid "Could not execute editor"
 msgstr "Não foi possível executar o editor"
 
-#: git-rebase--interactive.sh:1168
+#: git-rebase--preserve-merges.sh:890
 #, sh-format
 msgid "Could not checkout $switch_to"
 msgstr "Não foi possível extrair $switch_to"
 
-#: git-rebase--interactive.sh:1173
+#: git-rebase--preserve-merges.sh:897
 msgid "No HEAD?"
 msgstr "Sem HEAD?"
 
-#: git-rebase--interactive.sh:1174
+#: git-rebase--preserve-merges.sh:898
 #, sh-format
 msgid "Could not create temporary $state_dir"
 msgstr "Não foi possível criar $state_dir temporário"
 
-#: git-rebase--interactive.sh:1176
+#: git-rebase--preserve-merges.sh:901
 msgid "Could not mark as interactive"
 msgstr "Não foi possível marcar como interativo"
 
-#: git-rebase--interactive.sh:1186 git-rebase--interactive.sh:1191
-msgid "Could not init rewritten commits"
-msgstr "Não foi possível inicializar commits reescritos"
-
-#: git-rebase--interactive.sh:1291
+#: git-rebase--preserve-merges.sh:933
 #, sh-format
 msgid "Rebase $shortrevisions onto $shortonto ($todocount command)"
 msgid_plural "Rebase $shortrevisions onto $shortonto ($todocount commands)"
 msgstr[0] "Rebase $shortrevisions sobre $shortonto ($todocount comando)"
 msgstr[1] "Rebase $shortrevisions sobre $shortonto ($todocount comandos)"
 
-#: git-rebase--interactive.sh:1296
-msgid ""
-"\n"
-"However, if you remove everything, the rebase will be aborted.\n"
-"\n"
-msgstr ""
-"\n"
-"No entanto, se remover tudo, o rebase será abortado.\n"
-"\n"
-
-#: git-rebase--interactive.sh:1303
+#: git-rebase--preserve-merges.sh:945
 msgid "Note that empty commits are commented out"
 msgstr "Note que commits vazios são comentados"
 
+#: git-rebase--preserve-merges.sh:987 git-rebase--preserve-merges.sh:992
+msgid "Could not init rewritten commits"
+msgstr "Não foi possível inicializar commits reescritos"
+
 #: git-sh-setup.sh:89 git-sh-setup.sh:94
 #, sh-format
 msgid "usage: $dashless $USAGE"
 msgstr "utilização: $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 ""
 "Não é possível mudar de diretório para $cdup, o topo da árvore de trabalho"
 
-#: 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 "fatal: $program_name não pode ser usado sem uma árvore de trabalho."
 
-#: git-sh-setup.sh:220
+#: git-sh-setup.sh:221
 msgid "Cannot rebase: You have unstaged changes."
 msgstr "Não é possível rebasear: tem alterações não preparadas."
 
-#: git-sh-setup.sh:223
+#: git-sh-setup.sh:224
 msgid "Cannot rewrite branches: You have unstaged changes."
 msgstr "Não é possível reescrever ramos: tem alterações não preparadas."
 
-#: git-sh-setup.sh:226
+#: git-sh-setup.sh:227
 msgid "Cannot pull with rebase: You have unstaged changes."
 msgstr "Não é possível puxar com rebase: tem alterações não preparadas."
 
-#: git-sh-setup.sh:229
+#: git-sh-setup.sh:230
 #, sh-format
 msgid "Cannot $action: You have unstaged changes."
 msgstr "Não é possível efetuar $action: tem alterações não preparadas."
 
-#: git-sh-setup.sh:242
+#: git-sh-setup.sh:243
 msgid "Cannot rebase: Your index contains uncommitted changes."
 msgstr "Não é possível rebasear: o índice contém alterações não submetidas."
 
-#: git-sh-setup.sh:245
+#: git-sh-setup.sh:246
 msgid "Cannot pull with rebase: Your index contains uncommitted changes."
 msgstr ""
 "Não é possível puxar com rebase: o índice contém alterações não submetidas."
 
-#: git-sh-setup.sh:248
+#: git-sh-setup.sh:249
 #, sh-format
 msgid "Cannot $action: Your index contains uncommitted changes."
 msgstr ""
 "Não é possível efetuar $action: o índice contém alterações não submetidas."
 
-#: git-sh-setup.sh:252
+#: git-sh-setup.sh:253
 msgid "Additionally, your index contains uncommitted changes."
 msgstr "Além disso, o índice contém alterações não submetidas."
 
-#: 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 ""
 "Precisa de executar este comando a partir do topo da árvore de trabalho."
 
-#: git-sh-setup.sh:377
+#: git-sh-setup.sh:378
 msgid "Unable to determine absolute path of git directory"
 msgstr "Não é possível determinar o caminho absoluto do diretório git"
 
 #. TRANSLATORS: you can adjust this to align "git add -i" status menu
-#: git-add--interactive.perl:238
+#: git-add--interactive.perl:212
 #, perl-format
 msgid "%12s %12s %s"
 msgstr "%12s %12s %s"
 
-#: git-add--interactive.perl:239
-msgid "staged"
-msgstr "preparado"
-
-#: git-add--interactive.perl:239
-msgid "unstaged"
-msgstr "não preparado"
-
-#: git-add--interactive.perl:288 git-add--interactive.perl:313
-msgid "binary"
-msgstr "binário"
-
-#: git-add--interactive.perl:297 git-add--interactive.perl:351
-msgid "nothing"
-msgstr "nada"
-
-#: git-add--interactive.perl:333 git-add--interactive.perl:348
-msgid "unchanged"
-msgstr "não alterado"
-
-#: git-add--interactive.perl:644
-#, perl-format
-msgid "added %d path\n"
-msgid_plural "added %d paths\n"
-msgstr[0] "%d caminho adicionar\n"
-msgstr[1] "%d caminhos adicionados\n"
-
-#: git-add--interactive.perl:647
-#, perl-format
-msgid "updated %d path\n"
-msgid_plural "updated %d paths\n"
-msgstr[0] "%d caminho atualizado\n"
-msgstr[1] "%d caminhos atualizados\n"
-
-#: git-add--interactive.perl:650
-#, perl-format
-msgid "reverted %d path\n"
-msgid_plural "reverted %d paths\n"
-msgstr[0] "%d caminho revertido\n"
-msgstr[1] "%d caminhos revertidos\n"
-
-#: git-add--interactive.perl:653
+#: git-add--interactive.perl:634
 #, perl-format
 msgid "touched %d path\n"
 msgid_plural "touched %d paths\n"
 msgstr[0] "%d caminho afetado\n"
 msgstr[1] "%d caminhos afetados\n"
 
-#: git-add--interactive.perl:662
-msgid "Update"
-msgstr "Atualizar"
-
-#: git-add--interactive.perl:674
-msgid "Revert"
-msgstr "Reverter"
-
-#: git-add--interactive.perl:697
-#, perl-format
-msgid "note: %s is untracked now.\n"
-msgstr "nota: %s é agora não controlado.\n"
-
-#: git-add--interactive.perl:708
-msgid "Add untracked"
-msgstr "Adicionar não controlados"
-
-#: git-add--interactive.perl:714
-msgid "No untracked files.\n"
-msgstr "Nenhum ficheiros não controlado.\n"
-
-#: git-add--interactive.perl:1030
+#: git-add--interactive.perl:1058
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
@@ -15502,7 +24934,7 @@ msgstr ""
 "Se o patch se aplicar corretamente, o excerto editado será marcado\n"
 "como preparado imediatamente."
 
-#: git-add--interactive.perl:1033
+#: git-add--interactive.perl:1061
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
@@ -15510,7 +24942,7 @@ msgstr ""
 "Se o patch se aplicar corretamente, o excerto editado será marcado\n"
 "como escondido imediatamente."
 
-#: git-add--interactive.perl:1036
+#: git-add--interactive.perl:1064
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
@@ -15518,7 +24950,8 @@ msgstr ""
 "Se o patch se aplicar corretamente, o excerto editado será marcado\n"
 "como não preparado imediatamente."
 
-#: git-add--interactive.perl:1039 git-add--interactive.perl:1048
+#: git-add--interactive.perl:1067 git-add--interactive.perl:1076
+#: git-add--interactive.perl:1082
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for applying."
@@ -15526,7 +24959,8 @@ msgstr ""
 "Se o patch se aplicar corretamente, o excerto editado será marcado\n"
 "para ser aplicado imediatamente."
 
-#: git-add--interactive.perl:1042 git-add--interactive.perl:1045
+#: git-add--interactive.perl:1070 git-add--interactive.perl:1073
+#: git-add--interactive.perl:1079
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for discarding."
@@ -15534,17 +24968,13 @@ msgstr ""
 "Se o patch se aplicar corretamente, o excerto editado será marcado\n"
 "para ser descartado imediatamente."
 
-#: git-add--interactive.perl:1058
+#: git-add--interactive.perl:1116
 #, perl-format
 msgid "failed to open hunk edit file for writing: %s"
 msgstr ""
 "não foi possível abrir o ficheiro de edição do excerto para escrita: %s"
 
-#: git-add--interactive.perl:1059
-msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
-msgstr "Modo de edição manual de excerto -- ver guia rápido abaixo no final.\n"
-
-#: git-add--interactive.perl:1065
+#: git-add--interactive.perl:1123
 #, perl-format
 msgid ""
 "---\n"
@@ -15557,37 +24987,13 @@ msgstr ""
 "Para remover linhas '%s', elimine-as.\n"
 "Linhas começadas com %s serão removidas.\n"
 
-#. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: git-add--interactive.perl:1073
-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 não se aplicar corretamente, ser-lhe-á dada oportunidade para editar\n"
-"de novo.  Se todas as linhas do excerto forem removidas, a edição é\n"
-"abortada e o exceto é deixado inalterado.\n"
-
-#: git-add--interactive.perl:1087
+#: git-add--interactive.perl:1145
 #, perl-format
 msgid "failed to open hunk edit file for reading: %s"
 msgstr ""
 "não foi possível abrir o ficheiro de edição do excerto para leitura: %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:1178
-msgid ""
-"Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
-msgstr ""
-"O excerto que editou não aplica.\n"
-"Edite de novo (responder \"não\" descarta!) [y/n]? "
-
-#: git-add--interactive.perl:1187
+#: git-add--interactive.perl:1253
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -15601,7 +25007,7 @@ msgstr ""
 "a - preparar este excerto e todos os excertos seguintes no ficheiro\n"
 "d - não preparar este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1193
+#: git-add--interactive.perl:1259
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -15615,7 +25021,7 @@ msgstr ""
 "a - esconder este excerto e todos os seguintes no ficheiro\n"
 "d - não esconder este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1199
+#: git-add--interactive.perl:1265
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -15629,7 +25035,7 @@ msgstr ""
 "a - despreparar este excerto e todos os excertos seguintes no ficheiro\n"
 "d - não despreparar este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1205
+#: git-add--interactive.perl:1271
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -15643,7 +25049,7 @@ msgstr ""
 "a - aplicar este excerto e todos os excertos seguintes no ficheiro\n"
 "d - não aplicar este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1211
+#: git-add--interactive.perl:1277 git-add--interactive.perl:1295
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -15657,7 +25063,7 @@ msgstr ""
 "a - descartar este excerto e todos os excertos seguintes no ficheiro\n"
 "d - não descartar este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1217
+#: git-add--interactive.perl:1283
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -15671,7 +25077,7 @@ msgstr ""
 "a - descartar este excerto e todos os excertos seguintes no ficheiro\n"
 "d - não descartar este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1223
+#: git-add--interactive.perl:1289
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
@@ -15685,7 +25091,22 @@ msgstr ""
 "a - aplicar este excerto e todos os excertos seguintes no ficheiro\n"
 "d - não aplicar este excerto nem os excertos seguintes no ficheiro"
 
-#: git-add--interactive.perl:1232
+#: git-add--interactive.perl:1301
+#, fuzzy
+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 - aplicar este excerto ao índice e à árvore de trabalho\n"
+"n - não aplicar este excerto ao índice e à árvore de trabalho\n"
+"q - sair; não aplicar este excerto ou restantes\n"
+"a - aplicar este excerto e todos os excertos seguintes no ficheiro\n"
+"d - não aplicar este excerto nem os excertos seguintes no ficheiro"
+
+#: git-add--interactive.perl:1316
 msgid ""
 "g - select a hunk to go to\n"
 "/ - search for a hunk matching the given regex\n"
@@ -15707,203 +25128,95 @@ msgstr ""
 "e - editar manualmente o excerto atual\n"
 "? - imprimir ajuda\n"
 
-#: git-add--interactive.perl:1263
+#: git-add--interactive.perl:1347
 msgid "The selected hunks do not apply to the index!\n"
 msgstr "Os excertos selecionados não aplicam ao índice!\n"
 
-#: git-add--interactive.perl:1264
-msgid "Apply them to the worktree anyway? "
-msgstr "Aplicá-los à árvore de trabalho mesmo assim? "
-
-#: git-add--interactive.perl:1267
-msgid "Nothing was applied.\n"
-msgstr "Não foi aplicado nada.\n"
-
-#: git-add--interactive.perl:1278
+#: git-add--interactive.perl:1362
 #, perl-format
 msgid "ignoring unmerged: %s\n"
 msgstr "ignorado não integrado: %s\n"
 
-#: git-add--interactive.perl:1287
-msgid "Only binary files changed.\n"
-msgstr "Apenas ficheiros binários alterados.\n"
-
-#: git-add--interactive.perl:1289
-msgid "No changes.\n"
-msgstr "Sem alterações.\n"
-
-#: git-add--interactive.perl:1297
-msgid "Patch update"
-msgstr "Atualizar patch"
-
-#: git-add--interactive.perl:1349
-#, perl-format
-msgid "Stage mode change [y,n,q,a,d,/%s,?]? "
-msgstr "Preparar alteração de modo [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1350
-#, perl-format
-msgid "Stage deletion [y,n,q,a,d,/%s,?]? "
-msgstr "Preparar eliminação [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1351
-#, perl-format
-msgid "Stage this hunk [y,n,q,a,d,/%s,?]? "
-msgstr "Preparar este excerto [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1354
-#, perl-format
-msgid "Stash mode change [y,n,q,a,d,/%s,?]? "
-msgstr "Esconder alteração de modo [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1355
-#, perl-format
-msgid "Stash deletion [y,n,q,a,d,/%s,?]? "
-msgstr "Esconder eliminação [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1356
-#, perl-format
-msgid "Stash this hunk [y,n,q,a,d,/%s,?]? "
-msgstr "Esconder este excerto [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1359
-#, perl-format
-msgid "Unstage mode change [y,n,q,a,d,/%s,?]? "
-msgstr "Não preparar alteração de modo [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1360
-#, perl-format
-msgid "Unstage deletion [y,n,q,a,d,/%s,?]? "
-msgstr "Não preparar eliminação [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1361
-#, perl-format
-msgid "Unstage this hunk [y,n,q,a,d,/%s,?]? "
-msgstr "Não preparar este excerto [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1364
-#, perl-format
-msgid "Apply mode change to index [y,n,q,a,d,/%s,?]? "
-msgstr "Aplicar alteração de modo ao índice [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1365
-#, perl-format
-msgid "Apply deletion to index [y,n,q,a,d,/%s,?]? "
-msgstr "Aplicar eliminação ao índice [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1366
-#, perl-format
-msgid "Apply this hunk to index [y,n,q,a,d,/%s,?]? "
-msgstr "Aplicar este excerto ao índice [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1369
-#, perl-format
-msgid "Discard mode change from worktree [y,n,q,a,d,/%s,?]? "
-msgstr "Descartar alteração de modo da árvore de trabalho [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1370
-#, perl-format
-msgid "Discard deletion from worktree [y,n,q,a,d,/%s,?]? "
-msgstr "Descartar eliminação da árvore de trabalho [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1371
-#, perl-format
-msgid "Discard this hunk from worktree [y,n,q,a,d,/%s,?]? "
-msgstr "Descartar este excerto da árvore de trabalho [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1374
-#, perl-format
-msgid "Discard mode change from index and worktree [y,n,q,a,d,/%s,?]? "
-msgstr ""
-"Descartar alteração de modo do índice e da árvore de trabalho [y,n,q,a,d,/"
-"%s,?]? "
-
-#: git-add--interactive.perl:1375
-#, perl-format
-msgid "Discard deletion from index and worktree [y,n,q,a,d,/%s,?]? "
-msgstr ""
-"Descartar eliminação do índice e da árvore de trabalho [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1376
-#, perl-format
-msgid "Discard this hunk from index and worktree [y,n,q,a,d,/%s,?]? "
-msgstr ""
-"Descartar este excerto do índice e da árvore de trabalho [y,n,q,a,d,/%s,?]? "
-
-#: git-add--interactive.perl:1379
-#, perl-format
-msgid "Apply mode change to index and worktree [y,n,q,a,d,/%s,?]? "
+#: git-add--interactive.perl:1481
+#, fuzzy, perl-format
+msgid "Apply mode change to worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 "Aplicar alteração de modo ao índice e à árvore de trabalho [y,n,q,a,d,/"
 "%s,?]? "
 
-#: git-add--interactive.perl:1380
-#, perl-format
-msgid "Apply deletion to index and worktree [y,n,q,a,d,/%s,?]? "
+#: git-add--interactive.perl:1482
+#, fuzzy, perl-format
+msgid "Apply deletion to worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 "Aplicar eliminação ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
 
-#: git-add--interactive.perl:1381
-#, perl-format
-msgid "Apply this hunk to index and worktree [y,n,q,a,d,/%s,?]? "
+#: git-add--interactive.perl:1483
+#, fuzzy, perl-format
+msgid "Apply addition to worktree [y,n,q,a,d%s,?]? "
 msgstr ""
-"Aplicar este excerto ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
+"Aplicar eliminação ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
 
 #: git-add--interactive.perl:1484
-msgid "go to which hunk (<ret> to see more)? "
-msgstr "ir para que excerto (<ret> para ver mais)? "
+#, fuzzy, perl-format
+msgid "Apply this hunk to worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+"Aplicar este excerto ao índice e à árvore de trabalho [y,n,q,a,d,/%s,?]? "
 
-#: git-add--interactive.perl:1486
-msgid "go to which hunk? "
-msgstr "ir para que excerto? "
+#: git-add--interactive.perl:1601
+msgid "No other hunks to goto\n"
+msgstr ""
 
-#: git-add--interactive.perl:1495
+#: git-add--interactive.perl:1619
 #, perl-format
 msgid "Invalid number: '%s'\n"
 msgstr "Número inválido: '%s'\n"
 
-#: git-add--interactive.perl:1500
+#: git-add--interactive.perl:1624
 #, perl-format
 msgid "Sorry, only %d hunk available.\n"
 msgid_plural "Sorry, only %d hunks available.\n"
 msgstr[0] "Lamento, apenas %d excerto disponível.\n"
 msgstr[1] "Lamento, apenas %d excertos disponíveis.\n"
 
-#: git-add--interactive.perl:1526
-msgid "search for regex? "
-msgstr "procurar por regex? "
+#: git-add--interactive.perl:1659
+msgid "No other hunks to search\n"
+msgstr ""
 
-#: git-add--interactive.perl:1539
+#: git-add--interactive.perl:1676
 #, perl-format
 msgid "Malformed search regexp %s: %s\n"
 msgstr "Regexp de pesquisa malformada %s: %s\n"
 
-#: git-add--interactive.perl:1549
+#: git-add--interactive.perl:1686
 msgid "No hunk matches the given pattern\n"
 msgstr "Nenhum excerto corresponde ao padrão fornecido\n"
 
-#: git-add--interactive.perl:1561 git-add--interactive.perl:1583
+#: git-add--interactive.perl:1698 git-add--interactive.perl:1720
 msgid "No previous hunk\n"
 msgstr "Nenhum excerto anterior\n"
 
-#: git-add--interactive.perl:1570 git-add--interactive.perl:1589
+#: git-add--interactive.perl:1707 git-add--interactive.perl:1726
 msgid "No next hunk\n"
 msgstr "Nenhum excerto seguinte\n"
 
-#: git-add--interactive.perl:1597
+#: git-add--interactive.perl:1732
+msgid "Sorry, cannot split this hunk\n"
+msgstr ""
+
+#: git-add--interactive.perl:1738
 #, perl-format
 msgid "Split into %d hunk.\n"
 msgid_plural "Split into %d hunks.\n"
 msgstr[0] "Dividir em %d excerto.\n"
 msgstr[1] "Dividir em %d excertos.\n"
 
-#: git-add--interactive.perl:1649
-msgid "Review diff"
-msgstr "Rever diff"
+#: git-add--interactive.perl:1748
+msgid "Sorry, cannot edit this hunk\n"
+msgstr ""
 
 #. TRANSLATORS: please do not translate the command names
 #. 'status', 'update', 'revert', etc.
-#: git-add--interactive.perl:1668
+#: git-add--interactive.perl:1813
 msgid ""
 "status        - show paths with changes\n"
 "update        - add working tree state to the staged set of changes\n"
@@ -15923,84 +25236,98 @@ msgstr ""
 "add untracked - adicionar conteúdos de ficheiros não controlados ao conjunto "
 "de alterações preparadas\n"
 
-#: git-add--interactive.perl:1685 git-add--interactive.perl:1690
-#: git-add--interactive.perl:1693 git-add--interactive.perl:1700
-#: git-add--interactive.perl:1704 git-add--interactive.perl:1710
+#: git-add--interactive.perl:1830 git-add--interactive.perl:1835
+#: git-add--interactive.perl:1838 git-add--interactive.perl:1845
+#: git-add--interactive.perl:1848 git-add--interactive.perl:1855
+#: git-add--interactive.perl:1859 git-add--interactive.perl:1865
 msgid "missing --"
 msgstr "falta --"
 
-#: git-add--interactive.perl:1706
+#: git-add--interactive.perl:1861
 #, perl-format
 msgid "unknown --patch mode: %s"
 msgstr "Mode de --patch desconhecido: %s"
 
-#: git-add--interactive.perl:1712 git-add--interactive.perl:1718
+#: git-add--interactive.perl:1867 git-add--interactive.perl:1873
 #, perl-format
 msgid "invalid argument %s, expecting --"
 msgstr "argumento inválido %s, esperava-se --"
 
-#: git-send-email.perl:121
+#: git-send-email.perl:138
 msgid "local zone differs from GMT by a non-minute interval\n"
 msgstr "a zona local difere de GMT por um intervalo não arrendado ao minuto\n"
 
-#: git-send-email.perl:128 git-send-email.perl:134
+#: git-send-email.perl:145 git-send-email.perl:151
 msgid "local time offset greater than or equal to 24 hours\n"
 msgstr "a diferença de tempo local é maior ou igual a 24 horas\n"
 
-#: git-send-email.perl:202 git-send-email.perl:208
+#: git-send-email.perl:223 git-send-email.perl:229
 msgid "the editor exited uncleanly, aborting everything"
 msgstr "o editor saiu com erros, abortar tudo"
 
-#: git-send-email.perl:282
+#: git-send-email.perl:312
 #, perl-format
 msgid ""
 "'%s' contains an intermediate version of the email you were composing.\n"
 msgstr "'%s' contém uma versão intermédia do e-mail que esteve a compor.\n"
 
-#: git-send-email.perl:287
+#: git-send-email.perl:317
 #, perl-format
 msgid "'%s.final' contains the composed email.\n"
 msgstr "'%s.final' contém o e-mail composto.\n"
 
-#: git-send-email.perl:305
+#: git-send-email.perl:410
 msgid "--dump-aliases incompatible with other options\n"
 msgstr "--dump-aliases incompatível com outras opções\n"
 
-#: git-send-email.perl:368 git-send-email.perl:623
+#: git-send-email.perl:484
+msgid ""
+"fatal: found configuration options for 'sendmail'\n"
+"git-send-email is configured with the sendemail.* options - note the 'e'.\n"
+"Set sendemail.forbidSendmailVariables to false to disable this check.\n"
+msgstr ""
+
+#: git-send-email.perl:489 git-send-email.perl:691
 msgid "Cannot run git format-patch from outside a repository\n"
 msgstr "Não é possível executar git format-patch fora de um repositório\n"
 
-#: git-send-email.perl:437
+#: git-send-email.perl:492
+msgid ""
+"`batch-size` and `relogin` must be specified together (via command-line or "
+"configuration option)\n"
+msgstr ""
+
+#: git-send-email.perl:505
 #, perl-format
 msgid "Unknown --suppress-cc field: '%s'\n"
 msgstr "Campo de --suppress-cc desconhecido: '%s'\n"
 
-#: git-send-email.perl:466
+#: git-send-email.perl:536
 #, perl-format
 msgid "Unknown --confirm setting: '%s'\n"
 msgstr "Definidição --confirm desconhecida: '%s'\n"
 
-#: git-send-email.perl:498
+#: git-send-email.perl:564
 #, perl-format
 msgid "warning: sendmail alias with quotes is not supported: %s\n"
 msgstr "aviso: sendmail alias com aspas não é suportado: %s\n"
 
-#: git-send-email.perl:500
+#: git-send-email.perl:566
 #, perl-format
 msgid "warning: `:include:` not supported: %s\n"
 msgstr "aviso: `:include:` não suportado: %s\n"
 
-#: git-send-email.perl:502
+#: git-send-email.perl:568
 #, perl-format
 msgid "warning: `/file` or `|pipe` redirection not supported: %s\n"
 msgstr "aviso: `/file` ou redireção `|pipe` não suportado: %s\n"
 
-#: git-send-email.perl:507
+#: git-send-email.perl:573
 #, perl-format
 msgid "warning: sendmail line is not recognized: %s\n"
 msgstr "aviso: linha sendmail não é reconhecida: %s\n"
 
-#: git-send-email.perl:589
+#: git-send-email.perl:657
 #, perl-format
 msgid ""
 "File '%s' exists but it could also be the range of commits\n"
@@ -16015,12 +25342,12 @@ msgstr ""
 "    * Dizendo \"./%s\" se pretende um ficheiro; ou\n"
 "    * Passando a opção --format-patch se pretende um intervalo de commits.\n"
 
-#: git-send-email.perl:610
+#: git-send-email.perl:678
 #, perl-format
 msgid "Failed to opendir %s: %s"
 msgstr "Falha ao abrir diretório %s: %s"
 
-#: git-send-email.perl:634
+#: git-send-email.perl:702
 #, perl-format
 msgid ""
 "fatal: %s: %s\n"
@@ -16029,7 +25356,7 @@ msgstr ""
 "fatal: %s: %s\n"
 "aviso: nenhum patch foi enviado\n"
 
-#: git-send-email.perl:645
+#: git-send-email.perl:713
 msgid ""
 "\n"
 "No patch files specified!\n"
@@ -16039,17 +25366,17 @@ msgstr ""
 "Nenhum ficheiro patch especificado!\n"
 "\n"
 
-#: git-send-email.perl:658
+#: git-send-email.perl:726
 #, perl-format
 msgid "No subject line in %s?"
 msgstr "Nenhum linha de assunto em %s?"
 
-#: git-send-email.perl:668
+#: git-send-email.perl:736
 #, perl-format
 msgid "Failed to open for writing %s: %s"
 msgstr "Falha ao abrir %s para escrita: %s"
 
-#: git-send-email.perl:678
+#: git-send-email.perl:747
 msgid ""
 "Lines beginning in \"GIT:\" will be removed.\n"
 "Consider including an overall diffstat or table of contents\n"
@@ -16063,31 +25390,27 @@ msgstr ""
 "\n"
 "Apague o conteúdo do corpo se não deseja enviar um sumário.\n"
 
-#: git-send-email.perl:701
-#, perl-format
-msgid "Failed to open %s.final: %s"
-msgstr "Falha ao abrir %s.final: %s"
-
-#: git-send-email.perl:704
+#: git-send-email.perl:771
 #, perl-format
 msgid "Failed to open %s: %s"
 msgstr "Falha ao abrir %s: %s"
 
-#: git-send-email.perl:739
-msgid "To/Cc/Bcc fields are not interpreted yet, they have been ignored\n"
-msgstr "Os campos To/Cc/Bcc não são interpretados ainda, foram ignorados\n"
+#: git-send-email.perl:788
+#, perl-format
+msgid "Failed to open %s.final: %s"
+msgstr "Falha ao abrir %s.final: %s"
 
-#: git-send-email.perl:748
+#: git-send-email.perl:831
 msgid "Summary email is empty, skipping it\n"
 msgstr "O e-mail de sumário está vazio, saltá-lo à frente\n"
 
 #. TRANSLATORS: please keep [y/N] as is.
-#: git-send-email.perl:780
+#: git-send-email.perl:866
 #, perl-format
 msgid "Are you sure you want to use <%s> [y/N]? "
 msgstr "Tem a certeza que quer usar <%s> [y/N]? "
 
-#: git-send-email.perl:809
+#: git-send-email.perl:921
 msgid ""
 "The following files are 8bit, but do not declare a Content-Transfer-"
 "Encoding.\n"
@@ -16095,11 +25418,11 @@ msgstr ""
 "Os seguintes ficheiros são 8bit, mas não declaram um Content-Transfer-"
 "Encoding.\n"
 
-#: git-send-email.perl:814
+#: git-send-email.perl:926
 msgid "Which 8bit encoding should I declare [UTF-8]? "
 msgstr "Que codificação 8bit se deve declarar [UTF-8]? "
 
-#: git-send-email.perl:822
+#: git-send-email.perl:934
 #, perl-format
 msgid ""
 "Refusing to send because the patch\n"
@@ -16112,22 +25435,22 @@ msgstr ""
 "tem o assunto modelo '*** SUBJECT HERE ***'. Passe --force se pretende mesmo "
 "enviar.\n"
 
-#: git-send-email.perl:841
+#: git-send-email.perl:953
 msgid "To whom should the emails be sent (if anyone)?"
 msgstr "Para quem devem ser enviados os e-mails (se alguém)?"
 
-#: git-send-email.perl:859
+#: git-send-email.perl:971
 #, perl-format
 msgid "fatal: alias '%s' expands to itself\n"
 msgstr "fatal: alias '%s' expande para si próprio\n"
 
-#: git-send-email.perl:871
+#: git-send-email.perl:983
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr ""
 "Message-ID para ser usado como In-Reply-To para o primeiro e-mail (se "
 "algum)? "
 
-#: git-send-email.perl:921 git-send-email.perl:929
+#: git-send-email.perl:1041 git-send-email.perl:1049
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
 msgstr "erro: não é possível extrair um endereço válido de: %s\n"
@@ -16135,16 +25458,16 @@ msgstr "erro: não é possível extrair um endereço válido de: %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:933
+#: git-send-email.perl:1053
 msgid "What to do with this address? ([q]uit|[d]rop|[e]dit): "
 msgstr "O que fazer com este endereço? ([q]uit|[d]rop|[e]dit): "
 
-#: git-send-email.perl:1234
+#: git-send-email.perl:1370
 #, perl-format
 msgid "CA path \"%s\" does not exist"
 msgstr "O caminho de CA '%s' não existe"
 
-#: git-send-email.perl:1309
+#: git-send-email.perl:1453
 msgid ""
 "    The Cc list above has been expanded by additional\n"
 "    addresses found in the patch commit message. By default\n"
@@ -16168,132 +25491,538 @@ msgstr ""
 "    execute 'git config --global sendemail.confirm auto'.\n"
 "\n"
 
-#. TRANSLATORS: Make sure to include [y] [n] [q] [a] in your
+#. 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:1324
-msgid "Send this email? ([y]es|[n]o|[q]uit|[a]ll): "
+#: git-send-email.perl:1468
+#, fuzzy
+msgid "Send this email? ([y]es|[n]o|[e]dit|[q]uit|[a]ll): "
 msgstr "Enviar este e-mail? ([y]es|[n]o|[q]uit|[a]ll): "
 
-#: git-send-email.perl:1327
+#: git-send-email.perl:1471
 msgid "Send this email reply required"
 msgstr "É necessária resposta se deseja enviar este e-mail"
 
-#: git-send-email.perl:1353
+#: git-send-email.perl:1499
 msgid "The required SMTP server is not properly defined."
 msgstr "O servidor SMTP necessário não está definido corretamente."
 
-#: git-send-email.perl:1397
+#: git-send-email.perl:1546
 #, perl-format
 msgid "Server does not support STARTTLS! %s"
 msgstr "O servidor não suporta STARTTLS! %s"
 
-#: git-send-email.perl:1403
+#: git-send-email.perl:1551 git-send-email.perl:1555
+#, perl-format
+msgid "STARTTLS failed! %s"
+msgstr ""
+
+#: git-send-email.perl:1564
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
 msgstr ""
 "Não é possível inicializar SMTP devidamente. Verifique a configuração e use "
 "--smtp-debug."
 
-#: git-send-email.perl:1421
+#: git-send-email.perl:1582
 #, perl-format
 msgid "Failed to send %s\n"
 msgstr "Falha ao enviar %s\n"
 
-#: git-send-email.perl:1424
+#: git-send-email.perl:1585
 #, perl-format
 msgid "Dry-Sent %s\n"
 msgstr "Simulado-Enviado %s\n"
 
-#: git-send-email.perl:1424
+#: git-send-email.perl:1585
 #, perl-format
 msgid "Sent %s\n"
 msgstr "Enviado %s\n"
 
-#: git-send-email.perl:1426
+#: git-send-email.perl:1587
 msgid "Dry-OK. Log says:\n"
 msgstr "Simulado-OK. O registo diz:\n"
 
-#: git-send-email.perl:1426
+#: git-send-email.perl:1587
 msgid "OK. Log says:\n"
 msgstr "OK. O registo diz:\n"
 
-#: git-send-email.perl:1438
+#: git-send-email.perl:1599
 msgid "Result: "
 msgstr "Resultado: "
 
-#: git-send-email.perl:1441
+#: git-send-email.perl:1602
 msgid "Result: OK\n"
 msgstr "Resultado: OK\n"
 
-#: git-send-email.perl:1454
+#: git-send-email.perl:1620
 #, perl-format
 msgid "can't open file %s"
 msgstr "não é possível abrir o ficheiro %s"
 
-#: git-send-email.perl:1501 git-send-email.perl:1521
+#: git-send-email.perl:1667 git-send-email.perl:1687
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
 msgstr "(mbox) Adicionar cc: %s da linha '%s'\n"
 
-#: git-send-email.perl:1507
+#: git-send-email.perl:1673
 #, perl-format
 msgid "(mbox) Adding to: %s from line '%s'\n"
 msgstr "(mbox) Adicionar para: %s da linha '%s'\n"
 
-#: git-send-email.perl:1555
+#: git-send-email.perl:1730
 #, perl-format
 msgid "(non-mbox) Adding cc: %s from line '%s'\n"
 msgstr "(non-mbox) Adicionar cc: %s da linha '%s'\n"
 
-#: git-send-email.perl:1578
+#: git-send-email.perl:1765
 #, perl-format
 msgid "(body) Adding cc: %s from line '%s'\n"
 msgstr "(body) Adicionar cc: %s da linha '%s'\n"
 
-#: git-send-email.perl:1676
+#: git-send-email.perl:1876
 #, perl-format
 msgid "(%s) Could not execute '%s'"
 msgstr "(%s) Não foi possível executar '%s'"
 
-#: git-send-email.perl:1683
+#: git-send-email.perl:1883
 #, perl-format
 msgid "(%s) Adding %s: %s from: '%s'\n"
 msgstr "(%s) Adicionar %s: %s de: '%s'\n"
 
-#: git-send-email.perl:1687
+#: git-send-email.perl:1887
 #, perl-format
 msgid "(%s) failed to close pipe to '%s'"
 msgstr "(%s) falha ao fechar pipe para '%s'"
 
-#: git-send-email.perl:1714
+#: git-send-email.perl:1917
 msgid "cannot send message as 7bit"
 msgstr "não é possível enviar mensagem como 7bit"
 
-#: git-send-email.perl:1722
+#: git-send-email.perl:1925
 msgid "invalid transfer encoding"
 msgstr "codificação de transferência inválida"
 
-#: git-send-email.perl:1741 git-send-email.perl:1792 git-send-email.perl:1802
+#: git-send-email.perl:1966 git-send-email.perl:2018 git-send-email.perl:2028
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr "não é possível abrir %s: %s\n"
 
-#: git-send-email.perl:1744
+#: git-send-email.perl:1969
 #, perl-format
 msgid "%s: patch contains a line longer than 998 characters"
 msgstr "%s: o patch contém uma linha mais longa que 998 carateres"
 
-#: git-send-email.perl:1760
+#: git-send-email.perl:1986
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
 msgstr "Saltar %s com sufixo de backup '%s'.\n"
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:1764
+#: git-send-email.perl:1990
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
 msgstr "Deseja mesmo enviar %s? [y|N]: "
 
+#, c-format
+#~ msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
+#~ msgstr ""
+#~ "valor '%s' de core.untrackedCache desconhecido; usar 'keep' valor por "
+#~ "omissão"
+
+#~ msgid "git fetch-pack: expected ACK/NAK, got EOF"
+#~ msgstr "git fetch-pack: esperava-se ACK/NAK, obteve-se EOF"
+
+#~ msgid "Server supports multi_ack_detailed"
+#~ msgstr "O servidor suporta multi_ack_detailed"
+
+#~ msgid "Server supports no-done"
+#~ msgstr "O servidor suporta no-done"
+
+#~ msgid "Server supports multi_ack"
+#~ msgstr "O servidor suporta muilti_ack"
+
+#~ msgid "Server supports side-band-64k"
+#~ msgstr "O servidor suporta side-band-64k"
+
+#~ msgid "Server supports allow-tip-sha1-in-want"
+#~ msgstr "O servidor suporta allow-tip-sha1-in-want"
+
+#~ msgid "Server supports allow-reachable-sha1-in-want"
+#~ msgstr "O servidor suporta allow-reachable-sha1-in-want"
+
+#, c-format
+#~ msgid "in %0.1f seconds automatically..."
+#~ msgstr "automaticamente em %0.1f..."
+
+#~ msgid "error building trees"
+#~ msgstr "erro ao construir árvores"
+
+#, c-format
+#~ msgid "Renaming %s to %s and %s to %s instead"
+#~ msgstr "A mudar o nome de %s para %s e de %s para %s, em alternativa"
+
+#~ msgid ""
+#~ "empty strings as pathspecs will be made invalid in upcoming releases. "
+#~ "please use . instead if you meant to match all paths"
+#~ msgstr ""
+#~ "cadeias de caracteres vazias como especificadores de caminho tornar-se-ão "
+#~ "inválidas nas próximas versões. Use . para corresponder a todos os "
+#~ "caminhos"
+
+#, c-format
+#~ msgid "Could not open '%s' for writing"
+#~ msgstr "Não foi possível abrir '%s' para escrita"
+
+#, c-format
+#~ msgid "positive value expected objectname:short=%s"
+#~ msgstr "valor positivo esperado objectname:short=%s"
+
+#, c-format
+#~ msgid "(HEAD detached at %s)"
+#~ msgstr "(HEAD destacada em %s)"
+
+#, c-format
+#~ msgid "(HEAD detached from %s)"
+#~ msgstr "(HEAD destacada de %s)"
+
+#~ msgid "Internal error"
+#~ msgstr "Erro interno"
+
+#, c-format
+#~ msgid "dup2(%d,%d) failed"
+#~ msgstr "dup2(%d,%d) falhou"
+
+#, c-format
+#~ msgid ""
+#~ "invalid 1st line of squash message:\n"
+#~ "\n"
+#~ "\t%.*s"
+#~ msgstr ""
+#~ "1ª linha inválida da mensagem de squash:\n"
+#~ "\n"
+#~ "\t%.*s"
+
+#, c-format
+#~ msgid "mainline was specified but commit %s is not a merge."
+#~ msgstr ""
+#~ "a linha principal foi especificada mas o commit %s não é uma integração."
+
+#~ msgid "BUG: returned path string doesn't match cwd?"
+#~ msgstr "BUG: returned path string doesn't match cwd?"
+
+#, c-format
+#~ msgid ""
+#~ "Cannot update sparse checkout: the following entries are not up-to-date:\n"
+#~ "%s"
+#~ msgstr ""
+#~ "Não é possível extrair esparsamente: as seguintes entradas não estão "
+#~ "atualizadas:\n"
+#~ "%s"
+
+#, c-format
+#~ msgid ""
+#~ "The following working tree files would be overwritten by sparse checkout "
+#~ "update:\n"
+#~ "%s"
+#~ msgstr ""
+#~ "Os seguintes ficheiros na árvore de trabalho seriam substituídos ao "
+#~ "atualizar a extração esparsa:\n"
+#~ "%s"
+
+#, c-format
+#~ msgid ""
+#~ "The following working tree files would be removed by sparse checkout "
+#~ "update:\n"
+#~ "%s"
+#~ msgstr ""
+#~ "Os seguintes ficheiros na árvore de trabalho seriam removidos ao "
+#~ "atualizar a extração esparsa:\n"
+#~ "%s"
+
+#, c-format
+#~ msgid "submodule update strategy not supported for submodule '%s'"
+#~ msgstr "não foi possível procurar pelo submódulo '%s'"
+
+#, c-format
+#~ msgid "could not close %s"
+#~ msgstr "não foi possível fechar %s"
+
+#~ msgid "Initial commit on "
+#~ msgstr "Commit inicial em "
+
+#~ msgid "(+/-)x"
+#~ msgstr "(+/-)x"
+
+#, c-format
+#~ msgid "Use -f if you really want to add them.\n"
+#~ msgstr "Use -f se deseja mesmo adicioná-los.\n"
+
+#~ msgid "Patch is empty. Was it split wrong?"
+#~ msgstr "O patch está vazio. Foi dividido incorretamente?"
+
+#~ msgid "cannot be interactive without stdin connected to a terminal."
+#~ msgstr ""
+#~ "não é possível entrar em modo interativo sem um entrada padrão conectada "
+#~ "a um terminal."
+
+#, c-format
+#~ msgid "The copy of the patch that failed is found in: %s"
+#~ msgstr "A cópia do patch que falhou encontra-se em: %s"
+
+#~ msgid ""
+#~ "You still have unmerged paths in your index.\n"
+#~ "Did you forget to use 'git add'?"
+#~ msgstr ""
+#~ "Ainda há caminhos não integrados no índice.\n"
+#~ "Esqueceu-se de usar 'git add'?"
+
+#~ msgid "update BISECT_HEAD instead of checking out the current commit"
+#~ msgstr "atualizar BISECT_HEAD em vez de extrair o commit atual"
+
+#~ msgid "Use an experimental heuristic to improve diffs"
+#~ msgstr "Usar um heurística experimental para melhorar diffs"
+
+#~ msgid "change upstream info"
+#~ msgstr "alterar a informação do ramo a montante"
+
+#~ msgid "it does not make sense to create 'HEAD' manually"
+#~ msgstr "não faz sentido criar 'HEAD' manualmente"
+
+#, c-format
+#~ msgid ""
+#~ "\n"
+#~ "If you wanted to make '%s' track '%s', do this:\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Se quer que '%s' siga '%s', faça:\n"
+#~ "\n"
+
+#, c-format
+#~ msgid ""
+#~ "Cannot update paths and switch to branch '%s' at the same time.\n"
+#~ "Did you intend to checkout '%s' which can not be resolved as commit?"
+#~ msgstr ""
+#~ "Não é possível atualizar os caminho e mudar para o ramo '%s' ao mesmo "
+#~ "tempo.\n"
+#~ "Pretendia extrair '%s' o qual não pode ser resolvido como commit?"
+
+#, c-format
+#~ msgid "failed to stat %s\n"
+#~ msgstr "falha ao invocar stat de %s\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 deseja ignorar este commit, use:\n"
+#~ "\n"
+#~ "    git reset\n"
+#~ "\n"
+#~ "Depois \"git cherry-pick --continue\" irá retomar o cherry-pick\n"
+#~ "dos restantes commits.\n"
+
+#~ msgid "Explicit paths specified without -i or -o; assuming --only paths..."
+#~ msgstr "Caminhos explícitos especificados sem -i ou -o; assumindo --only..."
+
+#~ msgid "default"
+#~ msgstr "predefinição"
+
+#, c-format
+#~ msgid "annotated tag %s has no embedded name"
+#~ msgstr "a tag anotada %s não tem nenhum nome incorporado"
+
+#~ msgid "<command>"
+#~ msgstr "<comando>"
+
+#~ msgid "default mode for recursion"
+#~ msgstr "modo recursivo por omissão"
+
+#, c-format
+#~ msgid "Don't know how to fetch from %s"
+#~ msgstr "Não sei como obter de %s"
+
+#, c-format
+#~ msgid "Can't stat %s"
+#~ msgstr "não é possível invocar stat sobre %s"
+
+#~ msgid "basename"
+#~ msgstr "nomebase"
+
+#~ msgid "Everyday Git With 20 Commands Or So"
+#~ msgstr "Diário Git com mais ou menos 20 Comandos"
+
+#~ msgid "Error in object"
+#~ msgstr "Erro no objeto"
+
+#~ msgid "print only names (no SHA-1)"
+#~ msgstr "imprimir apenas nomes (sem SHA-1)"
+
+#~ msgid "--[no-]autostash option is only valid with --rebase."
+#~ msgstr "a opção --[no-]autostash só é válida com --rebase."
+
+#~ msgid "abort rebase"
+#~ msgstr "abortar rebase"
+
+#~ msgid "push|fetch"
+#~ msgstr "push|fetch"
+
+#~ msgid "w[,i1[,i2]]"
+#~ msgstr "w[,i1[,i2]]"
+
+#~ msgid "submodule--helper subcommand must be called with a subcommand"
+#~ msgstr "o subcomando submodule--helper deve ser invocado com um subcomando"
+
+#~ msgid "tag: tagging "
+#~ msgstr "tag: a colocar tag"
+
+#~ msgid "commit object"
+#~ msgstr "objeto commit"
+
+#~ msgid "blob object"
+#~ msgstr "objeto blob"
+
+#, c-format
+#~ msgid "Removing worktrees/%s: not a valid directory"
+#~ msgstr "A remover worktrees/%s: diretório inválido"
+
+#, c-format
+#~ msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
+#~ msgstr "A remover worktrees/%s: não é possível ler o ficheiro gitdir (%s)"
+
+#, c-format
+#~ msgid "Removing worktrees/%s: invalid gitdir file"
+#~ msgstr "A remover worktrees/%s: ficheiro gitdir inválido"
+
+#, sh-format
+#~ msgid "unrecognised option: '$arg'"
+#~ msgstr "opção não reconhecida: '$arg'"
+
+#, sh-format
+#~ msgid "'$invalid' is not a valid commit"
+#~ msgstr "'$invalid' não é um commit válido"
+
+#, sh-format
+#~ msgid "invalid upstream $upstream_name"
+#~ msgstr "$upstream_name a montante inválido"
+
+#, sh-format
+#~ msgid "$onto_name: there are more than one merge bases"
+#~ msgstr "$onto_name: há mais do que uma base de integração"
+
+#, sh-format
+#~ msgid "$onto_name: there is no merge base"
+#~ msgstr "$onto_name: não há nenhuma base de integração"
+
+#, sh-format
+#~ msgid "fatal: no such branch: $branch_name"
+#~ msgstr "fatal: ramo inexistente: $branch_name"
+
+#, sh-format
+#~ msgid "Fast-forwarded $branch_name to $onto_name."
+#~ msgstr "$branch_name avançado rapidamente para $onto_name."
+
+#~ msgid "Cannot remove temporary index (can't happen)"
+#~ msgstr "Não é possível remover o índice temporário (não pode acontecer)"
+
+#, sh-format
+#~ msgid ""
+#~ "error: unknown option for 'stash save': $option\n"
+#~ "       To provide a message, use git stash save -- '$option'"
+#~ msgstr ""
+#~ "erro: opção desconhecida de 'stash save': $option\n"
+#~ "      Para fornecer uma mensagem, use git stash save -- '$option'"
+
+#, sh-format
+#~ msgid "unknown option: $opt"
+#~ msgstr "opção desconhecido: $opt"
+
+#, sh-format
+#~ msgid "$reference is not a valid reference"
+#~ msgstr "$reference não é uma referência válida"
+
+#~ msgid "Cannot unstage modified files"
+#~ msgstr "Não é possível despreparar os ficheiros modificado"
+
+#~ msgid "(To restore them type \"git stash apply\")"
+#~ msgstr "(Para os restaurar execute \"git stash apply\")"
+
+#, 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 ""
+#~ "O seguinte caminho foi ignorado por um ficheiro .gitignore:\n"
+#~ "$sm_path\n"
+#~ "Use -f se pretende mesmo adicioná-lo."
+
+#, sh-format
+#~ msgid "Entering '$displaypath'"
+#~ msgstr "A entrar em '$displaypath'"
+
+#, sh-format
+#~ msgid "Stopping at '$displaypath'; script returned non-zero status."
+#~ msgstr ""
+#~ "Interrompido em '$displaypath'; o script retornou um valor diferente de "
+#~ "zero."
+
+#, sh-format
+#~ msgid "pathspec and --all are incompatible"
+#~ msgstr "especificador de caminho e --all são incompatíveis"
+
+#, sh-format
+#~ msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
+#~ msgstr ""
+#~ "O registo do submódulo '$name' ($url) foi removido do caminho "
+#~ "'$displaypath'"
+
+#~ msgid "The --cached option cannot be used with the --files option"
+#~ msgstr "A opção --cached não pode ser usada com a opção --files"
+
+#, sh-format
+#~ msgid "  Warn: $display_name doesn't contain commit $sha1_src"
+#~ msgstr "  Aviso: $display_name não contém o commit $sha1_src"
+
+#, sh-format
+#~ msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
+#~ msgstr "  Warn: $display_name não contém o commit $sha1_dst"
+
+#, sh-format
+#~ msgid ""
+#~ "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
+#~ msgstr "  Warn: $display_name contém os commits $sha1_src e $sha1_dst"
+
+#, sh-format
+#~ msgid "Failed to recurse into submodule path '$sm_path'"
+#~ msgstr "Falha ao percorrer recursivamente o caminho de submódulo '$sm_path'"
+
+#, sh-format
+#~ msgid ""
+#~ "Warning: the SHA-1 is missing or isn't a commit in the following line:\n"
+#~ " - $line"
+#~ msgstr ""
+#~ "Aviso: falta o SHA-1 ou a seguinte linha não tem um commit:\n"
+#~ " - $line"
+
+#, sh-format
+#~ msgid ""
+#~ "Warning: the command isn't recognized in the following line:\n"
+#~ " - $line"
+#~ msgstr ""
+#~ "Aviso: o comando não é reconhecido na seguinte linha:\n"
+#~ " - $line"
+
+#~ msgid "Or you can abort the rebase with 'git rebase --abort'."
+#~ msgstr "Ou pode abortar o rebase com 'git rebase --abort'."
+
+#~ msgid "To/Cc/Bcc fields are not interpreted yet, they have been ignored\n"
+#~ msgstr "Os campos To/Cc/Bcc não são interpretados ainda, foram ignorados\n"
+
 #~ msgid ""
 #~ "There is nothing to exclude from by :(exclude) patterns.\n"
 #~ "Perhaps you forgot to add either ':/' or '.' ?"
@@ -16304,21 +26033,12 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ msgid "unrecognized format: %%(%s)"
 #~ msgstr "formato não reconhecido: %%(%s)"
 
-#~ msgid ":strip= requires a positive integer argument"
-#~ msgstr ":strip= requer um inteiro positivo como argumento"
-
 #~ msgid "ref '%s' does not have %ld components to :strip"
 #~ msgstr "a referência '%s' não tem %ld componentes como se indica em :strip"
 
-#~ msgid "unknown %.*s format %s"
-#~ msgstr "formato de %.*s desconhecido %s"
-
 #~ msgid "[%s: gone]"
 #~ msgstr "[%s: desaparecido]"
 
-#~ msgid "[%s]"
-#~ msgstr "[%s]"
-
 #~ msgid "[%s: behind %d]"
 #~ msgstr "[%s: atrás %d]"
 
@@ -16337,15 +26057,6 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ msgid "git merge [<options>] <msg> HEAD <commit>"
 #~ msgstr "git merge [<opções>] <msg> HEAD <commit>"
 
-#~ msgid "'%s' is not a commit"
-#~ msgstr "'%s' não é um commit"
-
-#~ msgid "cannot open file '%s'"
-#~ msgstr "não é possível abrir o ficheiro '%s'"
-
-#~ msgid "could not close file %s"
-#~ msgstr "não é possível fechar o ficheiro %s"
-
 #~ msgid "tag name too long: %.*s..."
 #~ msgstr "o nome da tag é demasiado longo: %.*s..."
 
@@ -16405,24 +26116,12 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ "Não é possível efetuar cherry-pick durante outro cherry-pick. durante um "
 #~ "cherry-pick."
 
-#~ msgid "Could not parse line %d."
-#~ msgstr "Não foi possível analisar a linha %d."
-
 #~ msgid "Could not open %s"
 #~ msgstr "Não foi possível abrir %s"
 
-#~ msgid "Could not read %s."
-#~ msgstr "Não foi possível ler %s."
-
 #~ msgid "Could not format %s."
 #~ msgstr "Não foi possível formatar %s."
 
-#~ msgid "%s: %s"
-#~ msgstr "%s: %s"
-
-#~ msgid "cannot open %s: %s"
-#~ msgstr "não é possível abrir %s: %s"
-
 #~ msgid "You need to set your committer info first"
 #~ msgstr "Primeiro tem de definir a sua informação de committer"
 
@@ -16558,18 +26257,12 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ msgid "Unprocessed path??? %s"
 #~ msgstr "Caminho não processado??? %s"
 
-#~ msgid "Error wrapping up %s"
-#~ msgstr "Erro ao rematar %s."
-
 #~ msgid "Cannot %s during a %s"
 #~ msgstr "Não foi possível efetuar %s durante %s"
 
 #~ msgid "Can't cherry-pick into empty head"
 #~ msgstr "Não é possível efetuar cherry-pick numa cabeça vazia"
 
-#~ msgid "could not open %s for writing"
-#~ msgstr "não foi possível abrir %s para escrita"
-
 #~ msgid "could not write branch description template"
 #~ msgstr "não foi possível escrever o modelo da descrição do ramo"
 
@@ -16609,9 +26302,6 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ msgid "removing '%s' failed"
 #~ msgstr "falha ao remover '%s'"
 
-#~ msgid "program error"
-#~ msgstr "erro do programa"
-
 #~ msgid "Please call 'bisect_state' with at least one argument."
 #~ msgstr "Invoque 'bisect_state' com pelo menos um argumento."
 
@@ -16648,9 +26338,6 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ msgid "'%s': %s"
 #~ msgstr "'%s': %s"
 
-#~ msgid "unable to access '%s': %s"
-#~ msgstr "não é possível aceder a '%s': %s"
-
 #~ msgid "    git branch -d %s\n"
 #~ msgstr "    git branch -d %s\n"
 
@@ -16665,9 +26352,6 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ "Prepare as suas alterações em .gitmodules ou esconda-as (stash) para "
 #~ "prosseguir"
 
-#~ msgid "could not verify the tag '%s'"
-#~ msgstr "não foi possível validar a tag '%s'"
-
 #~ msgid "failed to remove: %s"
 #~ msgstr "falha ao remover: %s"
 
@@ -16681,15 +26365,9 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ "Submódulo em '$displaypath' não inicializado\n"
 #~ "Talvez queira usar 'update --init'?"
 
-#~ msgid "unable to parse format"
-#~ msgstr "não foi possível analisar o formato"
-
 #~ msgid "improper format entered align:%s"
 #~ msgstr "formato impróprio introduzido align:%s"
 
-#~ msgid "Could not set core.worktree in %s"
-#~ msgstr "Não foi possível definir core.worktree em %s"
-
 #~ msgid ""
 #~ "push.default is unset; its implicit value has changed in\n"
 #~ "Git 2.0 from 'matching' to 'simple'. To squelch this message\n"
@@ -16741,9 +26419,6 @@ msgstr "Deseja mesmo enviar %s? [y|N]: "
 #~ msgid "Could not append '%s'"
 #~ msgstr "Não foi possível acrescentar '%s'"
 
-#~ msgid "Missing author: %s"
-#~ msgstr "Autor em falta: %s"
-
 #~ msgid "Testing "
 #~ msgstr "A testar "