l10n: fix unmatched single quote in error message
[gitweb.git] / po / pt_PT.po
index f2cc93fe2a3ee8e696e9ae6955cb5de73067e8d0..c8e096e858a813f3040c228ca6c1a96366c4a186 100644 (file)
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2016-05-24 23:42+0800\n"
-"PO-Revision-Date: 2016-05-31 18:17+0000\n"
+"POT-Creation-Date: 2016-11-25 22:50+0800\n"
+"PO-Revision-Date: 2016-11-25 22:58+0800\n"
 "Last-Translator: Vasco Almeida <vascomalmeida@sapo.pt>\n"
 "Language-Team: Portuguese\n"
 "Language: pt\n"
@@ -23,9 +23,35 @@ msgstr ""
 #: advice.c:55
 #, c-format
 msgid "hint: %.*s\n"
-msgstr "sugestão: %.*s\n"
+msgstr "dica: %.*s\n"
 
-#: advice.c:88
+#: advice.c:83
+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
+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
+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
+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
+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
+#, 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
 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."
@@ -33,3647 +59,4497 @@ 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:101 builtin/merge.c:1238
+#: advice.c:109
+msgid "Exiting because of an unresolved conflict."
+msgstr "A terminar devido a conflito não resolvido."
+
+#: advice.c:114 builtin/merge.c:1181
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Não concluído a integração (MERGE_HEAD presente)."
 
-#: advice.c:103
+#: advice.c:116
 msgid "Please, commit your changes before merging."
 msgstr "Submeta as suas alterações antes de integrar."
 
-#: advice.c:104
+#: advice.c:117
 msgid "Exiting because of unfinished merge."
 msgstr "A terminar devido a integração incompleta."
 
-#: archive.c:12
-msgid "git archive [<options>] <tree-ish> [<path>...]"
-msgstr "git archive [<opções>] <árvore-etc> [<caminho>...]"
-
-#: archive.c:13
-msgid "git archive --list"
-msgstr "git archive --list"
-
-#: archive.c:14
+#: advice.c:123
+#, c-format
 msgid ""
-"git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> [<path>...]"
+"Note: checking out '%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"
+"\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"
+"\n"
+"  git checkout -b <new-branch-name>\n"
+"\n"
 msgstr ""
-"git archive --remote <repo> [--exec <cmd>] [<opções>] <árvore-etc> "
-"[<caminho>...]"
-
-#: archive.c:15
-msgid "git archive --remote <repo> [--exec <cmd>] --list"
-msgstr "git archive --remote <repo> [--exec <cmd>] --list"
+"Nota: a extrair '%s'.\n"
+"\n"
+"Encontra-se em estado 'HEAD destacada'. Pode inspecionar, fazer alterações\n"
+"experimentais e submetê-las e pode descartar qualquer commit que faça neste\n"
+"estado sem interferir outro ramo se extrair outro ramo.\n"
+"\n"
+"Se deseja criar um novo ramo para reter os commits que criou, pode fazê-lo\n"
+"(agora ou mais tarde) usando -b com o comando checkout outra vez. Exemplo:\n"
+"\n"
+"  git checkout -b <novo-nome-ramo>\n"
+"\n"
 
-#: archive.c:344 builtin/add.c:137 builtin/add.c:420 builtin/rm.c:327
+#: apply.c:57
 #, c-format
-msgid "pathspec '%s' did not match any files"
-msgstr "o especificador de caminho '%s' não corresponde a nenhum ficheiro"
-
-#: archive.c:429
-msgid "fmt"
-msgstr "fmt"
+msgid "unrecognized whitespace option '%s'"
+msgstr "opção de espaço em branco não reconhecida '%s'"
 
-#: archive.c:429
-msgid "archive format"
-msgstr "formato do arquivo"
+#: apply.c:73
+#, c-format
+msgid "unrecognized whitespace ignore option '%s'"
+msgstr "opção de ignorar espaço em branco não reconhecida '%s'"
 
-#: archive.c:430 builtin/log.c:1395
-msgid "prefix"
-msgstr "prefixo"
+#: apply.c:125
+msgid "--reject and --3way cannot be used together."
+msgstr "--reject e --3way não podem ser usados juntos."
 
-#: archive.c:431
-msgid "prepend prefix to each pathname in the archive"
-msgstr "preceder o prefixo a cada nome de caminho dentro do arquivo"
+#: apply.c:127
+msgid "--cached and --3way cannot be used together."
+msgstr "--cached e --3way não podem ser usados juntos."
 
-#: archive.c:432 builtin/archive.c:88 builtin/blame.c:2548
-#: builtin/blame.c:2549 builtin/config.c:60 builtin/fast-export.c:987
-#: builtin/fast-export.c:989 builtin/grep.c:722 builtin/hash-object.c:100
-#: builtin/ls-files.c:459 builtin/ls-files.c:462 builtin/notes.c:398
-#: builtin/notes.c:561 builtin/read-tree.c:109 parse-options.h:153
-msgid "file"
-msgstr "ficheiro"
+#: apply.c:130
+msgid "--3way outside a repository"
+msgstr "--3way fora de um repositório"
 
-#: archive.c:433 builtin/archive.c:89
-msgid "write the archive to this file"
-msgstr "escrever o arquivo para este ficheiro"
+#: apply.c:141
+msgid "--index outside a repository"
+msgstr "--index fora de um repositório"
 
-#: archive.c:435
-msgid "read .gitattributes in working directory"
-msgstr "ler .gitattributes do diretório de trabalho"
+#: apply.c:144
+msgid "--cached outside a repository"
+msgstr "--cached fora de um repositório"
 
-#: archive.c:436
-msgid "report archived files on stderr"
-msgstr "listar ficheiros arquivados para stderr"
+#: apply.c:845
+#, c-format
+msgid "Cannot prepare timestamp regexp %s"
+msgstr "Não é possível preparar a regexp de carimbo de data/hora %s"
 
-#: archive.c:437
-msgid "store only"
-msgstr "armazenar apenas"
+#: apply.c:854
+#, c-format
+msgid "regexec returned %d for input: %s"
+msgstr "regexec retornou %d para a entra: %s"
 
-#: archive.c:438
-msgid "compress faster"
-msgstr "compressão rápida"
+#: apply.c:938
+#, 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"
 
-#: archive.c:446
-msgid "compress better"
-msgstr "compressão ótima"
+#: apply.c:977
+#, 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"
 
-#: archive.c:449
-msgid "list supported archive formats"
-msgstr "listar formatos de arquivo suportados"
+#: apply.c:983
+#, 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"
 
-#: archive.c:451 builtin/archive.c:90 builtin/clone.c:82
-#: builtin/submodule--helper.c:776
-msgid "repo"
-msgstr "repo"
+#: apply.c:984
+#, 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"
 
-#: archive.c:452 builtin/archive.c:91
-msgid "retrieve the archive from remote repository <repo>"
-msgstr "obter o arquivo a partir do repositório remoto <repo>"
+#: apply.c:990
+#, 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"
 
-#: archive.c:453 builtin/archive.c:92 builtin/notes.c:482
-msgid "command"
-msgstr "comando"
+#: apply.c:1488
+#, c-format
+msgid "recount: unexpected line: %.*s"
+msgstr "recontagem: linha inesperada: %.*s"
 
-#: archive.c:454 builtin/archive.c:93
-msgid "path to the remote git-upload-archive command"
-msgstr "caminho para o comando git-upload-archive no remoto"
+#: apply.c:1557
+#, c-format
+msgid "patch fragment without header at line %d: %.*s"
+msgstr "fragmento de patch sem cabeçalho na linha %d: %.*s"
 
-#: attr.c:263
+#: apply.c:1577
+#, c-format
 msgid ""
-"Negative patterns are ignored in git attributes\n"
-"Use '\\!' for literal leading exclamation."
-msgstr ""
-"Os padrões negativos são ignorados nos atributos do git\n"
-"Use '\\!' para uma exclamação literal à esquerda."
+"git diff header lacks filename information when removing %d leading pathname "
+"component (line %d)"
+msgid_plural ""
+"git diff header lacks filename information when removing %d leading pathname "
+"components (line %d)"
+msgstr[0] ""
+"o cabeçalho do git diff não revelou o nome do ficheiro depois de se remover "
+"%d componente do caminho (linha %d)"
+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)"
 
-#: branch.c:53
+#: apply.c:1589
 #, c-format
-msgid ""
-"\n"
-"After fixing the error cause you may try to fix up\n"
-"the remote tracking information by invoking\n"
-"\"git branch --set-upstream-to=%s%s%s\"."
-msgstr ""
-"\n"
-"Após resolver a causa do erro, pode tentar corrigir\n"
-"o ramo remoto que deve ser seguido, invocando\n"
-"\"git branch --set-upstream-to=%s%s%s\"."
+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)"
 
-#: branch.c:67
+#: apply.c:1759
+msgid "new file depends on old contents"
+msgstr "o novo ficheiro depende de conteúdos antigos"
+
+#: apply.c:1761
+msgid "deleted file still has contents"
+msgstr "o ficheiro eliminado ainda tem conteúdos"
+
+#: apply.c:1795
 #, c-format
-msgid "Not setting branch %s as its own upstream."
-msgstr "O ramo %s não foi configurado com ramo a montante dele próprio."
+msgid "corrupt patch at line %d"
+msgstr "patch corrompido na linha %d"
 
-#: branch.c:93
+#: apply.c:1832
 #, 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."
+msgid "new file %s depends on old contents"
+msgstr "o novo ficheiro %s depende de conteúdos antigos"
 
-#: branch.c:94
+#: apply.c:1834
 #, 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."
+msgid "deleted file %s still has contents"
+msgstr "o ficheiro eliminado %s ainda tem conteúdos"
 
-#: branch.c:98
+#: apply.c:1837
 #, 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."
+msgid "** warning: file %s becomes empty but is not deleted"
+msgstr "** aviso: o ficheiro %s ficará vazio, mas não será eliminado"
 
-#: branch.c:99
+#: apply.c:1984
 #, c-format
-msgid "Branch %s set up to track local branch %s."
-msgstr "Ramo %s configurado para seguir o ramo local %s."
+msgid "corrupt binary patch at line %d: %.*s"
+msgstr "patch binário corrompido na linha %d: %.*s"
 
-#: branch.c:104
+#: apply.c:2021
 #, 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."
+msgid "unrecognized binary patch at line %d"
+msgstr "patch binário não reconhecido na linha %d"
 
-#: branch.c:105
+#: apply.c:2182
 #, c-format
-msgid "Branch %s set up to track remote ref %s."
-msgstr "Ramo %s configurado para seguir a referência remota %s."
+msgid "patch with only garbage at line %d"
+msgstr "patch incompreensível na linha %d"
 
-#: branch.c:109
+#: apply.c:2274
 #, 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."
+msgid "unable to read symlink %s"
+msgstr "não é possível ler a ligação simbólica %s"
 
-#: branch.c:110
+#: apply.c:2278
 #, c-format
-msgid "Branch %s set up to track local ref %s."
-msgstr "Ramo %s configurado para seguir a referência local %s."
+msgid "unable to open or read %s"
+msgstr "não é possível abrir ou ler %s"
 
-#: branch.c:119
-msgid "Unable to write upstream branch configuration"
-msgstr "Não foi possível escrever a configuração do ramo a montante"
+#: apply.c:2931
+#, c-format
+msgid "invalid start of line: '%c'"
+msgstr "início de linha inválido: '%c'"
 
-#: branch.c:156
+#: apply.c:3050
 #, c-format
-msgid "Not tracking: ambiguous information for ref %s"
-msgstr "Não seguido: informação da referência %s ambígua"
+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)."
 
-#: branch.c:185
+#: apply.c:3062
 #, c-format
-msgid "'%s' is not a valid branch name."
-msgstr "'%s' não é um nome válido para um ramo."
+msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
+msgstr "Contexto reduzido para (%ld/%ld) para aplicar o fragmento em %d"
 
-#: branch.c:190
+#: apply.c:3068
 #, c-format
-msgid "A branch named '%s' already exists."
-msgstr "Já existe um ramo designado '%s'."
+msgid ""
+"while searching for:\n"
+"%.*s"
+msgstr ""
+"ao procura por:\n"
+"%.*s"
 
-#: branch.c:198
-msgid "Cannot force update the current branch."
-msgstr "Não é possível forçar a atualização do ramo atual."
+#: apply.c:3090
+#, c-format
+msgid "missing binary patch data for '%s'"
+msgstr "falta de dados do patch binário '%s'"
 
-#: branch.c:218
+#: apply.c:3098
 #, c-format
-msgid "Cannot setup tracking information; starting point '%s' is not a branch."
+msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
-"Não é possível configurar ramo a seguir; o ponto inicial '%s' não é um ramo."
+"não é possível aplicar o reverso de um patch binário a '%s' sem o excerto "
+"reverso"
 
-#: branch.c:220
+#: apply.c:3144
 #, c-format
-msgid "the requested upstream branch '%s' does not exist"
-msgstr "o ramo a montante solicitado '%s' não existe"
+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"
 
-#: branch.c:222
+#: apply.c:3154
+#, c-format
 msgid ""
-"\n"
-"If you are planning on basing your work on an upstream\n"
-"branch that already exists at the remote, you may need to\n"
-"run \"git fetch\" to retrieve it.\n"
-"\n"
-"If you are planning to push out a new local branch that\n"
-"will track its remote counterpart, you may want to use\n"
-"\"git push -u\" to set the upstream config as you push."
+"the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
-"\n"
-"Se pretende efetuar rebase do seu trabalho sobre um ramo\n"
-"a montante que já existe no remoto, pode ser necessário\n"
-"executar \"git fetch\" para obtê-lo.\n"
-"\n"
-"Se pretende publicar um novo ramo local que irá seguir\n"
-"o seu homólogo remoto, pode usar \"git push -u\" para configurar\n"
-"o respetivo ramo a montante, ao mesmo tempo que publica."
+"o patch aplica-se a '%s' (%s), que não corresponde aos conteúdos atuais."
 
-#: branch.c:266
+#: apply.c:3162
 #, c-format
-msgid "Not a valid object name: '%s'."
-msgstr "Nome de objeto inválido: '%s'."
+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"
 
-#: branch.c:286
+#: apply.c:3180
 #, c-format
-msgid "Ambiguous object name: '%s'."
-msgstr "Nome de objeto ambíguo: '%s'."
+msgid "the necessary postimage %s for '%s' cannot be read"
+msgstr "não é possível ler a postimage necessária %s de '%s'"
 
-#: branch.c:291
+#: apply.c:3193
 #, c-format
-msgid "Not a valid branch point: '%s'."
-msgstr "Ponto no ramo inválido: '%s'."
+msgid "binary patch does not apply to '%s'"
+msgstr "o patch binário não foi aplicado corretamente a '%s'"
 
-#: branch.c:345
+#: apply.c:3199
 #, c-format
-msgid "'%s' is already checked out at '%s'"
-msgstr "'%s' foi já extraído em '%s'"
+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)"
 
-#: branch.c:364
+#: apply.c:3220
 #, c-format
-msgid "HEAD of working tree %s is not updated"
-msgstr "HEAD da árvore de trabalho %s não está atualizada"
+msgid "patch failed: %s:%ld"
+msgstr "falha ao aplicar o patch: %s:%ld"
 
-#: bundle.c:34
+#: apply.c:3342
 #, c-format
-msgid "'%s' does not look like a v2 bundle file"
-msgstr "'%s' não parece ser um ficheiro bundle v2"
+msgid "cannot checkout %s"
+msgstr "não é possível extrair %s"
 
-#: bundle.c:61
+#: apply.c:3390 apply.c:3401 apply.c:3447 setup.c:248
 #, c-format
-msgid "unrecognized header: %s%s (%d)"
-msgstr "cabeçalho não reconhecido: %s%s (%d)"
+msgid "failed to read %s"
+msgstr "falha ao ler %s"
 
-#: bundle.c:87 builtin/commit.c:777
+#: apply.c:3398
 #, c-format
-msgid "could not open '%s'"
-msgstr "não foi possível abrir '%s'"
-
-#: bundle.c:139
-msgid "Repository lacks these prerequisite commits:"
-msgstr "O repositório não possuí estes commits pré-requisitados:"
-
-#: bundle.c:163 ref-filter.c:1462 sequencer.c:627 sequencer.c:1073
-#: builtin/blame.c:2755 builtin/commit.c:1056 builtin/log.c:340
-#: builtin/log.c:863 builtin/log.c:1308 builtin/log.c:1633 builtin/log.c:1875
-#: builtin/merge.c:361 builtin/shortlog.c:170
-msgid "revision walk setup failed"
-msgstr "falha ao configurar percurso de revisões"
+msgid "reading from '%s' beyond a symbolic link"
+msgstr "a ler '%s' indicado por uma ligação simbólica"
 
-#: bundle.c:185
+#: apply.c:3427 apply.c:3667
 #, 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
-msgid "The bundle records a complete history."
-msgstr "O pacote regista um histórico completo."
+msgid "path %s has been renamed/deleted"
+msgstr "o caminho %s foi eliminado ou mudou de nome"
 
-#: bundle.c:194
+#: apply.c:3510 apply.c:3681
 #, 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:"
+msgid "%s: does not exist in index"
+msgstr "%s: não existe no índice"
 
-#: bundle.c:253
-msgid "Could not spawn pack-objects"
-msgstr "Não foi possível lançar pack-objects"
+#: apply.c:3519 apply.c:3689
+#, c-format
+msgid "%s: does not match index"
+msgstr "%s: não tem correspondência no índice"
 
-#: bundle.c:264
-msgid "pack-objects died"
-msgstr "pack-objects terminou inesperadamente"
+#: apply.c:3554
+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."
 
-#: bundle.c:304
-msgid "rev-list died"
-msgstr "rev-list terminou inesperadamente"
+#: apply.c:3557
+#, c-format
+msgid "Falling back to three-way merge...\n"
+msgstr "A recorrer a integração com 3 pontos...\n"
 
-#: bundle.c:353
+#: apply.c:3573 apply.c:3577
 #, 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"
+msgid "cannot read the current contents of '%s'"
+msgstr "não é possível ler o conteúdo atual de '%s'"
 
-#: bundle.c:443 builtin/log.c:163 builtin/log.c:1538 builtin/shortlog.c:273
+#: apply.c:3589
 #, c-format
-msgid "unrecognized argument: %s"
-msgstr "argumento não reconhecido: %s"
+msgid "Failed to fall back on three-way merge...\n"
+msgstr "Falha a recorrer a integração com 3 pontos...\n"
 
-#: bundle.c:451
-msgid "Refusing to create empty bundle."
-msgstr "Criação de bundle vazio recusada."
+#: apply.c:3603
+#, c-format
+msgid "Applied patch to '%s' with conflicts.\n"
+msgstr "Patch aplicado a '%s' com conflitos.\n"
 
-#: bundle.c:463
+#: apply.c:3608
 #, c-format
-msgid "cannot create '%s'"
-msgstr "não é possível criar '%s'"
+msgid "Applied patch to '%s' cleanly.\n"
+msgstr "Patch aplicado a '%s' com sucesso.\n"
 
-#: bundle.c:491
-msgid "index-pack died"
-msgstr "index-pack terminou inesperadamente"
+#: apply.c:3634
+msgid "removal patch leaves file contents"
+msgstr "patch de remoção deixa conteúdos no ficheiro"
 
-#: color.c:275
+#: apply.c:3706
 #, c-format
-msgid "invalid color value: %.*s"
-msgstr "valor de cor inválido: %.*s"
+msgid "%s: wrong type"
+msgstr "%s: tipo errado"
 
-#: commit.c:40 builtin/am.c:437 builtin/am.c:473 builtin/am.c:1504
-#: builtin/am.c:2134
+#: apply.c:3708
 #, c-format
-msgid "could not parse %s"
-msgstr "não foi possível analisar %s"
+msgid "%s has type %o, expected %o"
+msgstr "%s é do tipo %o, esperado %o"
 
-#: commit.c:42
+#: apply.c:3859 apply.c:3861
 #, c-format
-msgid "%s %s is not a commit!"
-msgstr "%s %s não é um commit!"
+msgid "invalid path '%s'"
+msgstr "caminho inválido '%s'"
 
-#: compat/obstack.c:406 compat/obstack.c:408
-msgid "memory exhausted"
-msgstr "memória esgotada"
+#: apply.c:3917
+#, c-format
+msgid "%s: already exists in index"
+msgstr "%s: já existe no índice"
 
-#: config.c:475 config.c:477
-#, fuzzy, c-format
-msgid "bad config line %d in %s %s"
-msgstr "linha %d de configuração incorreta em %s %s"
+#: apply.c:3920
+#, c-format
+msgid "%s: already exists in working directory"
+msgstr "%s: já existe no diretório de trabalho"
 
-#: config.c:593
-#, c-format, fuzzy
-msgid "bad numeric config value '%s' for '%s' in %s %s: %s"
-msgstr "valor numérico '%s' da configuração '%s' em %s %s incorreto: %s"
+#: apply.c:3940
+#, 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)"
 
-#: config.c:595
+#: apply.c:3945
 #, c-format
-msgid "bad numeric config value '%s' for '%s': %s"
-msgstr "valor numérico '%s' da configuração '%s' incorreto: %s"
+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"
 
-#: config.c:680
+#: apply.c:3965
 #, c-format
-msgid "failed to expand user dir in: '%s'"
-msgstr "falha ao expandir diretório de utilizador em: '%s'"
+msgid "affected file '%s' is beyond a symbolic link"
+msgstr "o ficheiro afetado '%s' é indicado por uma ligação simbólica"
 
-#: config.c:761 config.c:772
+#: apply.c:3969
 #, c-format
-msgid "bad zlib compression level %d"
-msgstr "nível de compressão zlib %d incorreto"
+msgid "%s: patch does not apply"
+msgstr "%s: patch não se aplica com sucesso"
 
-#: config.c:890
+#: apply.c:3984
 #, c-format
-msgid "invalid mode for object creation: %s"
-msgstr "modo inválido para criação de objeto: %s"
+msgid "Checking patch %s..."
+msgstr "A verificar o patch %s..."
 
-#: config.c:1228
-msgid "unable to parse command-line config"
-msgstr "não é possível analisar configuração de linha de comandos"
+#: apply.c:4075
+#, 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"
 
-#: config.c:1284
-msgid "unknown error occured while reading the configuration files"
-msgstr ""
-"ocorreu um erro desconhecido durante a leitura dos ficheiros de configuração"
+#: apply.c:4082
+#, 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"
 
-#: config.c:1629
+#: apply.c:4085
 #, 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"
+msgid "sha1 information is lacking or useless (%s)."
+msgstr "falta informação de sha1 ou não é útil (%s)."
 
-#: config.c:1631
+#: apply.c:4090 builtin/checkout.c:233 builtin/reset.c:135
 #, 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"
+msgid "make_cache_entry failed for path '%s'"
+msgstr "falha ao invocar make_cache_entry em '%s'"
 
-#: config.c:1690
+#: apply.c:4094
 #, c-format
-msgid "%s has multiple values"
-msgstr "%s tem múltiplos valores"
+msgid "could not add %s to temporary index"
+msgstr "não foi possível adicionar %s ao índice temporário"
 
-#: config.c:2224
+#: apply.c:4104
 #, c-format
-msgid "could not set '%s' to '%s'"
-msgstr "não foi possível definir '%s' como '%s'"
+msgid "could not write temporary index to %s"
+msgstr "não foi possível escrever índice temporário para %s"
 
-#: config.c:2226
+#: apply.c:4242
 #, c-format
-msgid "could not unset '%s'"
-msgstr "não foi possível reiniciar '%s'"
+msgid "unable to remove %s from index"
+msgstr "não é possível remover %s do índice"
 
-#: connected.c:69
-msgid "Could not run 'git rev-list'"
-msgstr "Não foi possível executar 'git rev-list'"
+#: apply.c:4277
+#, c-format
+msgid "corrupt patch for submodule %s"
+msgstr "patch corrompido no submódulo %s"
 
-#: connected.c:89
-msgid "failed write to rev-list"
-msgstr "falha ao escrever para rev-list"
+#: apply.c:4283
+#, c-format
+msgid "unable to stat newly created file '%s'"
+msgstr "não é possível obter estado do novo ficheiro criado '%s'"
 
-#: connected.c:96
-msgid "failed to close rev-list's stdin"
-msgstr "falha ao fechar entrada padrão de rev-list"
+#: apply.c:4291
+#, 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"
 
-#: date.c:95
-msgid "in the future"
-msgstr "no futuro"
+#: apply.c:4297 apply.c:4441
+#, c-format
+msgid "unable to add cache entry for %s"
+msgstr "não é possível adicionar %s à cache"
 
-#: date.c:101
+#: apply.c:4338
 #, c-format
-msgid "%lu second ago"
-msgid_plural "%lu seconds ago"
-msgstr[0] "há %lu segundo atrás"
-msgstr[1] "há %lu segundos atrás"
+msgid "failed to write to '%s'"
+msgstr "falha ao escrever para '%s'"
 
-#: date.c:108
+#: apply.c:4342
 #, c-format
-msgid "%lu minute ago"
-msgid_plural "%lu minutes ago"
-msgstr[0] "há %lu minuto atrás"
-msgstr[1] "há %lu minutos atrás"
+msgid "closing file '%s'"
+msgstr "a fechar o ficheiro '%s'"
 
-#: date.c:115
+#: apply.c:4412
 #, c-format
-msgid "%lu hour ago"
-msgid_plural "%lu hours ago"
-msgstr[0] "há %lu hora atrás"
-msgstr[1] "há %lu horas atrás"
+msgid "unable to write file '%s' mode %o"
+msgstr "não é possível escrever o ficheiro '%s' com o modo %o"
 
-#: date.c:122
+#: apply.c:4510
 #, c-format
-msgid "%lu day ago"
-msgid_plural "%lu days ago"
-msgstr[0] "há %lu dia atrás"
-msgstr[1] "há %lu dias atrás"
+msgid "Applied patch %s cleanly."
+msgstr "Patch %s aplicado com sucesso."
+
+#: apply.c:4518
+msgid "internal error"
+msgstr "erro interno"
 
-#: date.c:128
+#: apply.c:4521
 #, c-format
-msgid "%lu week ago"
-msgid_plural "%lu weeks ago"
-msgstr[0] "há %lu semana atrás"
-msgstr[1] "há %lu semanas atrás"
+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..."
 
-#: date.c:135
+#: apply.c:4532
 #, c-format
-msgid "%lu month ago"
-msgid_plural "%lu months ago"
-msgstr[0] "há %lu mês atrás"
-msgstr[1] "há %lu meses atrás"
+msgid "truncating .rej filename to %.*s.rej"
+msgstr "a truncar o nome do ficheiro .rej em %.*s.rej"
 
-#: date.c:146
+#: apply.c:4540 builtin/fetch.c:740 builtin/fetch.c:989
 #, c-format
-msgid "%lu year"
-msgid_plural "%lu years"
-msgstr[0] "%lu ano"
-msgstr[1] "%lu anos"
+msgid "cannot open %s"
+msgstr "não é possível abrir %s"
 
-#. TRANSLATORS: "%s" is "<n> years"
-#: date.c:149
+#: apply.c:4554
 #, c-format
-msgid "%s, %lu month ago"
-msgid_plural "%s, %lu months ago"
-msgstr[0] "há %s e %lu mês"
-msgstr[1] "há %s e %lu meses"
+msgid "Hunk #%d applied cleanly."
+msgstr "Excerto nº%d aplicado com sucesso."
 
-#: date.c:154 date.c:159
+#: apply.c:4558
 #, c-format
-msgid "%lu year ago"
-msgid_plural "%lu years ago"
-msgstr[0] "há %lu ano atrás"
-msgstr[1] "há %lu anos atrás"
+msgid "Rejected hunk #%d."
+msgstr "Excerto nº%d rejeitado."
 
-#: diffcore-order.c:24
+#: apply.c:4668
 #, c-format
-msgid "failed to read orderfile '%s'"
-msgstr "falha ao ler o ficheiro de comando '%s'"
+msgid "Skipped patch '%s'."
+msgstr "Patch '%s' ignorado."
 
-#: diffcore-rename.c:538
-msgid "Performing inexact rename detection"
-msgstr "Deteção de mudança de nome inexata em curso"
+#: apply.c:4676
+msgid "unrecognized input"
+msgstr "entrada não reconhecida"
 
-#: diff.c:116
-#, c-format
-msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
-msgstr "  Falha ao analisar percentagem limite de dirstat '%s'\n"
+#: apply.c:4695
+msgid "unable to read index file"
+msgstr "não foi possível ler o ficheiro de índice"
 
-#: diff.c:121
+#: apply.c:4833
 #, c-format
-msgid "  Unknown dirstat parameter '%s'\n"
-msgstr "  Parâmetro de dirstat desconhecido '%s'\n"
+msgid "can't open patch '%s': %s"
+msgstr "não é possível abrir o patch '%s': %s"
 
-#: diff.c:225
+#: apply.c:4858
 #, c-format
-msgid "Unknown value for 'diff.submodule' config variable: '%s'"
-msgstr "Valor desconhecido na variável de configuração 'diff.submodule': '%s'"
+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"
 
-#: diff.c:277
+#: apply.c:4864 apply.c:4879
 #, c-format
-msgid ""
-"Found errors in 'diff.dirstat' config variable:\n"
-"%s"
-msgstr ""
-"Erros encontrados na variável de configuração 'diff.dirstat':\n"
-"%s"
+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."
 
-#: diff.c:3007
+#: apply.c:4872
 #, c-format
-msgid "external diff died, stopping at %s"
-msgstr "o diff externo terminou inesperadamente, interrompido em %s"
+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."
 
-#: diff.c:3405
-msgid "--follow requires exactly one pathspec"
-msgstr "--follow requer exatamente um único especificador de caminho"
+#: apply.c:4888 builtin/add.c:463 builtin/mv.c:286 builtin/rm.c:431
+msgid "Unable to write new index file"
+msgstr "Não foi possível escrever novo ficheiro de índice"
 
-#: diff.c:3568
-#, c-format
+#: apply.c:4919 apply.c:4922 builtin/am.c:2277 builtin/am.c:2280
+#: builtin/clone.c:95 builtin/fetch.c:98 builtin/pull.c:180
+#: builtin/submodule--helper.c:281 builtin/submodule--helper.c:407
+#: builtin/submodule--helper.c:589 builtin/submodule--helper.c:592
+#: builtin/submodule--helper.c:944 builtin/submodule--helper.c:947
+msgid "path"
+msgstr "caminho"
+
+#: apply.c:4920
+msgid "don't apply changes matching the given path"
+msgstr "não aplicar alterações que correspondam ao caminho fornecido"
+
+#: apply.c:4923
+msgid "apply changes matching the given path"
+msgstr "aplicar alterações que correspondam ao caminho fornecido"
+
+#: apply.c:4925 builtin/am.c:2286
+msgid "num"
+msgstr "num"
+
+#: apply.c:4926
+msgid "remove <num> leading slashes from traditional diff paths"
+msgstr "remover <num> barras à esquerda dos caminhos de diff tradicional"
+
+#: apply.c:4929
+msgid "ignore additions made by the patch"
+msgstr "ignorar adições feitas pelo patch"
+
+#: apply.c:4931
+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:4935
+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:4937
+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:4939
+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:4941
+msgid "make sure the patch is applicable to the current index"
+msgstr "garantir que o patch pode ser aplicado ao índice atual"
+
+#: apply.c:4943
+msgid "apply a patch without touching the working tree"
+msgstr "aplicar um patch sem tocar na árvore de trabalho"
+
+#: apply.c:4945
+msgid "accept a patch that touches outside the working area"
+msgstr "aceitar patches que alteram ficheiros fora da área de trabalho"
+
+#: apply.c:4947
+msgid "also apply the patch (use with --stat/--summary/--check)"
+msgstr "aplicar o patch também (use com --stat/--summary/--check)"
+
+#: apply.c:4949
+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:4951
+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:4954 builtin/checkout-index.c:169 builtin/ls-files.c:505
+msgid "paths are separated with NUL character"
+msgstr "os caminhos estão separados por caracteres NUL"
+
+#: apply.c:4956
+msgid "ensure at least <n> lines of context match"
+msgstr "garantir que, pelo menos, <n> linhas de contexto coincidem"
+
+#: apply.c:4957 builtin/am.c:2265
+msgid "action"
+msgstr "ação"
+
+#: apply.c:4958
+msgid "detect new or modified lines that have whitespace errors"
+msgstr "detetar linhas novas ou modificadas que tenham espaços em branco"
+
+#: apply.c:4961 apply.c:4964
+msgid "ignore changes in whitespace when finding context"
+msgstr "ignorar alterações de espaço em branco ao procurar contexto"
+
+#: apply.c:4967
+msgid "apply the patch in reverse"
+msgstr "aplicar o patch em reverso"
+
+#: apply.c:4969
+msgid "don't expect at least one line of context"
+msgstr "não esperar nenhuma linha de contexto"
+
+#: apply.c:4971
+msgid "leave the rejected hunks in corresponding *.rej files"
+msgstr "deixar os excertos rejeitados nos respetivos ficheiros *.rej"
+
+#: apply.c:4973
+msgid "allow overlapping hunks"
+msgstr "permitir a sobreposição de excertos"
+
+#: apply.c:4974 builtin/add.c:267 builtin/check-ignore.c:19
+#: builtin/commit.c:1339 builtin/count-objects.c:94 builtin/fsck.c:593
+#: builtin/log.c:1860 builtin/mv.c:110 builtin/read-tree.c:114
+msgid "be verbose"
+msgstr "ser verboso"
+
+#: apply.c:4976
+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:4979
+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:4981 builtin/am.c:2274
+msgid "root"
+msgstr "raiz"
+
+#: apply.c:4982
+msgid "prepend <root> to all filenames"
+msgstr "preceder <root> a todos os nomes de ficheiro"
+
+#: archive.c:12
+msgid "git archive [<options>] <tree-ish> [<path>...]"
+msgstr "git archive [<opções>] <árvore-etc> [<caminho>...]"
+
+#: archive.c:13
+msgid "git archive --list"
+msgstr "git archive --list"
+
+#: archive.c:14
 msgid ""
-"Failed to parse --dirstat/-X option parameter:\n"
-"%s"
+"git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> [<path>...]"
 msgstr ""
-"Falha ao analisar parâmetro da opção --dirstat/-X:\n"
-"%s"
+"git archive --remote <repo> [--exec <cmd>] [<opções>] <árvore-etc> "
+"[<caminho>...]"
 
-#: diff.c:3582
+#: archive.c:15
+msgid "git archive --remote <repo> [--exec <cmd>] --list"
+msgstr "git archive --remote <repo> [--exec <cmd>] --list"
+
+#: archive.c:344 builtin/add.c:152 builtin/add.c:442 builtin/rm.c:327
 #, c-format
-msgid "Failed to parse --submodule option parameter: '%s'"
-msgstr "Falha ao analisar parâmetro da opção --submodule: '%s'"
+msgid "pathspec '%s' did not match any files"
+msgstr "o especificador de caminho '%s' não corresponde a nenhum ficheiro"
 
-#: dir.c:1823
-msgid "failed to get kernel name and information"
-msgstr "falha ao obter nome e informação do kernel"
+#: archive.c:429
+msgid "fmt"
+msgstr "fmt"
 
-#: dir.c:1942
-msgid "Untracked cache is disabled on this system or location."
-msgstr "A cache não controlada está desativada neste sistema ou localização."
+#: archive.c:429
+msgid "archive format"
+msgstr "formato do arquivo"
+
+#: archive.c:430 builtin/log.c:1429
+msgid "prefix"
+msgstr "prefixo"
 
-#: gpg-interface.c:166 gpg-interface.c:235
-msgid "could not run gpg."
-msgstr "não foi possível executar gpg."
+#: archive.c:431
+msgid "prepend prefix to each pathname in the archive"
+msgstr "preceder o prefixo a cada nome de caminho dentro do arquivo"
 
-#: gpg-interface.c:178
-msgid "gpg did not accept the data"
-msgstr "gpg não aceitou os dados"
+#: archive.c:432 builtin/archive.c:88 builtin/blame.c:2603
+#: builtin/blame.c:2604 builtin/config.c:59 builtin/fast-export.c:987
+#: builtin/fast-export.c:989 builtin/grep.c:723 builtin/hash-object.c:101
+#: builtin/ls-files.c:539 builtin/ls-files.c:542 builtin/notes.c:401
+#: builtin/notes.c:564 builtin/read-tree.c:109 parse-options.h:153
+msgid "file"
+msgstr "ficheiro"
 
-#: gpg-interface.c:189
-msgid "gpg failed to sign the data"
-msgstr "gpg não assinou os dados"
+#: archive.c:433 builtin/archive.c:89
+msgid "write the archive to this file"
+msgstr "escrever o arquivo para este ficheiro"
+
+#: archive.c:435
+msgid "read .gitattributes in working directory"
+msgstr "ler .gitattributes do diretório de trabalho"
+
+#: archive.c:436
+msgid "report archived files on stderr"
+msgstr "listar ficheiros arquivados para stderr"
+
+#: archive.c:437
+msgid "store only"
+msgstr "armazenar apenas"
+
+#: archive.c:438
+msgid "compress faster"
+msgstr "compressão rápida"
+
+#: archive.c:446
+msgid "compress better"
+msgstr "compressão ótima"
+
+#: archive.c:449
+msgid "list supported archive formats"
+msgstr "listar formatos de arquivo suportados"
+
+#: archive.c:451 builtin/archive.c:90 builtin/clone.c:85 builtin/clone.c:88
+#: builtin/submodule--helper.c:601 builtin/submodule--helper.c:953
+msgid "repo"
+msgstr "repo"
+
+#: archive.c:452 builtin/archive.c:91
+msgid "retrieve the archive from remote repository <repo>"
+msgstr "obter o arquivo a partir do repositório remoto <repo>"
+
+#: archive.c:453 builtin/archive.c:92 builtin/notes.c:485
+msgid "command"
+msgstr "comando"
+
+#: archive.c:454 builtin/archive.c:93
+msgid "path to the remote git-upload-archive command"
+msgstr "caminho para o comando git-upload-archive no remoto"
+
+#: archive.c:461
+msgid "Unexpected option --remote"
+msgstr "Opção inesperada --remote"
+
+#: archive.c:463
+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:465
+msgid "Unexpected option --output"
+msgstr "Opção inesperada --output"
 
-#: gpg-interface.c:222
+#: archive.c:487
 #, c-format
-msgid "could not create temporary file '%s'"
-msgstr "não foi possível criar ficheiro temporário '%s'"
+msgid "Unknown archive format '%s'"
+msgstr "Formato de arquivo desconhecido '%s'"
 
-#: gpg-interface.c:224
+#: archive.c:494
 #, c-format
-msgid "failed writing detached signature to '%s'"
-msgstr "falha ao escrever assinatura destacada em '%s'"
+msgid "Argument not supported for format '%s': -%d"
+msgstr "Argumento não suportado para o formato '%s': -%d"
+
+#: attr.c:263
+msgid ""
+"Negative patterns are ignored in git attributes\n"
+"Use '\\!' for literal leading exclamation."
+msgstr ""
+"Os padrões negativos são ignorados nos atributos do git\n"
+"Use '\\!' para uma exclamação literal à esquerda."
 
-#: grep.c:1718
+#: bisect.c:441
 #, c-format
-msgid "'%s': unable to read %s"
-msgstr "'%s': não foi possível ler %s"
+msgid "Could not open file '%s'"
+msgstr "Não foi possível abrir o ficheiro '%s'"
 
-#: grep.c:1735 builtin/clone.c:382 builtin/diff.c:84 builtin/rm.c:155
+#: bisect.c:446
 #, c-format
-msgid "failed to stat '%s'"
-msgstr "falha ao invocar stat de '%s'"
+msgid "Badly quoted content in file '%s': %s"
+msgstr "Conteúdo incorretamente citado no ficheiro '%s': %s"
 
-#: grep.c:1746
+#: bisect.c:655
 #, c-format
-msgid "'%s': short read"
-msgstr "'%s': leitura truncada"
+msgid "We cannot bisect more!\n"
+msgstr "Não se está a bissetar mais!\n"
 
-#: help.c:205
+#: bisect.c:708
 #, c-format
-msgid "available git commands in '%s'"
-msgstr "comandos do git disponível em '%s'"
+msgid "Not a valid commit name %s"
+msgstr "%s não é um nome de commit válido"
 
-#: help.c:212
-msgid "git commands available from elsewhere on your $PATH"
-msgstr "comandos do git disponíveis noutras localizações em $PATH"
+#: bisect.c:732
+#, c-format
+msgid ""
+"The merge base %s is bad.\n"
+"This means the bug has been fixed between %s and [%s].\n"
+msgstr ""
+"A base de integração %s é má (bad).\n"
+"Significa que o bug foi corrigido entre %s e [%s].\n"
 
-#: help.c:244
-msgid "These are common Git commands used in various situations:"
-msgstr "Estes são comandos do Git comuns usados em diversas situações:"
+#: bisect.c:737
+#, c-format
+msgid ""
+"The merge base %s is new.\n"
+"The property has changed between %s and [%s].\n"
+msgstr ""
+"A base de integração %s é nova (new).\n"
+"A propriedade foi mudada entre %s e [%s].\n"
 
-#: help.c:309
+#: bisect.c:742
 #, c-format
 msgid ""
-"'%s' appears to be a git command, but we were not\n"
-"able to execute it. Maybe git-%s is broken?"
+"The merge base %s is %s.\n"
+"This means the first '%s' commit is between %s and [%s].\n"
 msgstr ""
-"'%s' parece ser um comando do git, mas não é possível\n"
-"executá-lo. Talvez git-%s esteja danificado?"
+"A base de integração %s é %s.\n"
+"Significa que o primeiro commit '%s' está entre %s e [%s].\n"
 
-#: help.c:366
-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."
+#: bisect.c:750
+#, c-format
+msgid ""
+"Some %s revs are not ancestor of the %s rev.\n"
+"git bisect cannot work properly in this case.\n"
+"Maybe you mistook %s and %s revs?\n"
+msgstr ""
+"Algumas revisões %s não antecedem a revisão %s.\n"
+"git bisect não pode funcionar corretamente nesta situação.\n"
+"Talvez confundiu revisões %s e %s?\n"
 
-#: help.c:388
+#: bisect.c:763
 #, c-format
 msgid ""
-"WARNING: You called a Git command named '%s', which does not exist.\n"
-"Continuing under the assumption that you meant '%s'"
+"the merge base between %s and [%s] must be skipped.\n"
+"So we cannot be sure the first %s commit is between %s and %s.\n"
+"We continue anyway."
 msgstr ""
-"AVISO: Invocou um comando do Git designado '%s' que não existe.\n"
-"Continuando, assumindo que queria dizer '%s'"
+"tem-se que saltar a base de integração entre %s e [%s].\n"
+"Portanto não se pode ter a certeza que o primeiro commit %s está entre %s e "
+"%s.\n"
+"Continua-se de qualquer maneira."
 
-#: help.c:393
+#: bisect.c:798
 #, c-format
-msgid "in %0.1f seconds automatically..."
-msgstr "automaticamente em %0.1f..."
+msgid "Bisecting: a merge base must be tested\n"
+msgstr "A bissetar: uma base de integração tem de ser testada\n"
 
-#: help.c:400
+#: bisect.c:849
 #, 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'."
+msgid "a %s revision is needed"
+msgstr "precisa-se de uma revisão %s"
+
+#: bisect.c:866 builtin/notes.c:174 builtin/tag.c:248
+#, c-format
+msgid "could not create file '%s'"
+msgstr "não foi possível criar o ficheiro '%s'"
+
+#: bisect.c:917
+#, c-format
+msgid "could not read file '%s'"
+msgstr "não foi possível ler o ficheiro '%s'"
+
+#: bisect.c:947
+msgid "reading bisect refs failed"
+msgstr "falha ao ler referências bissetadas"
+
+#: bisect.c:967
+#, c-format
+msgid "%s was both %s and %s\n"
+msgstr "%s era %s e %s em simultâneo\n"
 
-#: help.c:404 help.c:464
+#: bisect.c:975
+#, c-format
+msgid ""
+"No testable commit found.\n"
+"Maybe you started with bad path parameters?\n"
+msgstr ""
+"Nenhum commit testável encontrado.\n"
+"Talvez tenha começado com parâmetros de caminho incorretos?\n"
+
+#: bisect.c:994
+#, 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:998
+#, 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"
+
+#: branch.c:53
+#, c-format
 msgid ""
 "\n"
-"Did you mean this?"
-msgid_plural ""
-"\n"
-"Did you mean one of these?"
-msgstr[0] ""
-"\n"
-"Queria dizer isto?"
-msgstr[1] ""
+"After fixing the error cause you may try to fix up\n"
+"the remote tracking information by invoking\n"
+"\"git branch --set-upstream-to=%s%s%s\"."
+msgstr ""
 "\n"
-"Queria dizer deste?"
+"Após resolver a causa do erro, pode tentar corrigir\n"
+"o ramo remoto que deve ser seguido, invocando\n"
+"\"git branch --set-upstream-to=%s%s%s\"."
 
-#: help.c:460
+#: branch.c:67
 #, c-format
-msgid "%s: %s - %s"
-msgstr "%s: %s - %s"
+msgid "Not setting branch %s as its own upstream."
+msgstr "O ramo %s não foi configurado com ramo a montante dele próprio."
 
-#: lockfile.c:152
+#: branch.c:93
+#, 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."
+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."
+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."
+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."
+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."
+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."
+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."
+msgstr "Ramo %s configurado para seguir a referência local %s."
+
+#: branch.c:119
+msgid "Unable to write upstream branch configuration"
+msgstr "Não foi possível escrever a configuração do ramo a montante"
+
+#: branch.c:156
 #, c-format
+msgid "Not tracking: ambiguous information for ref %s"
+msgstr "Não seguido: informação da referência %s ambígua"
+
+#: branch.c:185
+#, c-format
+msgid "'%s' is not a valid branch name."
+msgstr "'%s' não é um nome válido para um ramo."
+
+#: branch.c:190
+#, c-format
+msgid "A branch named '%s' already exists."
+msgstr "Já existe um ramo designado '%s'."
+
+#: branch.c:198
+msgid "Cannot force update the current branch."
+msgstr "Não é possível forçar a atualização do ramo atual."
+
+#: branch.c:218
+#, 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
+#, c-format
+msgid "the requested upstream branch '%s' does not exist"
+msgstr "o ramo a montante solicitado '%s' não existe"
+
+#: branch.c:222
 msgid ""
-"Unable to create '%s.lock': %s.\n"
 "\n"
-"Another git process seems to be running in this repository, e.g.\n"
-"an editor opened by 'git commit'. Please make sure all processes\n"
-"are terminated then try again. If it still fails, a git process\n"
-"may have crashed in this repository earlier:\n"
-"remove the file manually to continue."
+"If you are planning on basing your work on an upstream\n"
+"branch that already exists at the remote, you may need to\n"
+"run \"git fetch\" to retrieve it.\n"
+"\n"
+"If you are planning to push out a new local branch that\n"
+"will track its remote counterpart, you may want to use\n"
+"\"git push -u\" to set the upstream config as you push."
 msgstr ""
-"Não é possível criar '%s.lock': %s.\n"
 "\n"
-"Outro processo git parece estar a executar neste repositório, e.g.\n"
-"um editor aberto por 'git commit'. Certifique-se que todos os processos\n"
-"terminaram e tente de novo. Se ainda assim falhar, um processo git\n"
-"pode ter falhado anteriormente no repositório:\n"
-"remova o ficheiro manualmente para continuar."
+"Se pretende efetuar rebase do seu trabalho sobre um ramo\n"
+"a montante que já existe no remoto, pode ser necessário\n"
+"executar \"git fetch\" para obtê-lo.\n"
+"\n"
+"Se pretende publicar um novo ramo local que irá seguir\n"
+"o seu homólogo remoto, pode usar \"git push -u\" para configurar\n"
+"o respetivo ramo a montante, ao mesmo tempo que publica."
 
-#: lockfile.c:160
+#: branch.c:265
 #, c-format
-msgid "Unable to create '%s.lock': %s"
-msgstr "Não é foi possível criar '%s.lock': %s"
+msgid "Not a valid object name: '%s'."
+msgstr "Nome de objeto inválido: '%s'."
 
-#: merge.c:41
-msgid "failed to read the cache"
-msgstr "falha ao ler a cache"
+#: branch.c:285
+#, c-format
+msgid "Ambiguous object name: '%s'."
+msgstr "Nome de objeto ambíguo: '%s'."
 
-#: merge.c:94 builtin/am.c:2007 builtin/am.c:2042 builtin/checkout.c:375
-#: builtin/checkout.c:586 builtin/clone.c:732
-msgid "unable to write new index file"
-msgstr "não foi possível escrever novo ficheiro de índice"
+#: branch.c:290
+#, c-format
+msgid "Not a valid branch point: '%s'."
+msgstr "Ponto no ramo inválido: '%s'."
 
-#: merge-recursive.c:189
+#: branch.c:344
 #, c-format
-msgid "(bad commit)\n"
-msgstr "(commit incorreto)\n"
+msgid "'%s' is already checked out at '%s'"
+msgstr "'%s' foi já extraído em '%s'"
 
-#: merge-recursive.c:209
+#: branch.c:363
 #, c-format
-msgid "addinfo_cache failed for path '%s'"
-msgstr "addinfo_cache falhou no caminho '%s'"
+msgid "HEAD of working tree %s is not updated"
+msgstr "HEAD da árvore de trabalho %s não está atualizada"
 
-#: merge-recursive.c:270
-msgid "error building trees"
-msgstr "erro ao construir árvores"
+#: bundle.c:34
+#, c-format
+msgid "'%s' does not look like a v2 bundle file"
+msgstr "'%s' não parece ser um ficheiro bundle v2"
 
-#: merge-recursive.c:689
+#: bundle.c:61
 #, c-format
-msgid "failed to create path '%s'%s"
-msgstr "falha ao criar o caminho '%s'%s"
+msgid "unrecognized header: %s%s (%d)"
+msgstr "cabeçalho não reconhecido: %s%s (%d)"
 
-#: merge-recursive.c:700
+#: bundle.c:87 sequencer.c:963 builtin/commit.c:777
 #, c-format
-msgid "Removing %s to make room for subdirectory\n"
-msgstr "A remover %s para criar espaço para o subdiretório\n"
+msgid "could not open '%s'"
+msgstr "não foi possível abrir '%s'"
 
-#: merge-recursive.c:714 merge-recursive.c:735
-msgid ": perhaps a D/F conflict?"
-msgstr ": talvez um conflito D/F?"
+#: bundle.c:139
+msgid "Repository lacks these prerequisite commits:"
+msgstr "O repositório não possuí estes commits pré-requisitados:"
+
+#: bundle.c:163 ref-filter.c:1462 sequencer.c:830 sequencer.c:1374
+#: builtin/blame.c:2814 builtin/commit.c:1061 builtin/log.c:348
+#: builtin/log.c:890 builtin/log.c:1340 builtin/log.c:1666 builtin/log.c:1909
+#: builtin/merge.c:356 builtin/shortlog.c:170
+msgid "revision walk setup failed"
+msgstr "falha ao configurar percurso de revisões"
+
+#: bundle.c:185
+#, 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
+msgid "The bundle records a complete history."
+msgstr "O pacote regista um histórico completo."
+
+#: bundle.c:194
+#, 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
+msgid "Could not spawn pack-objects"
+msgstr "Não foi possível lançar pack-objects"
+
+#: bundle.c:264
+msgid "pack-objects died"
+msgstr "pack-objects terminou inesperadamente"
+
+#: bundle.c:304
+msgid "rev-list died"
+msgstr "rev-list terminou inesperadamente"
+
+#: bundle.c:353
+#, 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:165 builtin/log.c:1572 builtin/shortlog.c:273
+#, c-format
+msgid "unrecognized argument: %s"
+msgstr "argumento não reconhecido: %s"
+
+#: bundle.c:451
+msgid "Refusing to create empty bundle."
+msgstr "Criação de bundle vazio recusada."
+
+#: bundle.c:463
+#, c-format
+msgid "cannot create '%s'"
+msgstr "não é possível criar '%s'"
+
+#: bundle.c:491
+msgid "index-pack died"
+msgstr "index-pack terminou inesperadamente"
 
-#: merge-recursive.c:725
+#: color.c:290
 #, c-format
-msgid "refusing to lose untracked file at '%s'"
-msgstr "perda de ficheiro não controlado em '%s' recusada"
+msgid "invalid color value: %.*s"
+msgstr "valor de cor inválido: %.*s"
 
-#: merge-recursive.c:765
+#: commit.c:40 builtin/am.c:421 builtin/am.c:457 builtin/am.c:1493
+#: builtin/am.c:2127
 #, c-format
-msgid "cannot read object %s '%s'"
-msgstr "não é possível ler o objeto %s: '%s'"
+msgid "could not parse %s"
+msgstr "não foi possível analisar %s"
 
-#: merge-recursive.c:767
+#: commit.c:42
 #, c-format
-msgid "blob expected for %s '%s'"
-msgstr "blob para %s '%s' esperado"
+msgid "%s %s is not a commit!"
+msgstr "%s %s não é um commit!"
 
-#: merge-recursive.c:790 builtin/clone.c:376
-#, c-format
-msgid "failed to open '%s'"
-msgstr "falha ao abrir '%s'"
+#: commit.c:1514
+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"
+"variable i18n.commitencoding to the encoding your project uses.\n"
+msgstr ""
+"aviso: a mensagem de commit não conforma com UTF-8.\n"
+"Pode querer emendá-lo depois de corrigir a mensagem ou definir a\n"
+"variável de configuração i18n.commitencoding com a codificação que\n"
+"o seu projeto utiliza.\n"
 
-#: merge-recursive.c:798
-#, c-format
-msgid "failed to symlink '%s'"
-msgstr "falha ao criar a ligação simbólica '%s'"
+#: compat/obstack.c:406 compat/obstack.c:408
+msgid "memory exhausted"
+msgstr "memória esgotada"
 
-#: merge-recursive.c:801
+#: config.c:516
 #, c-format
-msgid "do not know what to do with %06o %s '%s'"
-msgstr "não sei o que fazer com %06o %s '%s'"
+msgid "bad config line %d in blob %s"
+msgstr "linha de configuração %d incorreta no blob %s"
 
-#: merge-recursive.c:939
-msgid "Failed to execute internal merge"
-msgstr "Falha ao executar integração interna"
+#: config.c:520
+#, c-format
+msgid "bad config line %d in file %s"
+msgstr "linha de configuração %d incorreta no ficheiro %s"
 
-#: merge-recursive.c:943
+#: config.c:524
 #, c-format
-msgid "Unable to add %s to database"
-msgstr "Não é possível adicionar %s à base de dados"
+msgid "bad config line %d in standard input"
+msgstr "linha de configuração %d incorreta na entrada padrão"
 
-#: merge-recursive.c:959
-msgid "unsupported object type in the tree"
-msgstr "tipo de objeto sem suporte encontrado na árvore"
+#: config.c:528
+#, c-format
+msgid "bad config line %d in submodule-blob %s"
+msgstr "linha de configuração %d incorreta no submódulo-blob %s"
 
-#: merge-recursive.c:1034 merge-recursive.c:1048
+#: config.c:532
 #, c-format
-msgid ""
-"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
-"in tree."
-msgstr ""
-"CONFLITO (%s/eliminar): %s eliminado em %s e %s em %s. Versão de %s de %s "
-"deixada na árvore."
+msgid "bad config line %d in command line %s"
+msgstr "linha de configuração %d incorreta na linha de comandos %s"
 
-#: merge-recursive.c:1040 merge-recursive.c:1053
+#: config.c:536
 #, c-format
-msgid ""
-"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
-"in tree at %s."
-msgstr ""
-"CONFLITO (%s/eliminar): %s eliminado em %s e %s em %s. Versão de %s de %s "
-"deixada na árvore em %s."
+msgid "bad config line %d in %s"
+msgstr "linha de configuração %d incorreta em %s"
 
-#: merge-recursive.c:1094
-msgid "rename"
-msgstr "mudar nome"
+#: config.c:655
+msgid "out of range"
+msgstr "fora de intervalo"
 
-#: merge-recursive.c:1094
-msgid "renamed"
-msgstr "nome mudado"
+#: config.c:655
+msgid "invalid unit"
+msgstr "unidade inválida"
 
-#: merge-recursive.c:1150
+#: config.c:661
 #, 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"
+msgid "bad numeric config value '%s' for '%s': %s"
+msgstr "valor numérico '%s' da configuração '%s' incorreto: %s"
 
-#: merge-recursive.c:1172
+#: config.c:666
 #, c-format
-msgid ""
-"CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
-"\"->\"%s\" in \"%s\"%s"
-msgstr ""
-"CONFLITO (mudar nome/mudar nome): Mudar o nome \"%s\"->\"%s\" no ramo \"%s\" "
-"mudar o nome \"%s\"->\"%s\" em \"%s\"%s"
+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"
 
-#: merge-recursive.c:1177
-msgid " (left unresolved)"
-msgstr " (por resolver)"
+#: config.c:669
+#, 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"
 
-#: merge-recursive.c:1231
+#: config.c:672
 #, c-format
-msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
+msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
-"CONFLITO (mudar nome/mudar nome): Mudar de nome %s->%s em %s. Mudar o nome "
-"%s->%s em %s"
+"valor numérico '%s' da configuração '%s' incorreto na entrada padrão: %s"
 
-#: merge-recursive.c:1261
+#: config.c:675
 #, 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 "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"
 
-#: merge-recursive.c:1460
+#: config.c:678
 #, c-format
-msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
+msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr ""
-"CONFLITO (mudar nome/adicionar): Mudar o nome %s->%s em %s. %s adicionado em "
+"valor numérico '%s' da configuração '%s' incorreto na linha de comandos %s: "
 "%s"
 
-#: merge-recursive.c:1470
+#: config.c:681
 #, c-format
-msgid "Adding merged %s"
-msgstr "A adicionar %s integrado"
+msgid "bad numeric config value '%s' for '%s' in %s: %s"
+msgstr "valor numérico '%s' da configuração '%s' incorreto em %s: %s"
 
-#: merge-recursive.c:1475 merge-recursive.c:1677
+#: config.c:768
 #, c-format
-msgid "Adding as %s instead"
-msgstr "A adicionar como %s, em alternativa."
+msgid "failed to expand user dir in: '%s'"
+msgstr "falha ao expandir diretório de utilizador em: '%s'"
 
-#: merge-recursive.c:1526
+#: config.c:852 config.c:863
 #, c-format
-msgid "cannot read object %s"
-msgstr "não foi possível ler o objeto %s"
+msgid "bad zlib compression level %d"
+msgstr "nível de compressão zlib %d incorreto"
 
-#: merge-recursive.c:1529
+#: config.c:978
 #, c-format
-msgid "object %s is not a blob"
-msgstr "o objeto %s não é um blob"
-
-#: merge-recursive.c:1581
-msgid "modify"
-msgstr "modificar"
-
-#: merge-recursive.c:1581
-msgid "modified"
-msgstr "modificado"
+msgid "invalid mode for object creation: %s"
+msgstr "modo inválido para criação de objeto: %s"
 
-#: merge-recursive.c:1591
-msgid "content"
-msgstr "conteúdo"
+#: config.c:1312
+msgid "unable to parse command-line config"
+msgstr "não é possível analisar configuração de linha de comandos"
 
-#: merge-recursive.c:1598
-msgid "add/add"
-msgstr "adicionar/adicionar"
+#: config.c:1362
+msgid "unknown error occurred while reading the configuration files"
+msgstr ""
+"ocorreu um erro desconhecido durante a leitura dos ficheiros de configuração"
 
-#: merge-recursive.c:1632
+#: config.c:1716
 #, c-format
-msgid "Skipped %s (merged same as existing)"
-msgstr "%s ignorado (integrado é igual ao existente)"
+msgid "unable to parse '%s' from command-line config"
+msgstr "não é possível analisar '%s' da configuração de linha de comandos"
 
-#: merge-recursive.c:1646
+#: config.c:1718
 #, c-format
-msgid "Auto-merging %s"
-msgstr "A integrar automaticamente %s"
+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"
 
-#: merge-recursive.c:1650 git-submodule.sh:941
-msgid "submodule"
-msgstr "submódulo"
+#: config.c:1777
+#, c-format
+msgid "%s has multiple values"
+msgstr "%s tem múltiplos valores"
 
-#: merge-recursive.c:1651
+#: config.c:2311
 #, c-format
-msgid "CONFLICT (%s): Merge conflict in %s"
-msgstr "CONFLITO (%s): conflito de integração em %s"
+msgid "could not set '%s' to '%s'"
+msgstr "não foi possível definir '%s' como '%s'"
 
-#: merge-recursive.c:1737
+#: config.c:2313
 #, c-format
-msgid "Removing %s"
-msgstr "A remover %s"
+msgid "could not unset '%s'"
+msgstr "não foi possível reiniciar '%s'"
 
-#: merge-recursive.c:1762
-msgid "file/directory"
-msgstr "ficheiro/diretório"
+#: connect.c:49
+msgid "The remote end hung up upon initial contact"
+msgstr "O remoto desligou após contacto inicial"
 
-#: merge-recursive.c:1768
-msgid "directory/file"
-msgstr "diretório/ficheiro"
+#: connect.c:51
+msgid ""
+"Could not read from remote repository.\n"
+"\n"
+"Please make sure you have the correct access rights\n"
+"and the repository exists."
+msgstr ""
+"Não foi possível ler do repositório remoto.\n"
+"\n"
+"Certifica-se que tem os direitos de acesso corretos\n"
+"e que o repositório existe."
+
+#: connected.c:63 builtin/fsck.c:173 builtin/prune.c:140
+msgid "Checking connectivity"
+msgstr "A verificar conectividade"
+
+#: connected.c:75
+msgid "Could not run 'git rev-list'"
+msgstr "Não foi possível executar 'git rev-list'"
+
+#: connected.c:95
+msgid "failed write to rev-list"
+msgstr "falha ao escrever para rev-list"
+
+#: connected.c:102
+msgid "failed to close rev-list's stdin"
+msgstr "falha ao fechar entrada padrão de rev-list"
 
-#: merge-recursive.c:1773
+#: convert.c:201
 #, c-format
-msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
+msgid ""
+"CRLF will be replaced by LF in %s.\n"
+"The file will have its original line endings in your working directory."
 msgstr ""
-"CONFLITO (%s): Há um diretório designado %s em %s. A adicionar %s como %s"
+"CRLF será substituído por LF em %s.\n"
+"O final de linha original será mantido no ficheiro da sua árvore de trabalho."
 
-#: merge-recursive.c:1781
+#: convert.c:205
 #, c-format
-msgid "Adding %s"
-msgstr "A adicionar %s"
+msgid "CRLF would be replaced by LF in %s."
+msgstr "CRLF será substituído por LF em %s."
+
+#: convert.c:211
+#, c-format
+msgid ""
+"LF will be replaced by CRLF in %s.\n"
+"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."
 
-#: merge-recursive.c:1798
-msgid "Fatal merge failure, shouldn't happen."
-msgstr "Falha de integração fatal, não devia acontecer."
+#: convert.c:215
+#, c-format
+msgid "LF would be replaced by CRLF in %s"
+msgstr "LF será substituído por CRLF em %s."
 
-#: merge-recursive.c:1817
-msgid "Already up-to-date!"
-msgstr "Já está atualizado!"
+#: date.c:97
+msgid "in the future"
+msgstr "no futuro"
 
-#: merge-recursive.c:1826
+#: date.c:103
 #, c-format
-msgid "merging of trees %s and %s failed"
-msgstr "falha ao integrar as árvores %s e %s"
+msgid "%lu second ago"
+msgid_plural "%lu seconds ago"
+msgstr[0] "há %lu segundo"
+msgstr[1] "há %lu segundos"
 
-#: merge-recursive.c:1856
+#: date.c:110
 #, c-format
-msgid "Unprocessed path??? %s"
-msgstr "Caminho não processado??? %s"
+msgid "%lu minute ago"
+msgid_plural "%lu minutes ago"
+msgstr[0] "há %lu minuto"
+msgstr[1] "há %lu minutos"
 
-#: merge-recursive.c:1904
-msgid "Merging:"
-msgstr "A integrar:"
+#: date.c:117
+#, c-format
+msgid "%lu hour ago"
+msgid_plural "%lu hours ago"
+msgstr[0] "há %lu hora"
+msgstr[1] "há %lu horas"
 
-#: merge-recursive.c:1917
+#: date.c:124
 #, 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:"
+msgid "%lu day ago"
+msgid_plural "%lu days ago"
+msgstr[0] "há %lu dia"
+msgstr[1] "há %lu dias"
 
-#: merge-recursive.c:1954
-msgid "merge returned no commit"
-msgstr "a integração não retornou nenhum commit"
+#: date.c:130
+#, c-format
+msgid "%lu week ago"
+msgid_plural "%lu weeks ago"
+msgstr[0] "há %lu semana"
+msgstr[1] "há %lu semanas"
 
-#: merge-recursive.c:2011
+#: date.c:137
 #, c-format
-msgid "Could not parse object '%s'"
-msgstr "Não foi possível analisar o objeto '%s'"
+msgid "%lu month ago"
+msgid_plural "%lu months ago"
+msgstr[0] "há %lu mês"
+msgstr[1] "há %lu meses"
 
-#: merge-recursive.c:2022 builtin/merge.c:649 builtin/merge.c:831
-msgid "Unable to write index."
-msgstr "Não é possível escrever no índice."
+#: date.c:148
+#, c-format
+msgid "%lu year"
+msgid_plural "%lu years"
+msgstr[0] "%lu ano"
+msgstr[1] "%lu anos"
 
-#: notes-utils.c:41
-msgid "Cannot commit uninitialized/unreferenced notes tree"
-msgstr ""
-"Não é possível submeter árvore de notas não inicializada ou não referenciada"
+#. TRANSLATORS: "%s" is "<n> years"
+#: date.c:151
+#, c-format
+msgid "%s, %lu month ago"
+msgid_plural "%s, %lu months ago"
+msgstr[0] "há %s e %lu mês"
+msgstr[1] "há %s e %lu meses"
 
-#: notes-utils.c:100
+#: date.c:156 date.c:161
 #, c-format
-msgid "Bad notes.rewriteMode value: '%s'"
-msgstr "Valor de notes.rewriteMode incorreto: '%s'"
+msgid "%lu year ago"
+msgid_plural "%lu years ago"
+msgstr[0] "há %lu ano"
+msgstr[1] "há %lu anos"
 
-#: notes-utils.c:110
+#: diffcore-order.c:24
 #, c-format
-msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
-msgstr "Reescrita de notas em %s (fora de refs/notes/) recusada"
+msgid "failed to read orderfile '%s'"
+msgstr "falha ao ler o ficheiro de comando '%s'"
 
-#. TRANSLATORS: The first %s is the name of the
-#. environment variable, the second %s is its value
-#: notes-utils.c:137
+#: diffcore-rename.c:536
+msgid "Performing inexact rename detection"
+msgstr "Deteção de mudança de nome inexata em curso"
+
+#: diff.c:62
 #, c-format
-msgid "Bad %s value: '%s'"
-msgstr "Valor incorreto de %s: '%s'"
+msgid "option '%s' requires a value"
+msgstr "a opção '%s' requer um valor"
 
-#: object.c:242
+#: diff.c:124
 #, c-format
-msgid "unable to parse object: %s"
-msgstr "não foi possível analisar o objeto: %s"
+msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
+msgstr "  Falha ao analisar percentagem limite de dirstat '%s'\n"
 
-#: parse-options.c:572
-msgid "..."
-msgstr "..."
+#: diff.c:129
+#, c-format
+msgid "  Unknown dirstat parameter '%s'\n"
+msgstr "  Parâmetro de dirstat desconhecido '%s'\n"
 
-#: parse-options.c:590
+#: diff.c:283
 #, c-format
-msgid "usage: %s"
-msgstr "utilização: %s"
+msgid "Unknown value for 'diff.submodule' config variable: '%s'"
+msgstr "Valor desconhecido na variável de configuração 'diff.submodule': '%s'"
 
-#. TRANSLATORS: the colon here should align with the
-#. one in "usage: %s" translation
-#: parse-options.c:594
+#: diff.c:346
 #, c-format
-msgid "   or: %s"
-msgstr "        ou: %s"
+msgid ""
+"Found errors in 'diff.dirstat' config variable:\n"
+"%s"
+msgstr ""
+"Erros encontrados na variável de configuração 'diff.dirstat':\n"
+"%s"
 
-#: parse-options.c:597
+#: diff.c:3087
 #, c-format
-msgid "    %s"
-msgstr "         %s"
+msgid "external diff died, stopping at %s"
+msgstr "o diff externo terminou inesperadamente, interrompido em %s"
 
-#: parse-options.c:631
-msgid "-NUM"
-msgstr "-NUM"
+#: diff.c:3412
+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:3502
+msgid "--follow requires exactly one pathspec"
+msgstr "--follow requer exatamente um único especificador de caminho"
+
+#: diff.c:3665
+#, c-format
+msgid ""
+"Failed to parse --dirstat/-X option parameter:\n"
+"%s"
+msgstr ""
+"Falha ao analisar parâmetro da opção --dirstat/-X:\n"
+"%s"
 
-#: parse-options-cb.c:108
+#: diff.c:3679
 #, c-format
-msgid "malformed object name '%s'"
-msgstr "nome do objeto malformado '%s'"
+msgid "Failed to parse --submodule option parameter: '%s'"
+msgstr "Falha ao analisar parâmetro da opção --submodule: '%s'"
 
-#: path.c:796
-#, 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"
+#: diff.c:4700
+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."
 
-#: pathspec.c:133
-msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
+#: diff.c:4703
+msgid "only found copies from modified paths due to too many files."
 msgstr ""
-"as definições globais 'glob' e 'noglob' de especificador de caminho "
-"(pathspec) são incompatíveis"
+"só foram encontradas cópias de caminhos modificados devido a demasiados "
+"ficheiros."
 
-#: pathspec.c:143
+#: diff.c:4706
+#, c-format
 msgid ""
-"global 'literal' pathspec setting is incompatible with all other global "
-"pathspec settings"
+"you may want to set your %s variable to at least %d and retry the command."
 msgstr ""
-"a definição global de especificador de caminho 'literal' é incompatível com "
-"todas as outras definições globais de especificador de caminho (pathspec)"
+"pode tentar definir a variável %s para, pelo menos, %d e repetir o comando."
 
-#: pathspec.c:177
-msgid "invalid parameter for pathspec magic 'prefix'"
-msgstr "parâmetro inválido na mágica 'prefix' do especificador de caminho"
+#: dir.c:1866
+msgid "failed to get kernel name and information"
+msgstr "falha ao obter nome e informação do kernel"
 
-#: pathspec.c:183
-#, c-format
-msgid "Invalid pathspec magic '%.*s' in '%s'"
-msgstr "Mágica do especificador de caminho '%.*s' inválida em '%s'"
+#: dir.c:1985
+msgid "Untracked cache is disabled on this system or location."
+msgstr "A cache não controlada está desativada neste sistema ou localização."
 
-#: pathspec.c:187
-#, 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'"
+#: fetch-pack.c:213
+#, fuzzy
+msgid "git fetch-pack: expected shallow list"
+msgstr "git fetch-pack: esperava-se lista rasa"
 
-#: pathspec.c:205
-#, c-format
-msgid "Unimplemented pathspec magic '%c' in '%s'"
-msgstr "Mágica de especificador de caminho '%c' em '%s' não implementada"
+#: fetch-pack.c:225
+msgid "git fetch-pack: expected ACK/NAK, got EOF"
+msgstr "git fetch-pack: esperava-se ACK/NAK, obteve-se EOF"
 
-#: pathspec.c:230
+#: fetch-pack.c:243
 #, c-format
-msgid "%s: 'literal' and 'glob' are incompatible"
-msgstr "%s: 'literal' e 'glob' são incompatíveis"
+msgid "git fetch-pack: expected ACK/NAK, got '%s'"
+msgstr "git fetch-pack: esperava-se ACK/NAK, obteve-se '%s'"
 
-#: pathspec.c:241
-#, c-format
-msgid "%s: '%s' is outside repository"
-msgstr "%s: '%s' está fora do repositório"
+#: fetch-pack.c:295
+msgid "--stateless-rpc requires multi_ack_detailed"
+msgstr "--stateless-rpc requer multi_ack_detailed"
 
-#: pathspec.c:291
+#: fetch-pack.c:381
+#, fuzzy, c-format
+msgid "invalid shallow line: %s"
+msgstr "linha rasa inválida: %s"
+
+#: fetch-pack.c:387
+#, fuzzy, c-format
+msgid "invalid unshallow line: %s"
+msgstr "linha para aprofundar inválida: %s"
+
+#: fetch-pack.c:389
 #, c-format
-msgid "Pathspec '%s' is in submodule '%.*s'"
-msgstr "O caminho '%s' está dentro do submódulo '%.*s'"
+msgid "object not found: %s"
+msgstr "objeto não encontrado: %s"
 
-#: pathspec.c:353
+#: fetch-pack.c:392
 #, 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"
+msgid "error in object: %s"
+msgstr "erro no objeto: %s"
+
+#: fetch-pack.c:394
+#, fuzzy, c-format
+msgid "no shallow found: %s"
+msgstr "raso não encontrado: %s"
+
+#: fetch-pack.c:397
+#, fuzzy, c-format
+msgid "expected shallow/unshallow, got %s"
+msgstr "esperava-se raso/aprofundar, obteve-se %s"
 
-#: pathspec.c:433
+#: fetch-pack.c:436
 #, c-format
-msgid "pathspec '%s' is beyond a symbolic link"
-msgstr "o especificador de caminho '%s' é indicado por uma ligação simbólica"
+msgid "got %s %d %s"
+msgstr "obteve-se %s %d %s"
 
-#: pathspec.c:442
-msgid ""
-"There is nothing to exclude from by :(exclude) patterns.\n"
-"Perhaps you forgot to add either ':/' or '.' ?"
-msgstr ""
-"Não há nada para excluir de acordo com o padrão :(excluir).\n"
-"Talvez se tenha esquecido de acrescentar ':/' ou '.' ?"
+#: fetch-pack.c:450
+#, c-format
+msgid "invalid commit %s"
+msgstr "commit inválido %s"
 
-#: pretty.c:971
-msgid "unable to parse --pretty format"
-msgstr "não foi possível analisar o formato de --pretty"
+#: fetch-pack.c:483
+msgid "giving up"
+msgstr "desistência"
 
-#: progress.c:235
+#: fetch-pack.c:493 progress.c:235
 msgid "done"
 msgstr "concluído"
 
-#: read-cache.c:1281
+#: fetch-pack.c:505
 #, c-format
-msgid ""
-"index.version set, but the value is invalid.\n"
-"Using version %i"
-msgstr ""
-"index.version definido, mas com valor inválido.\n"
-"A usar a versão %i"
+msgid "got %s (%d) %s"
+msgstr "obteve-se %s (%d) %s"
 
-#: read-cache.c:1291
+#: fetch-pack.c:551
 #, c-format
-msgid ""
-"GIT_INDEX_VERSION set, but the value is invalid.\n"
-"Using version %i"
-msgstr ""
-"GIT_INDEX_VERSION definido, mas com valor inválido.\n"
-"A usar a versão %i"
+msgid "Marking %s as complete"
+msgstr "Marcado %s como completo"
 
-#: refs.c:543 builtin/merge.c:764 builtin/merge.c:883 builtin/merge.c:985
-#: builtin/merge.c:995
+#: fetch-pack.c:697
 #, c-format
-msgid "Could not open '%s' for writing"
-msgstr "Não foi possível abrir '%s' para escrita"
+msgid "already have %s (%s)"
+msgstr "já se tem %s (%s)"
 
-#: refs/files-backend.c:2243
-#, c-format
-msgid "could not delete reference %s: %s"
-msgstr "não foi possível eliminar a referência %s: %s"
+#: fetch-pack.c:735
+msgid "fetch-pack: unable to fork off sideband demultiplexer"
+msgstr ""
 
-#: refs/files-backend.c:2246
-#, c-format
-msgid "could not delete references: %s"
-msgstr "não foi possível eliminar as referências: %s"
+#: fetch-pack.c:743
+msgid "protocol error: bad pack header"
+msgstr "erro de protocolo: cabeçalho de pacote incorreto"
 
-#: refs/files-backend.c:2255
+#: fetch-pack.c:799
 #, c-format
-msgid "could not remove reference %s"
-msgstr "não foi possível eliminar a referência %s"
+msgid "fetch-pack: unable to fork off %s"
+msgstr "fetch-pack: não é possível criar processo filho %s"
 
-#: ref-filter.c:55
+#: fetch-pack.c:815
 #, c-format
-msgid "expected format: %%(color:<color>)"
-msgstr "formato esperado: %%(color:<cor>)"
+msgid "%s failed"
+msgstr "%s falhou"
 
-#: ref-filter.c:57
-#, c-format
-msgid "unrecognized color: %%(color:%s)"
-msgstr "cor não reconhecida: %%(color:%s)"
+#: fetch-pack.c:817
+msgid "error in sideband demultiplexer"
+msgstr ""
 
-#: ref-filter.c:71
+#: fetch-pack.c:844
+msgid "Server does not support shallow clients"
+msgstr "O servidor não suporta clientes rasos"
+
+#: fetch-pack.c:848
+msgid "Server supports multi_ack_detailed"
+msgstr "O servidor suporta multi_ack_detailed"
+
+#: fetch-pack.c:851
+msgid "Server supports no-done"
+msgstr "O servidor suporta no-done"
+
+#: fetch-pack.c:857
+msgid "Server supports multi_ack"
+msgstr "O servidor suporta muilti_ack"
+
+#: fetch-pack.c:861
+msgid "Server supports side-band-64k"
+msgstr "O servidor suporta side-band-64k"
+
+#: fetch-pack.c:865
+msgid "Server supports side-band"
+msgstr "O servidor suporta side-band"
+
+#: fetch-pack.c:869
+msgid "Server supports allow-tip-sha1-in-want"
+msgstr "O servidor suporta allow-tip-sha1-in-want"
+
+#: fetch-pack.c:873
+msgid "Server supports allow-reachable-sha1-in-want"
+msgstr "O servidor suporta allow-reachable-sha1-in-want"
+
+#: fetch-pack.c:883
+msgid "Server supports ofs-delta"
+msgstr "O servidor suporta ofs-delta"
+
+#: fetch-pack.c:890
 #, c-format
-msgid "unrecognized format: %%(%s)"
-msgstr "formato não reconhecido: %%(%s)"
+msgid "Server version is %.*s"
+msgstr "A versão do servidor é %.*s"
 
-#: ref-filter.c:77
+#: fetch-pack.c:896
+msgid "Server does not support --shallow-since"
+msgstr "O servidor não suporta --shallow-since"
+
+#: fetch-pack.c:900
+msgid "Server does not support --shallow-exclude"
+msgstr "O servidor não suporta --shallow-exclude"
+
+#: fetch-pack.c:902
+msgid "Server does not support --deepen"
+msgstr "O servidor não suporta --deepen"
+
+#: fetch-pack.c:913
+msgid "no common commits"
+msgstr "nenhum commit em comum"
+
+#: fetch-pack.c:925
+msgid "git fetch-pack: fetch failed."
+msgstr "git fetch-pack: falha ao obter."
+
+#: fetch-pack.c:1087
+msgid "no matching remote head"
+msgstr "nenhuma cabeça remota correspondente"
+
+#: gpg-interface.c:185
+msgid "gpg failed to sign the data"
+msgstr "gpg não assinou os dados"
+
+#: gpg-interface.c:215
+msgid "could not create temporary file"
+msgstr "não foi possível criar ficheiro temporário"
+
+#: gpg-interface.c:217
 #, c-format
-msgid "%%(body) does not take arguments"
-msgstr "%%(body) não leva argumentos"
+msgid "failed writing detached signature to '%s'"
+msgstr "falha ao escrever assinatura destacada em '%s'"
 
-#: ref-filter.c:84
+#: grep.c:1782
 #, c-format
-msgid "%%(subject) does not take arguments"
-msgstr "%%(subject) não leva argumentos"
+msgid "'%s': unable to read %s"
+msgstr "'%s': não foi possível ler %s"
 
-#: ref-filter.c:101
+#: grep.c:1799 builtin/clone.c:381 builtin/diff.c:84 builtin/rm.c:155
 #, c-format
-msgid "positive value expected contents:lines=%s"
-msgstr "valor positivo esperado contents:lines=%s"
+msgid "failed to stat '%s'"
+msgstr "falha ao invocar stat de '%s'"
 
-#: ref-filter.c:103
+#: grep.c:1810
 #, c-format
-msgid "unrecognized %%(contents) argument: %s"
-msgstr "argumento de %%(contents) não reconhecido: %s"
+msgid "'%s': short read"
+msgstr "'%s': leitura truncada"
 
-#: ref-filter.c:113
+#: help.c:203
 #, c-format
-msgid "unrecognized %%(objectname) argument: %s"
-msgstr "argumento de %%(objectname) não reconhecido: %s"
+msgid "available git commands in '%s'"
+msgstr "comandos do git disponível em '%s'"
 
-#: ref-filter.c:135
+#: help.c:210
+msgid "git commands available from elsewhere on your $PATH"
+msgstr "comandos do git disponíveis noutras localizações em $PATH"
+
+#: help.c:241
+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:306
 #, c-format
-msgid "expected format: %%(align:<width>,<position>)"
-msgstr "formato esperado: %%(align:<largura>,<posição>)"
+msgid ""
+"'%s' appears to be a git command, but we were not\n"
+"able to execute it. Maybe git-%s is broken?"
+msgstr ""
+"'%s' parece ser um comando do git, mas não é possível\n"
+"executá-lo. Talvez git-%s esteja danificado?"
 
-#: ref-filter.c:147
+#: help.c:361
+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:383
 #, c-format
-msgid "unrecognized position:%s"
-msgstr "posição não reconhecida:%s"
+msgid ""
+"WARNING: You called a Git command named '%s', which does not exist.\n"
+"Continuing under the assumption that you meant '%s'"
+msgstr ""
+"AVISO: Invocou um comando do Git designado '%s' que não existe.\n"
+"Continuando, assumindo que queria dizer '%s'"
 
-#: ref-filter.c:151
+#: help.c:388
 #, c-format
-msgid "unrecognized width:%s"
-msgstr "largura não reconhecida:%s"
+msgid "in %0.1f seconds automatically..."
+msgstr "automaticamente em %0.1f..."
 
-#: ref-filter.c:157
+#: help.c:395
 #, c-format
-msgid "unrecognized %%(align) argument: %s"
-msgstr "argumento de %%(align) não reconhecido: %s"
+msgid "git: '%s' is not a git command. See 'git --help'."
+msgstr "git: '%s' não é um comando do git. Consulte 'git --help'."
 
-#: ref-filter.c:161
+#: help.c:399 help.c:465
+msgid ""
+"\n"
+"Did you mean this?"
+msgid_plural ""
+"\n"
+"Did you mean one of these?"
+msgstr[0] ""
+"\n"
+"Queria dizer isto?"
+msgstr[1] ""
+"\n"
+"Queria dizer deste?"
+
+#: help.c:461
 #, c-format
-msgid "positive width expected with the %%(align) atom"
-msgstr "largura positiva esperada com o átomo %%(algn)"
+msgid "%s: %s - %s"
+msgstr "%s: %s - %s"
 
-#: ref-filter.c:244
+#: ident.c:334
+msgid ""
+"\n"
+"*** Please tell me who you are.\n"
+"\n"
+"Run\n"
+"\n"
+"  git config --global user.email \"you@example.com\"\n"
+"  git config --global user.name \"Your Name\"\n"
+"\n"
+"to set your account's default identity.\n"
+"Omit --global to set the identity only in this repository.\n"
+"\n"
+msgstr ""
+"\n"
+"*** Por favor diga que é.\n"
+"\n"
+"Execute\n"
+"\n"
+"  git config --global user.email \"eu@exemplo.com\"\n"
+"  git config --global user.name \"Meu Nome\"\n"
+"\n"
+"para definir a identidade predefinida da sua conta.\n"
+"Omita --global para definir a identidade apenas neste repositório.\n"
+"\n"
+
+#: lockfile.c:152
 #, c-format
-msgid "malformed field name: %.*s"
-msgstr "nome de ficheiro malformado: %.*s"
+msgid ""
+"Unable to create '%s.lock': %s.\n"
+"\n"
+"Another git process seems to be running in this repository, e.g.\n"
+"an editor opened by 'git commit'. Please make sure all processes\n"
+"are terminated then try again. If it still fails, a git process\n"
+"may have crashed in this repository earlier:\n"
+"remove the file manually to continue."
+msgstr ""
+"Não é possível criar '%s.lock': %s.\n"
+"\n"
+"Outro processo git parece estar a executar neste repositório, e.g.\n"
+"um editor aberto por 'git commit'. Certifique-se que todos os processos\n"
+"terminaram e tente de novo. Se ainda assim falhar, um processo git\n"
+"pode ter falhado anteriormente no repositório:\n"
+"remova o ficheiro manualmente para continuar."
 
-#: ref-filter.c:270
+#: lockfile.c:160
 #, c-format
-msgid "unknown field name: %.*s"
-msgstr "nome do campo desconhecido: %.*s"
+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:374
+#: builtin/checkout.c:588 builtin/clone.c:731
+msgid "unable to write new index file"
+msgstr "não foi possível escrever novo ficheiro de índice"
 
-#: ref-filter.c:372
-#, c-format
-msgid "format: %%(end) atom used without corresponding atom"
-msgstr "formato: átomo %%(end) utilizado sem átomo correspondente"
+#: merge-recursive.c:209
+msgid "(bad commit)\n"
+msgstr "(commit incorreto)\n"
 
-#: ref-filter.c:424
+#: merge-recursive.c:231
 #, c-format
-msgid "malformed format string %s"
-msgstr "cadeia malformada %s"
+msgid "addinfo_cache failed for path '%s'"
+msgstr "addinfo_cache falhou no caminho '%s'"
 
-#: ref-filter.c:878
-msgid ":strip= requires a positive integer argument"
-msgstr ":strip= requer um inteiro positivo como argumento"
+#: merge-recursive.c:301
+msgid "error building trees"
+msgstr "erro ao construir árvores"
 
-#: ref-filter.c:883
+#: merge-recursive.c:720
 #, c-format
-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 "failed to create path '%s'%s"
+msgstr "falha ao criar o caminho '%s'%s"
 
-#: ref-filter.c:1046
+#: merge-recursive.c:731
 #, c-format
-msgid "unknown %.*s format %s"
-msgstr "formato de %.*s desconhecido %s"
+msgid "Removing %s to make room for subdirectory\n"
+msgstr "A remover %s para criar espaço para o subdiretório\n"
 
-#: ref-filter.c:1066 ref-filter.c:1097
-#, c-format
-msgid "missing object %s for %s"
-msgstr "falta o objeto %s de %s"
+#: merge-recursive.c:745 merge-recursive.c:764
+msgid ": perhaps a D/F conflict?"
+msgstr ": talvez um conflito D/F?"
 
-#: ref-filter.c:1069 ref-filter.c:1100
+#: merge-recursive.c:754
 #, c-format
-msgid "parse_object_buffer failed on %s for %s"
-msgstr "falha ao invocar parse_object_buffer sobre %s de %s"
+msgid "refusing to lose untracked file at '%s'"
+msgstr "perda de ficheiro não controlado em '%s' recusada"
 
-#: ref-filter.c:1311
+#: merge-recursive.c:796 builtin/cat-file.c:34
 #, c-format
-msgid "malformed object at '%s'"
-msgstr "objeto malformado em '%s'"
+msgid "cannot read object %s '%s'"
+msgstr "não é possível ler o objeto %s: '%s'"
 
-#: ref-filter.c:1373
+#: merge-recursive.c:798
 #, c-format
-msgid "ignoring ref with broken name %s"
-msgstr "a referência %s com nome danificado foi ignorada"
+msgid "blob expected for %s '%s'"
+msgstr "blob para %s '%s' esperado"
 
-#: ref-filter.c:1378
+#: merge-recursive.c:822
 #, c-format
-msgid "ignoring broken ref %s"
-msgstr "a referência %s danificada foi ignorada"
+msgid "failed to open '%s': %s"
+msgstr "falha ao abrir '%s': %s"
 
-#: ref-filter.c:1651
+#: merge-recursive.c:833
 #, c-format
-msgid "format: %%(end) atom missing"
-msgstr "formato: falta átomo %%(end)"
+msgid "failed to symlink '%s': %s"
+msgstr "falha ao criar a ligação simbólica '%s': %s"
 
-#: ref-filter.c:1705
+#: merge-recursive.c:838
 #, c-format
-msgid "malformed object name %s"
-msgstr "nome de objeto malformado %s"
+msgid "do not know what to do with %06o %s '%s'"
+msgstr "não sei o que fazer com %06o %s '%s'"
 
-#: remote.c:746
-#, 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"
+#: merge-recursive.c:978
+msgid "Failed to execute internal merge"
+msgstr "Falha ao executar integração interna"
 
-#: remote.c:750
+#: merge-recursive.c:982
 #, c-format
-msgid "%s usually tracks %s, not %s"
-msgstr "%s geralmente segue %s, não %s"
+msgid "Unable to add %s to database"
+msgstr "Não é possível adicionar %s à base de dados"
 
-#: remote.c:754
+#: merge-recursive.c:1081 merge-recursive.c:1095
 #, c-format
-msgid "%s tracks both %s and %s"
-msgstr "%s segue %s e %s em simultâneo"
+msgid ""
+"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
+"in tree."
+msgstr ""
+"CONFLITO (%s/eliminar): %s eliminado em %s e %s em %s. Versão de %s de %s "
+"deixada na árvore."
 
-#: remote.c:762
-msgid "Internal error"
-msgstr "Erro interno"
+#: merge-recursive.c:1087 merge-recursive.c:1100
+#, c-format
+msgid ""
+"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
+"in tree at %s."
+msgstr ""
+"CONFLITO (%s/eliminar): %s eliminado em %s e %s em %s. Versão de %s de %s "
+"deixada na árvore em %s."
 
-#: remote.c:1678 remote.c:1721
-msgid "HEAD does not point to a branch"
-msgstr "HEAD não aponta para um ramo"
+#: merge-recursive.c:1143
+msgid "rename"
+msgstr "mudar nome"
 
-#: remote.c:1687
-#, c-format
-msgid "no such branch: '%s'"
-msgstr "ramo inexistente: '%s'"
+#: merge-recursive.c:1143
+msgid "renamed"
+msgstr "nome mudado"
 
-#: remote.c:1690
+#: merge-recursive.c:1200
 #, c-format
-msgid "no upstream configured for branch '%s'"
-msgstr "nenhum ramo a montante configurado para o ramo '%s'"
+msgid "%s is a directory in %s adding as %s instead"
+msgstr "%s é um diretório em %s adicionando %s no seu lugar"
 
-#: remote.c:1696
+#: merge-recursive.c:1225
 #, c-format
-msgid "upstream branch '%s' not stored as a remote-tracking branch"
+msgid ""
+"CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
+"\"->\"%s\" in \"%s\"%s"
 msgstr ""
-"o ramo a montante '%s' não está guardado como um ramo de monitorização remoto"
+"CONFLITO (mudar nome/mudar nome): Mudar o nome \"%s\"->\"%s\" no ramo \"%s\" "
+"mudar o nome \"%s\"->\"%s\" em \"%s\"%s"
 
-#: remote.c:1711
+#: merge-recursive.c:1230
+msgid " (left unresolved)"
+msgstr " (por resolver)"
+
+#: merge-recursive.c:1292
 #, c-format
-msgid "push destination '%s' on remote '%s' has no local tracking branch"
+msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
-"o destino de publicação '%s' no remoto '%s' não é seguido por nenhum ramo "
-"local"
+"CONFLITO (mudar nome/mudar nome): Mudar de nome %s->%s em %s. Mudar o nome "
+"%s->%s em %s"
 
-#: remote.c:1726
+#: merge-recursive.c:1325
 #, c-format
-msgid "branch '%s' has no remote for pushing"
-msgstr "o ramo '%s' não tem nenhum remoto para publicar"
+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"
 
-#: remote.c:1737
+#: merge-recursive.c:1531
 #, c-format
-msgid "push refspecs for '%s' do not include '%s'"
+msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
 msgstr ""
-"'%2$s' não faz parte dos especificadores de referência de '%1$s' para "
-"publicação"
-
-#: remote.c:1750
-msgid "push has no destination (push.default is 'nothing')"
-msgstr "publicação sem destino (push.default é 'nothing')"
-
-#: remote.c:1772
-msgid "cannot resolve 'simple' push to a single destination"
-msgstr "não é possível resolver a publicação 'simple' num único destino"
+"CONFLITO (mudar nome/adicionar): Mudar o nome %s->%s em %s. %s adicionado em "
+"%s"
 
-#: remote.c:2074
+#: merge-recursive.c:1546
 #, 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:2078
-msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
-msgstr "  (use \"git branch --unset-upstream\" para corrigir)\n"
+msgid "Adding merged %s"
+msgstr "A adicionar %s integrado"
 
-#: remote.c:2081
+#: merge-recursive.c:1553 merge-recursive.c:1766
 #, c-format
-msgid "Your branch is up-to-date with '%s'.\n"
-msgstr "O seu ramo está atualizado com '%s'.\n"
+msgid "Adding as %s instead"
+msgstr "A adicionar como %s, em alternativa."
 
-#: remote.c:2085
+#: merge-recursive.c:1610
 #, 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:2091
-msgid "  (use \"git push\" to publish your local commits)\n"
-msgstr "  (use \"git push\" para publicar os commits locais)\n"
+msgid "cannot read object %s"
+msgstr "não foi possível ler o objeto %s"
 
-#: remote.c:2094
+#: merge-recursive.c:1613
 #, c-format
-msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
-msgid_plural ""
-"Your branch is behind '%s' by %d commits, and can be fast-forwarded.\n"
-msgstr[0] ""
-"O seu ramo está atrás de '%s' por %d commit, podendo ser atualizado com "
-"avanço rápido.\n"
-msgstr[1] ""
-"O seu ramo está atrás de '%s' por %d commits, podendo ser atualizado com "
-"avanço rápido.\n"
+msgid "object %s is not a blob"
+msgstr "o objeto %s não é um blob"
 
-#: remote.c:2102
-msgid "  (use \"git pull\" to update your local branch)\n"
-msgstr "  (use \"git pull\" para atualizar o seu ramo local)\n"
+#: merge-recursive.c:1666
+msgid "modify"
+msgstr "modificar"
 
-#: remote.c:2105
-#, c-format
-msgid ""
-"Your branch and '%s' have diverged,\n"
-"and have %d and %d different commit each, respectively.\n"
-msgid_plural ""
-"Your branch and '%s' have diverged,\n"
-"and have %d and %d different commits each, respectively.\n"
-msgstr[0] ""
-"O seu ramo e '%s' divergiram,\n"
-"tendo cada um %d e %d commit diferente, respetivamente.\n"
-msgstr[1] ""
-"O seu ramo e '%s' divergiram,\n"
-"tendo cada um %d e %d commits diferentes, respetivamente.\n"
+#: merge-recursive.c:1666
+msgid "modified"
+msgstr "modificado"
 
-#: remote.c:2115
-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"
+#: merge-recursive.c:1676
+msgid "content"
+msgstr "conteúdo"
 
-#: revision.c:2142
-msgid "your current branch appears to be broken"
-msgstr "o ramo atual parece estar danificado"
+#: merge-recursive.c:1683
+msgid "add/add"
+msgstr "adicionar/adicionar"
 
-#: revision.c:2145
+#: merge-recursive.c:1718
 #, 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"
+msgid "Skipped %s (merged same as existing)"
+msgstr "%s ignorado (integrado é igual ao existente)"
 
-#: revision.c:2339
-msgid "--first-parent is incompatible with --bisect"
-msgstr "--first-parent é incompatível com --bisect"
+#: merge-recursive.c:1732
+#, c-format
+msgid "Auto-merging %s"
+msgstr "A integrar automaticamente %s"
 
-#: run-command.c:92
-msgid "open /dev/null failed"
-msgstr "falha ao abrir /dev/null"
+#: merge-recursive.c:1736 git-submodule.sh:924
+msgid "submodule"
+msgstr "submódulo"
 
-#: run-command.c:94
+#: merge-recursive.c:1737
 #, c-format
-msgid "dup2(%d,%d) failed"
-msgstr "dup2(%d,%d) falhou"
-
-#: send-pack.c:295
-msgid "failed to sign the push certificate"
-msgstr "falha ao assinar o certificado de publicação"
+msgid "CONFLICT (%s): Merge conflict in %s"
+msgstr "CONFLITO (%s): conflito de integração em %s"
 
-#: send-pack.c:404
-msgid "the receiving end does not support --signed push"
-msgstr "o recetor não suporta publicação com --signed"
+#: merge-recursive.c:1831
+#, c-format
+msgid "Removing %s"
+msgstr "A remover %s"
 
-#: send-pack.c:406
-msgid ""
-"not sending a push certificate since the receiving end does not support --"
-"signed push"
-msgstr ""
-"certificado de publicação não enviado uma vez que o recetor não suporta "
-"publicação com --signed"
+#: merge-recursive.c:1857
+msgid "file/directory"
+msgstr "ficheiro/diretório"
 
-#: send-pack.c:418
-msgid "the receiving end does not support --atomic push"
-msgstr "o recetor não suporta publicação com --atomic"
+#: merge-recursive.c:1863
+msgid "directory/file"
+msgstr "diretório/ficheiro"
 
-#: sequencer.c:174
-msgid ""
-"after resolving the conflicts, mark the corrected paths\n"
-"with 'git add <paths>' or 'git rm <paths>'"
+#: merge-recursive.c:1868
+#, c-format
+msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr ""
-"depois de resolver os conflitos, marque os caminhos corrigidos\n"
-"com 'git add <caminhos>' ou 'git rm <caminhos>'"
+"CONFLITO (%s): Há um diretório designado %s em %s. A adicionar %s como %s"
 
-#: sequencer.c:177
-msgid ""
-"after resolving the conflicts, mark the corrected paths\n"
-"with 'git add <paths>' or 'git rm <paths>'\n"
-"and commit the result with 'git commit'"
-msgstr ""
-"depois de resolver os conflitos, marque os caminhos corrigidos\n"
-"com 'git add <caminhos>' ou 'git rm <caminhos>'\n"
-"e submeta o resultado com 'git commit'"
+#: merge-recursive.c:1877
+#, c-format
+msgid "Adding %s"
+msgstr "A adicionar %s"
 
-#: sequencer.c:190 sequencer.c:833 sequencer.c:912
+#: merge-recursive.c:1914
+msgid "Already up-to-date!"
+msgstr "Já está atualizado!"
+
+#: merge-recursive.c:1923
 #, c-format
-msgid "Could not write to %s"
-msgstr "Não foi possível escrever em %s"
+msgid "merging of trees %s and %s failed"
+msgstr "falha ao integrar as árvores %s e %s"
+
+#: merge-recursive.c:2006
+msgid "Merging:"
+msgstr "A integrar:"
 
-#: sequencer.c:193
+#: merge-recursive.c:2019
 #, c-format
-msgid "Error wrapping up %s"
-msgstr "Erro ao rematar %s."
-
-#: sequencer.c:208
-msgid "Your local changes would be overwritten by cherry-pick."
-msgstr "As suas alterações locais serão substituídas por cherry-pick."
-
-#: sequencer.c:210
-msgid "Your local changes would be overwritten by revert."
-msgstr "As suas alterações locais serão substituídas por revert."
+msgid "found %u common ancestor:"
+msgid_plural "found %u common ancestors:"
+msgstr[0] "%u antecessor comum encontrado:"
+msgstr[1] "%u antecessores comuns encontrados:"
 
-#: sequencer.c:213
-msgid "Commit your changes or stash them to proceed."
-msgstr "Submeta ou empilhe (stash) as suas alterações para continuar."
+#: merge-recursive.c:2058
+msgid "merge returned no commit"
+msgstr "a integração não retornou nenhum commit"
 
-#. TRANSLATORS: %s will be "revert" or "cherry-pick"
-#: sequencer.c:300
+#: merge-recursive.c:2121
 #, c-format
-msgid "%s: Unable to write new index file"
-msgstr "%s: Não foi possível escrever novo ficheiro de índice"
-
-#: sequencer.c:318
-msgid "Could not resolve HEAD commit\n"
-msgstr "Não foi possível resolver o commit HEAD\n"
+msgid "Could not parse object '%s'"
+msgstr "Não foi possível analisar o objeto '%s'"
 
-#: sequencer.c:338
-msgid "Unable to update cache tree\n"
-msgstr "Não foi possível atualizar a árvore de cache\n"
+#: merge-recursive.c:2135 builtin/merge.c:641 builtin/merge.c:788
+msgid "Unable to write index."
+msgstr "Não é possível escrever no índice."
 
-#: sequencer.c:390
+#: notes-merge.c:273
 #, c-format
-msgid "Could not parse commit %s\n"
-msgstr "Não foi possível analisar o commit %s\n"
+msgid ""
+"You have not concluded your previous notes merge (%s exists).\n"
+"Please, use 'git notes merge --commit' or 'git notes merge --abort' to "
+"commit/abort the previous merge before you start a new notes merge."
+msgstr ""
+"Não concluíu a integração de notas anterior (%s existe).\n"
+"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."
 
-#: sequencer.c:395
+#: notes-merge.c:280
 #, c-format
-msgid "Could not parse parent commit %s\n"
-msgstr "Não foi possível analisar o commit pai %s\n"
+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)."
 
-#: sequencer.c:460
-msgid "Your index file is unmerged."
-msgstr "Ficheiro de índice não integrado."
+#: notes-utils.c:41
+msgid "Cannot commit uninitialized/unreferenced notes tree"
+msgstr ""
+"Não é possível submeter árvore de notas não inicializada ou não referenciada"
 
-#: sequencer.c:479
+#: notes-utils.c:100
 #, 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 nenhuma opção -m."
+msgid "Bad notes.rewriteMode value: '%s'"
+msgstr "Valor de notes.rewriteMode incorreto: '%s'"
 
-#: sequencer.c:487
+#: notes-utils.c:110
 #, c-format
-msgid "Commit %s does not have parent %d"
-msgstr "O commit %s não tem o pai %d"
+msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
+msgstr "Reescrita de notas em %s (fora de refs/notes/) recusada"
 
-#: sequencer.c:491
+#. TRANSLATORS: The first %s is the name of the
+#. environment variable, the second %s is its value
+#: notes-utils.c:137
 #, 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 "Bad %s value: '%s'"
+msgstr "Valor incorreto de %s: '%s'"
 
-#. TRANSLATORS: The first %s will be "revert" or
-#. "cherry-pick", the second %s a SHA1
-#: sequencer.c:504
+#: object.c:242
 #, c-format
-msgid "%s: cannot parse parent commit %s"
-msgstr "%s: não foi possível analisar o commit pai %s"
+msgid "unable to parse object: %s"
+msgstr "não foi possível analisar o objeto: %s"
+
+#: parse-options.c:572
+msgid "..."
+msgstr "..."
 
-#: sequencer.c:508
+#: parse-options.c:590
 #, c-format
-msgid "Cannot get commit message for %s"
-msgstr "Não é possível obter a mensagem de commit de %s"
+msgid "usage: %s"
+msgstr "utilização: %s"
 
-#: sequencer.c:594
+#. TRANSLATORS: the colon here should align with the
+#. one in "usage: %s" translation
+#: parse-options.c:594
 #, c-format
-msgid "could not revert %s... %s"
-msgstr "não foi possível reverter %s... %s"
+msgid "   or: %s"
+msgstr "        ou: %s"
 
-#: sequencer.c:595
+#: parse-options.c:597
 #, c-format
-msgid "could not apply %s... %s"
-msgstr "não foi possível aplicar %s... %s"
+msgid "    %s"
+msgstr "         %s"
 
-#: sequencer.c:630
-msgid "empty commit set passed"
-msgstr "o conjunto de commits especificado está vazio"
+#: parse-options.c:631
+msgid "-NUM"
+msgstr "-NUM"
 
-#: sequencer.c:638
+#: parse-options-cb.c:108
 #, c-format
-msgid "git %s: failed to read the index"
-msgstr "git %s: falha ao ler o índice"
+msgid "malformed object name '%s'"
+msgstr "nome do objeto malformado '%s'"
 
-#: sequencer.c:642
+#: path.c:826
 #, c-format
-msgid "git %s: failed to refresh the index"
-msgstr "git %s: falha ao atualizar o índice"
+msgid "Could not make %s writable by group"
+msgstr "Não foi possível dar permissão de escrita ao grupo a %s"
 
-#: sequencer.c:702
-#, c-format
-msgid "Cannot %s during a %s"
-msgstr "Não foi possível efetuar %s durante %s"
+#: pathspec.c:133
+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"
 
-#: sequencer.c:724
-#, c-format
-msgid "Could not parse line %d."
-msgstr "Não foi possível analisar a linha %d."
+#: pathspec.c:143
+msgid ""
+"global 'literal' pathspec setting is incompatible with all other global "
+"pathspec settings"
+msgstr ""
+"a definição global de especificador de caminho 'literal' é incompatível com "
+"todas as outras definições globais de especificador de caminho (pathspec)"
 
-#: sequencer.c:729
-msgid "No commits parsed."
-msgstr "Nenhum commit analisado."
+#: pathspec.c:177
+msgid "invalid parameter for pathspec magic 'prefix'"
+msgstr "parâmetro inválido na mágica 'prefix' do especificador de caminho"
 
-#: sequencer.c:741
+#: pathspec.c:183
 #, c-format
-msgid "Could not open %s"
-msgstr "Não foi possível abrir %s"
+msgid "Invalid pathspec magic '%.*s' in '%s'"
+msgstr "Mágica do especificador de caminho '%.*s' inválida em '%s'"
 
-#: sequencer.c:745
+#: pathspec.c:187
 #, c-format
-msgid "Could not read %s."
-msgstr "Não foi possível ler %s."
+msgid "Missing ')' at the end of pathspec magic in '%s'"
+msgstr "Falta um ')' no final da mágica do especificador de caminho em '%s'"
 
-#: sequencer.c:752
+#: pathspec.c:205
 #, c-format
-msgid "Unusable instruction sheet: %s"
-msgstr "Folha de instruções inutilizável: %s"
+msgid "Unimplemented pathspec magic '%c' in '%s'"
+msgstr "Mágica de especificador de caminho '%c' em '%s' não implementada"
 
-#: sequencer.c:782
+#: pathspec.c:230
 #, c-format
-msgid "Invalid key: %s"
-msgstr "Chave inválida: %s"
+msgid "%s: 'literal' and 'glob' are incompatible"
+msgstr "%s: 'literal' e 'glob' são incompatíveis"
 
-#: sequencer.c:785 builtin/pull.c:50 builtin/pull.c:52
+#: pathspec.c:241
 #, c-format
-msgid "Invalid value for %s: %s"
-msgstr "Valor inválido de %s: %s"
+msgid "%s: '%s' is outside repository"
+msgstr "%s: '%s' está fora do repositório"
 
-#: sequencer.c:795
+#: pathspec.c:291
 #, c-format
-msgid "Malformed options sheet: %s"
-msgstr "Folha de opções malformada: %s"
-
-#: sequencer.c:814
-msgid "a cherry-pick or revert is already in progress"
-msgstr "cherry-pick ou revert em curso"
-
-#: sequencer.c:815
-msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
-msgstr "tente \"git cherry-pick (--continue | --quit |--abort)\""
+msgid "Pathspec '%s' is in submodule '%.*s'"
+msgstr "O caminho '%s' está dentro do submódulo '%.*s'"
 
-#: sequencer.c:819
+#: pathspec.c:353
 #, c-format
-msgid "Could not create sequencer directory %s"
-msgstr "Não foi possível criar o diretório do sequenciador %s"
+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"
 
-#: sequencer.c:835 sequencer.c:916
-#, c-format
-msgid "Error wrapping up %s."
-msgstr "Erro ao rematar %s."
+#: pathspec.c:408
+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"
 
-#: sequencer.c:854 sequencer.c:986
-msgid "no cherry-pick or revert in progress"
-msgstr "nenhum cherry-pick ou revert em curso"
+#: pathspec.c:440
+#, c-format
+msgid "pathspec '%s' is beyond a symbolic link"
+msgstr "o especificador de caminho '%s' é indicado por uma ligação simbólica"
 
-#: sequencer.c:856
-msgid "cannot resolve HEAD"
-msgstr "não é possível resolver HEAD"
+#: pathspec.c:449
+msgid ""
+"There is nothing to exclude from by :(exclude) patterns.\n"
+"Perhaps you forgot to add either ':/' or '.' ?"
+msgstr ""
+"Não há nada para excluir de acordo com o padrão :(excluir).\n"
+"Talvez se tenha esquecido de acrescentar ':/' ou '.' ?"
 
-#: sequencer.c:858
-msgid "cannot abort from a branch yet to be born"
-msgstr "não é possível abortar um ramo ainda não criado"
+#: pretty.c:971
+msgid "unable to parse --pretty format"
+msgstr "não foi possível analisar o formato de --pretty"
 
-#: sequencer.c:878 builtin/fetch.c:610 builtin/fetch.c:851
+#: read-cache.c:1315
 #, c-format
-msgid "cannot open %s"
-msgstr "não é possível abrir %s"
+msgid ""
+"index.version set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+"index.version definido, mas com valor inválido.\n"
+"A usar a versão %i"
 
-#: sequencer.c:880
+#: read-cache.c:1325
 #, c-format
-msgid "cannot read %s: %s"
-msgstr "não é possível ler %s: %s"
-
-#: sequencer.c:881
-msgid "unexpected end of file"
-msgstr "fim de ficheiro inesperado"
+msgid ""
+"GIT_INDEX_VERSION set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+"GIT_INDEX_VERSION definido, mas com valor inválido.\n"
+"A usar a versão %i"
 
-#: sequencer.c:887
+#: refs.c:576 builtin/merge.c:840
 #, c-format
-msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
-msgstr "o ficheiro HEAD de pre-cherry-pick '%s' está corrompido"
+msgid "Could not open '%s' for writing"
+msgstr "Não foi possível abrir '%s' para escrita"
 
-#: sequencer.c:909
+#: refs/files-backend.c:2481
 #, c-format
-msgid "Could not format %s."
-msgstr "Não foi possível formatar %s."
+msgid "could not delete reference %s: %s"
+msgstr "não foi possível eliminar a referência %s: %s"
 
-#: sequencer.c:1054
+#: refs/files-backend.c:2484
 #, c-format
-msgid "%s: can't cherry-pick a %s"
-msgstr "%s: não é possível efetuar cherry-pick de %s"
+msgid "could not delete references: %s"
+msgstr "não foi possível eliminar as referências: %s"
 
-#: sequencer.c:1057
+#: refs/files-backend.c:2493
 #, c-format
-msgid "%s: bad revision"
-msgstr "%s: revisão incorreta"
-
-#: sequencer.c:1091
-msgid "Can't revert as initial commit"
-msgstr "Não é possível reverter como commit inicial"
-
-#: sequencer.c:1092
-msgid "Can't cherry-pick into empty head"
-msgstr "Não é possível efetuar cherry-pick numa cabeça vazia"
+msgid "could not remove reference %s"
+msgstr "não foi possível eliminar a referência %s"
 
-#: setup.c:248
+#: ref-filter.c:55
 #, c-format
-msgid "failed to read %s"
-msgstr "falha ao ler %s"
+msgid "expected format: %%(color:<color>)"
+msgstr "formato esperado: %%(color:<cor>)"
 
-#: setup.c:468
+#: ref-filter.c:57
 #, 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:476
-msgid "unknown repository extensions found:"
-msgstr "extensões de repositório desconhecidas encontradas:"
-
-#: sha1_file.c:1080
-msgid "offset before end of packfile (broken .idx?)"
-msgstr "offset antes do fim do ficheiro de pacote (.idx danificado?)"
+msgid "unrecognized color: %%(color:%s)"
+msgstr "cor não reconhecida: %%(color:%s)"
 
-#: sha1_file.c:2458
+#: ref-filter.c:71
 #, 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 "unrecognized format: %%(%s)"
+msgstr "formato não reconhecido: %%(%s)"
 
-#: sha1_file.c:2462
+#: ref-filter.c:77
 #, 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?)"
-
-#: sha1_name.c:462
-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"
-"\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"
-"running \"git config advice.objectNameWarning false\""
-msgstr ""
-"Normalmente o Git nunca cria referências que terminem em 40 caracteres "
-"hexadecimais,\n"
-"pois uma referência destas seria ignorada se indicasse só 40 caracteres "
-"hexadecimais.\n"
-"Estas referências podem ser criadas por engano. Como no exemplo,\n"
-"\n"
-"  git checkout -b $br $(git rev-parse ...)\n"
-"\n"
-"onde \"$br\" está vazio e é criada uma referência de 40 caracteres "
-"hexadecimais.\n"
-"Analise estas referências e elimine-as se desejar. Desative esta\n"
-"mensagem executando \"git config advice.objectNameWarning false\""
-
-#: submodule.c:64 submodule.c:98
-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"
+msgid "%%(body) does not take arguments"
+msgstr "%%(body) não leva argumentos"
 
-#: submodule.c:68 submodule.c:102
+#: ref-filter.c:84
 #, c-format
-msgid "Could not find section in .gitmodules where path=%s"
-msgstr "Secção de .gitmodules cujo path=%s não encontrada"
+msgid "%%(subject) does not take arguments"
+msgstr "%%(subject) não leva argumentos"
 
-#: submodule.c:76
+#: ref-filter.c:101
 #, c-format
-msgid "Could not update .gitmodules entry %s"
-msgstr "Não foi possível atualizar o elemento %s de .gitmodules"
+msgid "positive value expected contents:lines=%s"
+msgstr "valor positivo esperado contents:lines=%s"
 
-#: submodule.c:109
+#: ref-filter.c:103
 #, c-format
-msgid "Could not remove .gitmodules entry for %s"
-msgstr "Não foi possível remover o elemento %s de .gitmodules"
-
-#: submodule.c:120
-msgid "staging updated .gitmodules failed"
-msgstr "falha ao preparar .gitmodules atualizado"
+msgid "unrecognized %%(contents) argument: %s"
+msgstr "argumento de %%(contents) não reconhecido: %s"
 
-#: submodule.c:177
-msgid "negative values not allowed for submodule.fetchJobs"
-msgstr "não é permitido valores negativos em submodule.fetchJobs"
+#: ref-filter.c:113
+#, c-format
+msgid "unrecognized %%(objectname) argument: %s"
+msgstr "argumento de %%(objectname) não reconhecido: %s"
 
-#: submodule-config.c:355
+#: ref-filter.c:135
 #, c-format
-msgid "invalid value for %s"
-msgstr "Valor inválido de %s"
+msgid "expected format: %%(align:<width>,<position>)"
+msgstr "formato esperado: %%(align:<largura>,<posição>)"
 
-#: trailer.c:237
+#: ref-filter.c:147
 #, c-format
-msgid "running trailer command '%s' failed"
-msgstr "falha ao executar o comando trailer '%s'"
+msgid "unrecognized position:%s"
+msgstr "posição não reconhecida:%s"
 
-#: trailer.c:492 trailer.c:496 trailer.c:500 trailer.c:554 trailer.c:558
-#: trailer.c:562
+#: ref-filter.c:151
 #, c-format
-msgid "unknown value '%s' for key '%s'"
-msgstr "valor desconhecido '%s' da chave '%s'"
+msgid "unrecognized width:%s"
+msgstr "largura não reconhecida:%s"
 
-#: trailer.c:544 trailer.c:549 builtin/remote.c:289
+#: ref-filter.c:157
 #, c-format
-msgid "more than one %s"
-msgstr "mais do que um %s"
+msgid "unrecognized %%(align) argument: %s"
+msgstr "argumento de %%(align) não reconhecido: %s"
 
-#: trailer.c:582
+#: ref-filter.c:161
 #, c-format
-msgid "empty trailer token in trailer '%.*s'"
-msgstr "token terminador vazio no terminador '%.*s'"
+msgid "positive width expected with the %%(align) atom"
+msgstr "largura positiva esperada com o átomo %%(algn)"
 
-#: trailer.c:702
+#: ref-filter.c:244
 #, c-format
-msgid "could not read input file '%s'"
-msgstr "não foi possível ler o ficheiro de entrada '%s'"
+msgid "malformed field name: %.*s"
+msgstr "nome de ficheiro malformado: %.*s"
 
-#: trailer.c:705
-msgid "could not read from stdin"
-msgstr "não foi possível ler da entrada padrão"
+#: ref-filter.c:270
+#, c-format
+msgid "unknown field name: %.*s"
+msgstr "nome do campo desconhecido: %.*s"
 
-#: trailer.c:857 builtin/am.c:42
+#: ref-filter.c:372
 #, c-format
-msgid "could not stat %s"
-msgstr "não foi possível obter stat de %s"
+msgid "format: %%(end) atom used without corresponding atom"
+msgstr "formato: átomo %%(end) utilizado sem átomo correspondente"
 
-#: trailer.c:859
+#: ref-filter.c:424
 #, c-format
-msgid "file %s is not a regular file"
-msgstr "o ficheiro %s não é um ficheiro regular"
+msgid "malformed format string %s"
+msgstr "cadeia malformada %s"
 
-#: trailer.c:861
+#: ref-filter.c:878
+msgid ":strip= requires a positive integer argument"
+msgstr ":strip= requer um inteiro positivo como argumento"
+
+#: ref-filter.c:883
 #, c-format
-msgid "file %s is not writable by user"
-msgstr "o ficheiro %s não pode ser escrito pelo utilizador"
+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"
 
-#: trailer.c:873
-msgid "could not open temporary file"
-msgstr "não foi possível abrir ficheiro temporário"
+#: ref-filter.c:1046
+#, c-format
+msgid "unknown %.*s format %s"
+msgstr "formato de %.*s desconhecido %s"
 
-#: trailer.c:912
+#: ref-filter.c:1066 ref-filter.c:1097
 #, 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"
+msgid "missing object %s for %s"
+msgstr "falta o objeto %s de %s"
 
-#: transport-helper.c:1041
+#: ref-filter.c:1069 ref-filter.c:1100
 #, c-format
-msgid "Could not read ref %s"
-msgstr "Não foi possível ler a referência %s"
+msgid "parse_object_buffer failed on %s for %s"
+msgstr "falha ao invocar parse_object_buffer sobre %s de %s"
 
-#: unpack-trees.c:64
+#: ref-filter.c:1311
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by checkout:\n"
-"%%sPlease commit your changes or stash them before you can switch branches."
-msgstr ""
-"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
-"extrair:\n"
-"%%sSubmeta as suas alterações ou empilhe-as (stash) antes de trocar de ramo."
+msgid "malformed object at '%s'"
+msgstr "objeto malformado em '%s'"
 
-#: unpack-trees.c:66
+#: ref-filter.c:1373
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by checkout:\n"
-"%%s"
-msgstr ""
-"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
-"extrair:\n"
-"%%s"
+msgid "ignoring ref with broken name %s"
+msgstr "a referência %s com nome danificado foi ignorada"
 
-#: unpack-trees.c:69
+#: ref-filter.c:1378
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by merge:\n"
-"%%sPlease commit your changes or stash them before you can merge."
-msgstr ""
-"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
-"integrar:\n"
-"%%sSubmeta as suas alterações ou empilhe-as (stash) antes de integrar."
+msgid "ignoring broken ref %s"
+msgstr "a referência %s danificada foi ignorada"
 
-#: unpack-trees.c:71
+#: ref-filter.c:1633
 #, 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"
+msgid "format: %%(end) atom missing"
+msgstr "formato: falta átomo %%(end)"
 
-#: unpack-trees.c:74
+#: ref-filter.c:1687
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by %s:\n"
-"%%sPlease commit your changes or stash them before you can %s."
-msgstr ""
-"As suas alterações locais nos seguintes ficheiros seriam substituídas por %s:"
-"\n"
-"%%sSubmeta as suas alterações ou empilhe-as (stash) antes de efetuar %s."
+msgid "malformed object name %s"
+msgstr "nome de objeto malformado %s"
 
-#: unpack-trees.c:76
+#: remote.c:746
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by %s:\n"
-"%%s"
-msgstr ""
-"As suas alterações locais nos seguintes ficheiros seriam substituídas por %s:"
-"\n"
-"%%s"
+msgid "Cannot fetch both %s and %s to %s"
+msgstr "Não é possível obter %s e %s ao mesmo tempo para %s"
 
-#: unpack-trees.c:81
+#: remote.c:750
 #, c-format
-msgid ""
-"Updating the following directories would lose untracked files in it:\n"
-"%s"
-msgstr ""
-"Perder-se-iam ficheiros não controlados ao atualizar os seguintes diretórios:"
-"\n"
-"%s"
+msgid "%s usually tracks %s, not %s"
+msgstr "%s geralmente segue %s, não %s"
 
-#: unpack-trees.c:85
+#: remote.c:754
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by checkout:\n"
-"%%sPlease move or remove them before you can switch branches."
-msgstr ""
-"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
-"removidos ao extrair:\n"
-"%%sMova ou remova-os antes de trocar de ramos."
+msgid "%s tracks both %s and %s"
+msgstr "%s segue %s e %s em simultâneo"
 
-#: unpack-trees.c:87
+#: remote.c:762
+msgid "Internal error"
+msgstr "Erro interno"
+
+#: remote.c:1677 remote.c:1720
+msgid "HEAD does not point to a branch"
+msgstr "HEAD não aponta para um ramo"
+
+#: remote.c:1686
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by checkout:\n"
-"%%s"
-msgstr ""
-"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
-"removidos ao extrair:\n"
-"%%s"
+msgid "no such branch: '%s'"
+msgstr "ramo inexistente: '%s'"
 
-#: unpack-trees.c:90
+#: remote.c:1689
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by merge:\n"
-"%%sPlease move or remove them before you can merge."
-msgstr ""
-"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
-"removidos ao integrar:\n"
-"%%sMova ou remova-os antes de integrar."
+msgid "no upstream configured for branch '%s'"
+msgstr "nenhum ramo a montante configurado para o ramo '%s'"
 
-#: unpack-trees.c:92
+#: remote.c:1695
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by merge:\n"
-"%%s"
+msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
-"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
-"removidos ao integrar:\n"
-"%%s"
+"o ramo a montante '%s' não está guardado como um ramo de monitorização remoto"
 
-#: unpack-trees.c:95
+#: remote.c:1710
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by %s:\n"
-"%%sPlease move or remove them before you can %s."
+msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr ""
-"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
-"removidos por %s:\n"
-"%%sMova ou remova-os antes de efetuar %s."
+"o destino de publicação '%s' no remoto '%s' não é seguido por nenhum ramo "
+"local"
 
-#: unpack-trees.c:97
+#: remote.c:1725
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by %s:\n"
-"%%s"
-msgstr ""
-"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
-"removidos por %s:\n"
-"%%s"
+msgid "branch '%s' has no remote for pushing"
+msgstr "o ramo '%s' não tem nenhum remoto para publicar"
 
-#: unpack-trees.c:102
+#: remote.c:1736
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by "
-"checkout:\n"
-"%%sPlease move or remove them before you can switch branches."
+msgid "push refspecs for '%s' do not include '%s'"
 msgstr ""
-"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
-"substituídos ao extrair:\n"
-"%%sMova ou remova-os antes de trocar de ramos."
+"'%2$s' não faz parte dos especificadores de referência de '%1$s' para "
+"publicação"
 
-#: unpack-trees.c:104
+#: remote.c:1749
+msgid "push has no destination (push.default is 'nothing')"
+msgstr "publicação sem destino (push.default é 'nothing')"
+
+#: remote.c:1771
+msgid "cannot resolve 'simple' push to a single destination"
+msgstr "não é possível resolver a publicação 'simple' num único destino"
+
+#: remote.c:2073
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by "
-"checkout:\n"
-"%%s"
-msgstr ""
-"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
-"substituídos ao extrair:\n"
-"%%s"
+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"
 
-#: unpack-trees.c:107
+#: remote.c:2077
+msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
+msgstr "  (use \"git branch --unset-upstream\" para corrigir)\n"
+
+#: remote.c:2080
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by merge:\n"
-"%%sPlease move or remove them before you can merge."
-msgstr ""
-"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
-"substituídos ao integrar:\n"
-"%%sMova ou remova-os antes de integrar."
+msgid "Your branch is up-to-date with '%s'.\n"
+msgstr "O seu ramo está atualizado com '%s'.\n"
 
-#: unpack-trees.c:109
+#: remote.c:2084
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by merge:\n"
-"%%s"
-msgstr ""
-"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
-"substituídos ao integrar:\n"
-"%%s"
+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:2090
+msgid "  (use \"git push\" to publish your local commits)\n"
+msgstr "  (use \"git push\" para publicar os commits locais)\n"
 
-#: unpack-trees.c:112
+#: remote.c:2093
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by %s:\n"
-"%%sPlease move or remove them before you can %s."
-msgstr ""
-"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
-"substituídos por %s:\n"
-"%%sMova ou remova-os antes de efetuar %s."
+msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
+msgid_plural ""
+"Your branch is behind '%s' by %d commits, and can be fast-forwarded.\n"
+msgstr[0] ""
+"O seu ramo está atrás de '%s' por %d commit, podendo ser atualizado com "
+"avanço rápido.\n"
+msgstr[1] ""
+"O seu ramo está atrás de '%s' por %d commits, podendo ser atualizado com "
+"avanço rápido.\n"
 
-#: unpack-trees.c:114
+#: remote.c:2101
+msgid "  (use \"git pull\" to update your local branch)\n"
+msgstr "  (use \"git pull\" para atualizar o seu ramo local)\n"
+
+#: remote.c:2104
 #, c-format
 msgid ""
-"The following untracked working tree files would be overwritten by %s:\n"
-"%%s"
-msgstr ""
-"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
-"substituídos por %s:\n"
-"%%s"
+"Your branch and '%s' have diverged,\n"
+"and have %d and %d different commit each, respectively.\n"
+msgid_plural ""
+"Your branch and '%s' have diverged,\n"
+"and have %d and %d different commits each, respectively.\n"
+msgstr[0] ""
+"O seu ramo e '%s' divergiram,\n"
+"tendo cada um %d e %d commit diferente, respetivamente.\n"
+msgstr[1] ""
+"O seu ramo e '%s' divergiram,\n"
+"tendo cada um %d e %d commits diferentes, respetivamente.\n"
 
-#: unpack-trees.c:121
+#: remote.c:2114
+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
+msgid "your current branch appears to be broken"
+msgstr "o ramo atual parece estar danificado"
+
+#: revision.c:2161
 #, c-format
-msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
-msgstr "A entrada '%s' sobrepõe-se com '%s'. Não é possível vincular."
+msgid "your current branch '%s' does not have any commits yet"
+msgstr "o ramo atual '%s' ainda não contém nenhum commit"
 
-#: unpack-trees.c:124
+#: revision.c:2355
+msgid "--first-parent is incompatible with --bisect"
+msgstr "--first-parent é incompatível com --bisect"
+
+#: run-command.c:106
+msgid "open /dev/null failed"
+msgstr "falha ao abrir /dev/null"
+
+#: run-command.c:108
 #, c-format
+msgid "dup2(%d,%d) failed"
+msgstr "dup2(%d,%d) falhou"
+
+#: send-pack.c:297
+msgid "failed to sign the push certificate"
+msgstr "falha ao assinar o certificado de publicação"
+
+#: send-pack.c:410
+msgid "the receiving end does not support --signed push"
+msgstr "o recetor não suporta publicação com --signed"
+
+#: send-pack.c:412
 msgid ""
-"Cannot update sparse checkout: the following entries are not up-to-date:\n"
-"%s"
+"not sending a push certificate since the receiving end does not support --"
+"signed push"
 msgstr ""
-"Não é possível extrair esparsamente: as seguintes entradas não estão "
-"atualizadas:\n"
-"%s"
+"certificado de publicação não enviado uma vez que o recetor não suporta "
+"publicação com --signed"
 
-#: unpack-trees.c:126
-#, c-format
+#: send-pack.c:424
+msgid "the receiving end does not support --atomic push"
+msgstr "o recetor não suporta publicação com --atomic"
+
+#: send-pack.c:429
+msgid "the receiving end does not support push options"
+msgstr "o recetor não suporta opções de publicação"
+
+#: sequencer.c:171
+msgid "revert"
+msgstr "reverter"
+
+#: sequencer.c:171
+msgid "cherry-pick"
+msgstr "cherry-pick"
+
+#: sequencer.c:228
 msgid ""
-"The following Working tree files would be overwritten by sparse checkout "
-"update:\n"
-"%s"
+"after resolving the conflicts, mark the corrected paths\n"
+"with 'git add <paths>' or 'git rm <paths>'"
 msgstr ""
-"Os seguintes ficheiros na árvore de trabalho seriam substituídos ao "
-"atualizar a extração esparsa:\n"
-"%s"
+"depois de resolver os conflitos, marque os caminhos corrigidos\n"
+"com 'git add <caminhos>' ou 'git rm <caminhos>'"
 
-#: unpack-trees.c:128
-#, c-format
+#: sequencer.c:231
 msgid ""
-"The following Working tree files would be removed by sparse checkout "
-"update:\n"
-"%s"
+"after resolving the conflicts, mark the corrected paths\n"
+"with 'git add <paths>' or 'git rm <paths>'\n"
+"and commit the result with 'git commit'"
 msgstr ""
-"Os seguintes ficheiros na árvore de trabalho seriam removidos ao atualizar a "
-"extração esparsa:\n"
-"%s"
+"depois de resolver os conflitos, marque os caminhos corrigidos\n"
+"com 'git add <caminhos>' ou 'git rm <caminhos>'\n"
+"e submeta o resultado com 'git commit'"
 
-#: unpack-trees.c:205
+#: sequencer.c:244 sequencer.c:1209
 #, c-format
-msgid "Aborting\n"
-msgstr "A abortar\n"
-
-#: unpack-trees.c:237
-msgid "Checking out files"
-msgstr "A extrair ficheiros"
-
-#: urlmatch.c:120
-msgid "invalid URL scheme name or missing '://' suffix"
-msgstr "nome de esquema de URL inválido ou falta do sufixo '://'"
+msgid "could not lock '%s'"
+msgstr "não foi possível bloquear '%s'"
 
-#: urlmatch.c:144 urlmatch.c:297 urlmatch.c:356
+#: sequencer.c:247 sequencer.c:1125 sequencer.c:1214
 #, c-format
-msgid "invalid %XX escape sequence"
-msgstr "sequencia de escape %XX inválida"
-
-#: urlmatch.c:172
-msgid "missing host and scheme is not 'file:'"
-msgstr "sistema anfitrião não indicado e o esquema não é do tipo 'file:'"
-
-#: urlmatch.c:189
-msgid "a 'file:' URL may not have a port number"
-msgstr "um URL do tipo 'file:' não pode ter um número de porta"
-
-#: urlmatch.c:199
-msgid "invalid characters in host name"
-msgstr "caracteres inválidos no nome do anfitrião"
+msgid "could not write to '%s'"
+msgstr "não foi possível escrever em '%s'"
 
-#: urlmatch.c:244 urlmatch.c:255
-msgid "invalid port number"
-msgstr "número de porta inválido"
+#: sequencer.c:251
+#, c-format
+msgid "could not write eol to '%s'"
+msgstr "não foi possível escrever fim de linha em '%s'"
 
-#: urlmatch.c:322
-msgid "invalid '..' path segment"
-msgstr "segmento de caminho '..' inválido"
+#: sequencer.c:255 sequencer.c:1130 sequencer.c:1216
+#, c-format
+msgid "failed to finalize '%s'."
+msgstr "falha ao finalizar '%s'."
 
-#: wrapper.c:222 wrapper.c:381
+#: sequencer.c:279 builtin/am.c:259 builtin/commit.c:749 builtin/merge.c:1032
 #, c-format
-msgid "could not open '%s' for reading and writing"
-msgstr "não foi possível abrir '%s' para leitura e escrita"
+msgid "could not read '%s'"
+msgstr "não foi possível ler '%s'"
 
-#: wrapper.c:224 wrapper.c:383 builtin/am.c:779
+#: sequencer.c:305
 #, c-format
-msgid "could not open '%s' for writing"
-msgstr "não foi possível abrir '%s' para escrita"
+msgid "your local changes would be overwritten by %s."
+msgstr "as suas alterações locais serão substituídas ao %s."
 
-#: wrapper.c:226 wrapper.c:385 builtin/am.c:323 builtin/am.c:772
-#: builtin/am.c:860 builtin/commit.c:1711 builtin/merge.c:1086
-#: builtin/pull.c:407
+#: sequencer.c:309
+msgid "commit your changes or stash them to proceed."
+msgstr "submeta ou esconda as suas alterações para continuar."
+
+#: sequencer.c:324
 #, c-format
-msgid "could not open '%s' for reading"
-msgstr "não foi possível abrir '%s' para leitura"
+msgid "%s: fast-forward"
+msgstr "%s: avanço rápido"
 
-#: wrapper.c:594 wrapper.c:615
+#. TRANSLATORS: %s will be "revert" or "cherry-pick"
+#: sequencer.c:399
 #, c-format
-msgid "unable to access '%s'"
-msgstr "não é possível aceder a '%s'"
+msgid "%s: Unable to write new index file"
+msgstr "%s: Não foi possível escrever novo ficheiro de índice"
 
-#: wrapper.c:623
-msgid "unable to get current working directory"
-msgstr "não é possível de obter o diretório de trabalho atual"
+#: sequencer.c:418
+msgid "could not resolve HEAD commit\n"
+msgstr "não foi possível resolver o commit HEAD\n"
 
-#: wrapper.c:650
+#: sequencer.c:438
+msgid "unable to update cache tree\n"
+msgstr "não foi possível atualizar a árvore de cache\n"
+
+#: sequencer.c:483
 #, c-format
-msgid "could not open %s for writing"
-msgstr "não foi possível abrir %s para escrita"
+msgid ""
+"you have staged changes in your working tree\n"
+"If these changes are meant to be squashed into the previous commit, run:\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"If they are meant to go into a new commit, run:\n"
+"\n"
+"  git commit %s\n"
+"\n"
+"In both cases, once you're done, continue with:\n"
+"\n"
+"  git rebase --continue\n"
+msgstr ""
+"tem alterações preparadas na árvore de trabalho\n"
+"Se tenciona esmagar estas alterações no commit anterior, execute:\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"Se tenciona pô-las num novo commit, execute:\n"
+"\n"
+"  git commit %s\n"
+"\n"
+"Em ambos os casos, quando estiver pronto, continue com:\n"
+"\n"
+"  git rebase --continue\n"
 
-#: wrapper.c:661 builtin/am.c:410
+#: sequencer.c:567
 #, c-format
-msgid "could not write to %s"
-msgstr "não foi possível escrever para %s"
+msgid "could not parse commit %s\n"
+msgstr "não foi possível analisar o commit %s\n"
 
-#: wrapper.c:667
+#: sequencer.c:572
 #, c-format
-msgid "could not close %s"
-msgstr "não foi possível fechar %s"
+msgid "could not parse parent commit %s\n"
+msgstr "não foi possível analisar o commit pai %s\n"
 
-#: wt-status.c:150
-msgid "Unmerged paths:"
-msgstr "Caminhos não integrados:"
+#: sequencer.c:656
+msgid "your index file is unmerged."
+msgstr "ficheiro de índice não integrado."
 
-#: wt-status.c:177 wt-status.c:204
+#: sequencer.c:675
 #, c-format
-msgid "  (use \"git reset %s <file>...\" to unstage)"
-msgstr "  (use \"git reset %s <ficheiro>...\" para despreparar)"
-
-#: wt-status.c:179 wt-status.c:206
-msgid "  (use \"git rm --cached <file>...\" to unstage)"
-msgstr "  (use \"git rm --cached <ficheiro>...\" para despreparar)"
+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."
 
-#: wt-status.c:183
-msgid "  (use \"git add <file>...\" to mark resolution)"
-msgstr "  (use \"git add <ficheiro>...\" para marcar como resolvido)"
+#: sequencer.c:683
+#, c-format
+msgid "commit %s does not have parent %d"
+msgstr "o commit %s não tem o pai %d"
 
-#: wt-status.c:185 wt-status.c:189
-msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
+#: sequencer.c:687
+#, c-format
+msgid "mainline was specified but commit %s is not a merge."
 msgstr ""
-"  (use \"git add/rm <ficheiro>...\" conforme apropriado para marcar como "
-"resolvido)"
+"a linha principal foi especificada mas o commit %s não é uma integração."
 
-#: wt-status.c:187
-msgid "  (use \"git rm <file>...\" to mark resolution)"
-msgstr "  (use \"git rm <ficheiro>...\" para marcar como resolvido)"
+#. TRANSLATORS: The first %s will be a "todo" command like
+#. "revert" or "pick", the second %s a SHA1.
+#: sequencer.c:700
+#, c-format
+msgid "%s: cannot parse parent commit %s"
+msgstr "%s: não foi possível analisar o commit pai %s"
 
-#: wt-status.c:198 wt-status.c:881
-msgid "Changes to be committed:"
-msgstr "Alterações para serem submetidas:"
+#: sequencer.c:705
+#, c-format
+msgid "cannot get commit message for %s"
+msgstr "não é possível obter a mensagem de commit de %s"
 
-#: wt-status.c:216 wt-status.c:890
-msgid "Changes not staged for commit:"
-msgstr "Alterações não preparadas para submeter:"
+#: sequencer.c:797
+#, c-format
+msgid "could not revert %s... %s"
+msgstr "não foi possível reverter %s... %s"
 
-#: wt-status.c:220
-msgid "  (use \"git add <file>...\" to update what will be committed)"
-msgstr "  (use \"git add <ficheiro>...\" para atualizar o que será submetido)"
+#: sequencer.c:798
+#, c-format
+msgid "could not apply %s... %s"
+msgstr "não foi possível aplicar %s... %s"
 
-#: wt-status.c:222
-msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
-msgstr ""
-"  (use \"git add/rm <ficheiro>...\" para atualizar o que será submetido)"
+#: sequencer.c:833
+msgid "empty commit set passed"
+msgstr "o conjunto de commits especificado está vazio"
 
-#: wt-status.c:223
-msgid ""
-"  (use \"git checkout -- <file>...\" to discard changes in working directory)"
-msgstr ""
-"  (use \"git checkout -- <ficheiro>...\" para descartar alterações no "
-"diretório de trabalho)"
+#: sequencer.c:843
+#, c-format
+msgid "git %s: failed to read the index"
+msgstr "git %s: falha ao ler o índice"
 
-#: wt-status.c:225
-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)"
+#: sequencer.c:850
+#, c-format
+msgid "git %s: failed to refresh the index"
+msgstr "git %s: falha ao atualizar o índice"
 
-#: wt-status.c:237
+#: sequencer.c:944
 #, 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)"
+msgid "invalid line %d: %.*s"
+msgstr "linha %d inválida: %.*s"
 
-#: wt-status.c:252
-msgid "both deleted:"
-msgstr "eliminado por ambos:"
+#: sequencer.c:950
+msgid "no commits parsed."
+msgstr "nenhum commit analisado."
 
-#: wt-status.c:254
-msgid "added by us:"
-msgstr "adicionado por nós:"
+#: sequencer.c:966
+#, c-format
+msgid "could not read '%s'."
+msgstr "não foi possível ler '%s'."
 
-#: wt-status.c:256
-msgid "deleted by them:"
-msgstr "eliminado por eles:"
+#: sequencer.c:972
+#, c-format
+msgid "unusable instruction sheet: '%s'"
+msgstr "folha de instruções inutilizável: '%s'"
 
-#: wt-status.c:258
-msgid "added by them:"
-msgstr "adicionado por eles:"
+#: sequencer.c:983
+msgid "cannot cherry-pick during a revert."
+msgstr "não é possível efetuar cherry-pick durante uma reversão."
 
-#: wt-status.c:260
-msgid "deleted by us:"
-msgstr "eliminado por nós:"
+#: sequencer.c:985
+msgid "cannot revert during a cherry-pick."
+msgstr "não é possível reverter durante um cherry-pick."
 
-#: wt-status.c:262
-msgid "both added:"
-msgstr "adicionado por ambos:"
+#: sequencer.c:1028
+#, c-format
+msgid "invalid key: %s"
+msgstr "chave inválida: %s"
 
-#: wt-status.c:264
-msgid "both modified:"
-msgstr "modificado por ambos:"
+#: sequencer.c:1031
+#, c-format
+msgid "invalid value for %s: %s"
+msgstr "valor inválido de %s: %s"
 
-#: wt-status.c:266
+#: sequencer.c:1063
 #, c-format
-msgid "bug: unhandled unmerged status %x"
-msgstr ""
+msgid "malformed options sheet: '%s'"
+msgstr "folha de opções malformada: '%s'"
 
-#: wt-status.c:274
-msgid "new file:"
-msgstr "novo ficheiro:"
+#: sequencer.c:1101
+msgid "a cherry-pick or revert is already in progress"
+msgstr "cherry-pick ou revert em curso"
 
-#: wt-status.c:276
-msgid "copied:"
-msgstr "copiado:"
+#: sequencer.c:1102
+msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
+msgstr "tente \"git cherry-pick (--continue | --quit |--abort)\""
 
-#: wt-status.c:278
-msgid "deleted:"
-msgstr "eliminado:"
+#: sequencer.c:1106
+#, c-format
+msgid "could not create sequencer directory '%s'"
+msgstr "não foi possível criar o diretório do sequenciador '%s'"
 
-#: wt-status.c:280
-msgid "modified:"
-msgstr "modificado:"
+#: sequencer.c:1120
+msgid "could not lock HEAD"
+msgstr "não foi possível bloquear HEAD"
 
-#: wt-status.c:282
-msgid "renamed:"
-msgstr "nome mudado:"
+#: sequencer.c:1151 sequencer.c:1289
+msgid "no cherry-pick or revert in progress"
+msgstr "nenhum cherry-pick ou revert em curso"
 
-#: wt-status.c:284
-msgid "typechange:"
-msgstr "tipo alterado:"
+#: sequencer.c:1153
+msgid "cannot resolve HEAD"
+msgstr "não é possível resolver HEAD"
 
-#: wt-status.c:286
-msgid "unknown:"
-msgstr "desconhecido:"
+#: sequencer.c:1155 sequencer.c:1189
+msgid "cannot abort from a branch yet to be born"
+msgstr "não é possível abortar um ramo ainda não criado"
 
-#: wt-status.c:288
-msgid "unmerged:"
-msgstr "não integrado:"
+#: sequencer.c:1175 builtin/grep.c:578
+#, c-format
+msgid "cannot open '%s'"
+msgstr "não é possível abrir '%s'"
 
-#: wt-status.c:370
-msgid "new commits, "
-msgstr "novos commits, "
+#: sequencer.c:1177
+#, c-format
+msgid "cannot read '%s': %s"
+msgstr "não é possível ler '%s': %s"
 
-#: wt-status.c:372
-msgid "modified content, "
-msgstr "conteúdo modificado, "
+#: sequencer.c:1178
+msgid "unexpected end of file"
+msgstr "fim de ficheiro inesperado"
 
-#: wt-status.c:374
-msgid "untracked content, "
-msgstr "conteúdo não controlado, "
+#: sequencer.c:1184
+#, c-format
+msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
+msgstr "o ficheiro HEAD de pre-cherry-pick '%s' está corrompido"
 
-#: wt-status.c:391
+#: sequencer.c:1354
 #, c-format
-msgid "bug: unhandled diff status %c"
-msgstr ""
+msgid "%s: can't cherry-pick a %s"
+msgstr "%s: não é possível efetuar cherry-pick de %s"
 
-#: wt-status.c:755
-msgid "Submodules changed but not updated:"
-msgstr "Submódulos alterados mas não atualizados:"
+#: sequencer.c:1358
+#, c-format
+msgid "%s: bad revision"
+msgstr "%s: revisão incorreta"
 
-#: wt-status.c:757
-msgid "Submodule changes to be committed:"
-msgstr "Alterações em submódulos para serem submetidas:"
+#: sequencer.c:1391
+msgid "can't revert as initial commit"
+msgstr "não é possível reverter como commit inicial"
 
-#: wt-status.c:838
+#: setup.c:160
+#, c-format
 msgid ""
-"Do not touch the line above.\n"
-"Everything below will be removed."
+"%s: no such path in the working tree.\n"
+"Use 'git <command> -- <path>...' to specify paths that do not exist locally."
 msgstr ""
-"Não altere a linha acima.\n"
-"Tudo o que estiver abaixo será removido."
-
-#: wt-status.c:949
-msgid "You have unmerged paths."
-msgstr "Há caminhos não integrados."
+"%s: não há tal caminho na árvore de trabalho.\n"
+"Use 'git <comando> -- <caminho>...' para especificar caminhos que não "
+"existem localmente."
 
-#: wt-status.c:952
-msgid "  (fix conflicts and run \"git commit\")"
-msgstr "  (corrija os conflitos e execute \"git commit\")"
+#: setup.c:173
+#, c-format
+msgid ""
+"ambiguous argument '%s': unknown revision or path not in the working tree.\n"
+"Use '--' to separate paths from revisions, like this:\n"
+"'git <command> [<revision>...] -- [<file>...]'"
+msgstr ""
+"argumento ambíguo '%s': revisão ou caminho desconhecidos não encontrado na "
+"árvore de trabalho.\n"
+"Use '--' para separar caminhos de revisões, assim:\n"
+"'git <comando> [<revisão>...] -- [<ficheiro>...]'"
 
-#: wt-status.c:956
-msgid "All conflicts fixed but you are still merging."
-msgstr "Todos os conflitos foram corrigidos mas ainda está a integrar."
+#: setup.c:223
+#, c-format
+msgid ""
+"ambiguous argument '%s': both revision and filename\n"
+"Use '--' to separate paths from revisions, like this:\n"
+"'git <command> [<revision>...] -- [<file>...]'"
+msgstr ""
+"argumento ambíguo '%s': revisão e nome de ficheiro\n"
+"Use '--' para separar caminhos de revisões, assim:\n"
+"'git <comando> [<revisão>...] -- [<ficheiro>...]'"
 
-#: wt-status.c:959
-msgid "  (use \"git commit\" to conclude merge)"
-msgstr "  (use \"git commit\" para concluir a integração)"
+#: setup.c:468
+#, c-format
+msgid "Expected git repo version <= %d, found %d"
+msgstr "Esperava-se versão do repositório git <= %d, obteve-se %d"
 
-#: wt-status.c:969
-msgid "You are in the middle of an am session."
-msgstr "Sessão am em curso."
+#: setup.c:476
+msgid "unknown repository extensions found:"
+msgstr "extensões de repositório desconhecidas encontradas:"
 
-#: wt-status.c:972
-msgid "The current patch is empty."
-msgstr "O patch atual está vazio."
+#: setup.c:762
+#, 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"
 
-#: wt-status.c:976
-msgid "  (fix conflicts and then run \"git am --continue\")"
-msgstr "  (corrija os conflitos e execute \"git am --continue\")"
+#: setup.c:764 setup.c:915 builtin/index-pack.c:1641
+msgid "Cannot come back to cwd"
+msgstr "Não é possível voltar ao diretório de trabalho atual"
 
-#: wt-status.c:978
-msgid "  (use \"git am --skip\" to skip this patch)"
-msgstr "  (use \"git am --skip\" para ignorar este patch)"
+#: setup.c:845
+msgid "Unable to read current working directory"
+msgstr "Não é possível ler o diretório de trabalho atual"
 
-#: wt-status.c:980
-msgid "  (use \"git am --abort\" to restore the original branch)"
-msgstr "  (use \"git am --abort\" para restaurar o ramo original)"
+#: setup.c:920
+#, c-format
+msgid ""
+"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)."
 
-#: wt-status.c:1105
-msgid "No commands done."
-msgstr "Nenhum comando concluído."
+#: setup.c:927
+#, c-format
+msgid "Cannot change to '%s/..'"
+msgstr "Não é possível mudar para '%s/..'"
 
-#: wt-status.c:1108
+#: setup.c:989
 #, 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):"
+msgid ""
+"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."
 
-#: wt-status.c:1119
+#: sha1_file.c:473
 #, c-format
-msgid "  (see more in file %s)"
-msgstr "  (veja mais no ficheiro %s)"
+msgid "path '%s' does not exist"
+msgstr "o caminho '%s' não existe"
 
-#: wt-status.c:1124
-msgid "No commands remaining."
-msgstr "Nenhum comando por concluir."
+#: sha1_file.c:499
+#, 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."
 
-#: wt-status.c:1127
+#: sha1_file.c:505
 #, 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):"
+msgid "reference repository '%s' is not a local repository."
+msgstr "o repositório de referência '%s' não é um repositório local."
 
-#: wt-status.c:1135
-msgid "  (use \"git rebase --edit-todo\" to view and edit)"
-msgstr "  (use \"git rebase --edit-todo\" para visualizar e editar)"
+#: sha1_file.c:511
+#, c-format
+msgid "reference repository '%s' is shallow"
+msgstr "o repositório de referência '%s' é raso"
 
-#: wt-status.c:1148
+#: sha1_file.c:519
 #, c-format
-msgid "You are currently rebasing branch '%s' on '%s'."
-msgstr "Está a realizar rebase do ramo '%s' sobre '%s'."
+msgid "reference repository '%s' is grafted"
+msgstr "o repositório de referência '%s' está enxertado"
 
-#: wt-status.c:1153
-msgid "You are currently rebasing."
-msgstr "Está a rebasear neste momento."
+#: sha1_file.c:1159
+msgid "offset before end of packfile (broken .idx?)"
+msgstr "offset antes do fim do ficheiro de pacote (.idx danificado?)"
 
-#: wt-status.c:1167
-msgid "  (fix conflicts and then run \"git rebase --continue\")"
-msgstr "  (corrija os conflitos e execute \"git rebase --continue\")"
+#: sha1_file.c:2592
+#, 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?)"
 
-#: wt-status.c:1169
-msgid "  (use \"git rebase --skip\" to skip this patch)"
-msgstr "  (use \"git rebase --skip\" para ignorar este patch)"
+#: sha1_file.c:2596
+#, 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?)"
 
-#: wt-status.c:1171
-msgid "  (use \"git rebase --abort\" to check out the original branch)"
-msgstr "  (use \"git rebase --abort\" para restaurar o ramo original)"
+#: sha1_name.c:407
+#, c-format
+msgid "short SHA1 %s is ambiguous"
+msgstr "SHA1 curto %s é ambíguo"
 
-#: wt-status.c:1177
-msgid "  (all conflicts fixed: run \"git rebase --continue\")"
-msgstr ""
-"  (todos os conflitos foram corrigidos: execute \"git rebase --continue\")"
+#: sha1_name.c:418
+msgid "The candidates are:"
+msgstr "Os candidatos são:"
 
-#: wt-status.c:1181
-#, c-format
+#: sha1_name.c:578
 msgid ""
-"You are currently splitting a commit while rebasing branch '%s' on '%s'."
+"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"
+"\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"
+"running \"git config advice.objectNameWarning false\""
 msgstr ""
-"Está a dividir um commit ao mesmo tempo que se efetua rebase do ramo '%s' "
-"sobre '%s'."
-
-#: wt-status.c:1186
-msgid "You are currently splitting a commit during a rebase."
-msgstr "Está a dividir um commit durante um rebase."
+"Normalmente o Git nunca cria referências que terminem em 40 caracteres "
+"hexadecimais,\n"
+"pois uma referência destas seria ignorada se indicasse só 40 caracteres "
+"hexadecimais.\n"
+"Estas referências podem ser criadas por engano. Como no exemplo,\n"
+"\n"
+"  git checkout -b $br $(git rev-parse ...)\n"
+"\n"
+"onde \"$br\" está vazio e é criada uma referência de 40 caracteres "
+"hexadecimais.\n"
+"Analise estas referências e elimine-as se desejar. Desative esta\n"
+"mensagem executando \"git config advice.objectNameWarning false\""
 
-#: wt-status.c:1189
-msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
+#: submodule.c:64 submodule.c:98
+msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
-"  (Assim que o diretório de trabalho estiver limpo, execute \"git rebase --"
-"continue\")"
+"Não é possível alterar .gitmodules não integrado, resolva primeiro os "
+"conflitos de integração"
 
-#: wt-status.c:1193
+#: submodule.c:68 submodule.c:102
 #, 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'."
+msgid "Could not find section in .gitmodules where path=%s"
+msgstr "Secção de .gitmodules cujo path=%s não encontrada"
 
-#: wt-status.c:1198
-msgid "You are currently editing a commit during a rebase."
-msgstr "Está a editar um commit durante um rebase."
+#: submodule.c:76
+#, c-format
+msgid "Could not update .gitmodules entry %s"
+msgstr "Não foi possível atualizar o elemento %s de .gitmodules"
 
-#: wt-status.c:1201
-msgid "  (use \"git commit --amend\" to amend the current commit)"
-msgstr "  (use \"git commit --amend\" para emendar o commit atual)"
+#: submodule.c:109
+#, c-format
+msgid "Could not remove .gitmodules entry for %s"
+msgstr "Não foi possível remover o elemento %s de .gitmodules"
 
-#: wt-status.c:1203
-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)"
+#: submodule.c:120
+msgid "staging updated .gitmodules failed"
+msgstr "falha ao preparar .gitmodules atualizado"
 
-#: wt-status.c:1213
+#: submodule.c:158
+msgid "negative values not allowed for submodule.fetchJobs"
+msgstr "não é permitido valores negativos em submodule.fetchJobs"
+
+#: submodule-config.c:358
 #, c-format
-msgid "You are currently cherry-picking commit %s."
-msgstr "Está a realizar cherry-pick do commit %s."
+msgid "invalid value for %s"
+msgstr "valor inválido de %s"
 
-#: wt-status.c:1218
-msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
-msgstr "  (corrija os conflitos e execute \"git cherry-pick --continue\")"
+#: trailer.c:238
+#, c-format
+msgid "running trailer command '%s' failed"
+msgstr "falha ao executar o comando trailer '%s'"
 
-#: wt-status.c:1221
-msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
-msgstr ""
-"  (todos os conflitos foram corrigidos: execute \"git cherry-pick --continue"
-"\")"
+#: trailer.c:471 trailer.c:475 trailer.c:479 trailer.c:533 trailer.c:537
+#: trailer.c:541
+#, c-format
+msgid "unknown value '%s' for key '%s'"
+msgstr "valor desconhecido '%s' da chave '%s'"
 
-#: wt-status.c:1223
-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)"
+#: trailer.c:523 trailer.c:528 builtin/remote.c:289
+#, c-format
+msgid "more than one %s"
+msgstr "mais do que um %s"
 
-#: wt-status.c:1232
+#: trailer.c:672
 #, c-format
-msgid "You are currently reverting commit %s."
-msgstr "Está a reverter o commit %s neste comento."
+msgid "empty trailer token in trailer '%.*s'"
+msgstr "token terminador vazio no terminador '%.*s'"
 
-#: wt-status.c:1237
-msgid "  (fix conflicts and run \"git revert --continue\")"
-msgstr "  (corrija dos conflitos e execute \"git revert --continue\")"
+#: trailer.c:695
+#, c-format
+msgid "could not read input file '%s'"
+msgstr "não foi possível ler o ficheiro de entrada '%s'"
 
-#: wt-status.c:1240
-msgid "  (all conflicts fixed: run \"git revert --continue\")"
-msgstr ""
-"  (todos os conflitos foram corrigidos: execute \"git revert --continue\")"
+#: trailer.c:698
+msgid "could not read from stdin"
+msgstr "não foi possível ler da entrada padrão"
 
-#: wt-status.c:1242
-msgid "  (use \"git revert --abort\" to cancel the revert operation)"
-msgstr "  (use \"git rever --abort\" para cancelar a operação de reversão)"
+#: trailer.c:929 builtin/am.c:44
+#, c-format
+msgid "could not stat %s"
+msgstr "não foi possível obter stat de %s"
 
-#: wt-status.c:1253
+#: trailer.c:931
 #, c-format
-msgid "You are currently bisecting, started from branch '%s'."
-msgstr "Está a bissetar, iniciado a partir do ramo '%s'."
+msgid "file %s is not a regular file"
+msgstr "o ficheiro %s não é um ficheiro regular"
 
-#: wt-status.c:1257
-msgid "You are currently bisecting."
-msgstr "Está a bissetar neste momento."
+#: trailer.c:933
+#, c-format
+msgid "file %s is not writable by user"
+msgstr "o ficheiro %s não pode ser escrito pelo utilizador"
+
+#: trailer.c:945
+msgid "could not open temporary file"
+msgstr "não foi possível abrir ficheiro temporário"
 
-#: wt-status.c:1260
-msgid "  (use \"git bisect reset\" to get back to the original branch)"
-msgstr "  (use \"git bisect reset\" para voltar ao ramo original)"
+#: trailer.c:983
+#, 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"
 
-#: wt-status.c:1460
-msgid "On branch "
-msgstr "No ramo "
+#: transport.c:62
+#, 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"
 
-#: wt-status.c:1466
-msgid "interactive rebase in progress; onto "
-msgstr "rebase interativo em curso; sobre "
+#: transport.c:151
+#, c-format
+msgid "transport: invalid depth option '%s'"
+msgstr "transporte: opção de profundidade '%s' inválida"
 
-#: wt-status.c:1468
-msgid "rebase in progress; onto "
-msgstr "rebase em curso; sobre "
+#: transport.c:817
+#, c-format
+msgid ""
+"The following submodule paths contain changes that can\n"
+"not be found on any remote:\n"
+msgstr ""
+"Os seguintes caminhos de submódulo contêm alterações que\n"
+"não puderam ser encontradas a nenhum remoto:\n"
 
-#: wt-status.c:1473
-msgid "HEAD detached at "
-msgstr "HEAD destacada em "
+#: transport.c:821
+#, c-format
+msgid ""
+"\n"
+"Please try\n"
+"\n"
+"\tgit push --recurse-submodules=on-demand\n"
+"\n"
+"or cd to the path and use\n"
+"\n"
+"\tgit push\n"
+"\n"
+"to push them to a remote.\n"
+"\n"
+msgstr ""
+"\n"
+"Por favor tente\n"
+"\n"
+"\tgit push --recurse-submodules=on-demand\n"
+"\n"
+"ou cd para o caminho e use\n"
+"\n"
+"\tgit push\n"
+"\n"
+"para publicá-las no remoto.\n"
+"\n"
 
-#: wt-status.c:1475
-msgid "HEAD detached from "
-msgstr "HEAD destacada de "
+#: transport.c:829
+msgid "Aborting."
+msgstr "Abortado."
 
-#: wt-status.c:1478
-msgid "Not currently on any branch."
-msgstr "Não se encontra em nenhum ramo neste momento."
+#: transport-helper.c:1075
+#, c-format
+msgid "Could not read ref %s"
+msgstr "Não foi possível ler a referência %s"
 
-#: wt-status.c:1496
-msgid "Initial commit"
-msgstr "Commit inicial"
+#: tree-walk.c:31
+msgid "too-short tree object"
+msgstr "objeto árvore demasiado curto"
 
-#: wt-status.c:1510
-msgid "Untracked files"
-msgstr "Ficheiros não controlados"
+#: tree-walk.c:37
+msgid "malformed mode in tree entry"
+msgstr "modo na entrada de árvore malformado"
 
-#: wt-status.c:1512
-msgid "Ignored files"
-msgstr "Ficheiros ignorados"
+#: tree-walk.c:41
+msgid "empty filename in tree entry"
+msgstr "nome de ficheiro vazio na entrada de árvore"
+
+#: tree-walk.c:113
+msgid "too-short tree file"
+msgstr "ficheiro de árvore demasiado curto"
 
-#: wt-status.c:1516
+#: unpack-trees.c:64
 #, c-format
 msgid ""
-"It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
-"may speed it up, but you have to be careful not to forget to add\n"
-"new files yourself (see 'git help status')."
+"Your local changes to the following files would be overwritten by checkout:\n"
+"%%sPlease commit your changes or stash them before you switch branches."
 msgstr ""
-"A enumeração dos ficheiros não controlados demorou %.2f segundos\n"
-"a concluir. 'status -uno' pode acelerar o processo, mas deve ter\n"
-"cuidado de não se esquecer de adicionar novos ficheiros\n"
-"(consulte 'git help status')."
+"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
+"extrair:\n"
+"%%sSubmeta as suas alterações ou esconda-as antes de trocar de ramo."
 
-#: wt-status.c:1522
+#: unpack-trees.c:66
 #, c-format
-msgid "Untracked files not listed%s"
-msgstr "Ficheiros não controlados não listados%s"
-
-#: wt-status.c:1524
-msgid " (use -u option to show untracked files)"
-msgstr " (use a opção -u para mostrar os ficheiros não controlados)"
-
-#: wt-status.c:1530
-msgid "No changes"
-msgstr "Sem alterações"
+msgid ""
+"Your local changes to the following files would be overwritten by checkout:\n"
+"%%s"
+msgstr ""
+"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
+"extrair:\n"
+"%%s"
 
-#: wt-status.c:1535
+#: unpack-trees.c:69
 #, c-format
-msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
+msgid ""
+"Your local changes to the following files would be overwritten by merge:\n"
+"%%sPlease commit your changes or stash them before you merge."
 msgstr ""
-"nenhuma alteração adicionada para submeter (use \"git add\" e/ou \"git "
-"commit -a\")\n"
+"As suas alterações locais nos seguintes ficheiros seriam substituídas ao "
+"integrar:\n"
+"%%sSubmeta as suas alterações ou esconda-as antes de integrar."
 
-#: wt-status.c:1538
+#: unpack-trees.c:71
 #, c-format
-msgid "no changes added to commit\n"
-msgstr "nenhuma alteração adicionada para submeter\n"
+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"
 
-#: wt-status.c:1541
+#: unpack-trees.c:74
 #, c-format
 msgid ""
-"nothing added to commit but untracked files present (use \"git add\" to "
-"track)\n"
+"Your local changes to the following files would be overwritten by %s:\n"
+"%%sPlease commit your changes or stash them before you %s."
 msgstr ""
-"não foi adicionado nada para submeter, mas existem ficheiros não controlados "
-"(use \"git add\" para controlá-los)\n"
+"As suas alterações locais nos seguintes ficheiros seriam substituídas por "
+"%s:\n"
+"%%sSubmeta as suas alterações ou esconda-as antes de efetuar %s."
 
-#: wt-status.c:1544
+#: unpack-trees.c:76
 #, c-format
-msgid "nothing added to commit but untracked files present\n"
+msgid ""
+"Your local changes to the following files would be overwritten by %s:\n"
+"%%s"
 msgstr ""
-"não foi adicionado nada para submeter, mas existem ficheiros não "
-"controlados\n"
+"As suas alterações locais nos seguintes ficheiros seriam substituídas por "
+"%s:\n"
+"%%s"
 
-#: wt-status.c:1547
+#: unpack-trees.c:81
 #, c-format
-msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
+msgid ""
+"Updating the following directories would lose untracked files in it:\n"
+"%s"
 msgstr ""
-"não há nada para submeter (crie/copie ficheiros e use \"git add\" para "
-"controlá-los)\n"
+"Perder-se-iam ficheiros não controlados ao atualizar os seguintes "
+"diretórios:\n"
+"%s"
 
-#: wt-status.c:1550 wt-status.c:1555
+#: unpack-trees.c:85
 #, c-format
-msgid "nothing to commit\n"
-msgstr "não há nada para submeter\n"
+msgid ""
+"The following untracked working tree files would be removed by checkout:\n"
+"%%sPlease move or remove them before you switch branches."
+msgstr ""
+"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
+"removidos ao extrair:\n"
+"%%sMova ou remova-os antes de trocar de ramos."
 
-#: wt-status.c:1553
+#: unpack-trees.c:87
 #, c-format
-msgid "nothing to commit (use -u to show untracked files)\n"
+msgid ""
+"The following untracked working tree files would be removed by checkout:\n"
+"%%s"
 msgstr ""
-"não há nada para submeter (use -u para mostrar os ficheiros não controlados)"
-"\n"
+"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
+"removidos ao extrair:\n"
+"%%s"
 
-#: wt-status.c:1557
+#: unpack-trees.c:90
 #, c-format
-msgid "nothing to commit, working directory clean\n"
-msgstr "não há nada para submeter, diretório de trabalho limpo\n"
-
-#: wt-status.c:1664
-msgid "Initial commit on "
-msgstr "Commit inicial em "
+msgid ""
+"The following untracked working tree files would be removed by merge:\n"
+"%%sPlease move or remove them before you merge."
+msgstr ""
+"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
+"removidos ao integrar:\n"
+"%%sMova ou remova-os antes de integrar."
 
-#: wt-status.c:1668
-msgid "HEAD (no branch)"
-msgstr "HEAD (nenhum ramo)"
+#: unpack-trees.c:92
+#, c-format
+msgid ""
+"The following untracked working tree files would be removed by merge:\n"
+"%%s"
+msgstr ""
+"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
+"removidos ao integrar:\n"
+"%%s"
 
-#: wt-status.c:1697
-msgid "gone"
-msgstr "desaparecido"
+#: unpack-trees.c:95
+#, c-format
+msgid ""
+"The following untracked working tree files would be removed by %s:\n"
+"%%sPlease move or remove them before you %s."
+msgstr ""
+"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
+"removidos por %s:\n"
+"%%sMova ou remova-os antes de efetuar %s."
 
-#: wt-status.c:1699 wt-status.c:1707
-msgid "behind "
-msgstr "atrás "
+#: unpack-trees.c:97
+#, c-format
+msgid ""
+"The following untracked working tree files would be removed by %s:\n"
+"%%s"
+msgstr ""
+"Os seguintes ficheiros não controlados na árvore de trabalho seriam "
+"removidos por %s:\n"
+"%%s"
 
-#: wt-status.c:1702 wt-status.c:1705
-msgid "ahead "
-msgstr "à frente "
+#: unpack-trees.c:102
+#, c-format
+msgid ""
+"The following untracked working tree files would be overwritten by "
+"checkout:\n"
+"%%sPlease move or remove them before you switch branches."
+msgstr ""
+"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
+"substituídos ao extrair:\n"
+"%%sMova ou remova-os antes de trocar de ramos."
 
-#: compat/precompose_utf8.c:57 builtin/clone.c:415
+#: unpack-trees.c:104
 #, c-format
-msgid "failed to unlink '%s'"
-msgstr "falha ao invocar unlink de '%s'"
+msgid ""
+"The following untracked working tree files would be overwritten by "
+"checkout:\n"
+"%%s"
+msgstr ""
+"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
+"substituídos ao extrair:\n"
+"%%s"
 
-#: builtin/add.c:22
-msgid "git add [<options>] [--] <pathspec>..."
-msgstr "git add [<opções>] [--] <caminho>..."
+#: unpack-trees.c:107
+#, c-format
+msgid ""
+"The following untracked working tree files would be overwritten by merge:\n"
+"%%sPlease move or remove them before you merge."
+msgstr ""
+"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
+"substituídos ao integrar:\n"
+"%%sMova ou remova-os antes de integrar."
 
-#: builtin/add.c:65
+#: unpack-trees.c:109
 #, c-format
-msgid "unexpected diff status %c"
-msgstr "diff status inesperado %c"
+msgid ""
+"The following untracked working tree files would be overwritten by merge:\n"
+"%%s"
+msgstr ""
+"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
+"substituídos ao integrar:\n"
+"%%s"
 
-#: builtin/add.c:70 builtin/commit.c:280
-msgid "updating files failed"
-msgstr "falha ao atualizar os ficheiros"
+#: unpack-trees.c:112
+#, c-format
+msgid ""
+"The following untracked working tree files would be overwritten by %s:\n"
+"%%sPlease move or remove them before you %s."
+msgstr ""
+"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
+"substituídos por %s:\n"
+"%%sMova ou remova-os antes de efetuar %s."
 
-#: builtin/add.c:80
+#: unpack-trees.c:114
 #, c-format
-msgid "remove '%s'\n"
-msgstr "remover '%s'\n"
+msgid ""
+"The following untracked working tree files would be overwritten by %s:\n"
+"%%s"
+msgstr ""
+"Os seguintes ficheiros não controlados da árvore de trabalho seriam "
+"substituídos por %s:\n"
+"%%s"
 
-#: builtin/add.c:134
-msgid "Unstaged changes after refreshing the index:"
-msgstr "Alterações não preparadas depois de atualizar o índice:"
+#: unpack-trees.c:121
+#, c-format
+msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
+msgstr "A entrada '%s' sobrepõe-se com '%s'. Não é possível vincular."
 
-#: builtin/add.c:194 builtin/rev-parse.c:811
-msgid "Could not read the index"
-msgstr "Não foi possível ler o índice"
+#: unpack-trees.c:124
+#, 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"
 
-#: builtin/add.c:205
+#: unpack-trees.c:126
 #, c-format
-msgid "Could not open '%s' for writing."
-msgstr "Não foi possível abrir '%s' para escrita."
-
-#: builtin/add.c:209
-msgid "Could not write patch"
-msgstr "Não foi possível escrever patch"
+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"
 
-#: builtin/add.c:212
-msgid "editing patch failed"
-msgstr "falha ao editar patch"
+#: unpack-trees.c:128
+#, 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"
 
-#: builtin/add.c:215
+#: unpack-trees.c:205
 #, c-format
-msgid "Could not stat '%s'"
-msgstr "Não foi possível obter stat de '%s'"
+msgid "Aborting\n"
+msgstr "A abortar\n"
 
-#: builtin/add.c:217
-msgid "Empty patch. Aborted."
-msgstr "Patch vazio. Abortado."
+#: unpack-trees.c:237
+msgid "Checking out files"
+msgstr "A extrair ficheiros"
+
+#: urlmatch.c:120
+msgid "invalid URL scheme name or missing '://' suffix"
+msgstr "nome de esquema de URL inválido ou falta do sufixo '://'"
 
-#: builtin/add.c:222
+#: urlmatch.c:144 urlmatch.c:297 urlmatch.c:356
 #, c-format
-msgid "Could not apply '%s'"
-msgstr "Não foi possível aplicar '%s'"
+msgid "invalid %XX escape sequence"
+msgstr "sequencia de escape %XX inválida"
 
-#: builtin/add.c:232
-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"
+#: urlmatch.c:172
+msgid "missing host and scheme is not 'file:'"
+msgstr "sistema anfitrião não indicado e o esquema não é do tipo 'file:'"
 
-#: builtin/add.c:249 builtin/clean.c:870 builtin/fetch.c:112 builtin/mv.c:111
-#: builtin/prune-packed.c:55 builtin/pull.c:197 builtin/push.c:511
-#: builtin/remote.c:1332 builtin/rm.c:268 builtin/send-pack.c:162
-msgid "dry run"
-msgstr "simular ação"
+#: urlmatch.c:189
+msgid "a 'file:' URL may not have a port number"
+msgstr "um URL do tipo 'file:' não pode ter um número de porta"
 
-#: builtin/add.c:250 builtin/apply.c:4563 builtin/check-ignore.c:19
-#: builtin/commit.c:1333 builtin/count-objects.c:85 builtin/fsck.c:557
-#: builtin/log.c:1826 builtin/mv.c:110 builtin/read-tree.c:114
-msgid "be verbose"
-msgstr "ser verboso"
+#: urlmatch.c:199
+msgid "invalid characters in host name"
+msgstr "caracteres inválidos no nome do anfitrião"
 
-#: builtin/add.c:252
-msgid "interactive picking"
-msgstr "seleção interativa"
+#: urlmatch.c:244 urlmatch.c:255
+msgid "invalid port number"
+msgstr "número de porta inválido"
 
-#: builtin/add.c:253 builtin/checkout.c:1154 builtin/reset.c:286
-msgid "select hunks interactively"
-msgstr "selecionar blocos interativamente"
+#: urlmatch.c:322
+msgid "invalid '..' path segment"
+msgstr "segmento de caminho '..' inválido"
 
-#: builtin/add.c:254
-msgid "edit current diff and apply"
-msgstr "editar o diff atual e aplicá-lo"
+#: worktree.c:282
+#, c-format
+msgid "failed to read '%s'"
+msgstr "falha ao ler '%s'"
 
-#: builtin/add.c:255
-msgid "allow adding otherwise ignored files"
-msgstr "permitir adicionar ficheiros ignorados"
+#: wrapper.c:222 wrapper.c:392
+#, c-format
+msgid "could not open '%s' for reading and writing"
+msgstr "não foi possível abrir '%s' para leitura e escrita"
 
-#: builtin/add.c:256
-msgid "update tracked files"
-msgstr "atualizar ficheiros controlados"
+#: wrapper.c:224 wrapper.c:394 builtin/am.c:766
+#, c-format
+msgid "could not open '%s' for writing"
+msgstr "não foi possível abrir '%s' para escrita"
 
-#: builtin/add.c:257
-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"
+#: wrapper.c:226 wrapper.c:396 builtin/am.c:320 builtin/am.c:759
+#: builtin/am.c:847 builtin/commit.c:1705 builtin/merge.c:1029
+#: builtin/pull.c:341
+#, c-format
+msgid "could not open '%s' for reading"
+msgstr "não foi possível abrir '%s' para leitura"
 
-#: builtin/add.c:258
-msgid "add changes from all tracked and untracked files"
-msgstr ""
-"adicionar alterações de todos os ficheiros controlados ou não controlados"
+#: wrapper.c:605 wrapper.c:626
+#, c-format
+msgid "unable to access '%s'"
+msgstr "não é possível aceder a '%s'"
 
-#: builtin/add.c:261
-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)"
+#: wrapper.c:634
+msgid "unable to get current working directory"
+msgstr "não é possível de obter o diretório de trabalho atual"
 
-#: builtin/add.c:263
-msgid "don't add, only refresh the index"
-msgstr "não adicionar, apenas atualizar o índice"
+#: wrapper.c:658
+#, c-format
+msgid "could not write to %s"
+msgstr "não foi possível escrever para %s"
 
-#: builtin/add.c:264
-msgid "just skip files which cannot be added because of errors"
-msgstr "ignorar ficheiros que não podem ser adicionados por causa de erros"
+#: wrapper.c:660
+#, c-format
+msgid "could not close %s"
+msgstr "não foi possível fechar %s"
 
-#: builtin/add.c:265
-msgid "check if - even missing - files are ignored in dry run"
-msgstr "verificar quais os ficheiros ignorados na simulação"
+#: wt-status.c:151
+msgid "Unmerged paths:"
+msgstr "Caminhos não integrados:"
 
-#: builtin/add.c:287
+#: wt-status.c:178 wt-status.c:205
 #, c-format
-msgid "Use -f if you really want to add them.\n"
-msgstr "Use -f se deseja mesmo adicioná-los.\n"
+msgid "  (use \"git reset %s <file>...\" to unstage)"
+msgstr "  (use \"git reset %s <ficheiro>...\" para despreparar)"
 
-#: builtin/add.c:294
-msgid "adding files failed"
-msgstr "falha ao adicionar ficheiros"
+#: wt-status.c:180 wt-status.c:207
+msgid "  (use \"git rm --cached <file>...\" to unstage)"
+msgstr "  (use \"git rm --cached <ficheiro>...\" para despreparar)"
 
-#: builtin/add.c:330
-msgid "-A and -u are mutually incompatible"
-msgstr "-A e -u são mutuamente incompatíveis"
+#: wt-status.c:184
+msgid "  (use \"git add <file>...\" to mark resolution)"
+msgstr "  (use \"git add <ficheiro>...\" para marcar como resolvido)"
 
-#: builtin/add.c:337
-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"
+#: wt-status.c:186 wt-status.c:190
+msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
+msgstr ""
+"  (use \"git add/rm <ficheiro>...\" conforme apropriado para marcar como "
+"resolvido)"
 
-#: builtin/add.c:352
-#, c-format
-msgid "Nothing specified, nothing added.\n"
-msgstr "Não foi especificado nada, nada adicionado.\n"
+#: wt-status.c:188
+msgid "  (use \"git rm <file>...\" to mark resolution)"
+msgstr "  (use \"git rm <ficheiro>...\" para marcar como resolvido)"
 
-#: builtin/add.c:353
-#, c-format
-msgid "Maybe you wanted to say 'git add .'?\n"
-msgstr "Queria dizer 'git add .'?\n"
+#: wt-status.c:199 wt-status.c:945
+msgid "Changes to be committed:"
+msgstr "Alterações para serem submetidas:"
 
-#: builtin/add.c:358 builtin/check-ignore.c:172 builtin/clean.c:914
-#: builtin/commit.c:339 builtin/mv.c:131 builtin/reset.c:235 builtin/rm.c:298
-#: builtin/submodule--helper.c:240
-msgid "index file corrupt"
-msgstr "ficheiro de índice corrompido"
+#: wt-status.c:217 wt-status.c:954
+msgid "Changes not staged for commit:"
+msgstr "Alterações não preparadas para submeter:"
 
-#: builtin/add.c:439 builtin/apply.c:4661 builtin/mv.c:283 builtin/rm.c:430
-msgid "Unable to write new index file"
-msgstr "Não foi possível escrever novo ficheiro de índice"
+#: wt-status.c:221
+msgid "  (use \"git add <file>...\" to update what will be committed)"
+msgstr "  (use \"git add <ficheiro>...\" para atualizar o que será submetido)"
 
-#: builtin/am.c:256 builtin/commit.c:749 builtin/merge.c:1089
-#, c-format
-msgid "could not read '%s'"
-msgstr "não foi possível ler '%s'"
+#: wt-status.c:223
+msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
+msgstr ""
+"  (use \"git add/rm <ficheiro>...\" para atualizar o que será submetido)"
 
-#: builtin/am.c:430
-msgid "could not parse author script"
-msgstr "não foi possível analisar o autor do script"
+#: wt-status.c:224
+msgid ""
+"  (use \"git checkout -- <file>...\" to discard changes in working directory)"
+msgstr ""
+"  (use \"git checkout -- <ficheiro>...\" para descartar alterações no "
+"diretório de trabalho)"
 
-#: builtin/am.c:507
-#, c-format
-msgid "'%s' was deleted by the applypatch-msg hook"
-msgstr "'%s' foi eliminado pelo hook applypatch-msg"
+#: wt-status.c:226
+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)"
 
-#: builtin/am.c:548 builtin/notes.c:300
+#: wt-status.c:238
 #, c-format
-msgid "Malformed input line: '%s'."
-msgstr "Linha de entrada malformada: '%s'."
+msgid "  (use \"git %s <file>...\" to include in what will be committed)"
+msgstr "  (use \"git %s <ficheiro>...\" para incluir no que será submetido)"
 
-#: builtin/am.c:585 builtin/notes.c:315
-#, c-format
-msgid "Failed to copy notes from '%s' to '%s'"
-msgstr "Falha ao copiar notas de '%s' para '%s'"
+#: wt-status.c:253
+msgid "both deleted:"
+msgstr "eliminado por ambos:"
 
-#: builtin/am.c:611
-msgid "fseek failed"
-msgstr "falha ao invocar fseek"
+#: wt-status.c:255
+msgid "added by us:"
+msgstr "adicionado por nós:"
 
-#: builtin/am.c:788
-#, c-format
-msgid "could not parse patch '%s'"
-msgstr "não foi possível analisar o patch '%s'"
+#: wt-status.c:257
+msgid "deleted by them:"
+msgstr "eliminado por eles:"
 
-#: builtin/am.c:853
-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"
+#: wt-status.c:259
+msgid "added by them:"
+msgstr "adicionado por eles:"
 
-#: builtin/am.c:900
-msgid "invalid timestamp"
-msgstr "carimbo de data/hora inválido"
+#: wt-status.c:261
+msgid "deleted by us:"
+msgstr "eliminado por nós:"
 
-#: builtin/am.c:903 builtin/am.c:911
-msgid "invalid Date line"
-msgstr "linha de Data inválida"
+#: wt-status.c:263
+msgid "both added:"
+msgstr "adicionado por ambos:"
 
-#: builtin/am.c:908
-msgid "invalid timezone offset"
-msgstr "mudança de fuso horário inválida"
+#: wt-status.c:265
+msgid "both modified:"
+msgstr "modificado por ambos:"
 
-#: builtin/am.c:995
-msgid "Patch format detection failed."
-msgstr "Falha ao detetar o formato do patch."
+#: wt-status.c:275
+msgid "new file:"
+msgstr "novo ficheiro:"
 
-#: builtin/am.c:1000 builtin/clone.c:380
-#, c-format
-msgid "failed to create directory '%s'"
-msgstr "falha ao criar o diretório '%s'"
+#: wt-status.c:277
+msgid "copied:"
+msgstr "copiado:"
 
-#: builtin/am.c:1004
-msgid "Failed to split patches."
-msgstr "Falha ao dividir patches."
+#: wt-status.c:279
+msgid "deleted:"
+msgstr "eliminado:"
 
-#: builtin/am.c:1136 builtin/commit.c:365
-msgid "unable to write index file"
-msgstr "não é possível escrever o ficheiro de índice"
+#: wt-status.c:281
+msgid "modified:"
+msgstr "modificado:"
 
-#: builtin/am.c:1187
-#, c-format
-msgid "When you have resolved this problem, run \"%s --continue\"."
-msgstr "Após resolver este problema, execute \"%s --continue\"."
+#: wt-status.c:283
+msgid "renamed:"
+msgstr "nome mudado:"
 
-#: builtin/am.c:1188
-#, c-format
-msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
-msgstr "Se preferir ignorar este patch, execute \"%s --skip\"."
+#: wt-status.c:285
+msgid "typechange:"
+msgstr "tipo alterado:"
 
-#: builtin/am.c:1189
-#, 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\"."
+#: wt-status.c:287
+msgid "unknown:"
+msgstr "desconhecido:"
 
-#: builtin/am.c:1327
-msgid "Patch is empty. Was it split wrong?"
-msgstr "O patch está vazio. Foi dividido incorretamente?"
+#: wt-status.c:289
+msgid "unmerged:"
+msgstr "não integrado:"
 
-#: builtin/am.c:1401 builtin/log.c:1516
-#, c-format
-msgid "invalid ident line: %s"
-msgstr "linha de identidade inválida: %s"
+#: wt-status.c:371
+msgid "new commits, "
+msgstr "novos commits, "
 
-#: builtin/am.c:1428
-#, c-format
-msgid "unable to parse commit %s"
-msgstr "não foi possível analisar o commit %s"
+#: wt-status.c:373
+msgid "modified content, "
+msgstr "conteúdo modificado, "
+
+#: wt-status.c:375
+msgid "untracked content, "
+msgstr "conteúdo não controlado, "
 
-#: builtin/am.c:1630
-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."
+#: wt-status.c:818
+msgid "Submodules changed but not updated:"
+msgstr "Submódulos alterados mas não atualizados:"
 
-#: builtin/am.c:1632
-msgid "Using index info to reconstruct a base tree..."
-msgstr "A usar informação do índice para reconstruir uma árvore de base..."
+#: wt-status.c:820
+msgid "Submodule changes to be committed:"
+msgstr "Alterações em submódulos para serem submetidas:"
 
-#: builtin/am.c:1651
+#: wt-status.c:901
 msgid ""
-"Did you hand edit your patch?\n"
-"It does not apply to blobs recorded in its index."
-msgstr ""
-"Editou o patch manualmente?\n"
-"Não é possível aplicá-lo aos blobs registados no índice."
-
-#: builtin/am.c:1657
-msgid "Falling back to patching base and 3-way merge..."
+"Do not touch the line above.\n"
+"Everything below will be removed."
 msgstr ""
-"A recorrer a uma de base para aplicação de patches e integração com 3 "
-"pontos..."
+"Não altere a linha acima.\n"
+"Tudo o que estiver abaixo será removido."
 
-#: builtin/am.c:1672
-msgid "Failed to merge in the changes."
-msgstr "Falha ao integrar as alterações."
+#: wt-status.c:1013
+msgid "You have unmerged paths."
+msgstr "Há caminhos não integrados."
 
-#: builtin/am.c:1696 builtin/merge.c:636
-msgid "git write-tree failed to write a tree"
-msgstr "git write-tree falhou ao escrever uma árvore"
+#: wt-status.c:1016
+msgid "  (fix conflicts and run \"git commit\")"
+msgstr "  (corrija os conflitos e execute \"git commit\")"
 
-#: builtin/am.c:1703
-msgid "applying to an empty history"
-msgstr "a aplicar a um histórico vazio"
+#: wt-status.c:1018
+msgid "  (use \"git merge --abort\" to abort the merge)"
+msgstr "  (use \"git am --abort\" para abortar a integração)"
 
-#: builtin/am.c:1716 builtin/commit.c:1775 builtin/merge.c:841
-#: builtin/merge.c:866
-msgid "failed to write commit object"
-msgstr "falha ao escrever objeto de commit"
+#: wt-status.c:1023
+msgid "All conflicts fixed but you are still merging."
+msgstr "Todos os conflitos foram corrigidos mas ainda está a integrar."
 
-#: builtin/am.c:1748 builtin/am.c:1752
-#, c-format
-msgid "cannot resume: %s does not exist."
-msgstr "não é possível continuar: %s não existe."
+#: wt-status.c:1026
+msgid "  (use \"git commit\" to conclude merge)"
+msgstr "  (use \"git commit\" para concluir a integração)"
 
-#: builtin/am.c:1768
-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."
+#: wt-status.c:1036
+msgid "You are in the middle of an am session."
+msgstr "Sessão am em curso."
 
-#: builtin/am.c:1773
-msgid "Commit Body is:"
-msgstr "Corpo do commit:"
+#: wt-status.c:1039
+msgid "The current patch is empty."
+msgstr "O patch atual está vazio."
 
-#. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
-#. in your translation. The program will only accept English
-#. input at this point.
-#.
-#: builtin/am.c:1783
-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: "
+#: wt-status.c:1043
+msgid "  (fix conflicts and then run \"git am --continue\")"
+msgstr "  (corrija os conflitos e execute \"git am --continue\")"
 
-#: builtin/am.c:1833
-#, c-format
-msgid "Dirty index: cannot apply patches (dirty: %s)"
-msgstr "Índice modificado: não é possível aplicar patches (modificado: %s)"
+#: wt-status.c:1045
+msgid "  (use \"git am --skip\" to skip this patch)"
+msgstr "  (use \"git am --skip\" para ignorar este patch)"
 
-#: builtin/am.c:1868 builtin/am.c:1940
-#, c-format
-msgid "Applying: %.*s"
-msgstr "A aplicar: %.*s"
+#: wt-status.c:1047
+msgid "  (use \"git am --abort\" to restore the original branch)"
+msgstr "  (use \"git am --abort\" para restaurar o ramo original)"
 
-#: builtin/am.c:1884
-msgid "No changes -- Patch already applied."
-msgstr "Nenhuma alteração -- Já foi aplicado o patch."
+#: wt-status.c:1172
+msgid "No commands done."
+msgstr "Nenhum comando concluído."
 
-#: builtin/am.c:1892
+#: wt-status.c:1175
 #, c-format
-msgid "Patch failed at %s %.*s"
-msgstr "Falha ao aplicar o patch em %s %.*s"
+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):"
 
-#: builtin/am.c:1898
+#: wt-status.c:1186
 #, 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:1943
-msgid ""
-"No changes - did you forget to use 'git add'?\n"
-"If there is nothing left to stage, chances are that something else\n"
-"already introduced the same changes; you might want to skip this patch."
-msgstr ""
-"Sem alterações - esqueceu-se de usar 'git add'?\n"
-"Se não há nada por preparar, provavelmente essas mesmas alterações\n"
-"já foram introduzidas; pode querer ignorar este patch."
+msgid "  (see more in file %s)"
+msgstr "  (veja mais no ficheiro %s)"
 
-#: builtin/am.c:1950
-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'?"
+#: wt-status.c:1191
+msgid "No commands remaining."
+msgstr "Nenhum comando por concluir."
 
-#: builtin/am.c:2058 builtin/am.c:2062 builtin/am.c:2074 builtin/reset.c:308
-#: builtin/reset.c:316
+#: wt-status.c:1194
 #, c-format
-msgid "Could not parse object '%s'."
-msgstr "Não foi possível analisar o objeto '%s'."
-
-#: builtin/am.c:2110
-msgid "failed to clean index"
-msgstr "falha ao limpar o índice"
+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):"
 
-#: builtin/am.c:2144
-msgid ""
-"You seem to have moved HEAD since the last 'am' failure.\n"
-"Not rewinding to ORIG_HEAD"
-msgstr ""
-"Parece que a HEAD foi movida desde a última vez que o 'am' falhou.\n"
-"Não recuando a ORIG_HEAD"
+#: wt-status.c:1202
+msgid "  (use \"git rebase --edit-todo\" to view and edit)"
+msgstr "  (use \"git rebase --edit-todo\" para visualizar e editar)"
 
-#: builtin/am.c:2205
+#: wt-status.c:1215
 #, c-format
-msgid "Invalid value for --patch-format: %s"
-msgstr "Valor inválido de --patch-format: %s"
-
-#: builtin/am.c:2238
-msgid "git am [<options>] [(<mbox>|<Maildir>)...]"
-msgstr "git am [<opções>] [(<mbox>|<Maildir>)...]"
+msgid "You are currently rebasing branch '%s' on '%s'."
+msgstr "Está a realizar rebase do ramo '%s' sobre '%s'."
 
-#: builtin/am.c:2239
-msgid "git am [<options>] (--continue | --skip | --abort)"
-msgstr "git am [<opções>] (--continue | --skip | --abort)"
+#: wt-status.c:1220
+msgid "You are currently rebasing."
+msgstr "Está a rebasear neste momento."
 
-#: builtin/am.c:2245
-msgid "run interactively"
-msgstr "executar interativamente"
+#: wt-status.c:1234
+msgid "  (fix conflicts and then run \"git rebase --continue\")"
+msgstr "  (corrija os conflitos e execute \"git rebase --continue\")"
 
-#: builtin/am.c:2247
-msgid "historical option -- no-op"
-msgstr "opção histórica -- sem-ação"
+#: wt-status.c:1236
+msgid "  (use \"git rebase --skip\" to skip this patch)"
+msgstr "  (use \"git rebase --skip\" para ignorar este patch)"
 
-#: builtin/am.c:2249
-msgid "allow fall back on 3way merging if needed"
-msgstr "permitir recorrer a integração com 3 pontos se necessário"
+#: wt-status.c:1238
+msgid "  (use \"git rebase --abort\" to check out the original branch)"
+msgstr "  (use \"git rebase --abort\" para restaurar o ramo original)"
 
-#: builtin/am.c:2250 builtin/init-db.c:478 builtin/prune-packed.c:57
-#: builtin/repack.c:171
-msgid "be quiet"
-msgstr "silencioso"
+#: wt-status.c:1244
+msgid "  (all conflicts fixed: run \"git rebase --continue\")"
+msgstr ""
+"  (todos os conflitos foram corrigidos: execute \"git rebase --continue\")"
 
-#: builtin/am.c:2252
-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"
+#: wt-status.c:1248
+#, c-format
+msgid ""
+"You are currently splitting a commit while rebasing branch '%s' on '%s'."
+msgstr ""
+"Está a dividir um commit ao mesmo tempo que se efetua rebase do ramo '%s' "
+"sobre '%s'."
 
-#: builtin/am.c:2255
-msgid "recode into utf8 (default)"
-msgstr "recodificar em utf8 (predefinição)"
+#: wt-status.c:1253
+msgid "You are currently splitting a commit during a rebase."
+msgstr "Está a dividir um commit durante um rebase."
 
-#: builtin/am.c:2257
-msgid "pass -k flag to git-mailinfo"
-msgstr "passar a opção -k ao git-mailinfo"
+#: wt-status.c:1256
+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\")"
 
-#: builtin/am.c:2259
-msgid "pass -b flag to git-mailinfo"
-msgstr "passar a opção -b ao git-mailinfo"
+#: wt-status.c:1260
+#, 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'."
 
-#: builtin/am.c:2261
-msgid "pass -m flag to git-mailinfo"
-msgstr "passar a opção -m ao git-mailinfo"
+#: wt-status.c:1265
+msgid "You are currently editing a commit during a rebase."
+msgstr "Está a editar um commit durante um rebase."
 
-#: builtin/am.c:2263
-msgid "pass --keep-cr flag to git-mailsplit for mbox format"
-msgstr "passar a opção --keep-cr ao gitmailsplit para formato de mbox"
+#: wt-status.c:1268
+msgid "  (use \"git commit --amend\" to amend the current commit)"
+msgstr "  (use \"git commit --amend\" para emendar o commit atual)"
 
-#: builtin/am.c:2266
-msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
+#: wt-status.c:1270
+msgid ""
+"  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
-"não passar a opção --keep-cr ao git-mailsplit independentemente de am.keepcr"
-
-#: builtin/am.c:2269
-msgid "strip everything before a scissors line"
-msgstr "retirar todo o conteúdo antes da linha de tesoura"
-
-#: builtin/am.c:2270 builtin/apply.c:4546
-msgid "action"
-msgstr "ação"
+"  (use \"git rebase --continue\" assim que estiver satisfeito com as "
+"alterações)"
 
-#: builtin/am.c:2271 builtin/am.c:2274 builtin/am.c:2277 builtin/am.c:2280
-#: builtin/am.c:2283 builtin/am.c:2286 builtin/am.c:2289 builtin/am.c:2292
-#: builtin/am.c:2298
-msgid "pass it through git-apply"
-msgstr "transmitir ao git-apply"
+#: wt-status.c:1280
+#, c-format
+msgid "You are currently cherry-picking commit %s."
+msgstr "Está a realizar cherry-pick do commit %s."
 
-#: builtin/am.c:2279 builtin/apply.c:4570
-msgid "root"
-msgstr "raiz"
+#: wt-status.c:1285
+msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
+msgstr "  (corrija os conflitos e execute \"git cherry-pick --continue\")"
 
-#: builtin/am.c:2282 builtin/am.c:2285 builtin/apply.c:4508
-#: builtin/apply.c:4511 builtin/clone.c:90 builtin/fetch.c:95
-#: builtin/pull.c:179 builtin/submodule--helper.c:277
-#: builtin/submodule--helper.c:404 builtin/submodule--helper.c:485
-#: builtin/submodule--helper.c:488 builtin/submodule--helper.c:767
-#: builtin/submodule--helper.c:770
-msgid "path"
-msgstr "caminho"
+#: wt-status.c:1288
+msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
+msgstr ""
+"  (todos os conflitos foram corrigidos: execute \"git cherry-pick --continue"
+"\")"
 
-#: builtin/am.c:2288 builtin/fmt-merge-msg.c:666 builtin/fmt-merge-msg.c:669
-#: builtin/grep.c:706 builtin/merge.c:199 builtin/pull.c:134
-#: builtin/pull.c:193 builtin/repack.c:178 builtin/repack.c:182
-#: builtin/show-branch.c:645 builtin/show-ref.c:175 builtin/tag.c:340
-#: parse-options.h:132 parse-options.h:134 parse-options.h:244
-msgid "n"
-msgstr "n"
+#: wt-status.c:1290
+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)"
 
-#: builtin/am.c:2291 builtin/apply.c:4514
-msgid "num"
-msgstr "num"
+#: wt-status.c:1299
+#, c-format
+msgid "You are currently reverting commit %s."
+msgstr "Está a reverter o commit %s neste comento."
 
-#: builtin/am.c:2294 builtin/for-each-ref.c:37 builtin/replace.c:438
-#: builtin/tag.c:372
-msgid "format"
-msgstr "formato"
+#: wt-status.c:1304
+msgid "  (fix conflicts and run \"git revert --continue\")"
+msgstr "  (corrija dos conflitos e execute \"git revert --continue\")"
 
-#: builtin/am.c:2295
-msgid "format the patch(es) are in"
-msgstr "formato de apresentação de patches"
+#: wt-status.c:1307
+msgid "  (all conflicts fixed: run \"git revert --continue\")"
+msgstr ""
+"  (todos os conflitos foram corrigidos: execute \"git revert --continue\")"
 
-#: builtin/am.c:2301
-msgid "override error message when patch failure occurs"
-msgstr "substituir a mensagem de erro quando a aplicação do patch falha"
+#: wt-status.c:1309
+msgid "  (use \"git revert --abort\" to cancel the revert operation)"
+msgstr "  (use \"git rever --abort\" para cancelar a operação de reversão)"
 
-#: builtin/am.c:2303
-msgid "continue applying patches after resolving a conflict"
-msgstr "continuar a aplicar os patches depois de resolver os conflitos"
+#: wt-status.c:1320
+#, c-format
+msgid "You are currently bisecting, started from branch '%s'."
+msgstr "Está a bissetar, iniciado a partir do ramo '%s'."
 
-#: builtin/am.c:2306
-msgid "synonyms for --continue"
-msgstr "sinónimo de --continue"
+#: wt-status.c:1324
+msgid "You are currently bisecting."
+msgstr "Está a bissetar neste momento."
 
-#: builtin/am.c:2309
-msgid "skip the current patch"
-msgstr "ignorar o patch atual"
+#: wt-status.c:1327
+msgid "  (use \"git bisect reset\" to get back to the original branch)"
+msgstr "  (use \"git bisect reset\" para voltar ao ramo original)"
 
-#: builtin/am.c:2312
-msgid "restore the original branch and abort the patching operation."
-msgstr "restaurar o ramo original e abortar a operação de patch."
+#: wt-status.c:1524
+msgid "On branch "
+msgstr "No ramo "
 
-#: builtin/am.c:2316
-msgid "lie about committer date"
-msgstr "mentir sobre a data de commit"
+#: wt-status.c:1530
+msgid "interactive rebase in progress; onto "
+msgstr "rebase interativo em curso; sobre "
 
-#: builtin/am.c:2318
-msgid "use current timestamp for author date"
-msgstr "usar a data e hora atual como data de autor"
+#: wt-status.c:1532
+msgid "rebase in progress; onto "
+msgstr "rebase em curso; sobre "
 
-#: builtin/am.c:2320 builtin/commit.c:1609 builtin/merge.c:228
-#: builtin/pull.c:164 builtin/revert.c:92 builtin/tag.c:355
-msgid "key-id"
-msgstr "id-chave"
+#: wt-status.c:1537
+msgid "HEAD detached at "
+msgstr "HEAD destacada em "
 
-#: builtin/am.c:2321
-msgid "GPG-sign commits"
-msgstr "assinar os commits com GPG"
+#: wt-status.c:1539
+msgid "HEAD detached from "
+msgstr "HEAD destacada de "
 
-#: builtin/am.c:2324
-msgid "(internal use for git-rebase)"
-msgstr "(uso interno de git-rebase)"
+#: wt-status.c:1542
+msgid "Not currently on any branch."
+msgstr "Não se encontra em nenhum ramo neste momento."
 
-#: builtin/am.c:2339
-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."
-msgstr ""
-"A opção -b/--binary há muito que é ignorada e será\n"
-"futuramente removida. Por favor não a use."
+#: wt-status.c:1560
+msgid "Initial commit"
+msgstr "Commit inicial"
 
-#: builtin/am.c:2346
-msgid "failed to read the index"
-msgstr "falha ao ler o índice"
+#: wt-status.c:1574
+msgid "Untracked files"
+msgstr "Ficheiros não controlados"
 
-#: builtin/am.c:2361
-#, 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."
+#: wt-status.c:1576
+msgid "Ignored files"
+msgstr "Ficheiros ignorados"
 
-#: builtin/am.c:2385
+#: wt-status.c:1580
 #, c-format
 msgid ""
-"Stray %s directory found.\n"
-"Use \"git am --abort\" to remove it."
+"It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
+"may speed it up, but you have to be careful not to forget to add\n"
+"new files yourself (see 'git help status')."
 msgstr ""
-"Diretório abandonado %s encontrado.\n"
-"Use \"git am --abort\" para o remover."
-
-#: builtin/am.c:2391
-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/apply.c:59
-msgid "git apply [<options>] [<patch>...]"
-msgstr "git apply [<opções>] [<patch>...]"
+"A enumeração dos ficheiros não controlados demorou %.2f segundos\n"
+"a concluir. 'status -uno' pode acelerar o processo, mas deve ter\n"
+"cuidado de não se esquecer de adicionar novos ficheiros\n"
+"(consulte 'git help status')."
 
-#: builtin/apply.c:111
+#: wt-status.c:1586
 #, c-format
-msgid "unrecognized whitespace option '%s'"
-msgstr "opção de espaço em branco não reconhecida '%s'"
+msgid "Untracked files not listed%s"
+msgstr "Ficheiros não controlados não listados%s"
 
-#: builtin/apply.c:126
-#, c-format
-msgid "unrecognized whitespace ignore option '%s'"
-msgstr "opção de ignorar espaço em branco não reconhecida '%s'"
+#: wt-status.c:1588
+msgid " (use -u option to show untracked files)"
+msgstr " (use a opção -u para mostrar os ficheiros não controlados)"
 
-#: builtin/apply.c:818
-#, c-format
-msgid "Cannot prepare timestamp regexp %s"
-msgstr "Não é possível preparar a regexp de carimbo de data/hora %s"
+#: wt-status.c:1594
+msgid "No changes"
+msgstr "Sem alterações"
 
-#: builtin/apply.c:827
+#: wt-status.c:1599
 #, c-format
-msgid "regexec returned %d for input: %s"
-msgstr "regexec retornou %d para a entra: %s"
+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"
 
-#: builtin/apply.c:908
+#: wt-status.c:1602
 #, 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"
+msgid "no changes added to commit\n"
+msgstr "nenhuma alteração adicionada para submeter\n"
 
-#: builtin/apply.c:937
+#: wt-status.c:1605
 #, c-format
-msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
+msgid ""
+"nothing added to commit but untracked files present (use \"git add\" to "
+"track)\n"
 msgstr ""
-"git apply: git-diff incorreto - esperava-se /dev/null, obteve-se %s na linha "
-"%d"
+"não foi adicionado nada para submeter, mas existem ficheiros não controlados "
+"(use \"git add\" para controlá-los)\n"
 
-#: builtin/apply.c:942
+#: wt-status.c:1608
 #, c-format
-msgid "git apply: bad git-diff - inconsistent new filename on line %d"
+msgid "nothing added to commit but untracked files present\n"
 msgstr ""
-"git apply: git-diff incorreto - o nome do novo ficheiro na linha %d é "
-"inconsistente"
+"não foi adicionado nada para submeter, mas existem ficheiros não "
+"controlados\n"
 
-#: builtin/apply.c:943
+#: wt-status.c:1611
 #, c-format
-msgid "git apply: bad git-diff - inconsistent old filename on line %d"
+msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr ""
-"git apply: git-diff incorreto - o nome do ficheiro antigo na linha %d é "
-"inconsistente"
+"não há nada para submeter (crie/copie ficheiros e use \"git add\" para "
+"controlá-los)\n"
 
-#: builtin/apply.c:949
+#: wt-status.c:1614 wt-status.c:1619
 #, 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"
+msgid "nothing to commit\n"
+msgstr "não há nada para submeter\n"
 
-#: builtin/apply.c:1406
+#: wt-status.c:1617
 #, c-format
-msgid "recount: unexpected line: %.*s"
-msgstr "recontagem: linha inesperada: %.*s"
+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"
 
-#: builtin/apply.c:1463
+#: wt-status.c:1621
 #, c-format
-msgid "patch fragment without header at line %d: %.*s"
-msgstr "fragmento de patch sem cabeçalho na linha %d: %.*s"
+msgid "nothing to commit, working tree clean\n"
+msgstr "não há nada para submeter, árvore de trabalho limpa\n"
 
-#: builtin/apply.c:1480
-#, c-format
-msgid ""
-"git diff header lacks filename information when removing %d leading pathname "
-"component (line %d)"
-msgid_plural ""
-"git diff header lacks filename information when removing %d leading pathname "
-"components (line %d)"
-msgstr[0] ""
-"o cabeçalho do git diff não revelou o nome do ficheiro depois de se remover "
-"%d componente do caminho (linha %d)"
-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)"
+#: wt-status.c:1728
+msgid "Initial commit on "
+msgstr "Commit inicial em "
 
-#: builtin/apply.c:1646
-msgid "new file depends on old contents"
-msgstr "o novo ficheiro depende de conteúdos antigos"
+#: wt-status.c:1732
+msgid "HEAD (no branch)"
+msgstr "HEAD (nenhum ramo)"
 
-#: builtin/apply.c:1648
-msgid "deleted file still has contents"
-msgstr "o ficheiro eliminado ainda tem conteúdos"
+#: wt-status.c:1761
+msgid "gone"
+msgstr "desaparecido"
 
-#: builtin/apply.c:1674
-#, c-format
-msgid "corrupt patch at line %d"
-msgstr "patch corrompido na linha %d"
+#: wt-status.c:1763 wt-status.c:1771
+msgid "behind "
+msgstr "atrás "
 
-#: builtin/apply.c:1710
+#: wt-status.c:1766 wt-status.c:1769
+msgid "ahead "
+msgstr "à frente "
+
+#. TRANSLATORS: the action is e.g. "pull with rebase"
+#: wt-status.c:2270
 #, c-format
-msgid "new file %s depends on old contents"
-msgstr "o novo ficheiro %s depende de conteúdos antigos"
+msgid "cannot %s: You have unstaged changes."
+msgstr "não é possível efetuar %s: tem alterações não preparadas."
+
+#: wt-status.c:2276
+msgid "additionally, your index contains uncommitted changes."
+msgstr "além disso, o índice contém alterações não submetidas."
 
-#: builtin/apply.c:1712
+#: wt-status.c:2278
 #, c-format
-msgid "deleted file %s still has contents"
-msgstr "o ficheiro eliminado %s ainda tem conteúdos"
+msgid "cannot %s: Your index contains uncommitted changes."
+msgstr "não é possível efetuar %s: o índice contém alterações não submetidas."
 
-#: builtin/apply.c:1715
+#: compat/precompose_utf8.c:57 builtin/clone.c:414
 #, c-format
-msgid "** warning: file %s becomes empty but is not deleted"
-msgstr "** aviso: o ficheiro %s ficará vazio, mas não será eliminado"
+msgid "failed to unlink '%s'"
+msgstr "falha ao invocar unlink de '%s'"
 
-#: builtin/apply.c:1861
+#: builtin/add.c:22
+msgid "git add [<options>] [--] <pathspec>..."
+msgstr "git add [<opções>] [--] <caminho>..."
+
+#: builtin/add.c:80
 #, c-format
-msgid "corrupt binary patch at line %d: %.*s"
-msgstr "patch binário corrompido na linha %d: %.*s"
+msgid "unexpected diff status %c"
+msgstr "diff status inesperado %c"
+
+#: builtin/add.c:85 builtin/commit.c:291
+msgid "updating files failed"
+msgstr "falha ao atualizar os ficheiros"
 
-#: builtin/apply.c:1895
+#: builtin/add.c:95
 #, c-format
-msgid "unrecognized binary patch at line %d"
-msgstr "patch binário não reconhecido na linha %d"
+msgid "remove '%s'\n"
+msgstr "remover '%s'\n"
 
-#: builtin/apply.c:2048
+#: builtin/add.c:149
+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:840
+msgid "Could not read the index"
+msgstr "Não foi possível ler o índice"
+
+#: builtin/add.c:220
 #, c-format
-msgid "patch with only garbage at line %d"
-msgstr "patch incompreensível na linha %d"
+msgid "Could not open '%s' for writing."
+msgstr "Não foi possível abrir '%s' para escrita."
+
+#: builtin/add.c:224
+msgid "Could not write patch"
+msgstr "Não foi possível escrever patch"
+
+#: builtin/add.c:227
+msgid "editing patch failed"
+msgstr "falha ao editar patch"
 
-#: builtin/apply.c:2138
+#: builtin/add.c:230
 #, c-format
-msgid "unable to read symlink %s"
-msgstr "não é possível ler a ligação simbólica %s"
+msgid "Could not stat '%s'"
+msgstr "Não foi possível obter stat de '%s'"
+
+#: builtin/add.c:232
+msgid "Empty patch. Aborted."
+msgstr "Patch vazio. Abortado."
 
-#: builtin/apply.c:2142
+#: builtin/add.c:237
 #, c-format
-msgid "unable to open or read %s"
-msgstr "não é possível abrir ou ler %s"
+msgid "Could not apply '%s'"
+msgstr "Não foi possível aplicar '%s'"
+
+#: builtin/add.c:247
+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:870 builtin/fetch.c:115 builtin/mv.c:111
+#: builtin/prune-packed.c:55 builtin/pull.c:198 builtin/push.c:521
+#: builtin/remote.c:1326 builtin/rm.c:268 builtin/send-pack.c:162
+msgid "dry run"
+msgstr "simular ação"
+
+#: builtin/add.c:269
+msgid "interactive picking"
+msgstr "seleção interativa"
+
+#: builtin/add.c:270 builtin/checkout.c:1156 builtin/reset.c:286
+msgid "select hunks interactively"
+msgstr "selecionar blocos interativamente"
+
+#: builtin/add.c:271
+msgid "edit current diff and apply"
+msgstr "editar o diff atual e aplicá-lo"
+
+#: builtin/add.c:272
+msgid "allow adding otherwise ignored files"
+msgstr "permitir adicionar ficheiros ignorados"
+
+#: builtin/add.c:273
+msgid "update tracked files"
+msgstr "atualizar ficheiros controlados"
+
+#: builtin/add.c:274
+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
+msgid "add changes from all tracked and untracked files"
+msgstr ""
+"adicionar alterações de todos os ficheiros controlados ou não controlados"
 
-#: builtin/apply.c:2775
+#: builtin/add.c:278
+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
+msgid "don't add, only refresh the index"
+msgstr "não adicionar, apenas atualizar o índice"
+
+#: builtin/add.c:281
+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
+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:947
+msgid "(+/-)x"
+msgstr "(+/-)x"
+
+#: builtin/add.c:283 builtin/update-index.c:948
+msgid "override the executable bit of the listed files"
+msgstr "substituir o bit executável dos ficheiros listados"
+
+#: builtin/add.c:305
 #, c-format
-msgid "invalid start of line: '%c'"
-msgstr "início de linha inválido: '%c'"
+msgid "Use -f if you really want to add them.\n"
+msgstr "Use -f se deseja mesmo adicioná-los.\n"
+
+#: builtin/add.c:312
+msgid "adding files failed"
+msgstr "falha ao adicionar ficheiros"
+
+#: builtin/add.c:348
+msgid "-A and -u are mutually incompatible"
+msgstr "-A e -u são mutuamente incompatíveis"
+
+#: builtin/add.c:355
+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/apply.c:2894
+#: builtin/add.c:359
 #, 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)."
+msgid "--chmod param '%s' must be either -x or +x"
+msgstr "o parâmetro '%s' de --chmod tem de ser -x ou +x"
 
-#: builtin/apply.c:2906
+#: builtin/add.c:374
 #, 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"
+msgid "Nothing specified, nothing added.\n"
+msgstr "Não foi especificado nada, nada adicionado.\n"
 
-#: builtin/apply.c:2912
+#: builtin/add.c:375
 #, c-format
-msgid ""
-"while searching for:\n"
-"%.*s"
-msgstr ""
-"ao procura por:\n"
-"%.*s"
+msgid "Maybe you wanted to say 'git add .'?\n"
+msgstr "Queria dizer 'git add .'?\n"
 
-#: builtin/apply.c:2932
-#, c-format
-msgid "missing binary patch data for '%s'"
-msgstr "falta de dados do patch binário '%s'"
+#: builtin/add.c:380 builtin/check-ignore.c:172 builtin/checkout.c:279
+#: builtin/checkout.c:472 builtin/clean.c:914 builtin/commit.c:350
+#: builtin/mv.c:131 builtin/reset.c:235 builtin/rm.c:298
+#: builtin/submodule--helper.c:244
+msgid "index file corrupt"
+msgstr "ficheiro de índice corrompido"
 
-#: builtin/apply.c:3033
-#, c-format
-msgid "binary patch does not apply to '%s'"
-msgstr "o patch binário não foi aplicado corretamente a '%s'"
+#: builtin/am.c:414
+msgid "could not parse author script"
+msgstr "não foi possível analisar o autor do script"
 
-#: builtin/apply.c:3039
+#: builtin/am.c:491
 #, 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)"
+msgid "'%s' was deleted by the applypatch-msg hook"
+msgstr "'%s' foi eliminado pelo hook applypatch-msg"
 
-#: builtin/apply.c:3060
+#: builtin/am.c:532
 #, c-format
-msgid "patch failed: %s:%ld"
-msgstr "falha ao aplicar o patch: %s:%ld"
+msgid "Malformed input line: '%s'."
+msgstr "Linha de entrada malformada: '%s'."
 
-#: builtin/apply.c:3184
+#: builtin/am.c:569
 #, c-format
-msgid "cannot checkout %s"
-msgstr "não é possível extrair %s"
+msgid "Failed to copy notes from '%s' to '%s'"
+msgstr "Falha ao copiar notas de '%s' para '%s'"
 
-#: builtin/apply.c:3229 builtin/apply.c:3240 builtin/apply.c:3285
-#, c-format
-msgid "read of %s failed"
-msgstr "falha ao ler %s"
+#: builtin/am.c:595
+msgid "fseek failed"
+msgstr "falha ao invocar fseek"
 
-#: builtin/apply.c:3237
+#: builtin/am.c:775
 #, c-format
-msgid "reading from '%s' beyond a symbolic link"
-msgstr "a ler '%s' indicado por uma ligação simbólica"
+msgid "could not parse patch '%s'"
+msgstr "não foi possível analisar o patch '%s'"
 
-#: builtin/apply.c:3265 builtin/apply.c:3487
-#, c-format
-msgid "path %s has been renamed/deleted"
-msgstr "o caminho %s foi eliminado ou mudou de nome"
+#: builtin/am.c:840
+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/apply.c:3346 builtin/apply.c:3501
-#, c-format
-msgid "%s: does not exist in index"
-msgstr "%s: não existe no índice"
+#: builtin/am.c:887
+msgid "invalid timestamp"
+msgstr "carimbo de data/hora inválido"
 
-#: builtin/apply.c:3350 builtin/apply.c:3493 builtin/apply.c:3515
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
+#: builtin/am.c:890 builtin/am.c:898
+msgid "invalid Date line"
+msgstr "linha de Data inválida"
 
-#: builtin/apply.c:3355 builtin/apply.c:3509
-#, c-format
-msgid "%s: does not match index"
-msgstr "%s: não tem correspondência no índice"
+#: builtin/am.c:895
+msgid "invalid timezone offset"
+msgstr "mudança de fuso horário inválida"
 
-#: builtin/apply.c:3457
-msgid "removal patch leaves file contents"
-msgstr "patch de remoção deixa conteúdos no ficheiro"
+#: builtin/am.c:984
+msgid "Patch format detection failed."
+msgstr "Falha ao detetar o formato do patch."
 
-#: builtin/apply.c:3526
+#: builtin/am.c:989 builtin/clone.c:379
 #, c-format
-msgid "%s: wrong type"
-msgstr "%s: tipo errado"
+msgid "failed to create directory '%s'"
+msgstr "falha ao criar o diretório '%s'"
 
-#: builtin/apply.c:3528
-#, c-format
-msgid "%s has type %o, expected %o"
-msgstr "%s é do tipo %o, esperado %o"
+#: builtin/am.c:993
+msgid "Failed to split patches."
+msgstr "Falha ao dividir patches."
 
-#: builtin/apply.c:3687 builtin/apply.c:3689
-#, c-format
-msgid "invalid path '%s'"
-msgstr "caminho inválido '%s'"
+#: 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/apply.c:3744
+#: builtin/am.c:1176
 #, c-format
-msgid "%s: already exists in index"
-msgstr "%s: já existe no índice"
+msgid "When you have resolved this problem, run \"%s --continue\"."
+msgstr "Após resolver este problema, execute \"%s --continue\"."
 
-#: builtin/apply.c:3747
+#: builtin/am.c:1177
 #, c-format
-msgid "%s: already exists in working directory"
-msgstr "%s: já existe no diretório de trabalho"
+msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
+msgstr "Se preferir ignorar este patch, execute \"%s --skip\"."
 
-#: builtin/apply.c:3767
+#: builtin/am.c:1178
 #, 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)"
+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/apply.c:3772
-#, 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"
+#: builtin/am.c:1316
+msgid "Patch is empty. Was it split wrong?"
+msgstr "O patch está vazio. Foi dividido incorretamente?"
 
-#: builtin/apply.c:3792
+#: builtin/am.c:1390 builtin/log.c:1550
 #, c-format
-msgid "affected file '%s' is beyond a symbolic link"
-msgstr "o ficheiro afetado '%s' é indicado por uma ligação simbólica"
+msgid "invalid ident line: %s"
+msgstr "linha de identidade inválida: %s"
 
-#: builtin/apply.c:3796
+#: builtin/am.c:1417
 #, c-format
-msgid "%s: patch does not apply"
-msgstr "%s: patch não se aplica com sucesso"
+msgid "unable to parse commit %s"
+msgstr "não foi possível analisar o commit %s"
 
-#: builtin/apply.c:3810
-#, c-format
-msgid "Checking patch %s..."
-msgstr "A verificar o patch %s..."
+#: builtin/am.c:1610
+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/apply.c:3903 builtin/checkout.c:233 builtin/reset.c:135
-#, c-format
-msgid "make_cache_entry failed for path '%s'"
-msgstr "falha ao invocar make_cache_entry em '%s'"
+#: builtin/am.c:1612
+msgid "Using index info to reconstruct a base tree..."
+msgstr "A usar informação do índice para reconstruir uma árvore de base..."
 
-#: builtin/apply.c:4046
-#, c-format
-msgid "unable to remove %s from index"
-msgstr "não é possível remover %s do índice"
+#: builtin/am.c:1631
+msgid ""
+"Did you hand edit your patch?\n"
+"It does not apply to blobs recorded in its index."
+msgstr ""
+"Editou o patch manualmente?\n"
+"Não é possível aplicá-lo aos blobs registados no índice."
 
-#: builtin/apply.c:4075
-#, c-format
-msgid "corrupt patch for submodule %s"
-msgstr "patch corrompido no submódulo %s"
+#: builtin/am.c:1637
+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/apply.c:4079
-#, c-format
-msgid "unable to stat newly created file '%s'"
-msgstr "não é possível obter estado do novo ficheiro criado '%s'"
+#: builtin/am.c:1662
+msgid "Failed to merge in the changes."
+msgstr "Falha ao integrar as alterações."
 
-#: builtin/apply.c:4084
+#: builtin/am.c:1686 builtin/merge.c:628
+msgid "git write-tree failed to write a tree"
+msgstr "git write-tree falhou ao escrever uma árvore"
+
+#: builtin/am.c:1693
+msgid "applying to an empty history"
+msgstr "a aplicar a um histórico vazio"
+
+#: builtin/am.c:1706 builtin/commit.c:1769 builtin/merge.c:798
+#: builtin/merge.c:823
+msgid "failed to write commit object"
+msgstr "falha ao escrever objeto de commit"
+
+#: builtin/am.c:1739 builtin/am.c:1743
 #, c-format
-msgid "unable to create backing store for newly created file %s"
+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 criar armazenamento de segurança do ficheiro recém-criado %s"
+"não é possível entrar em modo interativo sem um entrada padrão conectada a "
+"um terminal."
 
-#: builtin/apply.c:4087 builtin/apply.c:4195
-#, c-format
-msgid "unable to add cache entry for %s"
-msgstr "não é possível adicionar %s à cache"
+#: builtin/am.c:1764
+msgid "Commit Body is:"
+msgstr "Corpo do commit:"
 
-#: builtin/apply.c:4120
-#, c-format
-msgid "closing file '%s'"
-msgstr "a fechar o ficheiro '%s'"
+#. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
+#. in your translation. The program will only accept English
+#. input at this point.
+#.
+#: builtin/am.c:1774
+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/apply.c:4169
+#: builtin/am.c:1824
 #, c-format
-msgid "unable to write file '%s' mode %o"
-msgstr "não é possível escrever o ficheiro '%s' com o modo %o"
+msgid "Dirty index: cannot apply patches (dirty: %s)"
+msgstr "Índice modificado: não é possível aplicar patches (modificado: %s)"
 
-#: builtin/apply.c:4256
+#: builtin/am.c:1861 builtin/am.c:1933
 #, c-format
-msgid "Applied patch %s cleanly."
-msgstr "Patch %s aplicado com sucesso."
+msgid "Applying: %.*s"
+msgstr "A aplicar: %.*s"
 
-#: builtin/apply.c:4264
-msgid "internal error"
-msgstr "erro interno"
+#: builtin/am.c:1877
+msgid "No changes -- Patch already applied."
+msgstr "Nenhuma alteração -- Já foi aplicado o patch."
 
-#: builtin/apply.c:4267
+#: builtin/am.c:1885
 #, 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..."
+msgid "Patch failed at %s %.*s"
+msgstr "Falha ao aplicar o patch em %s %.*s"
 
-#: builtin/apply.c:4277
+#: builtin/am.c:1891
 #, c-format
-msgid "truncating .rej filename to %.*s.rej"
-msgstr "a truncar o nome do ficheiro .rej em %.*s.rej"
+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/apply.c:4285
-#, c-format
-msgid "cannot open %s: %s"
-msgstr "não é possível abrir %s: %s"
+#: builtin/am.c:1936
+msgid ""
+"No changes - did you forget to use 'git add'?\n"
+"If there is nothing left to stage, chances are that something else\n"
+"already introduced the same changes; you might want to skip this patch."
+msgstr ""
+"Sem alterações - esqueceu-se de usar 'git add'?\n"
+"Se não há nada por preparar, provavelmente essas mesmas alterações\n"
+"já foram introduzidas; pode querer ignorar este patch."
 
-#: builtin/apply.c:4298
-#, c-format
-msgid "Hunk #%d applied cleanly."
-msgstr "Excerto nº%d aplicado com sucesso."
+#: builtin/am.c:1943
+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'?"
 
-#: builtin/apply.c:4301
+#: builtin/am.c:2051 builtin/am.c:2055 builtin/am.c:2067 builtin/reset.c:308
+#: builtin/reset.c:316
 #, c-format
-msgid "Rejected hunk #%d."
-msgstr "Excerto nº%d rejeitado."
+msgid "Could not parse object '%s'."
+msgstr "Não foi possível analisar o objeto '%s'."
 
-#: builtin/apply.c:4387
-#, c-format
-msgid "Skipped patch '%s'."
-msgstr "Patch '%s' ignorado."
+#: builtin/am.c:2103
+msgid "failed to clean index"
+msgstr "falha ao limpar o índice"
 
-#: builtin/apply.c:4395
-msgid "unrecognized input"
-msgstr "entrada não reconhecida"
+#: builtin/am.c:2137
+msgid ""
+"You seem to have moved HEAD since the last 'am' failure.\n"
+"Not rewinding to ORIG_HEAD"
+msgstr ""
+"Parece que a HEAD foi movida desde a última vez que o 'am' falhou.\n"
+"Não recuando a ORIG_HEAD"
 
-#: builtin/apply.c:4406
-msgid "unable to read index file"
-msgstr "não foi possível ler o ficheiro de índice"
+#: builtin/am.c:2200
+#, c-format
+msgid "Invalid value for --patch-format: %s"
+msgstr "Valor inválido de --patch-format: %s"
 
-#: builtin/apply.c:4509
-msgid "don't apply changes matching the given path"
-msgstr "não aplicar alterações que correspondam ao caminho fornecido"
+#: builtin/am.c:2233
+msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
+msgstr "git am [<opções>] [(<mbox> | <Maildir>)...]"
 
-#: builtin/apply.c:4512
-msgid "apply changes matching the given path"
-msgstr "aplicar alterações que correspondam ao caminho fornecido"
+#: builtin/am.c:2234
+msgid "git am [<options>] (--continue | --skip | --abort)"
+msgstr "git am [<opções>] (--continue | --skip | --abort)"
 
-#: builtin/apply.c:4515
-msgid "remove <num> leading slashes from traditional diff paths"
-msgstr "remover <num> barras à esquerda dos caminhos de diff tradicional"
+#: builtin/am.c:2240
+msgid "run interactively"
+msgstr "executar interativamente"
 
-#: builtin/apply.c:4518
-msgid "ignore additions made by the patch"
-msgstr "ignorar adições feitas pelo patch"
+#: builtin/am.c:2242
+msgid "historical option -- no-op"
+msgstr "opção histórica -- sem-ação"
 
-#: builtin/apply.c:4520
-msgid "instead of applying the patch, output diffstat for the input"
-msgstr "em vez de aplicar o patch, mostrar o diffstat da entrada"
+#: builtin/am.c:2244
+msgid "allow fall back on 3way merging if needed"
+msgstr "permitir recorrer a integração com 3 pontos se necessário"
 
-#: builtin/apply.c:4524
-msgid "show number of added and deleted lines in decimal notation"
-msgstr "mostrar número de linhas adicionadas e removidas em notação decimal"
+#: builtin/am.c:2245 builtin/init-db.c:483 builtin/prune-packed.c:57
+#: builtin/repack.c:172
+msgid "be quiet"
+msgstr "silencioso"
 
-#: builtin/apply.c:4526
-msgid "instead of applying the patch, output a summary for the input"
-msgstr "em vez de aplicar o patch, mostrar um resumo da entrada"
+#: builtin/am.c:2247
+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/apply.c:4528
-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"
+#: builtin/am.c:2250
+msgid "recode into utf8 (default)"
+msgstr "recodificar em utf8 (predefinição)"
 
-#: builtin/apply.c:4530
-msgid "make sure the patch is applicable to the current index"
-msgstr "garantir que o patch pode ser aplicado ao índice atual"
+#: builtin/am.c:2252
+msgid "pass -k flag to git-mailinfo"
+msgstr "passar a opção -k ao git-mailinfo"
 
-#: builtin/apply.c:4532
-msgid "apply a patch without touching the working tree"
-msgstr "aplicar um patch sem tocar na árvore de trabalho"
+#: builtin/am.c:2254
+msgid "pass -b flag to git-mailinfo"
+msgstr "passar a opção -b ao git-mailinfo"
 
-#: builtin/apply.c:4534
-msgid "accept a patch that touches outside the working area"
-msgstr "aceitar patches que alteram ficheiros fora da área de trabalho"
+#: builtin/am.c:2256
+msgid "pass -m flag to git-mailinfo"
+msgstr "passar a opção -m ao git-mailinfo"
 
-#: builtin/apply.c:4536
-msgid "also apply the patch (use with --stat/--summary/--check)"
-msgstr "aplicar o patch também (use com --stat/--summary/--check)"
+#: builtin/am.c:2258
+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/apply.c:4538
-msgid "attempt three-way merge if a patch does not apply"
+#: builtin/am.c:2261
+msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
-"tentar integração com três pontos se um patch não se se aplica com êxito"
+"não passar a opção --keep-cr ao git-mailsplit independentemente de am.keepcr"
 
-#: builtin/apply.c:4540
-msgid "build a temporary index based on embedded index information"
-msgstr ""
-"construir um índice temporário baseado na informação incorporada do índice"
+#: builtin/am.c:2264
+msgid "strip everything before a scissors line"
+msgstr "retirar todo o conteúdo antes da linha de tesoura"
 
-#: builtin/apply.c:4543 builtin/checkout-index.c:169 builtin/ls-files.c:425
-msgid "paths are separated with NUL character"
-msgstr "os caminhos estão separados por caracteres NUL"
+#: 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
+msgid "pass it through git-apply"
+msgstr "transmitir ao git-apply"
 
-#: builtin/apply.c:4545
-msgid "ensure at least <n> lines of context match"
-msgstr "garantir que, pelo menos, <n> linhas de contexto coincidem"
+#: builtin/am.c:2283 builtin/fmt-merge-msg.c:662 builtin/fmt-merge-msg.c:665
+#: builtin/grep.c:707 builtin/merge.c:200 builtin/pull.c:135
+#: builtin/pull.c:194 builtin/repack.c:181 builtin/repack.c:185
+#: builtin/show-branch.c:644 builtin/show-ref.c:175 builtin/tag.c:340
+#: parse-options.h:132 parse-options.h:134 parse-options.h:245
+msgid "n"
+msgstr "n"
 
-#: builtin/apply.c:4547
-msgid "detect new or modified lines that have whitespace errors"
-msgstr "detetar linhas novas ou modificadas que tenham espaços em branco"
+#: builtin/am.c:2289 builtin/for-each-ref.c:37 builtin/replace.c:438
+#: builtin/tag.c:372
+msgid "format"
+msgstr "formato"
 
-#: builtin/apply.c:4550 builtin/apply.c:4553
-msgid "ignore changes in whitespace when finding context"
-msgstr "ignorar alterações de espaço em branco ao procurar contexto"
+#: builtin/am.c:2290
+msgid "format the patch(es) are in"
+msgstr "formato de apresentação de patches"
 
-#: builtin/apply.c:4556
-msgid "apply the patch in reverse"
-msgstr "aplicar o patch em reverso"
+#: builtin/am.c:2296
+msgid "override error message when patch failure occurs"
+msgstr "substituir a mensagem de erro quando a aplicação do patch falha"
 
-#: builtin/apply.c:4558
-msgid "don't expect at least one line of context"
-msgstr "não esperar nenhuma linha de contexto"
+#: builtin/am.c:2298
+msgid "continue applying patches after resolving a conflict"
+msgstr "continuar a aplicar os patches depois de resolver os conflitos"
 
-#: builtin/apply.c:4560
-msgid "leave the rejected hunks in corresponding *.rej files"
-msgstr "deixar os excertos rejeitados nos respetivos ficheiros *.rej"
+#: builtin/am.c:2301
+msgid "synonyms for --continue"
+msgstr "sinónimo de --continue"
 
-#: builtin/apply.c:4562
-msgid "allow overlapping hunks"
-msgstr "permitir a sobreposição de excertos"
+#: builtin/am.c:2304
+msgid "skip the current patch"
+msgstr "ignorar o patch atual"
 
-#: builtin/apply.c:4565
-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"
+#: builtin/am.c:2307
+msgid "restore the original branch and abort the patching operation."
+msgstr "restaurar o ramo original e abortar a operação de patch."
 
-#: builtin/apply.c:4568
-msgid "do not trust the line counts in the hunk headers"
-msgstr "não confiar na contagem de linhas no cabeçalho dos excertos"
+#: builtin/am.c:2311
+msgid "lie about committer date"
+msgstr "mentir sobre a data de commit"
 
-#: builtin/apply.c:4571
-msgid "prepend <root> to all filenames"
-msgstr "preceder <root> a todos os nomes de ficheiro"
+#: builtin/am.c:2313
+msgid "use current timestamp for author date"
+msgstr "usar a data e hora atual como data de autor"
 
-#: builtin/apply.c:4593
-msgid "--3way outside a repository"
-msgstr "--3way fora de um repositório"
+#: builtin/am.c:2315 builtin/commit.c:1605 builtin/merge.c:229
+#: builtin/pull.c:165 builtin/revert.c:92 builtin/tag.c:355
+msgid "key-id"
+msgstr "id-chave"
 
-#: builtin/apply.c:4601
-msgid "--index outside a repository"
-msgstr "--index fora de um repositório"
+#: builtin/am.c:2316
+msgid "GPG-sign commits"
+msgstr "assinar os commits com GPG"
 
-#: builtin/apply.c:4604
-msgid "--cached outside a repository"
-msgstr "--cached fora de um repositório"
+#: builtin/am.c:2319
+msgid "(internal use for git-rebase)"
+msgstr "(uso interno de git-rebase)"
 
-#: builtin/apply.c:4623
-#, c-format
-msgid "can't open patch '%s'"
-msgstr "não é possível abrir o patch '%s'"
+#: builtin/am.c:2334
+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."
+msgstr ""
+"A opção -b/--binary há muito que é ignorada e será\n"
+"futuramente removida. Por favor não a use."
 
-#: builtin/apply.c:4637
+#: builtin/am.c:2341
+msgid "failed to read the index"
+msgstr "falha ao ler o índice"
+
+#: builtin/am.c:2356
 #, 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"
+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/apply.c:4643 builtin/apply.c:4653
+#: builtin/am.c:2380
 #, 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."
+msgid ""
+"Stray %s directory found.\n"
+"Use \"git am --abort\" to remove it."
+msgstr ""
+"Diretório abandonado %s encontrado.\n"
+"Use \"git am --abort\" para o remover."
+
+#: builtin/am.c:2386
+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/apply.c:8
+msgid "git apply [<options>] [<patch>...]"
+msgstr "git apply [<opções>] [<patch>...]"
 
 #: builtin/archive.c:17
 #, c-format
@@ -3730,118 +4606,170 @@ msgstr "git blame [<opções>] [<rev-opções>] [<rev>] [--] <ficheiro>"
 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:1782
+#: builtin/blame.c:1781
 msgid "Blaming lines"
 msgstr "Linhas de culpa"
 
-#: builtin/blame.c:2531
+#: builtin/blame.c:2577
 msgid "Show blame entries as we find them, incrementally"
 msgstr ""
 "Mostrar entradas de culpa à medida que forem encontradas, incrementalmente"
 
-#: builtin/blame.c:2532
+#: builtin/blame.c:2578
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr "Mostar SHA-1 dos commits limite em branco (Predefinição: desativado)"
 
-#: builtin/blame.c:2533
+#: builtin/blame.c:2579
 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:2534
+#: builtin/blame.c:2580
 msgid "Show work cost statistics"
 msgstr "Mostrar estatísticas de custo de atividade"
 
-#: builtin/blame.c:2535
+#: builtin/blame.c:2581
 msgid "Force progress reporting"
 msgstr "Forçar informação de progresso"
 
-#: builtin/blame.c:2536
+#: builtin/blame.c:2582
 msgid "Show output score for blame entries"
 msgstr "Mostrar a pontuação das entradas de culpa"
 
-#: builtin/blame.c:2537
+#: builtin/blame.c:2583
 msgid "Show original filename (Default: auto)"
 msgstr "Mostrar o nome do ficheiro original (Predefinição: auto)"
 
-#: builtin/blame.c:2538
+#: builtin/blame.c:2584
 msgid "Show original linenumber (Default: off)"
 msgstr "Mostrar números de linha originais (Predefinição: desativado)"
 
-#: builtin/blame.c:2539
+#: builtin/blame.c:2585
 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:2540
+#: builtin/blame.c:2586
 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:2541
+#: builtin/blame.c:2587
 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:2542
+#: builtin/blame.c:2588
 msgid "Show raw timestamp (Default: off)"
 msgstr "Mostrar carimbo de data/hora em bruto (Predefinição: desativado)"
 
-#: builtin/blame.c:2543
+#: builtin/blame.c:2589
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "Mostrar SHA1 longo de commit (Predefinição: desativado)"
 
-#: builtin/blame.c:2544
+#: builtin/blame.c:2590
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr ""
 "Suprimir nome de autor e carimbo de data/hora (Predefinição: desativado)"
 
-#: builtin/blame.c:2545
+#: builtin/blame.c:2591
 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:2546
+#: builtin/blame.c:2592
 msgid "Ignore whitespace differences"
 msgstr "Ignorar as diferenças de espaço em branco"
 
-#: builtin/blame.c:2547
+#: builtin/blame.c:2599
+msgid "Use an experimental indent-based heuristic to improve diffs"
+msgstr ""
+"Usar um heurística experimental baseada em indentação para melhorar diffs"
+
+#: builtin/blame.c:2600
+msgid "Use an experimental blank-line-based heuristic to improve diffs"
+msgstr ""
+"Usar uma heurística experimental baseada em linhas brancas para melhorar "
+"diffs"
+
+#: builtin/blame.c:2602
 msgid "Spend extra cycles to find better match"
 msgstr "Despender ciclos extra para encontrar uma melhor correspondência"
 
-#: builtin/blame.c:2548
+#: builtin/blame.c:2603
 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:2549
+#: builtin/blame.c:2604
 msgid "Use <file>'s contents as the final image"
 msgstr "Usar o conteúdo do <ficheiro> como imagem final"
 
-#: builtin/blame.c:2550 builtin/blame.c:2551
+#: builtin/blame.c:2605 builtin/blame.c:2606
 msgid "score"
 msgstr "pontuação"
 
-#: builtin/blame.c:2550
+#: builtin/blame.c:2605
 msgid "Find line copies within and across files"
 msgstr "Localizar linhas copiadas dentro e entre ficheiros"
 
-#: builtin/blame.c:2551
+#: builtin/blame.c:2606
 msgid "Find line movements within and across files"
 msgstr "Localizar linhas movidas dentro e entre ficheiros"
 
-#: builtin/blame.c:2552
+#: builtin/blame.c:2607
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:2552
+#: builtin/blame.c:2607
 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:2654
+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:2641
+#: builtin/blame.c:2700
 msgid "4 years, 11 months ago"
 msgstr "há 4 anos e 11 meses atrás"
 
+#: builtin/blame.c:2780
+msgid "--contents and --reverse do not blend well."
+msgstr "--contents e --reverse não se misturam bem."
+
+#: builtin/blame.c:2800
+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:2805
+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:2832
+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:2843
+#, c-format
+msgid "no such path %s in %s"
+msgstr "o caminho %s não existe em %s"
+
+#: builtin/blame.c:2854
+#, 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:2873
+#, 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]"
 msgstr "git branch [<opções>] [-r | -a] [--merged | --no-merged]"
@@ -3941,120 +4869,127 @@ msgstr "Ramo de monitorização remoto %s eliminado (era %s).\n"
 msgid "Deleted branch %s (was %s).\n"
 msgstr "Ramo %s eliminado (era %s).\n"
 
-#: builtin/branch.c:309
+#: builtin/branch.c:312
 #, c-format
 msgid "[%s: gone]"
 msgstr "[%s: desaparecido]"
 
-#: builtin/branch.c:314
+#: builtin/branch.c:317
 #, c-format
 msgid "[%s]"
 msgstr "[%s]"
 
-#: builtin/branch.c:319
+#: builtin/branch.c:322
 #, c-format
 msgid "[%s: behind %d]"
 msgstr "[%s: atrás %d]"
 
-#: builtin/branch.c:321
+#: builtin/branch.c:324
 #, c-format
 msgid "[behind %d]"
 msgstr "[atrás %d]"
 
-#: builtin/branch.c:325
+#: builtin/branch.c:328
 #, c-format
 msgid "[%s: ahead %d]"
 msgstr "[%s: à frente %d]"
 
-#: builtin/branch.c:327
+#: builtin/branch.c:330
 #, c-format
 msgid "[ahead %d]"
 msgstr "[à frente %d]"
 
-#: builtin/branch.c:330
+#: builtin/branch.c:333
 #, c-format
 msgid "[%s: ahead %d, behind %d]"
 msgstr "[%s: à frente %d, atrás %d]"
 
-#: builtin/branch.c:333
+#: builtin/branch.c:336
 #, c-format
 msgid "[ahead %d, behind %d]"
 msgstr "[à frente %d, atrás %d]"
 
-#: builtin/branch.c:346
+#: builtin/branch.c:349
 msgid " **** invalid ref ****"
 msgstr " **** referências inválida ****"
 
-#: builtin/branch.c:372
+#: builtin/branch.c:375
 #, c-format
 msgid "(no branch, rebasing %s)"
 msgstr "(nenhum ramo, a efetuar rebase de %s)"
 
-#: builtin/branch.c:375
+#: builtin/branch.c:378
 #, 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
-#: builtin/branch.c:381
+#: builtin/branch.c:384
 #, c-format
 msgid "(HEAD detached at %s)"
 msgstr "(HEAD destacada em %s)"
 
 #. TRANSLATORS: make sure this matches
 #. "HEAD detached from " in wt-status.c
-#: builtin/branch.c:386
+#: builtin/branch.c:389
 #, c-format
 msgid "(HEAD detached from %s)"
 msgstr "(HEAD destacada de %s)"
 
-#: builtin/branch.c:390
+#: builtin/branch.c:393
 msgid "(no branch)"
 msgstr "(nenhum ramo)"
 
-#: builtin/branch.c:541
+#: builtin/branch.c:544
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr "O ramo %s está a ser rebaseado em %s"
 
-#: builtin/branch.c:545
+#: builtin/branch.c:548
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr "O ramo %s está a ser bissetado em %s"
 
-#: builtin/branch.c:560
+#: builtin/branch.c:563
 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:570
+#: builtin/branch.c:573
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Nome de ramo inválido: '%s'"
 
-#: builtin/branch.c:587
+#: builtin/branch.c:590
 msgid "Branch rename failed"
 msgstr "Falha ao mudar o nome do ramo"
 
-#: builtin/branch.c:591
+#: builtin/branch.c:594
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "O ramo incorretamente denominado '%s' mudou de nome"
 
-#: builtin/branch.c:594
+#: builtin/branch.c:597
 #, 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:601
+#: builtin/branch.c:604
 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:623
-msgid "could not write branch description template"
-msgstr "não foi possível escrever o modelo da descrição do ramo"
+#: builtin/branch.c:620
+#, c-format
+msgid ""
+"Please edit the description for the branch\n"
+"  %s\n"
+"Lines starting with '%c' will be stripped.\n"
+msgstr ""
+"Edite a descrição do ramo:\n"
+"  %s\n"
+"Linha começadas com '%c' serão ignoradas.\n"
 
 #: builtin/branch.c:651
 msgid "Generic options"
@@ -4084,6 +5019,10 @@ msgstr "a montante"
 msgid "change the upstream info"
 msgstr "alterar a informação do ramo a montante"
 
+#: builtin/branch.c:660
+msgid "Unset the upstream info"
+msgstr "Remover a informação do ramo a montante"
+
 #: builtin/branch.c:661
 msgid "use colored output"
 msgstr "usar saída colorida"
@@ -4156,8 +5095,8 @@ msgstr "chave"
 msgid "field name to sort on"
 msgstr "nome do campo pelo qual ordernar"
 
-#: builtin/branch.c:686 builtin/for-each-ref.c:41 builtin/notes.c:401
-#: builtin/notes.c:404 builtin/notes.c:564 builtin/notes.c:567
+#: builtin/branch.c:686 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:369
 msgid "object"
 msgstr "objeto"
@@ -4170,7 +5109,7 @@ msgstr "imprimir apenas os ramos do objeto"
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Falha ao resolver HEAD numa referência válida."
 
-#: builtin/branch.c:709 builtin/clone.c:707
+#: builtin/branch.c:709 builtin/clone.c:706
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD não encontrada em refs/heads!"
 
@@ -4247,7 +5186,8 @@ msgstr "não faz sentido criar 'HEAD' manualmente"
 
 #: builtin/branch.c:846
 msgid "-a and -r options to 'git branch' do not make sense with a branch name"
-msgstr "as opções -a e -r de 'git branch' não fazem sentido com um nome de ramo"
+msgstr ""
+"as opções -a e -r de 'git branch' não fazem sentido com um nome de ramo"
 
 #: builtin/branch.c:849
 #, c-format
@@ -4282,65 +5222,81 @@ msgstr "É necessário um repositório para criar um bundle."
 msgid "Need a repository to unbundle."
 msgstr "É preciso um repositório para desempacotar."
 
-#: builtin/cat-file.c:428
+#: builtin/cat-file.c:513
 msgid ""
-"git cat-file (-t [--allow-unknown-type]|-s [--allow-unknown-type]|-e|-p|"
-"<type>|--textconv) <object>"
+"git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
+"p | <type> | --textconv | --filters) [--path=<path>] <object>"
 msgstr ""
-"git cat-file (-t [--allow-unknown-type]|-s [--allow-unknown-"
-"type]|-e|-p|<tipo>|--textconv) <objeto>"
+"git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
+"p | <tipo> | --textconv | --filters) [--path=<caminho>] <objeto>"
 
-#: builtin/cat-file.c:429
-msgid "git cat-file (--batch | --batch-check) [--follow-symlinks]"
-msgstr "git cat-file (--batch | --batch-check) [--follow-symlinks]"
+#: builtin/cat-file.c:514
+msgid ""
+"git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
+"filters]"
+msgstr ""
+"git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
+"filters]"
 
-#: builtin/cat-file.c:466
+#: builtin/cat-file.c:551
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<tipo> pode ser um de: blob, tree, commit, tag"
 
-#: builtin/cat-file.c:467
+#: builtin/cat-file.c:552
 msgid "show object type"
 msgstr "mostrar tipo do objeto"
 
-#: builtin/cat-file.c:468
+#: builtin/cat-file.c:553
 msgid "show object size"
 msgstr "mostrar tamanho do objeto"
 
-#: builtin/cat-file.c:470
+#: builtin/cat-file.c:555
 msgid "exit with zero when there's no error"
 msgstr "sair com retorno zero quando não houver erros"
 
-#: builtin/cat-file.c:471
+#: builtin/cat-file.c:556
 msgid "pretty-print object's content"
 msgstr "mostrar conteúdo do objeto com impressão bonita"
 
-#: builtin/cat-file.c:473
+#: builtin/cat-file.c:558
 msgid "for blob objects, run textconv on object's content"
 msgstr "executar textconv no conteúdo de objetos blob"
 
-#: builtin/cat-file.c:475
+#: builtin/cat-file.c:560
+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:923
+msgid "blob"
+msgstr "blob"
+
+#: builtin/cat-file.c:562
+msgid "use a specific path for --textconv/--filters"
+msgstr "usar um caminho específico para --textconv/--filters"
+
+#: builtin/cat-file.c:564
 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:476
+#: builtin/cat-file.c:565
 msgid "buffer --batch output"
 msgstr "carregar a saída de --batch"
 
-#: builtin/cat-file.c:478
+#: builtin/cat-file.c:567
 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:481
+#: builtin/cat-file.c:570
 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:484
+#: builtin/cat-file.c:573
 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:486
+#: builtin/cat-file.c:575
 msgid "show all objects with --batch or --batch-check"
 msgstr "mostrar todos os objetos com --batch ou --batch-check"
 
@@ -4360,7 +5316,7 @@ msgstr "apresentar todos os atributos definidos no ficheiro"
 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:97
+#: builtin/check-attr.c:21 builtin/check-ignore.c:22 builtin/hash-object.c:98
 msgid "read file names from stdin"
 msgstr "ler os nomes dos ficheiros da entrada padrão"
 
@@ -4368,7 +5324,7 @@ msgstr "ler os nomes dos ficheiros da entrada padrão"
 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:1135 builtin/gc.c:325
+#: builtin/check-ignore.c:18 builtin/checkout.c:1137 builtin/gc.c:325
 msgid "suppress progress reporting"
 msgstr "suprimir informação de progresso"
 
@@ -4460,9 +5416,9 @@ 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:491 builtin/submodule--helper.c:494
-#: builtin/submodule--helper.c:497 builtin/submodule--helper.c:500
-#: builtin/submodule--helper.c:774
+#: builtin/submodule--helper.c:595 builtin/submodule--helper.c:598
+#: builtin/submodule--helper.c:604 builtin/submodule--helper.c:951
+#: builtin/worktree.c:469
 msgid "string"
 msgstr "cadeia"
 
@@ -4529,63 +5485,59 @@ 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:279 builtin/checkout.c:473
-msgid "corrupt index file"
-msgstr "ficheiro de índice corrompido"
-
 #: builtin/checkout.c:339 builtin/checkout.c:346
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "o caminho '%s' não foi integrado"
 
-#: builtin/checkout.c:495
+#: builtin/checkout.c:494
 msgid "you need to resolve your current index first"
 msgstr "primeiro deve resolver o índice atual"
 
-#: builtin/checkout.c:622
+#: builtin/checkout.c:624
 #, 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:660
+#: builtin/checkout.c:663
 msgid "HEAD is now at"
 msgstr "HEAD está agora em"
 
-#: builtin/checkout.c:664 builtin/clone.c:661
+#: builtin/checkout.c:667 builtin/clone.c:660
 msgid "unable to update HEAD"
 msgstr "não foi possível atualizar HEAD"
 
-#: builtin/checkout.c:668
+#: builtin/checkout.c:671
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Repor ramo '%s'\n"
 
-#: builtin/checkout.c:671
+#: builtin/checkout.c:674
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Já em '%s'\n"
 
-#: builtin/checkout.c:675
+#: builtin/checkout.c:678
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Mudou para e repôs o ramo '%s'\n"
 
-#: builtin/checkout.c:677 builtin/checkout.c:1067
+#: builtin/checkout.c:680 builtin/checkout.c:1069
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Mudou para o novo ramo '%s'\n"
 
-#: builtin/checkout.c:679
+#: builtin/checkout.c:682
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Mudou para o ramo '%s'\n"
 
-#: builtin/checkout.c:731
+#: builtin/checkout.c:733
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... e mais %d.\n"
 
-#: builtin/checkout.c:737
+#: builtin/checkout.c:739
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -4606,7 +5558,7 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:756
+#: builtin/checkout.c:758
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -4633,166 +5585,166 @@ msgstr[1] ""
 " git branch <nome-do-novo-ramo> %s\n"
 "\n"
 
-#: builtin/checkout.c:792
+#: builtin/checkout.c:794
 msgid "internal error in revision walk"
 msgstr "erro interno durante o curso de revisões"
 
-#: builtin/checkout.c:796
+#: builtin/checkout.c:798
 msgid "Previous HEAD position was"
 msgstr "A posição anterior de HEAD era"
 
-#: builtin/checkout.c:823 builtin/checkout.c:1062
+#: builtin/checkout.c:825 builtin/checkout.c:1064
 msgid "You are on a branch yet to be born"
 msgstr "Está num ramo ainda não criado"
 
-#: builtin/checkout.c:968
+#: builtin/checkout.c:970
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "esperava-se apenas uma referência, %d fornecidas."
 
-#: builtin/checkout.c:1008 builtin/worktree.c:212
+#: builtin/checkout.c:1010 builtin/worktree.c:214
 #, c-format
 msgid "invalid reference: %s"
 msgstr "referência inválida: %s"
 
-#: builtin/checkout.c:1037
+#: builtin/checkout.c:1039
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "a referência não é uma árvore: %s"
 
-#: builtin/checkout.c:1076
+#: builtin/checkout.c:1078
 msgid "paths cannot be used with switching branches"
 msgstr "não podem ser usados caminhos ao mudar de ramo"
 
-#: builtin/checkout.c:1079 builtin/checkout.c:1083
+#: builtin/checkout.c:1081 builtin/checkout.c:1085
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "'%s' não pode ser usado ao mudar de ramo"
 
-#: builtin/checkout.c:1087 builtin/checkout.c:1090 builtin/checkout.c:1095
-#: builtin/checkout.c:1098
+#: builtin/checkout.c:1089 builtin/checkout.c:1092 builtin/checkout.c:1097
+#: builtin/checkout.c:1100
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' não pode ser usado com '%s'"
 
-#: builtin/checkout.c:1103
+#: builtin/checkout.c:1105
 #, 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:1136 builtin/checkout.c:1138 builtin/clone.c:88
-#: builtin/remote.c:165 builtin/remote.c:167 builtin/worktree.c:323
-#: builtin/worktree.c:325
+#: builtin/checkout.c:1138 builtin/checkout.c:1140 builtin/clone.c:93
+#: builtin/remote.c:165 builtin/remote.c:167 builtin/worktree.c:324
+#: builtin/worktree.c:326
 msgid "branch"
 msgstr "ramo"
 
-#: builtin/checkout.c:1137
+#: builtin/checkout.c:1139
 msgid "create and checkout a new branch"
 msgstr "criar e extrair um novo ramo"
 
-#: builtin/checkout.c:1139
+#: builtin/checkout.c:1141
 msgid "create/reset and checkout a branch"
 msgstr "criar/repor e extrair um ramo"
 
-#: builtin/checkout.c:1140
+#: builtin/checkout.c:1142
 msgid "create reflog for new branch"
 msgstr "criar reflog do novo ramo"
 
-#: builtin/checkout.c:1141
-msgid "detach the HEAD at named commit"
+#: builtin/checkout.c:1143 builtin/worktree.c:328
+msgid "detach HEAD at named commit"
 msgstr "destacar HEAD no commit indicado"
 
-#: builtin/checkout.c:1142
+#: builtin/checkout.c:1144
 msgid "set upstream info for new branch"
 msgstr "definir a informação do ramo a montante do novo ramo"
 
-#: builtin/checkout.c:1144
+#: builtin/checkout.c:1146
 msgid "new-branch"
 msgstr "novo-ramo"
 
-#: builtin/checkout.c:1144
+#: builtin/checkout.c:1146
 msgid "new unparented branch"
 msgstr "novo ramo sem pai"
 
-#: builtin/checkout.c:1145
+#: builtin/checkout.c:1147
 msgid "checkout our version for unmerged files"
 msgstr "extrair a nossa versão dos ficheiros não integrados"
 
-#: builtin/checkout.c:1147
+#: builtin/checkout.c:1149
 msgid "checkout their version for unmerged files"
 msgstr "extrair a versão deles dos ficheiros não integrados"
 
-#: builtin/checkout.c:1149
+#: builtin/checkout.c:1151
 msgid "force checkout (throw away local modifications)"
 msgstr "forçar extração (descartar modificações locais)"
 
-#: builtin/checkout.c:1150
+#: builtin/checkout.c:1152
 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:1151 builtin/merge.c:230
+#: builtin/checkout.c:1153 builtin/merge.c:231
 msgid "update ignored files (default)"
 msgstr "atualizar ficheiros ignorados (predefinição)"
 
-#: builtin/checkout.c:1152 builtin/log.c:1432 parse-options.h:250
+#: builtin/checkout.c:1154 builtin/log.c:1466 parse-options.h:251
 msgid "style"
 msgstr "estilo"
 
-#: builtin/checkout.c:1153
+#: builtin/checkout.c:1155
 msgid "conflict style (merge or diff3)"
 msgstr "estilo de conflito (merge ou diff3)"
 
-#: builtin/checkout.c:1156
+#: builtin/checkout.c:1158
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "não restringir especificadores de caminho a entradas esparsas"
 
-#: builtin/checkout.c:1158
+#: builtin/checkout.c:1160
 msgid "second guess 'git checkout <no-such-branch>'"
 msgstr "tentar adivinhar 'git checkout <ramo-inexistente>'"
 
-#: builtin/checkout.c:1160
+#: builtin/checkout.c:1162
 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:1161 builtin/clone.c:60 builtin/fetch.c:116
-#: builtin/merge.c:227 builtin/pull.c:116 builtin/push.c:526
+#: builtin/checkout.c:1163 builtin/clone.c:63 builtin/fetch.c:119
+#: builtin/merge.c:228 builtin/pull.c:117 builtin/push.c:536
 #: builtin/send-pack.c:168
 msgid "force progress reporting"
 msgstr "forçar informação de progresso"
 
-#: builtin/checkout.c:1192
+#: builtin/checkout.c:1194
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "-b, -B e --orphan são mutuamente exclusivos"
 
-#: builtin/checkout.c:1209
+#: builtin/checkout.c:1211
 msgid "--track needs a branch name"
 msgstr "--track requer um nome dum ramo"
 
-#: builtin/checkout.c:1214
+#: builtin/checkout.c:1216
 msgid "Missing branch name; try -b"
 msgstr "Falta um nome dum ramo; tente -b"
 
-#: builtin/checkout.c:1250
+#: builtin/checkout.c:1252
 msgid "invalid path specification"
 msgstr "especificação de caminho inválida"
 
-#: builtin/checkout.c:1257
+#: builtin/checkout.c:1259
 #, 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"
+"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:1262
+#: builtin/checkout.c:1264
 #, 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:1266
+#: builtin/checkout.c:1268
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -4944,8 +5896,8 @@ msgstr "limpeza interativa"
 msgid "remove whole directories"
 msgstr "remover diretórios inteiros"
 
-#: builtin/clean.c:875 builtin/describe.c:407 builtin/grep.c:724
-#: builtin/ls-files.c:456 builtin/name-rev.c:314 builtin/show-ref.c:182
+#: builtin/clean.c:875 builtin/describe.c:407 builtin/grep.c:725
+#: builtin/ls-files.c:536 builtin/name-rev.c:313 builtin/show-ref.c:182
 msgid "pattern"
 msgstr "padrão"
 
@@ -4985,113 +5937,130 @@ msgstr ""
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<opções>] [--] <repo> [<dir>]"
 
-#: builtin/clone.c:62
+#: builtin/clone.c:65
 msgid "don't create a checkout"
 msgstr "não criar uma extração"
 
-#: builtin/clone.c:63 builtin/clone.c:65 builtin/init-db.c:473
+#: builtin/clone.c:66 builtin/clone.c:68 builtin/init-db.c:478
 msgid "create a bare repository"
 msgstr "criar um repositório nu"
 
-#: builtin/clone.c:67
+#: builtin/clone.c:70
 msgid "create a mirror repository (implies bare)"
 msgstr "criar um repositório espelhado (implica repositório nu)"
 
-#: builtin/clone.c:69
+#: builtin/clone.c:72
 msgid "to clone from a local repository"
 msgstr "para clonar de um repositório local"
 
-#: builtin/clone.c:71
+#: builtin/clone.c:74
 msgid "don't use local hardlinks, always copy"
 msgstr "não usar ligações fixas, copiar sempre"
 
-#: builtin/clone.c:73
+#: builtin/clone.c:76
 msgid "setup as shared repository"
 msgstr "configurar como repositório partilhado"
 
-#: builtin/clone.c:75 builtin/clone.c:77
+#: builtin/clone.c:78 builtin/clone.c:80
 msgid "initialize submodules in the clone"
 msgstr "inicializar submódulos no clone"
 
-#: builtin/clone.c:79
+#: builtin/clone.c:82
 msgid "number of submodules cloned in parallel"
 msgstr "número de submódulos clonados em paralelo"
 
-#: builtin/clone.c:80 builtin/init-db.c:470
+#: builtin/clone.c:83 builtin/init-db.c:475
 msgid "template-directory"
 msgstr "diretório-modelo"
 
-#: builtin/clone.c:81 builtin/init-db.c:471
+#: builtin/clone.c:84 builtin/init-db.c:476
 msgid "directory from which templates will be used"
 msgstr "diretório que contém os modelos usados"
 
-#: builtin/clone.c:83 builtin/submodule--helper.c:498
-#: builtin/submodule--helper.c:777
+#: builtin/clone.c:86 builtin/clone.c:88 builtin/submodule--helper.c:602
+#: builtin/submodule--helper.c:954
 msgid "reference repository"
 msgstr "repositório de referência"
 
-#: builtin/clone.c:85
+#: builtin/clone.c:90
 msgid "use --reference only while cloning"
 msgstr "usar --reference apenas para clonar"
 
-#: builtin/clone.c:86 builtin/column.c:26 builtin/merge-file.c:44
+#: builtin/clone.c:91 builtin/column.c:26 builtin/merge-file.c:44
 msgid "name"
 msgstr "nome"
 
-#: builtin/clone.c:87
+#: builtin/clone.c:92
 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:89
+#: builtin/clone.c:94
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "extrair <ramo> em vez da HEAD do remoto"
 
-#: builtin/clone.c:91
+#: builtin/clone.c:96
 msgid "path to git-upload-pack on the remote"
 msgstr "caminho para git-upload-pack no remoto"
 
-#: builtin/clone.c:92 builtin/fetch.c:117 builtin/grep.c:667
-#: builtin/pull.c:201
+#: builtin/clone.c:97 builtin/fetch.c:120 builtin/grep.c:668
+#: builtin/pull.c:202
 msgid "depth"
 msgstr "profundidade"
 
-#: builtin/clone.c:93
+#: builtin/clone.c:98
 msgid "create a shallow clone of that depth"
 msgstr "criar um clone raso com essa profundidade"
 
-#: builtin/clone.c:95
+#: builtin/clone.c:99 builtin/fetch.c:122 builtin/pack-objects.c:2848
+#: parse-options.h:142
+msgid "time"
+msgstr "hora"
+
+#: builtin/clone.c:100
+msgid "create a shallow clone since a specific time"
+msgstr "criar um clone raso desde uma data específica"
+
+#: builtin/clone.c:101 builtin/fetch.c:124
+msgid "revision"
+msgstr "revisão"
+
+#: builtin/clone.c:102 builtin/fetch.c:125
+msgid "deepen history of shallow clone by excluding rev"
+msgstr "aprofundar o histórico de um clone raso ao excluir uma revisão"
+
+#: builtin/clone.c:104
 msgid "clone only one branch, HEAD or --branch"
 msgstr "clonar apenas um ramo, HEAD ou --branch"
 
-#: builtin/clone.c:97
+#: builtin/clone.c:106
 msgid "any cloned submodules will be shallow"
 msgstr "qualquer submódulo clonado será raso"
 
-#: builtin/clone.c:98 builtin/init-db.c:479
+#: builtin/clone.c:107 builtin/init-db.c:484
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:99 builtin/init-db.c:480
+#: builtin/clone.c:108 builtin/init-db.c:485
 msgid "separate git dir from working tree"
 msgstr "separar o repositório git da árvore de trabalho"
 
-#: builtin/clone.c:100
+#: builtin/clone.c:109
 msgid "key=value"
 msgstr "chave=valor"
 
-#: builtin/clone.c:101
+#: builtin/clone.c:110
 msgid "set config inside the new repository"
 msgstr "definir configuração dentro do novo repositório"
 
-#: builtin/clone.c:102 builtin/fetch.c:131 builtin/push.c:536
+#: builtin/clone.c:111 builtin/fetch.c:140 builtin/push.c:547
 msgid "use IPv4 addresses only"
 msgstr "usar apenas endereços IPv4"
 
-#: builtin/clone.c:104 builtin/fetch.c:133 builtin/push.c:538
+#: builtin/clone.c:113 builtin/fetch.c:142 builtin/push.c:549
 msgid "use IPv6 addresses only"
 msgstr "usar apenas endereços IPv6"
 
-#: builtin/clone.c:241
+#: builtin/clone.c:250
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -5099,54 +6068,42 @@ msgstr ""
 "Não foi possível adivinhar o nome do diretório.\n"
 "Especifique um diretório na linha de comandos"
 
-#: builtin/clone.c:307
-#, 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."
-
-#: builtin/clone.c:309
+#: builtin/clone.c:303
 #, 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."
-
-#: builtin/clone.c:314
-#, c-format
-msgid "reference repository '%s' is shallow"
-msgstr "o repositório de referência '%s' é raso"
+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:317
+#: builtin/clone.c:375
 #, c-format
-msgid "reference repository '%s' is grafted"
-msgstr "o repositório de referência '%s' está enxertado"
+msgid "failed to open '%s'"
+msgstr "falha ao abrir '%s'"
 
-#: builtin/clone.c:384
+#: builtin/clone.c:383
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s existe e não é um diretório"
 
-#: builtin/clone.c:398
+#: builtin/clone.c:397
 #, c-format
 msgid "failed to stat %s\n"
 msgstr "falha ao invocar stat de %s\n"
 
-#: builtin/clone.c:420
+#: builtin/clone.c:419
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "falha ao criar a ligação '%s'"
 
-#: builtin/clone.c:424
+#: builtin/clone.c:423
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "falha ao copiar o ficheiro para '%s'"
 
-#: builtin/clone.c:449 builtin/clone.c:633
+#: builtin/clone.c:448
 #, c-format
 msgid "done.\n"
 msgstr "concluído.\n"
 
-#: builtin/clone.c:461
+#: builtin/clone.c:460
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -5156,128 +6113,140 @@ msgstr ""
 "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:538
+#: builtin/clone.c:537
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Ramo remoto %s não encontrado para clonar."
 
-#: builtin/clone.c:628
-#, c-format
-msgid "Checking connectivity... "
-msgstr "A verificar a conectividade... "
-
-#: builtin/clone.c:631
+#: builtin/clone.c:632
 msgid "remote did not send all necessary objects"
 msgstr "o remoto não enviou todos os objetos necessários"
 
-#: builtin/clone.c:649
+#: builtin/clone.c:648
 #, c-format
 msgid "unable to update %s"
 msgstr "não foi possível atualizar %s"
 
-#: builtin/clone.c:698
+#: builtin/clone.c:697
 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"
+"a HEAD remota referencia uma referência inexistente, não é possível "
+"extrair.\n"
 
-#: builtin/clone.c:729
+#: builtin/clone.c:728
 msgid "unable to checkout working tree"
 msgstr "não foi possível extrair a árvore de trabalho"
 
-#: builtin/clone.c:767
+#: builtin/clone.c:768
 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:830
+#: builtin/clone.c:831
 msgid "cannot repack to clean up"
 msgstr "não é possível reempacotar para limpar"
 
-#: builtin/clone.c:832
+#: builtin/clone.c:833
 msgid "cannot unlink temporary alternates file"
-msgstr "não é possível invocar unlink sobre o ficheiro sobressalente temporário"
+msgstr ""
+"não é possível invocar unlink sobre o ficheiro sobressalente temporário"
 
-#: builtin/clone.c:864 builtin/receive-pack.c:1731
+#: builtin/clone.c:866 builtin/receive-pack.c:1895
 msgid "Too many arguments."
 msgstr "Demasiados argumentos."
 
-#: builtin/clone.c:868
+#: builtin/clone.c:870
 msgid "You must specify a repository to clone."
 msgstr "Deve especificar um repositório para clonar."
 
-#: builtin/clone.c:879
+#: builtin/clone.c:883
 #, 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:882
+#: builtin/clone.c:886
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "--bare e --separate-git-dir são incompatíveis."
 
-#: builtin/clone.c:895
+#: builtin/clone.c:899
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "o repositório '%s' não existe"
 
-#: builtin/clone.c:901 builtin/fetch.c:1174
+#: builtin/clone.c:905 builtin/fetch.c:1338
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "profundidade %s não é um número positivo"
 
-#: builtin/clone.c:911
+#: builtin/clone.c:915
 #, 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:921
+#: builtin/clone.c:925
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "a árvore de trabalho '%s' já existe."
 
-#: builtin/clone.c:936 builtin/clone.c:947 builtin/submodule--helper.c:547
-#: builtin/worktree.c:220 builtin/worktree.c:247
+#: builtin/clone.c:940 builtin/clone.c:951 builtin/submodule--helper.c:657
+#: builtin/worktree.c:222 builtin/worktree.c:249
 #, 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:939
+#: builtin/clone.c:943
 #, 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:957
+#: builtin/clone.c:955
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "A clonar no repositório nu '%s'...\n"
 
-#: builtin/clone.c:959
+#: builtin/clone.c:957
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "A clonar em '%s'...\n"
 
-#: builtin/clone.c:998
+#: builtin/clone.c:963
+msgid ""
+"clone --recursive is not compatible with both --reference and --reference-if-"
+"able"
+msgstr ""
+"clone --recursive não é compatível com ambos --reference e --reference-if-"
+"able"
+
+#: builtin/clone.c:1019
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "--depth é ignorado em clones locais; use file:// ."
 
-#: builtin/clone.c:1001
+#: builtin/clone.c:1021
+msgid "--shallow-since is ignored in local clones; use file:// instead."
+msgstr "--shallow-since é ignorado em clones locais; use file:// ."
+
+#: builtin/clone.c:1023
+msgid "--shallow-exclude is ignored in local clones; use file:// instead."
+msgstr "--shallow-exclude é ignorado em clones locais; use file:// ."
+
+#: builtin/clone.c:1026
 msgid "source repository is shallow, ignoring --local"
 msgstr "o repositório de origem é raso, --local ignorado"
 
-#: builtin/clone.c:1006
+#: builtin/clone.c:1031
 msgid "--local is ignored"
 msgstr "--local ignorado"
 
-#: builtin/clone.c:1010
+#: builtin/clone.c:1035
 #, c-format
 msgid "Don't know how to clone %s"
 msgstr "Não sei como clonar %s"
 
-#: builtin/clone.c:1059 builtin/clone.c:1067
+#: builtin/clone.c:1090 builtin/clone.c:1098
 #, 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:1070
+#: builtin/clone.c:1101
 msgid "You appear to have cloned an empty repository."
 msgstr "Parece foi clonado um repositório vazio."
 
@@ -5416,43 +6385,43 @@ msgstr ""
 "Depois \"git cherry-pick --continue\" irá retomar o cherry-pick\n"
 "dos restantes commits.\n"
 
-#: builtin/commit.c:307
+#: builtin/commit.c:318
 msgid "failed to unpack HEAD tree object"
 msgstr "falha ao descompactar o objeto árvore HEAD"
 
-#: builtin/commit.c:348
+#: builtin/commit.c:359
 msgid "unable to create temporary index"
 msgstr "não foi possível criar índice temporário"
 
-#: builtin/commit.c:354
+#: builtin/commit.c:365
 msgid "interactive add failed"
 msgstr "falha ao adicionar interativamente"
 
-#: builtin/commit.c:367
+#: builtin/commit.c:378
 msgid "unable to update temporary index"
 msgstr "não é possível atualizar o índice temporário"
 
-#: builtin/commit.c:369
+#: builtin/commit.c:380
 msgid "Failed to update main cache tree"
 msgstr "Falha ao atualizar a árvore de cache principal"
 
-#: builtin/commit.c:393 builtin/commit.c:416 builtin/commit.c:465
+#: builtin/commit.c:404 builtin/commit.c:427 builtin/commit.c:476
 msgid "unable to write new_index file"
 msgstr "não é possível escrever o ficheiro new_index"
 
-#: builtin/commit.c:447
+#: builtin/commit.c:458
 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:449
+#: builtin/commit.c:460
 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:458
+#: builtin/commit.c:469
 msgid "cannot read the index"
 msgstr "não é possível ler o índice"
 
-#: builtin/commit.c:477
+#: builtin/commit.c:488
 msgid "unable to write temporary index file"
 msgstr "não é possível escrever ficheiro de índice temporário"
 
@@ -5483,12 +6452,12 @@ 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:1091
+#: builtin/commit.c:692 builtin/commit.c:725 builtin/commit.c:1096
 #, 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:285
+#: builtin/commit.c:704 builtin/shortlog.c:286
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(a ler mensagem de log da entrada padrão)\n"
@@ -5584,130 +6553,134 @@ msgstr "%sCommitter: %.*s <%.*s>"
 msgid "Cannot read index"
 msgstr "Não é possível ler o índice"
 
-#: builtin/commit.c:949
+#: builtin/commit.c:954
 msgid "Error building trees"
 msgstr "Erro ao construir árvores"
 
-#: builtin/commit.c:964 builtin/tag.c:266
+#: builtin/commit.c:969 builtin/tag.c:266
 #, 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:1066
+#: builtin/commit.c:1071
 #, 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:1081 builtin/commit.c:1321
+#: builtin/commit.c:1086 builtin/commit.c:1327
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "Modo inválido de ficheiros não controlados '%s'"
 
-#: builtin/commit.c:1118
+#: builtin/commit.c:1124
 msgid "--long and -z are incompatible"
 msgstr "--long e -z são incompatíveis"
 
-#: builtin/commit.c:1148
+#: builtin/commit.c:1154
 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:1157
+#: builtin/commit.c:1163
 msgid "You have nothing to amend."
 msgstr "Não há nada para emendar."
 
-#: builtin/commit.c:1160
+#: builtin/commit.c:1166
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "Integração em curso -- não é possível emendar."
 
-#: builtin/commit.c:1162
+#: builtin/commit.c:1168
 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:1165
+#: builtin/commit.c:1171
 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:1175
+#: builtin/commit.c:1181
 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:1177
+#: builtin/commit.c:1183
 msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
 msgstr "A opção -m não pode ser combinada com -c/C/-F/--fixup."
 
-#: builtin/commit.c:1185
+#: builtin/commit.c:1191
 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:1202
+#: builtin/commit.c:1208
 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:1204
+#: 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:1206
+#: builtin/commit.c:1212
 msgid "Clever... amending the last one with dirty index."
 msgstr "Inteligente... a emendar o último commit com o índice sujo."
 
-#: builtin/commit.c:1208
+#: builtin/commit.c:1214
 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:1220 builtin/tag.c:474
+#: builtin/commit.c:1226 builtin/tag.c:474
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Modo de limpeza inválido %s"
 
-#: builtin/commit.c:1225
+#: builtin/commit.c:1231
 msgid "Paths with -a does not make sense."
 msgstr "Indicar caminhos com -a não faz sentido."
 
-#: builtin/commit.c:1335 builtin/commit.c:1621
+#: builtin/commit.c:1341 builtin/commit.c:1617
 msgid "show status concisely"
 msgstr "mostrar status de forma concisa"
 
-#: builtin/commit.c:1337 builtin/commit.c:1623
+#: builtin/commit.c:1343 builtin/commit.c:1619
 msgid "show branch information"
 msgstr "mostrar informação do ramo"
 
-#: builtin/commit.c:1339 builtin/commit.c:1625 builtin/push.c:512
-#: builtin/worktree.c:437
+#: builtin/commit.c:1345
+msgid "version"
+msgstr "versão"
+
+#: builtin/commit.c:1345 builtin/commit.c:1621 builtin/push.c:522
+#: builtin/worktree.c:440
 msgid "machine-readable output"
 msgstr "saída inteligível por máquina"
 
-#: builtin/commit.c:1342 builtin/commit.c:1627
+#: builtin/commit.c:1348 builtin/commit.c:1623
 msgid "show status in long format (default)"
 msgstr "apresentar status em formato longo (predefinição)"
 
-#: builtin/commit.c:1345 builtin/commit.c:1630
+#: builtin/commit.c:1351 builtin/commit.c:1626
 msgid "terminate entries with NUL"
 msgstr "terminar entradas com NUL"
 
-#: builtin/commit.c:1347 builtin/commit.c:1633 builtin/fast-export.c:981
+#: builtin/commit.c:1353 builtin/commit.c:1629 builtin/fast-export.c:981
 #: builtin/fast-export.c:984 builtin/tag.c:353
 msgid "mode"
 msgstr "modo"
 
-#: builtin/commit.c:1348 builtin/commit.c:1633
+#: builtin/commit.c:1354 builtin/commit.c:1629
 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:1351
+#: builtin/commit.c:1357
 msgid "show ignored files"
 msgstr "mostrar ficheiros ignorados"
 
-#: builtin/commit.c:1352 parse-options.h:155
+#: builtin/commit.c:1358 parse-options.h:155
 msgid "when"
 msgstr "quando"
 
-#: builtin/commit.c:1353
+#: builtin/commit.c:1359
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -5715,199 +6688,200 @@ msgstr ""
 "ignorar alterações em submódulos, quando é opcional: all, dirty, untracked. "
 "(Predefinição: all)"
 
-#: builtin/commit.c:1355
+#: builtin/commit.c:1361
 msgid "list untracked files in columns"
 msgstr "listar ficheiros não controlados em colunas"
 
-#: builtin/commit.c:1441
+#: builtin/commit.c:1437
 msgid "couldn't look up newly created commit"
 msgstr "não foi possível consultar o commit recém-criado"
 
-#: builtin/commit.c:1443
+#: builtin/commit.c:1439
 msgid "could not parse newly created commit"
 msgstr "não foi possível analisar o commit recém-criado"
 
-#: builtin/commit.c:1488
+#: builtin/commit.c:1484
 msgid "detached HEAD"
 msgstr "HEAD destacada"
 
-#: builtin/commit.c:1491
+#: builtin/commit.c:1487
 msgid " (root-commit)"
 msgstr " (commit-raiz)"
 
-#: builtin/commit.c:1591
+#: builtin/commit.c:1587
 msgid "suppress summary after successful commit"
 msgstr "suprimir o resumo depois de submeter com sucesso"
 
-#: builtin/commit.c:1592
+#: builtin/commit.c:1588
 msgid "show diff in commit message template"
 msgstr "mostrar diff no modelo da mensagem de commit"
 
-#: builtin/commit.c:1594
+#: builtin/commit.c:1590
 msgid "Commit message options"
 msgstr "Opções de mensagem de commit"
 
-#: builtin/commit.c:1595 builtin/tag.c:351
+#: builtin/commit.c:1591 builtin/tag.c:351
 msgid "read message from file"
 msgstr "ler mensagem de um ficheiro"
 
-#: builtin/commit.c:1596
+#: builtin/commit.c:1592
 msgid "author"
 msgstr "autor"
 
-#: builtin/commit.c:1596
+#: builtin/commit.c:1592
 msgid "override author for commit"
 msgstr "substituir autor do commit"
 
-#: builtin/commit.c:1597 builtin/gc.c:326
+#: builtin/commit.c:1593 builtin/gc.c:326
 msgid "date"
 msgstr "data"
 
-#: builtin/commit.c:1597
+#: builtin/commit.c:1593
 msgid "override date for commit"
 msgstr "substituir data do commit"
 
-#: builtin/commit.c:1598 builtin/merge.c:219 builtin/notes.c:395
-#: builtin/notes.c:558 builtin/tag.c:349
+#: builtin/commit.c:1594 builtin/merge.c:220 builtin/notes.c:398
+#: builtin/notes.c:561 builtin/tag.c:349
 msgid "message"
 msgstr "mensagem"
 
-#: builtin/commit.c:1598
+#: builtin/commit.c:1594
 msgid "commit message"
 msgstr "mensagem de commit"
 
-#: builtin/commit.c:1599 builtin/commit.c:1600 builtin/commit.c:1601
-#: builtin/commit.c:1602 parse-options.h:256 ref-filter.h:79
+#: builtin/commit.c:1595 builtin/commit.c:1596 builtin/commit.c:1597
+#: builtin/commit.c:1598 parse-options.h:257 ref-filter.h:79
 msgid "commit"
 msgstr "commit"
 
-#: builtin/commit.c:1599
+#: builtin/commit.c:1595
 msgid "reuse and edit message from specified commit"
 msgstr "reutilizar e editar a mensagem de um commit especificado"
 
-#: builtin/commit.c:1600
+#: builtin/commit.c:1596
 msgid "reuse message from specified commit"
 msgstr "reutilizar a mensagem de um commit especificado"
 
-#: builtin/commit.c:1601
+#: builtin/commit.c:1597
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 "usar mensagem com formato autosquash para corrigir o commit especificado"
 
-#: builtin/commit.c:1602
+#: builtin/commit.c:1598
 msgid "use autosquash formatted message to squash specified commit"
-msgstr "usar mensagem com formato autosquash para esmagar o commit especificado"
+msgstr ""
+"usar mensagem com formato autosquash para esmagar o commit especificado"
 
-#: builtin/commit.c:1603
+#: builtin/commit.c:1599
 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:1604 builtin/log.c:1382 builtin/revert.c:86
+#: builtin/commit.c:1600 builtin/log.c:1413 builtin/revert.c:86
 msgid "add Signed-off-by:"
 msgstr "adicionar Signed-off-by:"
 
-#: builtin/commit.c:1605
+#: builtin/commit.c:1601
 msgid "use specified template file"
 msgstr "usar ficheiro de modelo especificado"
 
-#: builtin/commit.c:1606
+#: builtin/commit.c:1602
 msgid "force edit of commit"
 msgstr "forçar edição do commit"
 
-#: builtin/commit.c:1607
+#: builtin/commit.c:1603
 msgid "default"
 msgstr "predefinição"
 
-#: builtin/commit.c:1607 builtin/tag.c:354
+#: builtin/commit.c:1603 builtin/tag.c:354
 msgid "how to strip spaces and #comments from message"
 msgstr "como retirar espaços e #comentários da mensagem"
 
-#: builtin/commit.c:1608
+#: builtin/commit.c:1604
 msgid "include status in commit message template"
 msgstr "incluir status no modelo da mensagem de commit"
 
-#: builtin/commit.c:1610 builtin/merge.c:229 builtin/pull.c:165
+#: builtin/commit.c:1606 builtin/merge.c:230 builtin/pull.c:166
 #: builtin/revert.c:93
 msgid "GPG sign commit"
 msgstr "assinar o commit com GPG"
 
-#: builtin/commit.c:1613
+#: builtin/commit.c:1609
 msgid "Commit contents options"
 msgstr "Opções de conteúdo do commit"
 
-#: builtin/commit.c:1614
+#: builtin/commit.c:1610
 msgid "commit all changed files"
 msgstr "submeter todos os ficheiros alterados"
 
-#: builtin/commit.c:1615
+#: builtin/commit.c:1611
 msgid "add specified files to index for commit"
 msgstr "adicionar ficheiros especificados ao índice para submeter"
 
-#: builtin/commit.c:1616
+#: builtin/commit.c:1612
 msgid "interactively add files"
 msgstr "adicionar ficheiros interativamente"
 
-#: builtin/commit.c:1617
+#: builtin/commit.c:1613
 msgid "interactively add changes"
 msgstr "adicionar alterações interativamente"
 
-#: builtin/commit.c:1618
+#: builtin/commit.c:1614
 msgid "commit only specified files"
 msgstr "submeter somente os ficheiros especificados"
 
-#: builtin/commit.c:1619
-msgid "bypass pre-commit hook"
-msgstr "ignorar pre-commit hook"
+#: builtin/commit.c:1615
+msgid "bypass pre-commit and commit-msg hooks"
+msgstr "ignorar pre-commit e commit-msg hooks"
 
-#: builtin/commit.c:1620
+#: builtin/commit.c:1616
 msgid "show what would be committed"
 msgstr "mostrar o que seria submetido"
 
-#: builtin/commit.c:1631
+#: builtin/commit.c:1627
 msgid "amend previous commit"
 msgstr "emendar o commit anterior"
 
-#: builtin/commit.c:1632
+#: builtin/commit.c:1628
 msgid "bypass post-rewrite hook"
 msgstr "ignorar post-rewrite hook"
 
-#: builtin/commit.c:1637
+#: builtin/commit.c:1633
 msgid "ok to record an empty change"
 msgstr "aceitar o registo duma alteração vazia"
 
-#: builtin/commit.c:1639
+#: builtin/commit.c:1635
 msgid "ok to record a change with an empty message"
 msgstr "aceitar o registo duma alteração com uma mensagem vazia"
 
-#: builtin/commit.c:1668
+#: builtin/commit.c:1664
 msgid "could not parse HEAD commit"
 msgstr "não foi possível analisar o commit HEAD"
 
-#: builtin/commit.c:1718
+#: builtin/commit.c:1712
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Ficheiro MERGE_HEAD corrompido (%s)"
 
-#: builtin/commit.c:1725
+#: builtin/commit.c:1719
 msgid "could not read MERGE_MODE"
 msgstr "não foi possível ler MERGE_MODE"
 
-#: builtin/commit.c:1744
+#: builtin/commit.c:1738
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "não foi possível ler a mensagem de commit: %s"
 
-#: builtin/commit.c:1755
+#: builtin/commit.c:1749
 #, 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:1760
+#: builtin/commit.c:1754
 #, 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:1808
+#: builtin/commit.c:1802
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -5921,142 +6895,142 @@ msgstr ""
 msgid "git config [<options>]"
 msgstr "git config [<opções>]"
 
-#: builtin/config.c:56
+#: builtin/config.c:55
 msgid "Config file location"
 msgstr "Localização do ficheiro de configuração"
 
-#: builtin/config.c:57
+#: builtin/config.c:56
 msgid "use global config file"
 msgstr "usar ficheiro de configuração global"
 
-#: builtin/config.c:58
+#: builtin/config.c:57
 msgid "use system config file"
 msgstr "usar ficheiro de configuração do sistema"
 
-#: builtin/config.c:59
+#: builtin/config.c:58
 msgid "use repository config file"
 msgstr "usar ficheiro de configuração do repositório"
 
-#: builtin/config.c:60
+#: builtin/config.c:59
 msgid "use given config file"
 msgstr "usar ficheiro de configuração fornecido"
 
-#: builtin/config.c:61
+#: builtin/config.c:60
 msgid "blob-id"
 msgstr "id-blob"
 
-#: builtin/config.c:61
+#: builtin/config.c:60
 msgid "read config from given blob object"
 msgstr "ler configuração a partir do objeto blob fornecido"
 
-#: builtin/config.c:62
+#: builtin/config.c:61
 msgid "Action"
 msgstr "Ação"
 
-#: builtin/config.c:63
+#: builtin/config.c:62
 msgid "get value: name [value-regex]"
 msgstr "obter valor: nome [regex-do-valor]"
 
-#: builtin/config.c:64
+#: builtin/config.c:63
 msgid "get all values: key [value-regex]"
 msgstr "obter todos os valores: chave [regex-do-valor]"
 
-#: builtin/config.c:65
+#: builtin/config.c:64
 msgid "get values for regexp: name-regex [value-regex]"
 msgstr "obter valores para a regexp: regex-do-nome [regex-do-valor]"
 
-#: builtin/config.c:66
+#: builtin/config.c:65
 msgid "get value specific for the URL: section[.var] URL"
 msgstr "obter valor do URL especificado: section[.var] URL"
 
-#: builtin/config.c:67
+#: builtin/config.c:66
 msgid "replace all matching variables: name value [value_regex]"
 msgstr ""
 "substituir todos as variáveis correspondentes: nome valor [regex-do-valor]"
 
-#: builtin/config.c:68
+#: builtin/config.c:67
 msgid "add a new variable: name value"
 msgstr "adicionar uma nova variável: nome valor"
 
-#: builtin/config.c:69
+#: builtin/config.c:68
 msgid "remove a variable: name [value-regex]"
 msgstr "remover uma variável: nome [regex-do-valor]"
 
-#: builtin/config.c:70
+#: builtin/config.c:69
 msgid "remove all matches: name [value-regex]"
 msgstr "remover todas as correspondências: nome [regex-do-valor]"
 
-#: builtin/config.c:71
+#: builtin/config.c:70
 msgid "rename section: old-name new-name"
 msgstr "mudar o nome da secção: nome-antigo novo-nome"
 
-#: builtin/config.c:72
+#: builtin/config.c:71
 msgid "remove a section: name"
 msgstr "remover uma secção: nome"
 
-#: builtin/config.c:73
+#: builtin/config.c:72
 msgid "list all"
 msgstr "listar todos"
 
-#: builtin/config.c:74
+#: builtin/config.c:73
 msgid "open an editor"
 msgstr "abrir um editor"
 
-#: builtin/config.c:75
+#: builtin/config.c:74
 msgid "find the color configured: slot [default]"
 msgstr "encontrar a cor configurada: slot [predefinição]"
 
-#: builtin/config.c:76
+#: builtin/config.c:75
 msgid "find the color setting: slot [stdout-is-tty]"
 msgstr "encontrar a definição de cor: slot [stdout-é-tty]"
 
-#: builtin/config.c:77
+#: builtin/config.c:76
 msgid "Type"
 msgstr "Tipo"
 
-#: builtin/config.c:78
+#: builtin/config.c:77
 msgid "value is \"true\" or \"false\""
 msgstr "o valor é \"true\" (verdadeiro) ou \"false\" (falso)"
 
-#: builtin/config.c:79
+#: builtin/config.c:78
 msgid "value is decimal number"
 msgstr "o valor é um número decimal"
 
-#: builtin/config.c:80
+#: builtin/config.c:79
 msgid "value is --bool or --int"
 msgstr "o valor é --bool ou --int"
 
-#: builtin/config.c:81
+#: builtin/config.c:80
 msgid "value is a path (file or directory name)"
 msgstr "o valor é um caminho (nome dum ficheiro ou diretório)"
 
-#: builtin/config.c:82
+#: builtin/config.c:81
 msgid "Other"
 msgstr "Outro"
 
-#: builtin/config.c:83
+#: builtin/config.c:82
 msgid "terminate values with NUL byte"
 msgstr "terminar valores com o byte NUL"
 
-#: builtin/config.c:84
+#: builtin/config.c:83
 msgid "show variable names only"
 msgstr "mostrar apenas os nomes das variáveis"
 
-#: builtin/config.c:85
+#: builtin/config.c:84
 msgid "respect include directives on lookup"
 msgstr "respeitar diretivas de inclusão ao pesquisar"
 
-#: builtin/config.c:86
+#: builtin/config.c:85
 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:328
+#: builtin/config.c:327
 msgid "unable to parse default color value"
 msgstr "não é possível analisar o valor de cor por omissão"
 
-#: builtin/config.c:472
+#: builtin/config.c:471
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -6071,16 +7045,25 @@ msgstr ""
 "#\tname = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:614
+#: builtin/config.c:613
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "não é possível criar o ficheiro de configuração %s"
 
-#: builtin/count-objects.c:77
+#: builtin/config.c:625
+#, c-format
+msgid ""
+"cannot overwrite multiple values with a single value\n"
+"       Use a regexp, --add or --replace-all to change %s."
+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
 msgid "git count-objects [-v] [-H | --human-readable]"
 msgstr "git count-objects [-v] [-H | --human-readable]"
 
-#: builtin/count-objects.c:87
+#: builtin/count-objects.c:96
 msgid "print sizes in human readable format"
 msgstr "imprimir dimensões em formato inteligível por humanos"
 
@@ -6107,7 +7090,7 @@ msgstr "a tag anotada %s não tem nenhum nome incorporado"
 msgid "tag '%s' is really '%s' here"
 msgstr "a tag '%s' está de facto em '%s'"
 
-#: builtin/describe.c:250 builtin/log.c:465
+#: builtin/describe.c:250 builtin/log.c:480
 #, c-format
 msgid "Not a valid object name %s"
 msgstr "%s não é um nome de objeto válido"
@@ -6200,7 +7183,7 @@ msgstr "considerar as <n> tags mais recentes (predefinição: 10)"
 msgid "only consider tags matching <pattern>"
 msgstr "apenas considerar tags que correspondam ao <padrão>"
 
-#: builtin/describe.c:410 builtin/name-rev.c:321
+#: builtin/describe.c:410 builtin/name-rev.c:320
 msgid "show abbreviated commit object as fallback"
 msgstr "mostrar objetos de commit abreviados em recurso"
 
@@ -6236,21 +7219,21 @@ msgstr "'%s': não é um ficheiro regular nem uma ligação simbólica"
 msgid "invalid option: %s"
 msgstr "opção inválida: %s"
 
-#: builtin/diff.c:360
+#: builtin/diff.c:361
 msgid "Not a git repository"
 msgstr "Não é um repositório git"
 
-#: builtin/diff.c:403
+#: builtin/diff.c:404
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "objeto inválido '%s' fornecido."
 
-#: builtin/diff.c:412
+#: builtin/diff.c:413
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr "mais do que dois blobs fornecidos: '%s'"
 
-#: builtin/diff.c:419
+#: builtin/diff.c:420
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "objeto sem tratamento '%s' fornecido."
@@ -6307,176 +7290,183 @@ msgstr "Aplicar o especificador de referência a referências exportadas"
 msgid "anonymize output"
 msgstr "anonimizar saída"
 
-#: builtin/fetch.c:20
+#: builtin/fetch.c:21
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
-msgstr "git fetch [<opções>] [<repositório> [<especificador-de-referência>...]]"
+msgstr ""
+"git fetch [<opções>] [<repositório> [<especificador-de-referência>...]]"
 
-#: builtin/fetch.c:21
+#: builtin/fetch.c:22
 msgid "git fetch [<options>] <group>"
 msgstr "git fetch [<opções>] <grupo>"
 
-#: builtin/fetch.c:22
+#: builtin/fetch.c:23
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr "git fetch --multiple [<opções>] [(<repositório> | <grupo>)...]"
 
-#: builtin/fetch.c:23
+#: builtin/fetch.c:24
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<opções>]"
 
-#: builtin/fetch.c:92 builtin/pull.c:174
+#: builtin/fetch.c:95 builtin/pull.c:175
 msgid "fetch from all remotes"
 msgstr "obter de todos os remotos"
 
-#: builtin/fetch.c:94 builtin/pull.c:177
+#: builtin/fetch.c:97 builtin/pull.c:178
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "acrescentar a .git/FETCH_HEAD em vez de substituir"
 
-#: builtin/fetch.c:96 builtin/pull.c:180
+#: builtin/fetch.c:99 builtin/pull.c:181
 msgid "path to upload pack on remote end"
 msgstr "caminho para o comando upload pack no remoto"
 
-#: builtin/fetch.c:97 builtin/pull.c:182
+#: builtin/fetch.c:100 builtin/pull.c:183
 msgid "force overwrite of local branch"
 msgstr "forçar a substituição do ramo local"
 
-#: builtin/fetch.c:99
+#: builtin/fetch.c:102
 msgid "fetch from multiple remotes"
 msgstr "obter de múltiplos remotos"
 
-#: builtin/fetch.c:101 builtin/pull.c:184
+#: builtin/fetch.c:104 builtin/pull.c:185
 msgid "fetch all tags and associated objects"
 msgstr "obter todas as tags e objetos associados"
 
-#: builtin/fetch.c:103
+#: builtin/fetch.c:106
 msgid "do not fetch all tags (--no-tags)"
 msgstr "não obter todas as tags (--no-tags)"
 
-#: builtin/fetch.c:105
+#: builtin/fetch.c:108
 msgid "number of submodules fetched in parallel"
 msgstr "número de submódulos obtidos em paralelo"
 
-#: builtin/fetch.c:107 builtin/pull.c:187
+#: builtin/fetch.c:110 builtin/pull.c:188
 msgid "prune remote-tracking branches no longer on remote"
-msgstr "eliminar os ramos de monitorização remotos que já não existem no remoto"
+msgstr ""
+"eliminar os ramos de monitorização remotos que já não existem no remoto"
 
-#: builtin/fetch.c:108 builtin/pull.c:190
+#: builtin/fetch.c:111 builtin/pull.c:191
 msgid "on-demand"
 msgstr "on-demand"
 
-#: builtin/fetch.c:109 builtin/pull.c:191
+#: builtin/fetch.c:112 builtin/pull.c:192
 msgid "control recursive fetching of submodules"
 msgstr "controlar a obtenção recursiva de submódulos"
 
-#: builtin/fetch.c:113 builtin/pull.c:199
+#: builtin/fetch.c:116 builtin/pull.c:200
 msgid "keep downloaded pack"
 msgstr "manter o pacote transferido"
 
-#: builtin/fetch.c:115
+#: builtin/fetch.c:118
 msgid "allow updating of HEAD ref"
 msgstr "permitir a atualização da referência HEAD"
 
-#: builtin/fetch.c:118 builtin/pull.c:202
+#: builtin/fetch.c:121 builtin/fetch.c:127 builtin/pull.c:203
 msgid "deepen history of shallow clone"
 msgstr "aprofundar o histórico de um clone raso"
 
-#: builtin/fetch.c:120 builtin/pull.c:205
+#: builtin/fetch.c:123
+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
 msgid "convert to a complete repository"
 msgstr "converter num repositório completo"
 
-#: builtin/fetch.c:122 builtin/log.c:1399
+#: builtin/fetch.c:131 builtin/log.c:1433
 msgid "dir"
 msgstr "dir"
 
-#: builtin/fetch.c:123
+#: builtin/fetch.c:132
 msgid "prepend this to submodule path output"
 msgstr "preceder isto ao caminho do submódulo"
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:135
 msgid "default mode for recursion"
 msgstr "modo recursivo por omissão"
 
-#: builtin/fetch.c:128 builtin/pull.c:208
+#: builtin/fetch.c:137 builtin/pull.c:209
 msgid "accept refs that update .git/shallow"
 msgstr "aceitar referência que atualizem .git/shallow"
 
-#: builtin/fetch.c:129 builtin/pull.c:210
+#: builtin/fetch.c:138 builtin/pull.c:211
 msgid "refmap"
 msgstr "mapa de referências"
 
-#: builtin/fetch.c:130 builtin/pull.c:211
+#: builtin/fetch.c:139 builtin/pull.c:212
 msgid "specify fetch refmap"
 msgstr "especificar mapa de referências"
 
-#: builtin/fetch.c:386
+#: builtin/fetch.c:398
 msgid "Couldn't find remote ref HEAD"
 msgstr "Referência remota HEAD não encontrada"
 
-#: builtin/fetch.c:466
+#: builtin/fetch.c:514
+#, 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:607
 #, c-format
 msgid "object %s not found"
 msgstr "objeto %s não encontrado"
 
-#: builtin/fetch.c:471
+#: builtin/fetch.c:611
 msgid "[up to date]"
 msgstr "[atualizado]"
 
-#: builtin/fetch.c:485
-#, c-format
-msgid "! %-*s %-*s -> %s  (can't fetch in current branch)"
-msgstr "! %-*s %-*s -> %s  (não é possível obter no ramo atual)"
-
-#: builtin/fetch.c:486 builtin/fetch.c:574
+#: builtin/fetch.c:624 builtin/fetch.c:704
 msgid "[rejected]"
 msgstr "[rejeitado]"
 
-#: builtin/fetch.c:497
+#: builtin/fetch.c:625
+msgid "can't fetch in current branch"
+msgstr "não é possível obter no ramo atual"
+
+#: builtin/fetch.c:634
 msgid "[tag update]"
 msgstr "[tag atualizada]"
 
-#: builtin/fetch.c:499 builtin/fetch.c:534 builtin/fetch.c:552
-msgid "  (unable to update local ref)"
-msgstr "  (não é possível atualizar a referência local)"
+#: builtin/fetch.c:635 builtin/fetch.c:668 builtin/fetch.c:684
+#: builtin/fetch.c:699
+msgid "unable to update local ref"
+msgstr "não é possível atualizar a referência local"
 
-#: builtin/fetch.c:517
+#: builtin/fetch.c:654
 msgid "[new tag]"
 msgstr "[nova tag]"
 
-#: builtin/fetch.c:520
+#: builtin/fetch.c:657
 msgid "[new branch]"
 msgstr "[novo ramo]"
 
-#: builtin/fetch.c:523
+#: builtin/fetch.c:660
 msgid "[new ref]"
 msgstr "[nova referência]"
 
-#: builtin/fetch.c:569
-msgid "unable to update local ref"
-msgstr "não é possível atualizar a referência local"
-
-#: builtin/fetch.c:569
+#: builtin/fetch.c:699
 msgid "forced update"
 msgstr "atualização forçada"
 
-#: builtin/fetch.c:576
-msgid "(non-fast-forward)"
-msgstr "(sem avanço rápido)"
+#: builtin/fetch.c:704
+msgid "non-fast-forward"
+msgstr "sem avanço-rápido"
 
-#: builtin/fetch.c:619
+#: builtin/fetch.c:749
 #, 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:637
+#: builtin/fetch.c:769
 #, 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:724 builtin/fetch.c:816
+#: builtin/fetch.c:856 builtin/fetch.c:952
 #, c-format
 msgid "From %.*s\n"
 msgstr "De %.*s\n"
 
-#: builtin/fetch.c:735
+#: builtin/fetch.c:867
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -6485,55 +7475,55 @@ 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:787
+#: builtin/fetch.c:922
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s ficará suspenso)"
 
-#: builtin/fetch.c:788
+#: builtin/fetch.c:923
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s ficou suspenso)"
 
-#: builtin/fetch.c:820
+#: builtin/fetch.c:955
 msgid "[deleted]"
 msgstr "[eliminado]"
 
-#: builtin/fetch.c:821 builtin/remote.c:1025
+#: builtin/fetch.c:956 builtin/remote.c:1020
 msgid "(none)"
 msgstr "(nenhum)"
 
-#: builtin/fetch.c:841
+#: builtin/fetch.c:979
 #, 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:860
+#: builtin/fetch.c:998
 #, 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:863
+#: builtin/fetch.c:1001
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "Opção \"%s\" ignorada em %s\n"
 
-#: builtin/fetch.c:920
+#: builtin/fetch.c:1077
 #, c-format
 msgid "Don't know how to fetch from %s"
 msgstr "Não sei como obter de %s"
 
-#: builtin/fetch.c:1080
+#: builtin/fetch.c:1237
 #, c-format
 msgid "Fetching %s\n"
 msgstr "A obter de %s\n"
 
-#: builtin/fetch.c:1082 builtin/remote.c:96
+#: builtin/fetch.c:1239 builtin/remote.c:96
 #, c-format
 msgid "Could not fetch %s"
 msgstr "Não foi possível obter de %s"
 
-#: builtin/fetch.c:1100
+#: builtin/fetch.c:1257
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -6541,32 +7531,40 @@ 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:1123
+#: builtin/fetch.c:1280
 msgid "You need to specify a tag name."
 msgstr "Deve especificar um nome para a tag."
 
-#: builtin/fetch.c:1165
+#: builtin/fetch.c:1322
+msgid "Negative depth in --deepen is not supported"
+msgstr "Não é suportada profundidade negativa em --deepen"
+
+#: builtin/fetch.c:1324
+msgid "--deepen and --depth are mutually exclusive"
+msgstr "--deepen e --depth são mutuamente exclusivos"
+
+#: builtin/fetch.c:1329
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth e --unshallow não podem ser usados juntos"
 
-#: builtin/fetch.c:1167
+#: builtin/fetch.c:1331
 msgid "--unshallow on a complete repository does not make sense"
 msgstr "usar --unshallow num repositório completo não faz sentido"
 
-#: builtin/fetch.c:1187
+#: builtin/fetch.c:1353
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all não leva um repositório como argumento"
 
-#: builtin/fetch.c:1189
+#: builtin/fetch.c:1355
 msgid "fetch --all does not make sense with refspecs"
 msgstr "fetch --all não faz sentido com especificadores de referência"
 
-#: builtin/fetch.c:1200
+#: builtin/fetch.c:1366
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "O remoto ou grupo remoto não existe: %s"
 
-#: builtin/fetch.c:1208
+#: builtin/fetch.c:1374
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr "Não faz sentido obter um grupo e especificar uma referência"
 
@@ -6577,23 +7575,23 @@ msgstr ""
 "git fmt-merge-msg [-m <mensagem>] [--log[=<n>] | --no-log] [--file "
 "<ficheiro>]"
 
-#: builtin/fmt-merge-msg.c:667
+#: builtin/fmt-merge-msg.c:663
 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:670
+#: builtin/fmt-merge-msg.c:666
 msgid "alias for --log (deprecated)"
 msgstr "alias de --log (obsoleto)"
 
-#: builtin/fmt-merge-msg.c:673
+#: builtin/fmt-merge-msg.c:669
 msgid "text"
 msgstr "texto"
 
-#: builtin/fmt-merge-msg.c:674
+#: builtin/fmt-merge-msg.c:670
 msgid "use <text> as start of message"
 msgstr "usar <texto> no início da mensagem"
 
-#: builtin/fmt-merge-msg.c:675
+#: builtin/fmt-merge-msg.c:671
 msgid "file to read from"
 msgstr "ficheiro a ler"
 
@@ -6656,63 +7654,63 @@ msgstr "imprimir apenas referências não integrada"
 msgid "print only refs which contain the commit"
 msgstr "imprimir apenas referências que contenham o commit"
 
-#: builtin/fsck.c:156 builtin/prune.c:140
-msgid "Checking connectivity"
-msgstr "A verificar conectividade"
-
-#: builtin/fsck.c:486
+#: builtin/fsck.c:519
 msgid "Checking object directories"
 msgstr "A verificar diretórios de objetos"
 
-#: builtin/fsck.c:552
+#: builtin/fsck.c:588
 msgid "git fsck [<options>] [<object>...]"
 msgstr "git fsck [<opções>] [<objeto>...]"
 
-#: builtin/fsck.c:558
+#: builtin/fsck.c:594
 msgid "show unreachable objects"
 msgstr "mostrar objetos inalcançáveis"
 
-#: builtin/fsck.c:559
+#: builtin/fsck.c:595
 msgid "show dangling objects"
 msgstr "mostrar objetos suspensos"
 
-#: builtin/fsck.c:560
+#: builtin/fsck.c:596
 msgid "report tags"
 msgstr "mostrar tags"
 
-#: builtin/fsck.c:561
+#: builtin/fsck.c:597
 msgid "report root nodes"
 msgstr "mostrar nós raiz"
 
-#: builtin/fsck.c:562
+#: builtin/fsck.c:598
 msgid "make index objects head nodes"
 msgstr "considerar objetos do índice como nós cabeça"
 
-#: builtin/fsck.c:563
+#: builtin/fsck.c:599
 msgid "make reflogs head nodes (default)"
 msgstr "considerar os reflogs como nós cabeça (predefinição)"
 
-#: builtin/fsck.c:564
+#: builtin/fsck.c:600
 msgid "also consider packs and alternate objects"
 msgstr "considerar também pacotes e objetos sobressalente"
 
-#: builtin/fsck.c:565
+#: builtin/fsck.c:601
 msgid "check only connectivity"
 msgstr "verificar só a conetividade"
 
-#: builtin/fsck.c:566
+#: builtin/fsck.c:602
 msgid "enable more strict checking"
 msgstr "ativar verificação mais rigorosa"
 
-#: builtin/fsck.c:568
+#: builtin/fsck.c:604
 msgid "write dangling objects in .git/lost-found"
 msgstr "escrever objetos suspensos em .git/lost-found"
 
-#: builtin/fsck.c:569 builtin/prune.c:107
+#: builtin/fsck.c:605 builtin/prune.c:107
 msgid "show progress"
 msgstr "mostrar progresso"
 
-#: builtin/fsck.c:630
+#: builtin/fsck.c:606
+msgid "show verbose names for reachable objects"
+msgstr "mostrar nomes verbosos de objetos inalcançáveis"
+
+#: builtin/fsck.c:665
 msgid "Checking objects"
 msgstr "A verificar objetos"
 
@@ -6807,229 +7805,224 @@ msgstr "grep: falha ao criar thread: %s"
 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:452 builtin/grep.c:487
+#: builtin/grep.c:453 builtin/grep.c:488
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "não foi possível ler a árvore (%s)"
 
-#: builtin/grep.c:502
+#: builtin/grep.c:503
 #, 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:560
+#: builtin/grep.c:561
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "a opção '%c' espera um valor numérico"
 
-#: builtin/grep.c:577
-#, c-format
-msgid "cannot open '%s'"
-msgstr "não é possível abrir '%s'"
-
-#: builtin/grep.c:646
+#: builtin/grep.c:647
 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:648
+#: builtin/grep.c:649
 msgid "find in contents not managed by git"
 msgstr "procurar em conteúdos não geridos pelo git"
 
-#: builtin/grep.c:650
+#: builtin/grep.c:651
 msgid "search in both tracked and untracked files"
 msgstr "procurar em ficheiros controlados e não controlados"
 
-#: builtin/grep.c:652
+#: builtin/grep.c:653
 msgid "ignore files specified via '.gitignore'"
 msgstr "ignorar ficheiros especificados via '.gitignore'"
 
-#: builtin/grep.c:655
+#: builtin/grep.c:656
 msgid "show non-matching lines"
 msgstr "mostrar linhas não correspondidas"
 
-#: builtin/grep.c:657
+#: builtin/grep.c:658
 msgid "case insensitive matching"
 msgstr "não diferenciar maiúsculas de minúsculas"
 
-#: builtin/grep.c:659
+#: builtin/grep.c:660
 msgid "match patterns only at word boundaries"
 msgstr "corresponder padrões apenas a palavras"
 
-#: builtin/grep.c:661
+#: builtin/grep.c:662
 msgid "process binary files as text"
 msgstr "processar ficheiros binários como texto"
 
-#: builtin/grep.c:663
+#: builtin/grep.c:664
 msgid "don't match patterns in binary files"
 msgstr "ignorar ficheiros binários"
 
-#: builtin/grep.c:666
+#: builtin/grep.c:667
 msgid "process binary files with textconv filters"
 msgstr "processar ficheiros binários com filtros textconv"
 
-#: builtin/grep.c:668
+#: builtin/grep.c:669
 msgid "descend at most <depth> levels"
 msgstr "descer no máximo até <profundidade>"
 
-#: builtin/grep.c:672
+#: builtin/grep.c:673
 msgid "use extended POSIX regular expressions"
 msgstr "usar expressões regulares estendidas do POSIX"
 
-#: builtin/grep.c:675
+#: builtin/grep.c:676
 msgid "use basic POSIX regular expressions (default)"
 msgstr "usar expressões regulares básicas do POSIX (predefinição)"
 
-#: builtin/grep.c:678
+#: builtin/grep.c:679
 msgid "interpret patterns as fixed strings"
 msgstr "interpretar padrões como cadeias de caracteres fixas"
 
-#: builtin/grep.c:681
+#: builtin/grep.c:682
 msgid "use Perl-compatible regular expressions"
 msgstr "usar expressões regulares compatíveis com Perl"
 
-#: builtin/grep.c:684
+#: builtin/grep.c:685
 msgid "show line numbers"
 msgstr "mostrar números de linha"
 
-#: builtin/grep.c:685
+#: builtin/grep.c:686
 msgid "don't show filenames"
 msgstr "não mostrar nomes de ficheiro"
 
-#: builtin/grep.c:686
+#: builtin/grep.c:687
 msgid "show filenames"
 msgstr "mostrar nomes de ficheiro"
 
-#: builtin/grep.c:688
+#: builtin/grep.c:689
 msgid "show filenames relative to top directory"
 msgstr "mostrar nomes de ficheiro relativamente ao diretório superior"
 
-#: builtin/grep.c:690
+#: builtin/grep.c:691
 msgid "show only filenames instead of matching lines"
 msgstr "mostrar apenas nomes de ficheiro em vez de linhas correspondidas"
 
-#: builtin/grep.c:692
+#: builtin/grep.c:693
 msgid "synonym for --files-with-matches"
 msgstr "sinónimo de --files-with-matches"
 
-#: builtin/grep.c:695
+#: builtin/grep.c:696
 msgid "show only the names of files without match"
 msgstr "mostrar apenas nomes de ficheiro sem correspondência"
 
-#: builtin/grep.c:697
+#: builtin/grep.c:698
 msgid "print NUL after filenames"
 msgstr "imprimir NUL depois dos nomes de ficheiro"
 
-#: builtin/grep.c:699
+#: builtin/grep.c:700
 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:700
+#: builtin/grep.c:701
 msgid "highlight matches"
 msgstr "realçar correspondências"
 
-#: builtin/grep.c:702
+#: builtin/grep.c:703
 msgid "print empty line between matches from different files"
 msgstr ""
 "imprimir uma linha em branco entre correspondências de diferentes ficheiros"
 
-#: builtin/grep.c:704
+#: builtin/grep.c:705
 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:707
+#: builtin/grep.c:708
 msgid "show <n> context lines before and after matches"
 msgstr "mostrar <n> linhas de contexto antes e depois das correspondências"
 
-#: builtin/grep.c:710
+#: builtin/grep.c:711
 msgid "show <n> context lines before matches"
 msgstr "mostrar <n> linhas de contexto antes das correspondências"
 
-#: builtin/grep.c:712
+#: builtin/grep.c:713
 msgid "show <n> context lines after matches"
 msgstr "mostrar <n> linhas de contexto depois das correspondências"
 
-#: builtin/grep.c:714
+#: builtin/grep.c:715
 msgid "use <n> worker threads"
 msgstr "usar <n> threads de trabalho"
 
-#: builtin/grep.c:715
+#: builtin/grep.c:716
 msgid "shortcut for -C NUM"
 msgstr "atalho para -C NUM"
 
-#: builtin/grep.c:718
+#: builtin/grep.c:719
 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:720
+#: builtin/grep.c:721
 msgid "show the surrounding function"
 msgstr "mostrar a função circundante"
 
-#: builtin/grep.c:723
+#: builtin/grep.c:724
 msgid "read patterns from file"
 msgstr "ler padrões do ficheiro"
 
-#: builtin/grep.c:725
+#: builtin/grep.c:726
 msgid "match <pattern>"
 msgstr "procurar <padrão>"
 
-#: builtin/grep.c:727
+#: builtin/grep.c:728
 msgid "combine patterns specified with -e"
 msgstr "combinar padrões especificados com -e"
 
-#: builtin/grep.c:739
+#: builtin/grep.c:740
 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:741
+#: builtin/grep.c:742
 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:743
+#: builtin/grep.c:744
 msgid "show parse tree for grep expression"
 msgstr "mostrar árvore de analise da expressões grep"
 
-#: builtin/grep.c:747
+#: builtin/grep.c:748
 msgid "pager"
 msgstr "paginador"
 
-#: builtin/grep.c:747
+#: builtin/grep.c:748
 msgid "show matching files in the pager"
 msgstr "mostrar ficheiros com correspondências no paginador"
 
-#: builtin/grep.c:750
+#: builtin/grep.c:751
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "permitir invocar grep(1) (ignorado nesta compilação)"
 
-#: builtin/grep.c:813
+#: builtin/grep.c:814
 msgid "no pattern given."
 msgstr "nenhum padrão fornecido."
 
-#: builtin/grep.c:845 builtin/index-pack.c:1477
+#: builtin/grep.c:846 builtin/index-pack.c:1480
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "número de threads especificado inválido (%d)"
 
-#: builtin/grep.c:875
+#: builtin/grep.c:876
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager só funciona na árvore de trabalho"
 
-#: builtin/grep.c:901
+#: builtin/grep.c:902
 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:906
+#: builtin/grep.c:907
 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:909
+#: builtin/grep.c:910
 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:917
+#: builtin/grep.c:918
 msgid "both --cached and trees are given."
 msgstr "--cached e árvores foram fornecidos simultaneamente."
 
@@ -7038,92 +8031,96 @@ msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
 msgstr ""
-"git hash-object [-t <tipo>] [-w] [--path=<ficheiro> | --no-filters] [--stdin]"
-" [--] <ficheiro>..."
+"git hash-object [-t <tipo>] [-w] [--path=<ficheiro> | --no-filters] [--"
+"stdin] [--] <ficheiro>..."
 
 #: builtin/hash-object.c:82
 msgid "git hash-object  --stdin-paths"
 msgstr "git hash-object  --stdin-paths"
 
-#: builtin/hash-object.c:93
+#: builtin/hash-object.c:94
 msgid "type"
 msgstr "tipo"
 
-#: builtin/hash-object.c:93
+#: builtin/hash-object.c:94
 msgid "object type"
 msgstr "tipo do objeto"
 
-#: builtin/hash-object.c:94
+#: builtin/hash-object.c:95
 msgid "write the object into the object database"
 msgstr "escrever o objeto na base de dados de objetos"
 
-#: builtin/hash-object.c:96
+#: builtin/hash-object.c:97
 msgid "read the object from stdin"
 msgstr "ler o objeto da entrada padrão"
 
-#: builtin/hash-object.c:98
+#: builtin/hash-object.c:99
 msgid "store file as is without filters"
 msgstr "guardar o ficheiro tal como está, sem filtros"
 
-#: builtin/hash-object.c:99
+#: builtin/hash-object.c:100
 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:100
+#: builtin/hash-object.c:101
 msgid "process file as it were from this path"
 msgstr "processar o ficheiro como se este fosse do caminho indicado"
 
-#: builtin/help.c:41
+#: builtin/help.c:42
 msgid "print all available commands"
 msgstr "imprimir todos os comandos disponíveis"
 
-#: builtin/help.c:42
+#: builtin/help.c:43
+msgid "exclude guides"
+msgstr "excluir guias"
+
+#: builtin/help.c:44
 msgid "print list of useful guides"
 msgstr "imprimir lista de guias úteis"
 
-#: builtin/help.c:43
+#: builtin/help.c:45
 msgid "show man page"
 msgstr "mostrar página do manual"
 
-#: builtin/help.c:44
+#: builtin/help.c:46
 msgid "show manual in web browser"
 msgstr "mostrar o manual no navegador web"
 
-#: builtin/help.c:46
+#: builtin/help.c:48
 msgid "show info page"
 msgstr "mostrar página info"
 
-#: builtin/help.c:52
+#: builtin/help.c:54
 msgid "git help [--all] [--guides] [--man | --web | --info] [<command>]"
 msgstr "git help [--all] [--guides] [--man | --web | --info] [<comando>]"
 
-#: builtin/help.c:64
+#: builtin/help.c:66
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr "formato de ajuda não reconhecido '%s'"
 
-#: builtin/help.c:91
+#: builtin/help.c:93
 msgid "Failed to start emacsclient."
 msgstr "Falha ao iniciar emacsclient."
 
-#: builtin/help.c:104
+#: builtin/help.c:106
 msgid "Failed to parse emacsclient version."
 msgstr "Falha ao analisar a versão do emacsclient."
 
-#: builtin/help.c:112
+#: builtin/help.c:114
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr "a versão do emacsclient '%d' é demasiado antiga (< 22)."
 
-#: builtin/help.c:130 builtin/help.c:151 builtin/help.c:160 builtin/help.c:168
+#: builtin/help.c:132 builtin/help.c:153 builtin/help.c:162 builtin/help.c:170
 #, c-format
 msgid "failed to exec '%s'"
 msgstr "falha ao executar '%s'"
 
-#: builtin/help.c:205
+#: builtin/help.c:207
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -7132,7 +8129,7 @@ msgstr ""
 "'%s': caminho para visualizador de manual não suportado.\n"
 "Considere usar 'man.<ferramenta>.cmd'."
 
-#: builtin/help.c:217
+#: builtin/help.c:219
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -7141,459 +8138,459 @@ msgstr ""
 "'%s': comando de visualizador de manual suportado.\n"
 "Considere usar 'man.<ferramenta>.path'."
 
-#: builtin/help.c:334
+#: builtin/help.c:336
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "'%s': visualizador de manual desconhecido."
 
-#: builtin/help.c:351
+#: builtin/help.c:353
 msgid "no man viewer handled the request"
 msgstr "nenhum visualizador de manual atendeu o pedido"
 
-#: builtin/help.c:359
+#: builtin/help.c:361
 msgid "no info viewer handled the request"
 msgstr "nenhum visualizador de info atendeu o pedido"
 
-#: builtin/help.c:408
+#: builtin/help.c:403
 msgid "Defining attributes per path"
 msgstr "Definir atributos por caminho"
 
-#: builtin/help.c:409
+#: 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:410
+#: builtin/help.c:405
 msgid "A Git glossary"
 msgstr "Um Glossário do Git"
 
-#: builtin/help.c:411
+#: builtin/help.c:406
 msgid "Specifies intentionally untracked files to ignore"
 msgstr ""
 "Especificar ficheiros não controlados para serem intencionalmente ignorados"
 
-#: builtin/help.c:412
+#: builtin/help.c:407
 msgid "Defining submodule properties"
 msgstr "Definir propriedades de submódulos"
 
-#: builtin/help.c:413
+#: builtin/help.c:408
 msgid "Specifying revisions and ranges for Git"
 msgstr "Especificar revisões e intervalos do Git"
 
-#: builtin/help.c:414
+#: 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:415
+#: 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:427
+#: builtin/help.c:422
 msgid "The common Git guides are:\n"
 msgstr "Os guias comuns do Git:\n"
 
-#: builtin/help.c:448 builtin/help.c:465
-#, c-format
-msgid "usage: %s%s"
-msgstr "utilização: %s%s"
-
-#: builtin/help.c:481
+#: builtin/help.c:440
 #, c-format
 msgid "`git %s' is aliased to `%s'"
 msgstr "'git %s' é um alias de '%s'"
 
-#: builtin/index-pack.c:152
+#: builtin/help.c:462 builtin/help.c:479
+#, 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/index-pack.c:202
+#: builtin/index-pack.c:204
 #, c-format
 msgid "object type mismatch at %s"
 msgstr "incompatibilidade de tipo de objeto em %s"
 
-#: builtin/index-pack.c:222
+#: builtin/index-pack.c:224
 #, c-format
 msgid "did not receive expected object %s"
 msgstr "o objeto esperado %s não foi recebido"
 
-#: builtin/index-pack.c:225
+#: builtin/index-pack.c:227
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr "objeto %s: tipo esperado %s, obtido %s"
 
-#: builtin/index-pack.c:267
+#: builtin/index-pack.c:269
 #, 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:277
+#: builtin/index-pack.c:279
 msgid "early EOF"
 msgstr "fim de ficheiro (EOF) prematuro"
 
-#: builtin/index-pack.c:278
+#: builtin/index-pack.c:280
 msgid "read error on input"
 msgstr "erro de leitura da entrada"
 
-#: builtin/index-pack.c:290
+#: builtin/index-pack.c:292
 msgid "used more bytes than were available"
 msgstr "foram usados mais bytes dos que estavam disponíveis"
 
-#: builtin/index-pack.c:297
+#: builtin/index-pack.c:299
 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:313
+#: builtin/index-pack.c:302 builtin/unpack-objects.c:92
+msgid "pack exceeds maximum allowed size"
+msgstr "o pacote excede o tamanho máximo permitido"
+
+#: builtin/index-pack.c:317
 #, c-format
 msgid "unable to create '%s'"
 msgstr "não foi possível criar '%s'"
 
-#: builtin/index-pack.c:318
+#: builtin/index-pack.c:322
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "não é possível abrir o ficheiro de pacote '%s'"
 
-#: builtin/index-pack.c:332
+#: builtin/index-pack.c:336
 msgid "pack signature mismatch"
 msgstr "a assinatura do pacote não corresponde"
 
-#: builtin/index-pack.c:334
+#: builtin/index-pack.c:338
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "versão de pacote %<PRIu32> não suportada"
 
-#: builtin/index-pack.c:352
+#: builtin/index-pack.c:356
 #, c-format
-msgid "pack has bad object at offset %lu: %s"
-msgstr "pacote com objeto incorreto no offset %lu: %s"
+msgid "pack has bad object at offset %<PRIuMAX>: %s"
+msgstr "pacote com objeto incorreto no offset %<PRIuMAX>: %s"
 
-#: builtin/index-pack.c:473
+#: builtin/index-pack.c:478
 #, c-format
 msgid "inflate returned %d"
 msgstr "a descompactação retornou %d"
 
-#: builtin/index-pack.c:522
+#: builtin/index-pack.c:527
 msgid "offset value overflow for delta base object"
 msgstr "delta de objeto base com capacidade excedida no valor de offset"
 
-#: builtin/index-pack.c:530
+#: builtin/index-pack.c:535
 msgid "delta base offset is out of bound"
 msgstr "offset da base delta está fora do limite"
 
-#: builtin/index-pack.c:538
+#: builtin/index-pack.c:543
 #, c-format
 msgid "unknown object type %d"
 msgstr "objeto de tipo desconhecido %d"
 
-#: builtin/index-pack.c:569
+#: builtin/index-pack.c:574
 msgid "cannot pread pack file"
 msgstr "não é possível invocar pread sobre o ficheiro de pacote"
 
-#: builtin/index-pack.c:571
+#: builtin/index-pack.c:576
 #, c-format
-msgid "premature end of pack file, %lu byte missing"
-msgid_plural "premature end of pack file, %lu bytes missing"
-msgstr[0] "fim de ficheiro de pacote prematuro, falta %lu byte"
-msgstr[1] "fim de ficheiro de pacote prematuro, faltam %lu bytes"
+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:597
+#: builtin/index-pack.c:602
 msgid "serious inflate inconsistency"
 msgstr "inconsistência de descompactação grave"
 
-#: builtin/index-pack.c:743 builtin/index-pack.c:749 builtin/index-pack.c:772
-#: builtin/index-pack.c:806 builtin/index-pack.c:815
+#: builtin/index-pack.c:748 builtin/index-pack.c:754 builtin/index-pack.c:777
+#: builtin/index-pack.c:811 builtin/index-pack.c:820
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "COLISÃO DE SHA1 COM %s ENCONTRADA!"
 
-#: builtin/index-pack.c:746 builtin/pack-objects.c:162
-#: builtin/pack-objects.c:254
+#: builtin/index-pack.c:751 builtin/pack-objects.c:166
+#: builtin/pack-objects.c:258
 #, c-format
 msgid "unable to read %s"
 msgstr "não foi possível ler %s"
 
-#: builtin/index-pack.c:812
+#: builtin/index-pack.c:817
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "não é possível ler o objeto existente %s"
 
-#: builtin/index-pack.c:826
+#: builtin/index-pack.c:831
 #, c-format
 msgid "invalid blob object %s"
 msgstr "objeto blob inválido %s"
 
-#: builtin/index-pack.c:840
+#: builtin/index-pack.c:845
 #, c-format
 msgid "invalid %s"
 msgstr "inválido %s"
 
-#: builtin/index-pack.c:843
+#: builtin/index-pack.c:848
 msgid "Error in object"
 msgstr "Erro no objeto"
 
-#: builtin/index-pack.c:845
+#: builtin/index-pack.c:850
 #, 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:917 builtin/index-pack.c:948
+#: builtin/index-pack.c:922 builtin/index-pack.c:953
 msgid "failed to apply delta"
 msgstr "falha ao aplicar delta"
 
-#: builtin/index-pack.c:1118
+#: builtin/index-pack.c:1123
 msgid "Receiving objects"
 msgstr "A receber objetos"
 
-#: builtin/index-pack.c:1118
+#: builtin/index-pack.c:1123
 msgid "Indexing objects"
 msgstr "A indexar objetos"
 
-#: builtin/index-pack.c:1150
+#: builtin/index-pack.c:1155
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "pacote corrompido (SHA1 não corresponde)"
 
-#: builtin/index-pack.c:1155
+#: builtin/index-pack.c:1160
 msgid "cannot fstat packfile"
 msgstr "não é possível invocar fstat sobre o ficheiro de pacote"
 
-#: builtin/index-pack.c:1158
+#: builtin/index-pack.c:1163
 msgid "pack has junk at the end"
 msgstr "pacote com lixo no final"
 
-#: builtin/index-pack.c:1169
+#: builtin/index-pack.c:1174
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr "extrema confusão em parse_pack_objects()"
 
-#: builtin/index-pack.c:1194
+#: builtin/index-pack.c:1197
 msgid "Resolving deltas"
 msgstr "A resolver deltas"
 
-#: builtin/index-pack.c:1205
+#: builtin/index-pack.c:1208
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "não foi possível criar thread: %s"
 
-#: builtin/index-pack.c:1247
+#: builtin/index-pack.c:1250
 msgid "confusion beyond insanity"
 msgstr "extrema confusão"
 
-#: builtin/index-pack.c:1253
+#: builtin/index-pack.c:1256
 #, 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:1265
+#: builtin/index-pack.c:1268
 #, 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:1269
+#: builtin/index-pack.c:1272
 #, 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:1293
+#: builtin/index-pack.c:1296
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr "não é possível compactar objeto acrescentado (%d)"
 
-#: builtin/index-pack.c:1369
+#: builtin/index-pack.c:1372
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "objeto local %s corrompido"
 
-#: builtin/index-pack.c:1393
+#: builtin/index-pack.c:1396
 msgid "error while closing pack file"
 msgstr "erro ao fechar ficheiro de pacote"
 
-#: builtin/index-pack.c:1406
+#: builtin/index-pack.c:1409
 #, c-format
 msgid "cannot write keep file '%s'"
 msgstr "não é possível escrever o ficheiro de conservação '%s'"
 
-#: builtin/index-pack.c:1414
+#: builtin/index-pack.c:1417
 #, c-format
 msgid "cannot close written keep file '%s'"
 msgstr "não é possível fechar o ficheiro de conservação '%s' escrito"
 
-#: builtin/index-pack.c:1427
+#: builtin/index-pack.c:1430
 msgid "cannot store pack file"
 msgstr "não é possível guardar ficheiro de pacote"
 
-#: builtin/index-pack.c:1438
+#: builtin/index-pack.c:1441
 msgid "cannot store index file"
 msgstr "não é possível guardar o ficheiro índice"
 
-#: builtin/index-pack.c:1471
+#: builtin/index-pack.c:1474
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "pack.indexversion=%<PRIu32> incorreto"
 
-#: builtin/index-pack.c:1481 builtin/index-pack.c:1678
+#: builtin/index-pack.c:1484 builtin/index-pack.c:1681
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "sem suporte de threads, %s ignorado"
 
-#: builtin/index-pack.c:1540
+#: builtin/index-pack.c:1542
 #, 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:1542
+#: builtin/index-pack.c:1544
 #, 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:1589
+#: builtin/index-pack.c:1591
 #, 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:1596
+#: builtin/index-pack.c:1598
 #, 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:1609
+#: builtin/index-pack.c:1611
 #, 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:1638
-msgid "Cannot come back to cwd"
-msgstr "Não é possível voltar ao diretório de trabalho atual"
-
-#: builtin/index-pack.c:1690 builtin/index-pack.c:1693
-#: builtin/index-pack.c:1705 builtin/index-pack.c:1709
+#: builtin/index-pack.c:1693 builtin/index-pack.c:1696
+#: builtin/index-pack.c:1712 builtin/index-pack.c:1716
 #, c-format
 msgid "bad %s"
 msgstr "%s incorreto"
 
-#: builtin/index-pack.c:1723
+#: builtin/index-pack.c:1732
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin não pode ser usado sem --stdin"
 
-#: builtin/index-pack.c:1731
+#: builtin/index-pack.c:1740
 msgid "--verify with no packfile name given"
 msgstr "--verify sem nome do ficheiro de pacote indicado"
 
-#: builtin/init-db.c:55
+#: builtin/init-db.c:54
 #, c-format
 msgid "cannot stat '%s'"
 msgstr "não é possível invocar stat sobre '%s'"
 
-#: builtin/init-db.c:61
+#: builtin/init-db.c:60
 #, c-format
 msgid "cannot stat template '%s'"
 msgstr "não é possível invocar stat sobre o modelo '%s'"
 
-#: builtin/init-db.c:66
+#: builtin/init-db.c:65
 #, c-format
 msgid "cannot opendir '%s'"
 msgstr "não é possível abrir (opendir) '%s'"
 
-#: builtin/init-db.c:77
+#: builtin/init-db.c:76
 #, c-format
 msgid "cannot readlink '%s'"
 msgstr "não é possível ler (readlink) '%s'"
 
-#: builtin/init-db.c:79
+#: builtin/init-db.c:78
 #, c-format
 msgid "cannot symlink '%s' '%s'"
 msgstr "não é possível criar a ligação simbólica '%s' '%s'"
 
-#: builtin/init-db.c:85
+#: builtin/init-db.c:84
 #, c-format
 msgid "cannot copy '%s' to '%s'"
 msgstr "não é possível copiar '%s' para '%s'"
 
-#: builtin/init-db.c:89
+#: builtin/init-db.c:88
 #, c-format
 msgid "ignoring template %s"
 msgstr "modelo %s ignorado"
 
-#: builtin/init-db.c:120
+#: builtin/init-db.c:119
 #, c-format
 msgid "templates not found %s"
 msgstr "modelos não encontrados em %s"
 
-#: builtin/init-db.c:135
+#: builtin/init-db.c:134
 #, c-format
 msgid "not copying templates from '%s': %s"
 msgstr "modelos não copiados de '%s': %s"
 
-#: builtin/init-db.c:312 builtin/init-db.c:315
-#, c-format
-msgid "%s already exists"
-msgstr "%s já existe"
-
-#: builtin/init-db.c:344
+#: builtin/init-db.c:327
 #, 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:347
+#: builtin/init-db.c:330
 #, c-format
 msgid "unable to move %s to %s"
 msgstr "não foi possível mover %s para %s"
 
-#. TRANSLATORS: The first '%s' is either "Reinitialized
-#. existing" or "Initialized empty", the second " shared" or
-#. "", and the last '%s%s' is the verbatim directory name.
+#: builtin/init-db.c:347 builtin/init-db.c:350
+#, c-format
+msgid "%s already exists"
+msgstr "%s já existe"
+
 #: builtin/init-db.c:403
 #, c-format
-msgid "%s%s Git repository in %s%s\n"
-msgstr "Repositório Git %s%s em %s%s\n"
+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
-msgid "Reinitialized existing"
-msgstr "existente reinicializado"
+#, 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:404
-msgid "Initialized empty"
-msgstr "vazio inicializado"
+#: builtin/init-db.c:408
+#, 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:405
-msgid " shared"
-msgstr " partilhado"
+#: builtin/init-db.c:409
+#, 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:452
+#: builtin/init-db.c:457
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [<directory>]"
 msgstr ""
-"git init [-q | --quiet] [--bare] [--template=<diretório-modelo>] "
-"[--shared[=<permissões>]] [<diretório>]"
+"git init [-q | --quiet] [--bare] [--template=<diretório-modelo>] [--"
+"shared[=<permissões>]] [<diretório>]"
 
-#: builtin/init-db.c:475
+#: builtin/init-db.c:480
 msgid "permissions"
 msgstr "permissões"
 
-#: builtin/init-db.c:476
+#: builtin/init-db.c:481
 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:510 builtin/init-db.c:515
+#: builtin/init-db.c:515 builtin/init-db.c:520
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "não é possível criar o diretório %s"
 
-#: builtin/init-db.c:519
+#: builtin/init-db.c:524
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "não é possível mudar para o diretório %s"
 
-#: builtin/init-db.c:540
+#: builtin/init-db.c:545
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
@@ -7602,7 +8599,7 @@ msgstr ""
 "%s (ou --work-tree=<diretório>) não é permitido sem especificar %s (ou --git-"
 "dir=<diretório>)"
 
-#: builtin/init-db.c:568
+#: builtin/init-db.c:573
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "Não é possível aceder à árvore de trabalho '%s'"
@@ -7635,332 +8632,333 @@ msgstr "terminadores a adicionar"
 msgid "no input file given for in-place editing"
 msgstr "nenhum ficheiro de entrada fornecido para edição no local"
 
-#: builtin/log.c:43
+#: builtin/log.c:44
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<opções>] [<intervalo-de-revisões>] [[--] <caminho>...]"
 
-#: builtin/log.c:44
+#: builtin/log.c:45
 msgid "git show [<options>] <object>..."
 msgstr "git show [<opções>] <objeto>..."
 
-#: builtin/log.c:83
+#: builtin/log.c:84
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "opção --decorate inválida: %s"
 
-#: builtin/log.c:137
+#: builtin/log.c:139
 msgid "suppress diff output"
 msgstr "suprimir saída do diff"
 
-#: builtin/log.c:138
+#: builtin/log.c:140
 msgid "show source"
 msgstr "mostrar origem"
 
-#: builtin/log.c:139
+#: builtin/log.c:141
 msgid "Use mail map file"
 msgstr "usar ficheiro de mapeamento de correio"
 
-#: builtin/log.c:140
+#: builtin/log.c:142
 msgid "decorate options"
 msgstr "opções de decoração"
 
-#: builtin/log.c:143
+#: builtin/log.c:145
 msgid "Process line range n,m in file, counting from 1"
-msgstr "processar intervalo de linhas n,m, a cantar a partir de 1"
+msgstr "processar intervalo de linhas n,m, a contar a partir de 1"
 
-#: builtin/log.c:239
+#: builtin/log.c:241
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Resultado final: %d %s\n"
 
-#: builtin/log.c:471
+#: builtin/log.c:486
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s: ficheiro incorreto"
 
-#: builtin/log.c:485 builtin/log.c:578
+#: builtin/log.c:500 builtin/log.c:594
 #, c-format
 msgid "Could not read object %s"
 msgstr "Não foi possível ler o objeto %s"
 
-#: builtin/log.c:602
+#: builtin/log.c:618
 #, c-format
 msgid "Unknown type: %d"
 msgstr "Tipo desconhecido: %d"
 
-#: builtin/log.c:722
+#: builtin/log.c:739
 msgid "format.headers without value"
 msgstr "format.headers sem valor"
 
-#: builtin/log.c:812
+#: builtin/log.c:839
 msgid "name of output directory is too long"
 msgstr "o nome do diretório de saída é demasiado longo"
 
-#: builtin/log.c:827
+#: builtin/log.c:854
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr "Não é possível abrir o ficheiro de patch %s"
 
-#: builtin/log.c:841
+#: builtin/log.c:868
 msgid "Need exactly one range."
 msgstr "É necessário exatamente um intervalo."
 
-#: builtin/log.c:851
+#: builtin/log.c:878
 msgid "Not a range."
 msgstr "Não é um intervalo."
 
-#: builtin/log.c:957
+#: builtin/log.c:984
 msgid "Cover letter needs email format"
 msgstr "A carta de apresentação precisa de um formato de e-mail"
 
-#: builtin/log.c:1036
+#: builtin/log.c:1063
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to incorreto: %s"
 
-#: builtin/log.c:1064
+#: builtin/log.c:1091
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<opções>] [<desde> | <intervalo-de-revisões>]"
 
-#: builtin/log.c:1109
+#: builtin/log.c:1141
 msgid "Two output directories?"
 msgstr "Dois diretórios de saída?"
 
-#: builtin/log.c:1216 builtin/log.c:1857 builtin/log.c:1859 builtin/log.c:1871
+#: builtin/log.c:1248 builtin/log.c:1891 builtin/log.c:1893 builtin/log.c:1905
 #, c-format
 msgid "Unknown commit %s"
 msgstr "Commit desconhecido %s"
 
-#: builtin/log.c:1226 builtin/notes.c:253 builtin/notes.c:304
-#: builtin/notes.c:306 builtin/notes.c:369 builtin/notes.c:424
-#: builtin/notes.c:510 builtin/notes.c:515 builtin/notes.c:593
-#: builtin/notes.c:656 builtin/notes.c:881 builtin/tag.c:455
+#: builtin/log.c:1258 builtin/notes.c:884 builtin/tag.c:455
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "Falha ao resolver '%s' numa referência válida."
 
-#: builtin/log.c:1231
+#: builtin/log.c:1263
 msgid "Could not find exact merge base."
 msgstr "Não foi possível encontrar a base exata de integração."
 
-#: builtin/log.c:1235
+#: builtin/log.c:1267
 msgid ""
 "Failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
 "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"
+"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:1255
+#: builtin/log.c:1287
 msgid "Failed to find exact merge base"
 msgstr "Falha ao procurar base exata de integração"
 
-#: builtin/log.c:1266
+#: builtin/log.c:1298
 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:1270
+#: builtin/log.c:1302
 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:1319
+#: builtin/log.c:1351
 msgid "cannot get patch id"
 msgstr "não é possível obter o id do patch"
 
-#: builtin/log.c:1377
+#: builtin/log.c:1408
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "usar [PATCH n/m] mesmo com um único patch"
 
-#: builtin/log.c:1380
+#: builtin/log.c:1411
 msgid "use [PATCH] even with multiple patches"
 msgstr "usar [PATCH] mesmo com múltiplos patches"
 
-#: builtin/log.c:1384
+#: builtin/log.c:1415
 msgid "print patches to standard out"
 msgstr "imprimir patches para a saída padrão"
 
-#: builtin/log.c:1386
+#: builtin/log.c:1417
 msgid "generate a cover letter"
 msgstr "gerar uma carta de apresentação"
 
-#: builtin/log.c:1388
+#: builtin/log.c:1419
 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:1389
+#: builtin/log.c:1420
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1390
+#: builtin/log.c:1421
 msgid "use <sfx> instead of '.patch'"
 msgstr "usar <sfx> em vez de '.patch'"
 
-#: builtin/log.c:1392
+#: builtin/log.c:1423
 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:1394
+#: builtin/log.c:1425
 msgid "mark the series as Nth re-roll"
 msgstr "marcar a série como a n-ésima reiteração"
 
-#: builtin/log.c:1396
+#: builtin/log.c:1427
+msgid "Use [RFC PATCH] instead of [PATCH]"
+msgstr "Usar [RFC PATCH] em vez de [PATCH]"
+
+#: builtin/log.c:1430
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "usar [<prefixo>] em vez de [PATCH]"
 
-#: builtin/log.c:1399
+#: builtin/log.c:1433
 msgid "store resulting files in <dir>"
 msgstr "guardar os ficheiros resultantes em <dir>"
 
-#: builtin/log.c:1402
+#: builtin/log.c:1436
 msgid "don't strip/add [PATCH]"
 msgstr "não tirar/inserir [PATCH]"
 
-#: builtin/log.c:1405
+#: builtin/log.c:1439
 msgid "don't output binary diffs"
 msgstr "não gerar diffs binários"
 
-#: builtin/log.c:1407
+#: builtin/log.c:1441
 msgid "output all-zero hash in From header"
 msgstr "preencher o cabeçalho From com hash de zeros"
 
-#: builtin/log.c:1409
+#: builtin/log.c:1443
 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:1411
+#: builtin/log.c:1445
 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:1413
+#: builtin/log.c:1447
 msgid "Messaging"
 msgstr "Mensagem"
 
-#: builtin/log.c:1414
+#: builtin/log.c:1448
 msgid "header"
 msgstr "cabeçalho"
 
-#: builtin/log.c:1415
+#: builtin/log.c:1449
 msgid "add email header"
 msgstr "adicionar cabeçalho de e-mail"
 
-#: builtin/log.c:1416 builtin/log.c:1418
+#: builtin/log.c:1450 builtin/log.c:1452
 msgid "email"
 msgstr "e-mail"
 
-#: builtin/log.c:1416
+#: builtin/log.c:1450
 msgid "add To: header"
 msgstr "adicionar cabeçalho To:"
 
-#: builtin/log.c:1418
+#: builtin/log.c:1452
 msgid "add Cc: header"
 msgstr "adicionar cabeçalho Cc:"
 
-#: builtin/log.c:1420
+#: builtin/log.c:1454
 msgid "ident"
 msgstr "identidade"
 
-#: builtin/log.c:1421
+#: builtin/log.c:1455
 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:1423
+#: builtin/log.c:1457
 msgid "message-id"
 msgstr "id-mensagem"
 
-#: builtin/log.c:1424
+#: builtin/log.c:1458
 msgid "make first mail a reply to <message-id>"
 msgstr "usar o primeiro email para responder a <id-mensagem>"
 
-#: builtin/log.c:1425 builtin/log.c:1428
+#: builtin/log.c:1459 builtin/log.c:1462
 msgid "boundary"
 msgstr "limite"
 
-#: builtin/log.c:1426
+#: builtin/log.c:1460
 msgid "attach the patch"
 msgstr "anexar o patch"
 
-#: builtin/log.c:1429
+#: builtin/log.c:1463
 msgid "inline the patch"
 msgstr "incorporar o patch"
 
-#: builtin/log.c:1433
+#: builtin/log.c:1467
 msgid "enable message threading, styles: shallow, deep"
 msgstr "ativar mensagens por tópicos, estilos: shallow (raso), deep (profundo)"
 
-#: builtin/log.c:1435
+#: builtin/log.c:1469
 msgid "signature"
 msgstr "assinatura"
 
-#: builtin/log.c:1436
+#: builtin/log.c:1470
 msgid "add a signature"
 msgstr "adicionar uma assinatura"
 
-#: builtin/log.c:1437
+#: builtin/log.c:1471
 msgid "base-commit"
 msgstr "commit-base"
 
-#: builtin/log.c:1438
+#: builtin/log.c:1472
 msgid "add prerequisite tree info to the patch series"
 msgstr "adicionar informação pré-requisito da árvore à série de patches"
 
-#: builtin/log.c:1440
+#: builtin/log.c:1474
 msgid "add a signature from a file"
 msgstr "adicionar uma assinatura de um ficheiro"
 
-#: builtin/log.c:1441
+#: builtin/log.c:1475
 msgid "don't print the patch filenames"
 msgstr "não imprimir os nomes dos ficheiros de patch"
 
-#: builtin/log.c:1531
+#: builtin/log.c:1565
 msgid "-n and -k are mutually exclusive."
 msgstr "-n e -k são mutuamente exclusivos."
 
-#: builtin/log.c:1533
-msgid "--subject-prefix and -k are mutually exclusive."
-msgstr "--subject-prefix e -k são mutuamente exclusivos."
+#: builtin/log.c:1567
+msgid "--subject-prefix/--rfc and -k are mutually exclusive."
+msgstr "--subject-prefix/--rfc e -k são mutuamente exclusivos."
 
-#: builtin/log.c:1541
+#: builtin/log.c:1575
 msgid "--name-only does not make sense"
 msgstr "--name-only não faz sentido"
 
-#: builtin/log.c:1543
+#: builtin/log.c:1577
 msgid "--name-status does not make sense"
 msgstr "--name-status não faz sentido"
 
-#: builtin/log.c:1545
+#: builtin/log.c:1579
 msgid "--check does not make sense"
 msgstr "--check não faz sentido"
 
-#: builtin/log.c:1573
+#: builtin/log.c:1609
 msgid "standard output, or directory, which one?"
 msgstr "saída padrão, ou diretório, qual deles?"
 
-#: builtin/log.c:1575
+#: builtin/log.c:1611
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "Não foi possível criar o diretório '%s'"
 
-#: builtin/log.c:1672
+#: builtin/log.c:1705
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "não é possível ler o ficheiro de assinatura '%s'"
 
-#: builtin/log.c:1743
+#: builtin/log.c:1777
 msgid "Failed to create output files"
 msgstr "Falha ao criar os ficheiros de saída"
 
-#: builtin/log.c:1792
+#: builtin/log.c:1826
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<ramo-a-montante> [<head> [<limite>]]]"
 
-#: builtin/log.c:1846
+#: builtin/log.c:1880
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -7968,103 +8966,107 @@ msgstr ""
 "O ramo remoto seguido não foi encontrado, especifique <ramo-a-montante> "
 "manualmente.\n"
 
-#: builtin/ls-files.c:378
+#: builtin/ls-files.c:458
 msgid "git ls-files [<options>] [<file>...]"
 msgstr "git ls-files [<opções>] [<ficheiro>...]"
 
-#: builtin/ls-files.c:427
+#: builtin/ls-files.c:507
 msgid "identify the file status with tags"
 msgstr "identificar o estado do ficheiro com tags"
 
-#: builtin/ls-files.c:429
+#: builtin/ls-files.c:509
 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:431
+#: builtin/ls-files.c:511
 msgid "show cached files in the output (default)"
 msgstr "mostrar ficheiros em cache na saída (predefinição)"
 
-#: builtin/ls-files.c:433
+#: builtin/ls-files.c:513
 msgid "show deleted files in the output"
 msgstr "mostrar ficheiros eliminados na saída"
 
-#: builtin/ls-files.c:435
+#: builtin/ls-files.c:515
 msgid "show modified files in the output"
 msgstr "mostrar ficheiros modificados na saída"
 
-#: builtin/ls-files.c:437
+#: builtin/ls-files.c:517
 msgid "show other files in the output"
 msgstr "mostrar outros ficheiros na saída"
 
-#: builtin/ls-files.c:439
+#: builtin/ls-files.c:519
 msgid "show ignored files in the output"
 msgstr "mostrar ficheiros ignorados na saída"
 
-#: builtin/ls-files.c:442
+#: builtin/ls-files.c:522
 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:444
+#: builtin/ls-files.c:524
 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:446
+#: builtin/ls-files.c:526
 msgid "show 'other' directories' names only"
 msgstr "mostrar nomes de diretórios 'other' (outro)"
 
-#: builtin/ls-files.c:448
+#: builtin/ls-files.c:528
 msgid "show line endings of files"
 msgstr "mostrar finais de linha dos ficheiros"
 
-#: builtin/ls-files.c:450
+#: builtin/ls-files.c:530
 msgid "don't show empty directories"
 msgstr "não mostrar diretórios vazios"
 
-#: builtin/ls-files.c:453
+#: builtin/ls-files.c:533
 msgid "show unmerged files in the output"
 msgstr "mostrar ficheiros não integrados na saída"
 
-#: builtin/ls-files.c:455
+#: builtin/ls-files.c:535
 msgid "show resolve-undo information"
 msgstr "mostrar informação de resolver-desfazer"
 
-#: builtin/ls-files.c:457
+#: builtin/ls-files.c:537
 msgid "skip files matching pattern"
 msgstr "ignorar ficheiros que correspondam ao padrão"
 
-#: builtin/ls-files.c:460
+#: builtin/ls-files.c:540
 msgid "exclude patterns are read from <file>"
 msgstr "ler padrões de exclusão do <ficheiro>"
 
-#: builtin/ls-files.c:463
+#: builtin/ls-files.c:543
 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:465
+#: builtin/ls-files.c:545
 msgid "add the standard git exclusions"
 msgstr "incluir as exclusões standard do git"
 
-#: builtin/ls-files.c:468
+#: builtin/ls-files.c:548
 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:471
+#: builtin/ls-files.c:551
+msgid "recurse through submodules"
+msgstr "percorrer submódulos recursivamente"
+
+#: builtin/ls-files.c:553
 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:472
+#: builtin/ls-files.c:554
 msgid "tree-ish"
 msgstr "árvore-etc"
 
-#: builtin/ls-files.c:473
+#: builtin/ls-files.c:555
 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:475
+#: builtin/ls-files.c:557
 msgid "show debugging data"
 msgstr "mostrar dados de depuração"
 
@@ -8151,190 +9153,176 @@ 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:45
+#: builtin/merge.c:46
 msgid "git merge [<options>] [<commit>...]"
 msgstr "git merge [<opções>] [<commit>...]"
 
-#: builtin/merge.c:46
+#: builtin/merge.c:47
 msgid "git merge [<options>] <msg> HEAD <commit>"
 msgstr "git merge [<opções>] <msg> HEAD <commit>"
 
-#: builtin/merge.c:47
+#: builtin/merge.c:48
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:101
+#: builtin/merge.c:102
 msgid "switch `m' requires a value"
 msgstr "a opção 'm' requer um valor"
 
-#: builtin/merge.c:138
+#: builtin/merge.c:139
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "Estratégia de integração '%s' não encontrada.\n"
 
-#: builtin/merge.c:139
+#: builtin/merge.c:140
 #, c-format
 msgid "Available strategies are:"
 msgstr "Estratégias disponíveis:"
 
-#: builtin/merge.c:144
+#: builtin/merge.c:145
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Estratégias personalizadas disponíveis:"
 
-#: builtin/merge.c:194 builtin/pull.c:126
+#: builtin/merge.c:195 builtin/pull.c:127
 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:197 builtin/pull.c:129
+#: builtin/merge.c:198 builtin/pull.c:130
 msgid "show a diffstat at the end of the merge"
 msgstr "mostrar um diffstat ao fim da integração"
 
-#: builtin/merge.c:198 builtin/pull.c:132
+#: builtin/merge.c:199 builtin/pull.c:133
 msgid "(synonym to --stat)"
 msgstr "(sinónimo de --stat)"
 
-#: builtin/merge.c:200 builtin/pull.c:135
+#: builtin/merge.c:201 builtin/pull.c:136
 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:203 builtin/pull.c:138
+#: builtin/merge.c:204 builtin/pull.c:139
 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:205 builtin/pull.c:141
+#: builtin/merge.c:206 builtin/pull.c:142
 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:207 builtin/pull.c:144
+#: builtin/merge.c:208 builtin/pull.c:145
 msgid "edit message before committing"
 msgstr "editar a mensagem antes de submeter"
 
-#: builtin/merge.c:208
+#: builtin/merge.c:209
 msgid "allow fast-forward (default)"
 msgstr "permitir avanço rápido (predefinição)"
 
-#: builtin/merge.c:210 builtin/pull.c:150
+#: builtin/merge.c:211 builtin/pull.c:151
 msgid "abort if fast-forward is not possible"
 msgstr "abortar se não é possível efetuar avanço rápido"
 
-#: builtin/merge.c:214
-msgid "Verify that the named commit has a valid GPG signature"
+#: builtin/merge.c:215 builtin/pull.c:154
+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:215 builtin/notes.c:771 builtin/pull.c:157
+#: builtin/merge.c:216 builtin/notes.c:774 builtin/pull.c:158
 #: builtin/revert.c:89
 msgid "strategy"
 msgstr "estratégia"
 
-#: builtin/merge.c:216 builtin/pull.c:158
+#: builtin/merge.c:217 builtin/pull.c:159
 msgid "merge strategy to use"
 msgstr "estratégia de integração a usar"
 
-#: builtin/merge.c:217 builtin/pull.c:161
+#: builtin/merge.c:218 builtin/pull.c:162
 msgid "option=value"
 msgstr "opção=valor"
 
-#: builtin/merge.c:218 builtin/pull.c:162
+#: builtin/merge.c:219 builtin/pull.c:163
 msgid "option for selected merge strategy"
 msgstr "opções da estratégia de integração selecionada"
 
-#: builtin/merge.c:220
+#: builtin/merge.c:221
 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:224
+#: builtin/merge.c:225
 msgid "abort the current in-progress merge"
 msgstr "abortar integração em curso"
 
-#: builtin/merge.c:226 builtin/pull.c:169
+#: builtin/merge.c:227 builtin/pull.c:170
 msgid "allow merging unrelated histories"
 msgstr "permitir integração de históricos não relacionados"
 
-#: builtin/merge.c:254
+#: builtin/merge.c:255
 msgid "could not run stash."
 msgstr "não foi possível executar o comando stash."
 
-#: builtin/merge.c:259
+#: builtin/merge.c:260
 msgid "stash failed"
 msgstr "falha ao executar o comando stash"
 
-#: builtin/merge.c:264
+#: builtin/merge.c:265
 #, c-format
 msgid "not a valid object: %s"
 msgstr "nome de objeto inválido: %s"
 
-#: builtin/merge.c:283 builtin/merge.c:300
+#: builtin/merge.c:284 builtin/merge.c:301
 msgid "read-tree failed"
 msgstr "falha ao executar o comando read-tree"
 
-#: builtin/merge.c:330
+#: builtin/merge.c:331
 msgid " (nothing to squash)"
 msgstr " (não há nada para esmagar)"
 
-#: builtin/merge.c:343
+#: builtin/merge.c:342
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "Commit esmagado -- HEAD não atualizada\n"
 
-#: builtin/merge.c:347 builtin/merge.c:767 builtin/merge.c:987
-#: builtin/merge.c:1000
-#, c-format
-msgid "Could not write to '%s'"
-msgstr "Não foi possível escrever em '%s'"
-
-#: builtin/merge.c:375
-msgid "Writing SQUASH_MSG"
-msgstr "A escrever SQUASH_MSG"
-
-#: builtin/merge.c:377
-msgid "Finishing SQUASH_MSG"
-msgstr "A concluir SQUASH_MSG"
-
-#: builtin/merge.c:400
+#: builtin/merge.c:392
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "Nenhuma mensagem de integração -- HEAD não atualizada\n"
 
-#: builtin/merge.c:451
+#: builtin/merge.c:443
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "'%s' não aponta para um commit"
 
-#: builtin/merge.c:541
+#: builtin/merge.c:533
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Valor de branch.%s.mergeoptions incorreto: %s"
 
-#: builtin/merge.c:660
+#: builtin/merge.c:652
 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:674
+#: builtin/merge.c:666
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Opção desconhecida de merge-recursive: -X%s"
 
-#: builtin/merge.c:687
+#: builtin/merge.c:681
 #, c-format
 msgid "unable to write %s"
 msgstr "não foi possível escrever %s"
 
-#: builtin/merge.c:776
+#: builtin/merge.c:733
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Não foi possível ler '%s'"
 
-#: builtin/merge.c:785
+#: builtin/merge.c:742
 #, 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:791
+#: builtin/merge.c:748
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -8350,54 +9338,68 @@ msgstr ""
 "Linhas começadas com '%c' são ignoradas e uma mensagem vazia\n"
 "aborta o commit.\n"
 
-#: builtin/merge.c:815
+#: builtin/merge.c:772
 msgid "Empty commit message."
 msgstr "Mensagem de commit vazia."
 
-#: builtin/merge.c:835
+#: builtin/merge.c:792
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Maravilhoso.\n"
 
-#: builtin/merge.c:890
+#: builtin/merge.c:847
 #, 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:906
+#: builtin/merge.c:863
 #, c-format
 msgid "'%s' is not a commit"
 msgstr "'%s' não é um commit"
 
-#: builtin/merge.c:947
+#: builtin/merge.c:904
 msgid "No current branch."
 msgstr "Nenhum ramo atual."
 
-#: builtin/merge.c:949
+#: builtin/merge.c:906
 msgid "No remote for the current branch."
 msgstr "Não há um remoto para o ramo atual."
 
-#: builtin/merge.c:951
+#: builtin/merge.c:908
 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:956
+#: builtin/merge.c:913
 #, 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:1091
+#: builtin/merge.c:960
+#, c-format
+msgid "Bad value '%s' in environment '%s'"
+msgstr "Valor '%s' incorreto no ambiente '%s'"
+
+#: builtin/merge.c:1034
 #, c-format
 msgid "could not close '%s'"
 msgstr "não foi possível fechar '%s'"
 
-#: builtin/merge.c:1219
+#: builtin/merge.c:1061
+#, c-format
+msgid "not something we can merge in %s: %s"
+msgstr "não se pode integrar em %s: %s"
+
+#: builtin/merge.c:1095
+msgid "not something we can merge"
+msgstr "não se pode integrar"
+
+#: builtin/merge.c:1162
 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:1235
+#: builtin/merge.c:1178
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -8405,7 +9407,7 @@ msgstr ""
 "Não concluiu a integração (MERGE_HEAD presente).\n"
 "Submeta as suas alterações antes de integrar."
 
-#: builtin/merge.c:1242
+#: builtin/merge.c:1185
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -8413,109 +9415,117 @@ msgstr ""
 "Cherry-pick não concluído (CHERRY_PICK_HEAD presente).\n"
 "Submeta as suas alterações antes de integrar."
 
-#: builtin/merge.c:1245
+#: builtin/merge.c:1188
 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:1254
+#: builtin/merge.c:1197
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Não é possível combinar --squash e --no-ff."
 
-#: builtin/merge.c:1262
+#: builtin/merge.c:1205
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr "Nenhum commit especificado e merge.defaultToUpstream não definido."
 
-#: builtin/merge.c:1279
+#: builtin/merge.c:1222
 msgid "Squash commit into empty head not supported yet"
 msgstr "Esmagar um commit numa cabeça vazia ainda não é suportado"
 
-#: builtin/merge.c:1281
+#: builtin/merge.c:1224
 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:1286
+#: builtin/merge.c:1229
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - não é algo se possa integrar"
 
-#: builtin/merge.c:1288
+#: builtin/merge.c:1231
 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:1344
+#: builtin/merge.c:1287
 #, 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:1347
+#: builtin/merge.c:1290
 #, 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:1350
+#: builtin/merge.c:1293
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "O commit %s não tem uma assinatura GPG."
 
-#: builtin/merge.c:1353
+#: builtin/merge.c:1296
 #, 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:1415
+#: builtin/merge.c:1358
 msgid "refusing to merge unrelated histories"
 msgstr "integração de históricos não relacionados recusada"
 
-#: builtin/merge.c:1439
+#: builtin/merge.c:1367
+msgid "Already up-to-date."
+msgstr "Já está atualizado."
+
+#: builtin/merge.c:1377
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "A atualizar %s..%s\n"
 
-#: builtin/merge.c:1476
+#: builtin/merge.c:1418
 #, 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:1483
+#: builtin/merge.c:1425
 #, c-format
 msgid "Nope.\n"
 msgstr "Não.\n"
 
-#: builtin/merge.c:1515
+#: builtin/merge.c:1450
+msgid "Already up-to-date. Yeeah!"
+msgstr "Já está atualizado. Sim!"
+
+#: builtin/merge.c:1456
 msgid "Not possible to fast-forward, aborting."
 msgstr "Não é possível avançar rapidamente, a abortar."
 
-#: builtin/merge.c:1538 builtin/merge.c:1617
+#: builtin/merge.c:1479 builtin/merge.c:1558
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "A recuar a árvore ao seu estado original...\n"
 
-#: builtin/merge.c:1542
+#: builtin/merge.c:1483
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "A tentar a estratégia de integração %s...\n"
 
-#: builtin/merge.c:1608
+#: builtin/merge.c:1549
 #, 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:1610
+#: builtin/merge.c:1551
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "Falha ao integrar com a estratégia %s.\n"
 
-#: builtin/merge.c:1619
+#: builtin/merge.c:1560
 #, 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:1631
+#: builtin/merge.c:1572
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -8542,23 +9552,23 @@ msgstr "git merge-base --is-ancestor <commit> <commit>"
 msgid "git merge-base --fork-point <ref> [<commit>]"
 msgstr "git merge-base --fork-point <referência> [<commit>]"
 
-#: builtin/merge-base.c:214
+#: builtin/merge-base.c:217
 msgid "output all common ancestors"
 msgstr "mostrar todos os antecessores"
 
-#: builtin/merge-base.c:216
+#: 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/merge-base.c:218
+#: 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/merge-base.c:220
+#: builtin/merge-base.c:223
 msgid "is the first one ancestor of the other?"
 msgstr "o primeiro é antecessor do segundo?"
 
-#: builtin/merge-base.c:222
+#: builtin/merge-base.c:225
 msgid "find where <commit> forked from reflog of <ref>"
 msgstr ""
 "descobrir onde foi que o <commit> divergiu usando o reflog da <referência>"
@@ -8603,6 +9613,37 @@ msgstr "não alertar sobre conflitos"
 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]"
@@ -8624,15 +9665,14 @@ msgid "git mv [<options>] <source>... <destination>"
 msgstr "git mv [<opções>] <origem>... <destino>"
 
 #: builtin/mv.c:70
-#, fuzzy, c-format
+#, c-format
 msgid "Directory %s is in index and no submodule?"
-msgstr "O diretório %s está no índice mas não em nenhum submódulo?"
+msgstr "O diretório %s está no índice porém nenhum submódulo?"
 
 #: builtin/mv.c:72 builtin/rm.c:317
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
-"Prepare as suas alterações em .gitmodules ou empilhe-as (stash) para "
-"prosseguir"
+"Prepare as suas alterações em .gitmodules ou esconda-as para prosseguir"
 
 #: builtin/mv.c:90
 #, c-format
@@ -8647,109 +9687,109 @@ msgstr "forçar mover/mudar o nome mesmo que o destino exista"
 msgid "skip move/rename errors"
 msgstr "ignorar erros ao mover/mudar o nome"
 
-#: builtin/mv.c:152
+#: builtin/mv.c:155
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr "o destino '%s' não é um diretório"
 
-#: builtin/mv.c:163
+#: builtin/mv.c:166
 #, 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:167
+#: builtin/mv.c:170
 msgid "bad source"
 msgstr "origem incorreta"
 
-#: builtin/mv.c:170
+#: builtin/mv.c:173
 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:173
+#: builtin/mv.c:176
 msgid "cannot move directory over file"
 msgstr "não é possível mover um diretório para um ficheiro"
 
-#: builtin/mv.c:182
+#: builtin/mv.c:185
 msgid "source directory is empty"
 msgstr "o diretório de origem está vazio"
 
-#: builtin/mv.c:207
+#: builtin/mv.c:210
 msgid "not under version control"
 msgstr "não está no controlo de versões"
 
-#: builtin/mv.c:210
+#: builtin/mv.c:213
 msgid "destination exists"
 msgstr "o destino já existe"
 
-#: builtin/mv.c:218
+#: builtin/mv.c:221
 #, c-format
 msgid "overwriting '%s'"
 msgstr "a substituir '%s'"
 
-#: builtin/mv.c:221
+#: builtin/mv.c:224
 msgid "Cannot overwrite"
 msgstr "Não é possível substituir"
 
-#: builtin/mv.c:224
+#: builtin/mv.c:227
 msgid "multiple sources for the same target"
 msgstr "múltiplas origens para o mesmo destino"
 
-#: builtin/mv.c:226
+#: builtin/mv.c:229
 msgid "destination directory does not exist"
 msgstr "o diretório de destino não existe"
 
-#: builtin/mv.c:233
+#: builtin/mv.c:236
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr "%s, origem=%s, destino=%s"
 
-#: builtin/mv.c:254
+#: builtin/mv.c:257
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr "A mudar de nome de %s para %s\n"
 
-#: builtin/mv.c:260 builtin/remote.c:714 builtin/repack.c:365
+#: builtin/mv.c:263 builtin/remote.c:710 builtin/repack.c:375
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "falha ao mudar o nome de '%s'"
 
-#: builtin/name-rev.c:258
+#: builtin/name-rev.c:257
 msgid "git name-rev [<options>] <commit>..."
 msgstr "git name-rev [<opções>] <commit>..."
 
-#: builtin/name-rev.c:259
+#: builtin/name-rev.c:258
 msgid "git name-rev [<options>] --all"
 msgstr "git name-rev [<opções>] --all"
 
-#: builtin/name-rev.c:260
+#: builtin/name-rev.c:259
 msgid "git name-rev [<options>] --stdin"
 msgstr "git name-rev [<opções>] --stdin"
 
-#: builtin/name-rev.c:312
+#: builtin/name-rev.c:311
 msgid "print only names (no SHA-1)"
 msgstr "imprimir apenas nomes (sem SHA-1)"
 
-#: builtin/name-rev.c:313
+#: builtin/name-rev.c:312
 msgid "only use tags to name the commits"
 msgstr "usar apenas tags para designar commits"
 
-#: builtin/name-rev.c:315
+#: builtin/name-rev.c:314
 msgid "only use refs matching <pattern>"
 msgstr "usar apenas referência que correspondam ao <padrão>"
 
-#: builtin/name-rev.c:317
+#: builtin/name-rev.c:316
 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:318
+#: builtin/name-rev.c:317
 msgid "read from stdin"
 msgstr "ler da entrada padrão"
 
-#: builtin/name-rev.c:319
+#: builtin/name-rev.c:318
 msgid "allow to print `undefined` names (default)"
 msgstr "permitir imprimir nomes 'indefinidos' (predefinição)"
 
-#: builtin/name-rev.c:325
+#: builtin/name-rev.c:324
 msgid "dereference tags in the input (internal use)"
 msgstr "desreferenciar tags na entrada (uso interno)"
 
@@ -8863,6 +9903,10 @@ msgstr "git notes prune [<opções>]"
 msgid "git notes get-ref"
 msgstr "git notes get-ref"
 
+#: builtin/notes.c:94
+msgid "Write/edit the notes for the following object:"
+msgstr "Escreva/edite as notas do seguinte objeto:"
+
 #: builtin/notes.c:147
 #, c-format
 msgid "unable to start 'show' for object '%s'"
@@ -8877,80 +9921,99 @@ msgstr "não foi possível ler a saída do comando 'show'"
 msgid "failed to finish 'show' for object '%s'"
 msgstr "falha ao concluir o comando 'show' sobre o objeto '%s'"
 
-#: builtin/notes.c:174 builtin/tag.c:248
-#, c-format
-msgid "could not create file '%s'"
-msgstr "não foi possível criar o ficheiro '%s'"
-
-#: builtin/notes.c:193
-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:194
+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:202
+#: builtin/notes.c:203
 msgid "unable to write note object"
 msgstr "não é possível escrever o objeto de nota"
 
-#: builtin/notes.c:204
+#: builtin/notes.c:205
 #, c-format
-msgid "The note contents have been left in %s"
-msgstr "O conteúdo da nota foi guardado em %s"
+msgid "the note contents have been left in %s"
+msgstr "o conteúdo da nota foi colocado em %s"
 
-#: builtin/notes.c:232 builtin/tag.c:439
+#: builtin/notes.c:233 builtin/tag.c:439
 #, c-format
 msgid "cannot read '%s'"
 msgstr "não é possível ler '%s'"
 
-#: builtin/notes.c:234 builtin/tag.c:442
+#: builtin/notes.c:235 builtin/tag.c:442
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "não foi possível abrir ou ler '%s'"
 
-#: builtin/notes.c:256
+#: 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:659
+#, 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
+#, c-format
+msgid "failed to read object '%s'."
+msgstr "falha ao ler o objeto '%s'."
+
+#: builtin/notes.c:261
+#, 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
+#, c-format
+msgid "malformed input line: '%s'."
+msgstr "linha de entrada malformada: '%s'."
+
+#: builtin/notes.c:316
 #, c-format
-msgid "Failed to read object '%s'."
-msgstr "Falha ao ler o objeto '%s'."
+msgid "failed to copy notes from '%s' to '%s'"
+msgstr "falha ao copiar notas de '%s' para '%s'"
 
-#: builtin/notes.c:260
+#. TRANSLATORS: the first %s will be replaced by a
+#. git notes command: 'add', 'merge', 'remove', etc.
+#: builtin/notes.c:345
 #, 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'."
+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:362 builtin/notes.c:417 builtin/notes.c:493
-#: builtin/notes.c:505 builtin/notes.c:581 builtin/notes.c:649
-#: builtin/notes.c:946
+#: builtin/notes.c:365 builtin/notes.c:420 builtin/notes.c:496
+#: builtin/notes.c:508 builtin/notes.c:584 builtin/notes.c:652
+#: builtin/notes.c:802 builtin/notes.c:949 builtin/notes.c:970
 msgid "too many parameters"
 msgstr "demasiados parâmetros"
 
-#: builtin/notes.c:375 builtin/notes.c:662
+#: builtin/notes.c:378 builtin/notes.c:665
 #, c-format
-msgid "No note found for object %s."
-msgstr "A nota do objeto %s não foi encontrada."
+msgid "no note found for object %s."
+msgstr "nenhuma nota encontrada para o objeto %s."
 
-#: builtin/notes.c:396 builtin/notes.c:559
+#: builtin/notes.c:399 builtin/notes.c:562
 msgid "note contents as a string"
 msgstr "conteúdo da nota sob a forma de cadeia de caracteres"
 
-#: builtin/notes.c:399 builtin/notes.c:562
+#: builtin/notes.c:402 builtin/notes.c:565
 msgid "note contents in a file"
 msgstr "conteúdo da nota de um ficheiro"
 
-#: builtin/notes.c:402 builtin/notes.c:565
+#: builtin/notes.c:405 builtin/notes.c:568
 msgid "reuse and edit specified note object"
 msgstr "reutilizar e editar o objeto de nota especificado"
 
-#: builtin/notes.c:405 builtin/notes.c:568
+#: builtin/notes.c:408 builtin/notes.c:571
 msgid "reuse specified note object"
 msgstr "reutilizar o objeto de nota especificado"
 
-#: builtin/notes.c:408 builtin/notes.c:571
+#: builtin/notes.c:411 builtin/notes.c:574
 msgid "allow storing empty note"
 msgstr "permitir guardar uma nota vazia"
 
-#: builtin/notes.c:409 builtin/notes.c:480
+#: builtin/notes.c:412 builtin/notes.c:483
 msgid "replace existing notes"
 msgstr "substituir notas existentes"
 
-#: builtin/notes.c:434
+#: builtin/notes.c:437
 #, c-format
 msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -8959,29 +10022,29 @@ msgstr ""
 "Não é possível adicionar notas. Notas do objeto %s encontradas. Use '-f' "
 "para substituí-las."
 
-#: builtin/notes.c:449 builtin/notes.c:528
+#: builtin/notes.c:452 builtin/notes.c:531
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "A substituir as notas existentes do objeto %s\n"
 
-#: builtin/notes.c:460 builtin/notes.c:621 builtin/notes.c:886
+#: builtin/notes.c:463 builtin/notes.c:624 builtin/notes.c:889
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "A remover a nota do objeto %s\n"
 
-#: builtin/notes.c:481
+#: builtin/notes.c:484
 msgid "read objects from stdin"
 msgstr "ler objetos da entrada padrão"
 
-#: builtin/notes.c:483
+#: builtin/notes.c:486
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr "carregar configuração de reescrita do <comando> (implica --stdin)"
 
-#: builtin/notes.c:501
+#: builtin/notes.c:504
 msgid "too few parameters"
 msgstr "parâmetros insuficientes"
 
-#: builtin/notes.c:522
+#: builtin/notes.c:525
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -8990,12 +10053,12 @@ msgstr ""
 "Não é possível copiar notas. Notas do objeto %s encontradas. Use '-f' para "
 "substituí-las."
 
-#: builtin/notes.c:534
+#: builtin/notes.c:537
 #, c-format
-msgid "Missing notes on source object %s. Cannot copy."
-msgstr "Não existem notas no objeto de origem %s. Não é possível copiar."
+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:586
+#: builtin/notes.c:589
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -9004,259 +10067,333 @@ 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:768
+#: builtin/notes.c:685
+msgid "failed to delete ref NOTES_MERGE_PARTIAL"
+msgstr "falha ao eliminar a referência NOTES_MERGE_PARTIAL"
+
+#: builtin/notes.c:687
+msgid "failed to delete ref NOTES_MERGE_REF"
+msgstr "falha ao eliminar a referência NOTES_MERGE_REF"
+
+#: builtin/notes.c:689
+msgid "failed to remove 'git notes merge' worktree"
+msgstr "falha ao remover a árvore de trabalho de 'git notes merge'"
+
+#: builtin/notes.c:709
+msgid "failed to read ref NOTES_MERGE_PARTIAL"
+msgstr "falha ao ler referência NOTES_MERGE_PARTIAL"
+
+#: builtin/notes.c:711
+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:713
+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:726
+msgid "failed to resolve NOTES_MERGE_REF"
+msgstr "falha ao resolver NOTES_MERGE_REF"
+
+#: builtin/notes.c:729
+msgid "failed to finalize notes merge"
+msgstr "falha ao finalizar integração de notas"
+
+#: builtin/notes.c:755
+#, c-format
+msgid "unknown notes merge strategy %s"
+msgstr "estratégia de integração de notas %s desconhecida"
+
+#: builtin/notes.c:771
 msgid "General options"
 msgstr "Opções gerais"
 
-#: builtin/notes.c:770
+#: builtin/notes.c:773
 msgid "Merge options"
 msgstr "Opções de integração"
 
-#: builtin/notes.c:772
+#: builtin/notes.c:775
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
 msgstr ""
-"resolver conflitos nas notas usando a estratégia indicada "
-"(manual/ours/theirs/union/cat_sort_uniq)"
+"resolver conflitos nas notas usando a estratégia indicada (manual/ours/"
+"theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:774
+#: builtin/notes.c:777
 msgid "Committing unmerged notes"
 msgstr "A submeter notas não integradas"
 
-#: builtin/notes.c:776
+#: builtin/notes.c:779
 msgid "finalize notes merge by committing unmerged notes"
 msgstr "concluir integração de notas, submetendo notas não integradas"
 
-#: builtin/notes.c:778
+#: builtin/notes.c:781
 msgid "Aborting notes merge resolution"
 msgstr "A abortar resolução de integração das notas"
 
-#: builtin/notes.c:780
+#: builtin/notes.c:783
 msgid "abort notes merge"
 msgstr "abortar integração das notas"
 
-#: builtin/notes.c:857
+#: builtin/notes.c:794
+msgid "cannot mix --commit, --abort or -s/--strategy"
+msgstr "não é possível misturar --commit, --abort ou -s/--strategy"
+
+#: builtin/notes.c:799
+msgid "must specify a notes ref to merge"
+msgstr "tem de especificar uma referência de notas para integrar"
+
+#: builtin/notes.c:823
+#, c-format
+msgid "unknown -s/--strategy: %s"
+msgstr "-s/--strategy desconhecida: %s"
+
+#: builtin/notes.c:860
+#, 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:863
+#, 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:865
 #, 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"
+msgid ""
+"Automatic notes merge failed. Fix conflicts in %s and commit the result with "
+"'git notes merge --commit', or abort the merge with 'git notes merge --"
+"abort'.\n"
+msgstr ""
+"A integração automática de notas falhou. Corrija os conflitos em %s e "
+"submeta o resultado com 'git notes merge --commit' ou aborte a integração "
+"com 'git notes merge --abort'.\n"
 
-#: builtin/notes.c:884
+#: builtin/notes.c:887
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "O objeto %s não tem nenhuma nota\n"
 
-#: builtin/notes.c:896
+#: builtin/notes.c:899
 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:899
+#: builtin/notes.c:902
 msgid "read object names from the standard input"
 msgstr "ler nome dos objetos da entrada padrão"
 
-#: builtin/notes.c:980
+#: builtin/notes.c:940 builtin/prune.c:105 builtin/worktree.c:127
+msgid "do not remove, show only"
+msgstr "não remover, mostrar apenas"
+
+#: builtin/notes.c:941
+msgid "report pruned notes"
+msgstr "reportar notas podadas"
+
+#: builtin/notes.c:983
 msgid "notes-ref"
 msgstr "notes-ref"
 
-#: builtin/notes.c:981
+#: builtin/notes.c:984
 msgid "use notes from <notes-ref>"
 msgstr "usar notas de <notes-ref>"
 
-#: builtin/notes.c:1016 builtin/remote.c:1628
+#: builtin/notes.c:1019
 #, c-format
-msgid "Unknown subcommand: %s"
-msgstr "Subcomando desconhecido: %s"
+msgid "unknown subcommand: %s"
+msgstr "subcomando desconhecido: %s"
 
-#: builtin/pack-objects.c:28
+#: builtin/pack-objects.c:29
 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:29
+#: builtin/pack-objects.c:30
 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:175 builtin/pack-objects.c:178
+#: builtin/pack-objects.c:179 builtin/pack-objects.c:182
 #, c-format
 msgid "deflate error (%d)"
 msgstr "erro ao compactar (%d)"
 
-#: builtin/pack-objects.c:763
+#: builtin/pack-objects.c:768
 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"
+"a desativar escrita de mapa de bits, os pacotes são divididos devido a pack."
+"packSizeLimit"
 
-#: builtin/pack-objects.c:776
+#: builtin/pack-objects.c:781
 msgid "Writing objects"
 msgstr "A escrever objetos"
 
-#: builtin/pack-objects.c:1017
+#: builtin/pack-objects.c:1070
 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:2177
+#: builtin/pack-objects.c:2346
 msgid "Compressing objects"
 msgstr "A comprimir objetos"
 
-#: builtin/pack-objects.c:2563
+#: builtin/pack-objects.c:2759
 #, c-format
 msgid "unsupported index version %s"
 msgstr "versão de índice %s não suportada"
 
-#: builtin/pack-objects.c:2567
+#: builtin/pack-objects.c:2763
 #, c-format
 msgid "bad index version '%s'"
 msgstr "versão de índice '%s' incorreta"
 
-#: builtin/pack-objects.c:2597
+#: builtin/pack-objects.c:2793
 msgid "do not show progress meter"
 msgstr "não mostrar medidor de progresso"
 
-#: builtin/pack-objects.c:2599
+#: builtin/pack-objects.c:2795
 msgid "show progress meter"
 msgstr "mostrar medidor de progresso"
 
-#: builtin/pack-objects.c:2601
+#: builtin/pack-objects.c:2797
 msgid "show progress meter during object writing phase"
 msgstr "mostrar medidor de progresso durante a fase de escrita de objetos"
 
-#: builtin/pack-objects.c:2604
+#: builtin/pack-objects.c:2800
 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:2605
+#: builtin/pack-objects.c:2801
 msgid "version[,offset]"
 msgstr "versão[,offset]"
 
-#: builtin/pack-objects.c:2606
+#: builtin/pack-objects.c:2802
 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:2609
+#: builtin/pack-objects.c:2805
 msgid "maximum size of each output pack file"
 msgstr "tamanho máximo de cada ficheiro de pacote gerado"
 
-#: builtin/pack-objects.c:2611
+#: builtin/pack-objects.c:2807
 msgid "ignore borrowed objects from alternate object store"
 msgstr "ignorar objetos emprestados do arquivo de objetos sobressalentes"
 
-#: builtin/pack-objects.c:2613
+#: builtin/pack-objects.c:2809
 msgid "ignore packed objects"
 msgstr "ignorar objetos compactados"
 
-#: builtin/pack-objects.c:2615
+#: builtin/pack-objects.c:2811
 msgid "limit pack window by objects"
 msgstr "limitar a janela de compactação por objetos"
 
-#: builtin/pack-objects.c:2617
+#: builtin/pack-objects.c:2813
 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:2619
+#: builtin/pack-objects.c:2815
 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:2621
+#: builtin/pack-objects.c:2817
 msgid "reuse existing deltas"
 msgstr "reutilizar deltas existentes"
 
-#: builtin/pack-objects.c:2623
+#: builtin/pack-objects.c:2819
 msgid "reuse existing objects"
 msgstr "reutilizar objetos existentes"
 
-#: builtin/pack-objects.c:2625
+#: builtin/pack-objects.c:2821
 msgid "use OFS_DELTA objects"
 msgstr "usar objetos OFS_DELTA"
 
-#: builtin/pack-objects.c:2627
+#: builtin/pack-objects.c:2823
 msgid "use threads when searching for best delta matches"
 msgstr "usar threads ao procurar pela melhor correspondência delta"
 
-#: builtin/pack-objects.c:2629
+#: builtin/pack-objects.c:2825
 msgid "do not create an empty pack output"
 msgstr "não criar um pacote vazio"
 
-#: builtin/pack-objects.c:2631
+#: builtin/pack-objects.c:2827
 msgid "read revision arguments from standard input"
 msgstr "ler argumentos de revisão da entrada padrão"
 
-#: builtin/pack-objects.c:2633
+#: builtin/pack-objects.c:2829
 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:2636
+#: builtin/pack-objects.c:2832
 msgid "include objects reachable from any reference"
 msgstr "incluir objetos alcançáveis a partir de qualquer referência"
 
-#: builtin/pack-objects.c:2639
+#: builtin/pack-objects.c:2835
 msgid "include objects referred by reflog entries"
 msgstr "incluir objetos referenciados por entradas do reflog"
 
-#: builtin/pack-objects.c:2642
+#: builtin/pack-objects.c:2838
 msgid "include objects referred to by the index"
 msgstr "incluir objetos referenciados pelo índice"
 
-#: builtin/pack-objects.c:2645
+#: builtin/pack-objects.c:2841
 msgid "output pack to stdout"
 msgstr "gerar pacote para a saída padrão"
 
-#: builtin/pack-objects.c:2647
+#: builtin/pack-objects.c:2843
 msgid "include tag objects that refer to objects to be packed"
 msgstr "incluir objetos tag que refiram objetos a compactar"
 
-#: builtin/pack-objects.c:2649
+#: builtin/pack-objects.c:2845
 msgid "keep unreachable objects"
 msgstr "manter objetos inalcançáveis"
 
-#: builtin/pack-objects.c:2650 parse-options.h:142
-msgid "time"
-msgstr "hora"
+#: builtin/pack-objects.c:2847
+msgid "pack loose unreachable objects"
+msgstr "empacotar objetos soltos inalcançáveis"
 
-#: builtin/pack-objects.c:2651
+#: builtin/pack-objects.c:2849
 msgid "unpack unreachable objects newer than <time>"
 msgstr "descompactar objetos inalcançáveis mais recentes que <hora>"
 
-#: builtin/pack-objects.c:2654
+#: builtin/pack-objects.c:2852
 msgid "create thin packs"
 msgstr "criar pacotes finos"
 
-#: builtin/pack-objects.c:2656
+#: builtin/pack-objects.c:2854
 msgid "create packs suitable for shallow fetches"
 msgstr "criar pacotes adequados para obter em repositórios pouco profundos"
 
-#: builtin/pack-objects.c:2658
+#: builtin/pack-objects.c:2856
 msgid "ignore packs that have companion .keep file"
 msgstr "ignorar pacotes que tenham um ficheiro .keep"
 
-#: builtin/pack-objects.c:2660
+#: builtin/pack-objects.c:2858
 msgid "pack compression level"
 msgstr "nível de compactação do pacote"
 
-#: builtin/pack-objects.c:2662
+#: builtin/pack-objects.c:2860
 msgid "do not hide commits by grafts"
 msgstr "não esconder commits introduzidos por enxertos"
 
-#: builtin/pack-objects.c:2664
+#: builtin/pack-objects.c:2862
 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:2666
+#: builtin/pack-objects.c:2864
 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:2757
+#: builtin/pack-objects.c:2993
 msgid "Counting objects"
 msgstr "A contar objetos"
 
@@ -9284,15 +10421,11 @@ msgstr "A remover objetos duplicados"
 msgid "git prune [-n] [-v] [--expire <time>] [--] [<head>...]"
 msgstr "git prune [-n] [-v] [--expire <hora>] [--] [<head>...]"
 
-#: builtin/prune.c:105 builtin/worktree.c:125
-msgid "do not remove, show only"
-msgstr "não remover, mostrar apenas"
-
-#: builtin/prune.c:106 builtin/worktree.c:126
+#: builtin/prune.c:106 builtin/worktree.c:128
 msgid "report pruned objects"
 msgstr "apresentar objetos eliminados"
 
-#: builtin/prune.c:109 builtin/worktree.c:128
+#: builtin/prune.c:109 builtin/worktree.c:130
 msgid "expire objects older than <time>"
 msgstr "expirar objetos mais antigos que <hora>"
 
@@ -9300,57 +10433,45 @@ msgstr "expirar objetos mais antigos que <hora>"
 msgid "cannot prune in a precious-objects repo"
 msgstr "não é possível limpar num repositório de objetos-preciosos"
 
-#: builtin/pull.c:72
+#: builtin/pull.c:51 builtin/pull.c:53
+#, c-format
+msgid "Invalid value for %s: %s"
+msgstr "Valor inválido de %s: %s"
+
+#: builtin/pull.c:73
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
 msgstr "git pull [<opções>] [<repositório> [<especificador-de-referência>...]]"
 
-#: builtin/pull.c:120
+#: builtin/pull.c:121
 msgid "Options related to merging"
 msgstr "Opções relativas a integração"
 
-#: builtin/pull.c:123
+#: builtin/pull.c:124
 msgid "incorporate changes by rebasing rather than merging"
 msgstr "incorporar alterações por rebase em vez de integrar"
 
-#: builtin/pull.c:147 builtin/revert.c:105
+#: builtin/pull.c:148 builtin/revert.c:101
 msgid "allow fast-forward"
 msgstr "permitir avanço rápido"
 
-#: builtin/pull.c:153
-msgid "verify that the named commit has a valid GPG signature"
-msgstr "verificar se o commit tem uma assinatura GPG válida"
-
-#: builtin/pull.c:156
+#: builtin/pull.c:157
 msgid "automatically stash/stash pop before and after rebase"
 msgstr "empilhar/desempilhar automaticamente antes de depois de rebase"
 
-#: builtin/pull.c:172
+#: builtin/pull.c:173
 msgid "Options related to fetching"
 msgstr "Opções relacionadas com obtenção de objetos"
 
-#: builtin/pull.c:194
+#: builtin/pull.c:195
 msgid "number of submodules pulled in parallel"
 msgstr "número de submódulos puxados em paralelo"
 
-#: builtin/pull.c:283
+#: builtin/pull.c:284
 #, c-format
 msgid "Invalid value for pull.ff: %s"
 msgstr "Valor inválido de pull.ff: %s"
 
-#: builtin/pull.c:379
-msgid "Cannot pull with rebase: You have unstaged changes."
-msgstr "Não é possível puxar com rebase: tem alterações não preparadas."
-
-#: builtin/pull.c:385
-msgid "Additionally, your index contains uncommitted changes."
-msgstr "Além disso, o índice contém alterações não submetidas."
-
-#: builtin/pull.c:387
-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."
-
-#: builtin/pull.c:463
+#: builtin/pull.c:397
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
@@ -9358,14 +10479,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:465
+#: builtin/pull.c:399
 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:466
+#: builtin/pull.c:400
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
@@ -9373,7 +10494,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:469
+#: builtin/pull.c:403
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
@@ -9384,44 +10505,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:474 git-parse-remote.sh:73
+#: builtin/pull.c:408 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:476 builtin/pull.c:491 git-parse-remote.sh:79
+#: builtin/pull.c:410 builtin/pull.c:425 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:478 builtin/pull.c:493 git-parse-remote.sh:82
+#: builtin/pull.c:412 builtin/pull.c:427 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:479 builtin/pull.c:494
+#: builtin/pull.c:413 builtin/pull.c:428
 msgid "See git-pull(1) for details."
 msgstr "Consulte git-pull(1) para obter mais detalhes."
 
-#: builtin/pull.c:481 builtin/pull.c:487 builtin/pull.c:496
+#: builtin/pull.c:415 builtin/pull.c:421 builtin/pull.c:430
 #: git-parse-remote.sh:64
 msgid "<remote>"
 msgstr "<remoto>"
 
-#: builtin/pull.c:481 builtin/pull.c:496 builtin/pull.c:501
+#: builtin/pull.c:415 builtin/pull.c:430 builtin/pull.c:435 git-rebase.sh:451
 #: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr "<ramo>"
 
-#: builtin/pull.c:489 git-parse-remote.sh:75
+#: builtin/pull.c:423 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:498 git-parse-remote.sh:95
+#: builtin/pull.c:432 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:503
+#: builtin/pull.c:437
 #, c-format
 msgid ""
 "Your configuration specifies to merge with the ref '%s'\n"
@@ -9430,17 +10551,29 @@ 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:864
+#: builtin/pull.c:754
+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:872
+#: builtin/pull.c:809
 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:900
+#: builtin/pull.c:812
+msgid "pull with rebase"
+msgstr "puxar com rebase"
+
+#: builtin/pull.c:813
+msgid "please commit or stash them."
+msgstr "submeta ou esconda-as."
+
+#: builtin/pull.c:838
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -9451,7 +10584,7 @@ msgstr ""
 "a avançar a árvore de trabalho a partir do\n"
 "commit %s."
 
-#: builtin/pull.c:905
+#: builtin/pull.c:843
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -9468,11 +10601,11 @@ msgstr ""
 "$ git reset --hard\n"
 "para recuperar."
 
-#: builtin/pull.c:920
+#: builtin/pull.c:858
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Não é possível integrar múltiplos ramos numa cabeça vazia."
 
-#: builtin/pull.c:924
+#: builtin/pull.c:862
 msgid "Cannot rebase onto multiple branches."
 msgstr "Não é possível efetuar rebase sobre múltiplos ramos."
 
@@ -9635,12 +10768,12 @@ msgstr "A publicar em %s\n"
 msgid "failed to push some refs to '%s'"
 msgstr "falha ao publicar algumas referências em '%s'"
 
-#: builtin/push.c:365
+#: builtin/push.c:366
 #, c-format
 msgid "bad repository '%s'"
 msgstr "repositório '%s' incorreto"
 
-#: builtin/push.c:366
+#: builtin/push.c:367
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -9662,113 +10795,125 @@ msgstr ""
 "\n"
 "    git push <nome>\n"
 
-#: builtin/push.c:381
+#: builtin/push.c:385
 msgid "--all and --tags are incompatible"
 msgstr "--all e --tags são incompatíveis"
 
-#: builtin/push.c:382
+#: builtin/push.c:386
 msgid "--all can't be combined with refspecs"
 msgstr "--all não pode ser combinado com especificadores de referências"
 
-#: builtin/push.c:387
+#: builtin/push.c:391
 msgid "--mirror and --tags are incompatible"
 msgstr "--mirror e --tags são incompatíveis"
 
-#: builtin/push.c:388
+#: builtin/push.c:392
 msgid "--mirror can't be combined with refspecs"
 msgstr "--mirror não pode ser combinado com especificadores de referências"
 
-#: builtin/push.c:393
+#: builtin/push.c:397
 msgid "--all and --mirror are incompatible"
 msgstr "--all e --mirror são incompatíveis"
 
-#: builtin/push.c:505
+#: builtin/push.c:515
 msgid "repository"
 msgstr "repositório"
 
-#: builtin/push.c:506 builtin/send-pack.c:161
+#: builtin/push.c:516 builtin/send-pack.c:161
 msgid "push all refs"
 msgstr "publicar todas as referências"
 
-#: builtin/push.c:507 builtin/send-pack.c:163
+#: builtin/push.c:517 builtin/send-pack.c:163
 msgid "mirror all refs"
 msgstr "replicar todas as referências"
 
-#: builtin/push.c:509
+#: builtin/push.c:519
 msgid "delete refs"
 msgstr "eliminar referências"
 
-#: builtin/push.c:510
+#: builtin/push.c:520
 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:513 builtin/send-pack.c:164
+#: builtin/push.c:523 builtin/send-pack.c:164
 msgid "force updates"
 msgstr "forçar atualização"
 
-#: builtin/push.c:515 builtin/send-pack.c:175
+#: builtin/push.c:525 builtin/send-pack.c:175
 msgid "refname>:<expect"
 msgstr "nome da referência>:<esperado"
 
-#: builtin/push.c:516 builtin/send-pack.c:176
+#: builtin/push.c:526 builtin/send-pack.c:176
 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:519
+#: builtin/push.c:529
 msgid "control recursive pushing of submodules"
 msgstr "controlar a publicação recursiva de submódulos"
 
-#: builtin/push.c:521 builtin/send-pack.c:169
+#: builtin/push.c:531 builtin/send-pack.c:169
 msgid "use thin pack"
 msgstr "usar pacote fino"
 
-#: builtin/push.c:522 builtin/push.c:523 builtin/send-pack.c:158
+#: builtin/push.c:532 builtin/push.c:533 builtin/send-pack.c:158
 #: builtin/send-pack.c:159
 msgid "receive pack program"
 msgstr "programa receive pack"
 
-#: builtin/push.c:524
+#: builtin/push.c:534
 msgid "set upstream for git pull/status"
 msgstr "definir o ramo a montante usado com git pull/status"
 
-#: builtin/push.c:527
+#: builtin/push.c:537
 msgid "prune locally removed refs"
 msgstr "eliminar referências removidas localmente"
 
-#: builtin/push.c:529
+#: builtin/push.c:539
 msgid "bypass pre-push hook"
 msgstr "ignorar pre-push hook"
 
-#: builtin/push.c:530
+#: builtin/push.c:540
 msgid "push missing but relevant tags"
 msgstr "publicar tags perdidas mas relevantes"
 
-#: builtin/push.c:533 builtin/send-pack.c:166
+#: builtin/push.c:543 builtin/send-pack.c:166
 msgid "GPG sign the push"
 msgstr "assinar publicação com GPG"
 
-#: builtin/push.c:535 builtin/send-pack.c:170
+#: builtin/push.c:545 builtin/send-pack.c:170
 msgid "request atomic transaction on remote side"
 msgstr "solicitar transação atómica no servidor remoto"
 
-#: builtin/push.c:549
+#: builtin/push.c:546
+msgid "server-specific"
+msgstr "específico do servidor"
+
+#: builtin/push.c:546
+msgid "option to transmit"
+msgstr "opção para transmitir"
+
+#: builtin/push.c:560
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete é incompatível com --all, --mirror e --tags"
 
-#: builtin/push.c:551
+#: builtin/push.c:562
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete não faz sentido sem uma referência"
 
+#: builtin/push.c:579
+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:37
 msgid ""
 "git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
 "[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
 "index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
 msgstr ""
-"git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefixo>)"
-" [-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] "
-"[--index-output=<ficheiro>] (--empty | <árvore-etc1> [<árvore-etc2> [<árvore-"
-"etc3>]])"
+"git read-tree [(-m [--trivial] [--aggressive] | --reset | --"
+"prefix=<prefixo>) [-u [--exclude-per-directory=<gitignore>] | -i]] [--no-"
+"sparse-checkout] [--index-output=<ficheiro>] (--empty | <árvore-etc1> "
+"[<árvore-etc2> [<árvore-etc3>]])"
 
 #: builtin/read-tree.c:110
 msgid "write resulting index to <file>"
@@ -9836,15 +10981,65 @@ msgstr "ignorar a aplicação do filtro de extração esparsa"
 msgid "debug unpack-trees"
 msgstr "depurar unpack-trees"
 
-#: builtin/receive-pack.c:25
+#: builtin/receive-pack.c:26
 msgid "git receive-pack <git-dir>"
 msgstr "git receive-pack <git-dir>"
 
-#: builtin/receive-pack.c:1719
+#: builtin/receive-pack.c:793
+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"
+"with what you pushed, and will require 'git reset --hard' to match\n"
+"the work tree to HEAD.\n"
+"\n"
+"You can set 'receive.denyCurrentBranch' configuration variable to\n"
+"'ignore' or 'warn' in the remote repository to allow pushing into\n"
+"its current branch; however, this is not recommended unless you\n"
+"arranged to update its work tree to match what you pushed in some\n"
+"other way.\n"
+"\n"
+"To squelch this message and still keep the default behaviour, set\n"
+"'receive.denyCurrentBranch' configuration variable to 'refuse'."
+msgstr ""
+"Por predefinição, atualizar o ramo atual num repositório não-nu\n"
+"é proibido, porque tornará o índice e a árvore de trabalho inconsistentes\n"
+"com o que publicou e requererá 'git reset --hard' para igualar a\n"
+"árvore de trabalho à HEAD.\n"
+"\n"
+"Pode definir a variável configuração 'receive.denyCurrentBranch'\n"
+"como 'ignore' ou 'warn' no repositório remoto para permitir publicar\n"
+"para o ramo atual dele; no entanto, não é recomendando a menos que\n"
+"consiga de outra forma atualizar a árvore de trabalho dele para\n"
+"refletir o que publicou.\n"
+"\n"
+"Para suprimir esta mensagem e manter o comportamento predefinido, defina a "
+"variável de configuração 'receive.denyCurrentBranch' como 'refuse'."
+
+#: builtin/receive-pack.c:813
+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"
+"\n"
+"You can set 'receive.denyDeleteCurrent' configuration variable to\n"
+"'warn' or 'ignore' in the remote repository to allow deleting the\n"
+"current branch, with or without a warning message.\n"
+"\n"
+"To squelch this message, you can set it to 'refuse'."
+msgstr ""
+"Por predefinição, eliminar o ramo atual é proibido, porque o próximo\n"
+"'git clone' não resultará em nenhum ficheiro extraído, causando confusão.\n"
+"\n"
+"Pode definir a variável de configuração 'receive.denyDeleteCurrent' como\n"
+"'warn' ou 'ignore' no repositório remoto para permitir eliminar o\n"
+"ramo atual, com ou sem uma mensagem de aviso.\n"
+"\n"
+"Para suprimir esta mensagem, pode definí-la como 'refuse'."
+
+#: builtin/receive-pack.c:1883
 msgid "quiet"
 msgstr "silencioso"
 
-#: builtin/receive-pack.c:1733
+#: builtin/receive-pack.c:1897
 msgid "You must specify a directory."
 msgstr "Deve especificar um diretório."
 
@@ -9867,8 +11062,8 @@ msgid ""
 "git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <name> <url>"
 msgstr ""
-"git remote add [-t <ramo>] [-m <mestre>] [-f] [--tags | --no-tags] "
-"[--mirror=<fetch|push>] <nome> <url>"
+"git remote add [-t <ramo>] [-m <mestre>] [-f] [--tags | --no-tags] [--"
+"mirror=<fetch|push>] <nome> <url>"
 
 #: builtin/remote.c:14 builtin/remote.c:34
 msgid "git remote rename <old> <new>"
@@ -9994,12 +11189,12 @@ msgstr "especificar um ramo mestre não faz sentido com --mirror"
 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:633
+#: builtin/remote.c:190 builtin/remote.c:629
 #, c-format
 msgid "remote %s already exists."
 msgstr "o remoto %s já existe."
 
-#: builtin/remote.c:194 builtin/remote.c:637
+#: builtin/remote.c:194 builtin/remote.c:633
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' não é um nome de remoto válido"
@@ -10023,18 +11218,18 @@ msgstr "(correspondente)"
 msgid "(delete)"
 msgstr "(eliminado)"
 
-#: builtin/remote.c:626 builtin/remote.c:761 builtin/remote.c:858
+#: builtin/remote.c:622 builtin/remote.c:757 builtin/remote.c:854
 #, c-format
 msgid "No such remote: %s"
 msgstr "Remoto inexistente: %s"
 
-#: builtin/remote.c:643
+#: builtin/remote.c:639
 #, 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:663
+#: builtin/remote.c:659
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -10046,17 +11241,17 @@ msgstr ""
 "\t%s\n"
 "\tAtualize a configuração manualmente se necessário."
 
-#: builtin/remote.c:699
+#: builtin/remote.c:695
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "falha ao eliminar '%s'"
 
-#: builtin/remote.c:733
+#: builtin/remote.c:729
 #, c-format
 msgid "creating '%s' failed"
 msgstr "falha ao criar '%s'"
 
-#: builtin/remote.c:796
+#: builtin/remote.c:792
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -10070,364 +11265,386 @@ msgstr[1] ""
 "Nota: alguns ramos fora da hierarquia refs/remotes/ não foram removidos;\n"
 "para os remover, use:"
 
-#: builtin/remote.c:810
+#: builtin/remote.c:806
 #, 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:911
+#: builtin/remote.c:907
 #, 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:914
+#: builtin/remote.c:910
 msgid " tracked"
 msgstr " seguido"
 
-#: builtin/remote.c:916
+#: builtin/remote.c:912
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " obsoleto (use 'git remote prune' para remover)"
 
-#: builtin/remote.c:918
+#: builtin/remote.c:914
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:959
+#: builtin/remote.c:955
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr ""
-"branch.%s.merge inválido; não é possível realizar rebase sobre mais do que "
-"um ramo"
+"branch.%s.merge inválido; não é possível rebasear sobre mais do que um ramo"
 
-#: builtin/remote.c:967
+#: builtin/remote.c:963
 #, c-format
 msgid "rebases interactively onto remote %s"
-msgstr "realiza rebase interativo sobre %s do remoto"
+msgstr "rebaseia interativamente sobre %s do remoto"
 
-#: builtin/remote.c:971
+#: builtin/remote.c:964
+#, c-format
+msgid "rebases onto remote %s"
+msgstr "rebaseia sobre %s do remoto"
+
+#: builtin/remote.c:967
 #, c-format
 msgid " merges with remote %s"
 msgstr " integra com %s do remoto"
 
-#: builtin/remote.c:972
-msgid "    and with remote"
-msgstr "    e com o remoto"
-
-#: builtin/remote.c:974
+#: builtin/remote.c:970
 #, c-format
 msgid "merges with remote %s"
 msgstr "integra com %s do remoto"
 
-#: builtin/remote.c:975
-msgid "   and with remote"
-msgstr "   e com o remoto"
+#: builtin/remote.c:973
+#, c-format
+msgid "%-*s    and with remote %s\n"
+msgstr "%-*s    e com o %s do remoto\n"
 
-#: builtin/remote.c:1021
+#: builtin/remote.c:1016
 msgid "create"
 msgstr "criado"
 
-#: builtin/remote.c:1024
+#: builtin/remote.c:1019
 msgid "delete"
 msgstr "eliminado"
 
-#: builtin/remote.c:1028
+#: builtin/remote.c:1023
 msgid "up to date"
 msgstr "atualizado"
 
-#: builtin/remote.c:1031
+#: builtin/remote.c:1026
 msgid "fast-forwardable"
 msgstr "pode ser avançado rapidamente"
 
-#: builtin/remote.c:1034
+#: builtin/remote.c:1029
 msgid "local out of date"
 msgstr "local desatualizado"
 
-#: builtin/remote.c:1041
+#: builtin/remote.c:1036
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s força em %-*s (%s)"
 
-#: builtin/remote.c:1044
+#: builtin/remote.c:1039
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s publica em %-*s (%s)"
 
-#: builtin/remote.c:1048
+#: builtin/remote.c:1043
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s força em %s"
 
-#: builtin/remote.c:1051
+#: builtin/remote.c:1046
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s publica em %s"
 
-#: builtin/remote.c:1119
+#: builtin/remote.c:1114
 msgid "do not query remotes"
 msgstr "não consultar remotos"
 
-#: builtin/remote.c:1146
+#: builtin/remote.c:1141
 #, c-format
 msgid "* remote %s"
 msgstr "* remoto %s"
 
-#: builtin/remote.c:1147
+#: builtin/remote.c:1142
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  Obter    do URL: %s"
 
-#: builtin/remote.c:1148 builtin/remote.c:1301
+#: builtin/remote.c:1143 builtin/remote.c:1156 builtin/remote.c:1295
 msgid "(no URL)"
 msgstr "(nenhum URL)"
 
 #. TRANSLATORS: the colon ':' should align with
 #. the one in "  Fetch URL: %s" translation
-#: builtin/remote.c:1159 builtin/remote.c:1161
+#: builtin/remote.c:1154 builtin/remote.c:1156
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  Publicar no URL: %s"
 
-#: builtin/remote.c:1163 builtin/remote.c:1165 builtin/remote.c:1167
+#: builtin/remote.c:1158 builtin/remote.c:1160 builtin/remote.c:1162
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Ramo HEAD: %s"
 
-#: builtin/remote.c:1169
+#: builtin/remote.c:1158
+msgid "(not queried)"
+msgstr "(não consultado)"
+
+#: builtin/remote.c:1160
+msgid "(unknown)"
+msgstr "(desconhecido)"
+
+#: builtin/remote.c:1164
 #, 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:1181
+#: builtin/remote.c:1176
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Ramo remoto:%s"
 msgstr[1] "  Ramos remotos:%s"
 
-#: builtin/remote.c:1184 builtin/remote.c:1211
+#: builtin/remote.c:1179 builtin/remote.c:1205
 msgid " (status not queried)"
 msgstr " (estado não consultado)"
 
-#: builtin/remote.c:1193
+#: builtin/remote.c:1188
 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:1201
+#: builtin/remote.c:1196
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  Referências locais serão refletidas (mirror) por 'git push'"
 
-#: builtin/remote.c:1208
+#: builtin/remote.c:1202
 #, 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:1229
+#: builtin/remote.c:1223
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "definir refs/remotes/<nome>/HEAD de acordo com o remoto"
 
-#: builtin/remote.c:1231
+#: builtin/remote.c:1225
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "eliminar refs/remotes/<nome>/HEAD"
 
-#: builtin/remote.c:1246
+#: builtin/remote.c:1240
 msgid "Cannot determine remote HEAD"
 msgstr "Não é possível determinar o remoto HEAD"
 
-#: builtin/remote.c:1248
+#: builtin/remote.c:1242
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr "Múltiplos ramos HEAD remotos. Escolha um explicitamente com:"
 
-#: builtin/remote.c:1258
+#: builtin/remote.c:1252
 #, c-format
 msgid "Could not delete %s"
 msgstr "Não foi possível eliminar %s"
 
-#: builtin/remote.c:1266
+#: builtin/remote.c:1260
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Referência inválida: %s"
 
-#: builtin/remote.c:1268
+#: builtin/remote.c:1262
 #, c-format
 msgid "Could not setup %s"
 msgstr "Não foi possível configurar %s"
 
-#: builtin/remote.c:1286
+#: builtin/remote.c:1280
 #, c-format
 msgid " %s will become dangling!"
 msgstr " %s ficará suspenso!"
 
-#: builtin/remote.c:1287
+#: builtin/remote.c:1281
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s ficou suspenso!"
 
-#: builtin/remote.c:1297
+#: builtin/remote.c:1291
 #, c-format
 msgid "Pruning %s"
 msgstr "A eliminar %s"
 
-#: builtin/remote.c:1298
+#: builtin/remote.c:1292
 #, c-format
 msgid "URL: %s"
 msgstr "URL: %s"
 
-#: builtin/remote.c:1314
+#: builtin/remote.c:1308
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [eliminaria] %s"
 
-#: builtin/remote.c:1317
+#: builtin/remote.c:1311
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [eliminado] %s"
 
-#: builtin/remote.c:1362
+#: builtin/remote.c:1356
 msgid "prune remotes after fetching"
 msgstr "eliminar remotos depois de obter"
 
-#: builtin/remote.c:1425 builtin/remote.c:1479 builtin/remote.c:1547
+#: builtin/remote.c:1419 builtin/remote.c:1473 builtin/remote.c:1541
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Remoto inexistente '%s'"
 
-#: builtin/remote.c:1441
+#: builtin/remote.c:1435
 msgid "add branch"
 msgstr "adicionar ramo"
 
-#: builtin/remote.c:1448
+#: builtin/remote.c:1442
 msgid "no remote specified"
 msgstr "nenhum remoto especificado"
 
-#: builtin/remote.c:1465
+#: builtin/remote.c:1459
 msgid "query push URLs rather than fetch URLs"
 msgstr "consultar URLs de publicação em vez de URLs utilizados para obter"
 
-#: builtin/remote.c:1467
+#: builtin/remote.c:1461
 msgid "return all URLs"
 msgstr "retornar todos os URLs"
 
-#: builtin/remote.c:1495
+#: builtin/remote.c:1489
 #, c-format
 msgid "no URLs configured for remote '%s'"
 msgstr "o remoto '%s' não tem nenhum URL configurado"
 
-#: builtin/remote.c:1521
+#: builtin/remote.c:1515
 msgid "manipulate push URLs"
 msgstr "manipular URLs de publicação"
 
-#: builtin/remote.c:1523
+#: builtin/remote.c:1517
 msgid "add URL"
 msgstr "adicionar URL"
 
-#: builtin/remote.c:1525
+#: builtin/remote.c:1519
 msgid "delete URLs"
 msgstr "eliminar URLs"
 
-#: builtin/remote.c:1532
+#: builtin/remote.c:1526
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete não faz sentido"
 
-#: builtin/remote.c:1573
+#: builtin/remote.c:1567
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Padrão de URL antigo inválido: %s"
 
-#: builtin/remote.c:1581
+#: builtin/remote.c:1575
 #, c-format
 msgid "No such URL found: %s"
 msgstr "URL não encontrado: %s"
 
-#: builtin/remote.c:1583
+#: builtin/remote.c:1577
 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:1597
+#: builtin/remote.c:1591
 msgid "be verbose; must be placed before a subcommand"
 msgstr "ser verboso; deve ser colocado antes de um subcomando"
 
+#: builtin/remote.c:1622
+#, c-format
+msgid "Unknown subcommand: %s"
+msgstr "Subcomando desconhecido: %s"
+
 #: builtin/repack.c:17
 msgid "git repack [<options>]"
 msgstr "git repack [<opções>]"
 
-#: builtin/repack.c:159
+#: builtin/repack.c:160
 msgid "pack everything in a single pack"
 msgstr "compactar tudo num único pacote"
 
-#: builtin/repack.c:161
+#: builtin/repack.c:162
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "o mesmo que -a, e soltar objetos inalcançáveis"
 
-#: builtin/repack.c:164
+#: builtin/repack.c:165
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "remover pacotes redundantes e executar git-prune-packed"
 
-#: builtin/repack.c:166
+#: builtin/repack.c:167
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "passar --no-reuse-delta ao git-pack-objects"
 
-#: builtin/repack.c:168
+#: builtin/repack.c:169
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "passar --no-reuse-object ao git-pack-objects"
 
-#: builtin/repack.c:170
+#: builtin/repack.c:171
 msgid "do not run git-update-server-info"
 msgstr "não executar git-update-server-info"
 
-#: builtin/repack.c:173
+#: builtin/repack.c:174
 msgid "pass --local to git-pack-objects"
 msgstr "passar --local ao git-pack-objects"
 
-#: builtin/repack.c:175
+#: builtin/repack.c:176
 msgid "write bitmap index"
 msgstr "escrever índice de mapa de bits"
 
-#: builtin/repack.c:176
+#: builtin/repack.c:177
 msgid "approxidate"
 msgstr "aproximar"
 
-#: builtin/repack.c:177
+#: builtin/repack.c:178
 msgid "with -A, do not loosen objects older than this"
 msgstr "com -A, não soltar mais objetos além destes"
 
-#: builtin/repack.c:179
+#: builtin/repack.c:180
+msgid "with -a, repack unreachable objects"
+msgstr "com -a, reempacotar objetos inalcançáveis"
+
+#: builtin/repack.c:182
 msgid "size of the window used for delta compression"
 msgstr "dimensão da janela usada em compressão de deltas"
 
-#: builtin/repack.c:180 builtin/repack.c:184
+#: builtin/repack.c:183 builtin/repack.c:187
 msgid "bytes"
 msgstr "bytes"
 
-#: builtin/repack.c:181
+#: builtin/repack.c:184
 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:183
+#: builtin/repack.c:186
 msgid "limits the maximum delta depth"
 msgstr "limitar a profundidade máxima de delta"
 
-#: builtin/repack.c:185
+#: builtin/repack.c:188
 msgid "maximum size of each packfile"
 msgstr "tamanho máximo de cada ficheiro de pacote"
 
-#: builtin/repack.c:187
+#: builtin/repack.c:190
 msgid "repack objects in packs marked with .keep"
 msgstr "reempacotar objetos em pacotes marcados com .keep"
 
-#: builtin/repack.c:197
+#: builtin/repack.c:200
 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:381
+#: builtin/repack.c:204
+msgid "--keep-unreachable and -A are incompatible"
+msgstr "--keep-unreachable e -A são incompatíveis"
+
+#: builtin/repack.c:391 builtin/worktree.c:115
 #, c-format
-msgid "removing '%s' failed"
+msgid "failed to remove '%s'"
 msgstr "falha ao remover '%s'"
 
 #: builtin/replace.c:19
@@ -10532,8 +11749,8 @@ msgstr ""
 "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 
 #: builtin/reset.c:27
-msgid "git reset [-q] <tree-ish> [--] <paths>..."
-msgstr "git reset [-q] <árvore-etc> [--] <caminhos>..."
+msgid "git reset [-q] [<tree-ish>] [--] <paths>..."
+msgstr "git reset [-q] [<árvore-etc>] [--] <caminhos>..."
 
 #: builtin/reset.c:28
 msgid "git reset --patch [<tree-ish>] [--] [<paths>...]"
@@ -10652,27 +11869,27 @@ msgstr "Não foi possível repor o ficheiro índice para a revisão '%s'."
 msgid "Could not write new index file."
 msgstr "Não foi possível escrever novo ficheiro de índice."
 
-#: builtin/rev-list.c:350
+#: builtin/rev-list.c:354
 msgid "rev-list does not support display of notes"
 msgstr "rev-list não suporta apresentação de notas"
 
-#: builtin/rev-parse.c:358
+#: builtin/rev-parse.c:386
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
 msgstr "git rev-parse --parseopt [<opções>] -- [<argumentos>...]"
 
-#: builtin/rev-parse.c:363
+#: builtin/rev-parse.c:391
 msgid "keep the `--` passed as an arg"
 msgstr "conservar '--' passado como argumento"
 
-#: builtin/rev-parse.c:365
+#: builtin/rev-parse.c:393
 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:368
+#: builtin/rev-parse.c:396
 msgid "output in stuck long form"
 msgstr "mostrar em formato fixo e longo"
 
-#: builtin/rev-parse.c:499
+#: builtin/rev-parse.c:527
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -10744,31 +11961,27 @@ msgstr "opção"
 msgid "option for merge strategy"
 msgstr "opção de estratégia de integração"
 
-#: builtin/revert.c:104
+#: builtin/revert.c:100
 msgid "append commit name"
 msgstr "acrescentar nome do commit"
 
-#: builtin/revert.c:106
+#: builtin/revert.c:102
 msgid "preserve initially empty commits"
 msgstr "preservar commits inicialmente vazios"
 
-#: builtin/revert.c:107
+#: builtin/revert.c:103
 msgid "allow commits with empty messages"
 msgstr "permitir commits com mensagens vazias"
 
-#: builtin/revert.c:108
+#: builtin/revert.c:104
 msgid "keep redundant, empty commits"
 msgstr "manter commits redundantes e vazios"
 
-#: builtin/revert.c:112
-msgid "program error"
-msgstr "erro do programa"
-
-#: builtin/revert.c:197
+#: builtin/revert.c:192
 msgid "revert failed"
 msgstr "falha ao reverter"
 
-#: builtin/revert.c:212
+#: builtin/revert.c:205
 msgid "cherry-pick failed"
 msgstr "falha ao efetuar cherry-pick"
 
@@ -10901,7 +12114,8 @@ msgstr "imprimir estado do programa auxiliar remoto"
 
 #: builtin/shortlog.c:13
 msgid "git shortlog [<options>] [<revision-range>] [[--] [<path>...]]"
-msgstr "git shortlog [<opções>] [<intervalo-de-revisões>] [[--] [<caminho>...]]"
+msgstr ""
+"git shortlog [<opções>] [<intervalo-de-revisões>] [[--] [<caminho>...]]"
 
 #: builtin/shortlog.c:242
 msgid "sort output according to the number of commits per author"
@@ -10939,78 +12153,133 @@ msgstr ""
 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:640
+#: builtin/show-branch.c:375
+#, 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:541
+#, c-format
+msgid "no matching refs with %s"
+msgstr "nenhuma referência corresponde com %s"
+
+#: builtin/show-branch.c:639
 msgid "show remote-tracking and local branches"
 msgstr "mostrar os ramos de monitorização remotos e os ramos locais"
 
-#: builtin/show-branch.c:642
+#: builtin/show-branch.c:641
 msgid "show remote-tracking branches"
 msgstr "mostrar os ramos de monitorização remotos"
 
-#: builtin/show-branch.c:644
+#: builtin/show-branch.c:643
 msgid "color '*!+-' corresponding to the branch"
 msgstr "colorir '*!+-' correspondendo ao ramo"
 
-#: builtin/show-branch.c:646
+#: builtin/show-branch.c:645
 msgid "show <n> more commits after the common ancestor"
 msgstr "mostrar mais <n> commits depois do antecessor comum"
 
-#: builtin/show-branch.c:648
+#: builtin/show-branch.c:647
 msgid "synonym to more=-1"
 msgstr "sinónimo de more=-1"
 
-#: builtin/show-branch.c:649
+#: builtin/show-branch.c:648
 msgid "suppress naming strings"
 msgstr "suprimir a cadeias de caracteres de nomes"
 
-#: builtin/show-branch.c:651
+#: builtin/show-branch.c:650
 msgid "include the current branch"
 msgstr "incluir o ramo atual"
 
-#: builtin/show-branch.c:653
+#: builtin/show-branch.c:652
 msgid "name commits with their object names"
 msgstr "designar commits pelos seus nomes de objeto"
 
-#: builtin/show-branch.c:655
+#: builtin/show-branch.c:654
 msgid "show possible merge bases"
 msgstr "mostrar possíveis bases de integração"
 
-#: builtin/show-branch.c:657
+#: builtin/show-branch.c:656
 msgid "show refs unreachable from any other ref"
 msgstr "mostrar referências inalcançáveis a partir de outras referências"
 
-#: builtin/show-branch.c:659
+#: builtin/show-branch.c:658
 msgid "show commits in topological order"
 msgstr "mostrar commits em ordem topológica"
 
-#: builtin/show-branch.c:662
+#: builtin/show-branch.c:661
 msgid "show only commits not on the first branch"
 msgstr "mostrar apenas commits não presentes no primeiro ramo"
 
-#: builtin/show-branch.c:664
+#: builtin/show-branch.c:663
 msgid "show merges reachable from only one tip"
 msgstr "mostrar integrações alcançáveis a partir duma única ponta"
 
-#: builtin/show-branch.c:666
+#: builtin/show-branch.c:665
 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:669
+#: builtin/show-branch.c:668
 msgid "<n>[,<base>]"
 msgstr "<n>[,<base>]"
 
-#: builtin/show-branch.c:670
+#: builtin/show-branch.c:669
 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:703
+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:727
+msgid "no branches given, and HEAD is not valid"
+msgstr "nenhum ramo fornecido e HEAD não é válida"
+
+#: builtin/show-branch.c:730
+msgid "--reflog option needs one branch name"
+msgstr "a opção --reflog precisa do nome de um ramo"
+
+#: builtin/show-branch.c:733
+#, 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:737
+#, c-format
+msgid "no such ref %s"
+msgstr "referência inexistente %s"
+
+#: builtin/show-branch.c:829
+#, 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:833
+#, c-format
+msgid "'%s' is not a valid ref."
+msgstr "'%s' não é uma referência válida."
+
+#: builtin/show-branch.c:836
+#, c-format
+msgid "cannot find commit %s (%s)"
+msgstr "não é possível encontrar o commit %s (%s)"
+
 #: builtin/show-ref.c:10
 msgid ""
 "git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
 "hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
 msgstr ""
-"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | "
-"--hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<padrão>...]"
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<padrão>...]"
 
 #: builtin/show-ref.c:11
 msgid "git show-ref --exclude-existing[=<pattern>]"
@@ -11067,12 +12336,12 @@ msgstr ""
 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:24 builtin/submodule--helper.c:1046
 #, c-format
 msgid "No such ref: %s"
 msgstr "Referência inexistente: %s"
 
-#: builtin/submodule--helper.c:31
+#: builtin/submodule--helper.c:31 builtin/submodule--helper.c:1055
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr "Esperava-se um nome completo de uma referência, obteve-se %s"
@@ -11082,75 +12351,94 @@ msgstr "Esperava-se um nome completo de uma referência, obteve-se %s"
 msgid "cannot strip one component off url '%s'"
 msgstr "não é possível tirar um componente do URL '%s'"
 
-#: builtin/submodule--helper.c:278 builtin/submodule--helper.c:405
-#: builtin/submodule--helper.c:486
+#: builtin/submodule--helper.c:282 builtin/submodule--helper.c:408
+#: builtin/submodule--helper.c:590
 msgid "alternative anchor for relative paths"
 msgstr "âncora alternativa para caminhos relativos"
 
-#: builtin/submodule--helper.c:283
+#: builtin/submodule--helper.c:287
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper list [--prefix=<caminho>] [<caminho>...]"
 
-#: builtin/submodule--helper.c:326 builtin/submodule--helper.c:340
+#: builtin/submodule--helper.c:329 builtin/submodule--helper.c:343
 #, 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:366
+#: builtin/submodule--helper.c:369
 #, 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:370
+#: builtin/submodule--helper.c:373
 #, 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:380
+#: builtin/submodule--helper.c:383
 #, 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:387
+#: builtin/submodule--helper.c:390
 #, 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:406
+#: builtin/submodule--helper.c:409
 msgid "Suppress output for initializing a submodule"
 msgstr "Suprimir a saída ao inicializar um submódulo"
 
-#: builtin/submodule--helper.c:411
+#: builtin/submodule--helper.c:414
 msgid "git submodule--helper init [<path>]"
 msgstr "git submodule--helper init [<caminho>]"
 
-#: builtin/submodule--helper.c:432
+#: builtin/submodule--helper.c:435
 msgid "git submodule--helper name <path>"
 msgstr "git submodule--helper name <caminho>"
 
-#: builtin/submodule--helper.c:438
+#: builtin/submodule--helper.c:441
 #, 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:489
+#: builtin/submodule--helper.c:524 builtin/submodule--helper.c:527
+#, c-format
+msgid "submodule '%s' cannot add alternate: %s"
+msgstr "o submódulo '%s' não pode adicionar sobressalente: %s"
+
+#: builtin/submodule--helper.c:563
+#, 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:570
+#, 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:593
 msgid "where the new submodule will be cloned to"
 msgstr "sítio para aonde o novo submódulo será clonado"
 
-#: builtin/submodule--helper.c:492
+#: builtin/submodule--helper.c:596
 msgid "name of the new submodule"
 msgstr "nome do novo submódulo"
 
-#: builtin/submodule--helper.c:495
+#: builtin/submodule--helper.c:599
 msgid "url where to clone the submodule from"
 msgstr "url donde clonar o submódulos"
 
-#: builtin/submodule--helper.c:501
+#: builtin/submodule--helper.c:605
 msgid "depth for shallow clones"
 msgstr "profundidade de clones rasos"
 
-#: builtin/submodule--helper.c:507
+#: builtin/submodule--helper.c:608 builtin/submodule--helper.c:964
+msgid "force cloning progress"
+msgstr "forçar progresso da clonagem"
+
+#: builtin/submodule--helper.c:613
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
 "<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
@@ -11158,89 +12446,112 @@ msgstr ""
 "git submodule--helper clone [--prefix=<caminho>] [--quiet] [--reference "
 "<repositório>] [--name <nome>] [--depth <depth>] --url <url> --path <caminho>"
 
-#: builtin/submodule--helper.c:532 builtin/submodule--helper.c:538
+#: builtin/submodule--helper.c:638 builtin/submodule--helper.c:648
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "não foi possível criar o diretório '%s'"
 
-#: builtin/submodule--helper.c:534
+#: builtin/submodule--helper.c:644
 #, 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:550
+#: builtin/submodule--helper.c:660
 #, c-format
 msgid "cannot open file '%s'"
 msgstr "não é possível abrir o ficheiro '%s'"
 
-#: builtin/submodule--helper.c:555
+#: builtin/submodule--helper.c:665
 #, c-format
 msgid "could not close file %s"
 msgstr "não é possível fechar o ficheiro %s"
 
-#: builtin/submodule--helper.c:562
+#: builtin/submodule--helper.c:672
 #, 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:609
+#: builtin/submodule--helper.c:726
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr "Caminho de submódulo '%s' não inicializado"
 
-#: builtin/submodule--helper.c:613
+#: builtin/submodule--helper.c:730
 msgid "Maybe you want to use 'update --init'?"
 msgstr "Pretendia usar 'update --init'?"
 
-#: builtin/submodule--helper.c:639
+#: builtin/submodule--helper.c:756
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr "A ignorar submódulo %s não integrado"
 
-#: builtin/submodule--helper.c:660
+#: builtin/submodule--helper.c:777
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr "A ignorar submódulo '%s'"
 
-#: builtin/submodule--helper.c:768
+#: builtin/submodule--helper.c:913
+#, c-format
+msgid "Failed to clone '%s'. Retry scheduled"
+msgstr "Falha ao clonar '%s'. Nova tentativa agendada"
+
+#: builtin/submodule--helper.c:924
+#, c-format
+msgid "Failed to clone '%s' a second time, aborting"
+msgstr "Falha ao clonar '%s' pela segunda vez, abortado"
+
+#: builtin/submodule--helper.c:945
 msgid "path into the working tree"
 msgstr "caminho para a árvore de trabalho"
 
-#: builtin/submodule--helper.c:771
+#: builtin/submodule--helper.c:948
 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:775
+#: builtin/submodule--helper.c:952
 msgid "rebase, merge, checkout or none"
 msgstr "rebase, merge, checkout ou none"
 
-#: builtin/submodule--helper.c:779
+#: builtin/submodule--helper.c:956
 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:782
+#: builtin/submodule--helper.c:959
 msgid "parallel jobs"
 msgstr "trabalhos em paralelo"
 
-#: builtin/submodule--helper.c:783
+#: builtin/submodule--helper.c:961
+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:962
 msgid "don't print cloning progress"
 msgstr "não imprimir progresso da clonagem"
 
-#: builtin/submodule--helper.c:788
+#: builtin/submodule--helper.c:969
 msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper update_clone [--prefix=<caminho>] [<caminho>...]"
 
-#: builtin/submodule--helper.c:798
+#: builtin/submodule--helper.c:979
 msgid "bad value for update parameter"
 msgstr "valor incorreto no parâmetro update"
 
-#: builtin/submodule--helper.c:855
+#: builtin/submodule--helper.c:1050
+#, c-format
+msgid ""
+"Submodule (%s) branch configured to inherit branch from superproject, but "
+"the superproject is not on any branch"
+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:1100
 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:862
+#: builtin/submodule--helper.c:1107
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr "'%s' não é um subcomando válido de submodule--helper"
@@ -11476,7 +12787,7 @@ msgstr "a tag '%s' já existe"
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Tag '%s' atualizada (era %s)\n"
 
-#: builtin/unpack-objects.c:490
+#: builtin/unpack-objects.c:493
 msgid "Unpacking objects"
 msgstr "A descompactar objetos"
 
@@ -11546,143 +12857,151 @@ msgstr ""
 msgid " OK"
 msgstr " OK"
 
-#: builtin/update-index.c:575
+#: builtin/update-index.c:564
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr "git update-index [<opções>] [--] [<ficheiro>...]"
 
-#: builtin/update-index.c:930
+#: builtin/update-index.c:919
 msgid "continue refresh even when index needs update"
 msgstr "continuar a refrescar mesmo quando o índice precise de ser atualizado"
 
-#: builtin/update-index.c:933
+#: builtin/update-index.c:922
 msgid "refresh: ignore submodules"
 msgstr "refrescar: ignorar submódulos"
 
-#: builtin/update-index.c:936
+#: builtin/update-index.c:925
 msgid "do not ignore new files"
 msgstr "não ignorar novos ficheiros"
 
-#: builtin/update-index.c:938
+#: builtin/update-index.c:927
 msgid "let files replace directories and vice-versa"
 msgstr "deixar que os ficheiros substituam os diretórios e vice-versa"
 
-#: builtin/update-index.c:940
+#: builtin/update-index.c:929
 msgid "notice files missing from worktree"
 msgstr "avisar sobre ficheiros que faltem na árvore de trabalho"
 
-#: builtin/update-index.c:942
+#: builtin/update-index.c:931
 msgid "refresh even if index contains unmerged entries"
 msgstr "refrescar mesmo que o índice contenha entradas não integradas"
 
-#: builtin/update-index.c:945
+#: builtin/update-index.c:934
 msgid "refresh stat information"
 msgstr "refrescar informação de stat"
 
-#: builtin/update-index.c:949
+#: builtin/update-index.c:938
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "como --refresh, mas ignorar a definição assume-unchanged"
 
-#: builtin/update-index.c:953
+#: builtin/update-index.c:942
 msgid "<mode>,<object>,<path>"
 msgstr "<modo>,<objeto>,<caminho>"
 
-#: builtin/update-index.c:954
+#: builtin/update-index.c:943
 msgid "add the specified entry to the index"
 msgstr "adicionar o elemento especificado ao índice"
 
-#: builtin/update-index.c:958
-msgid "(+/-)x"
-msgstr "(+/-)x"
-
-#: builtin/update-index.c:959
-msgid "override the executable bit of the listed files"
-msgstr "substituir o bit executável dos ficheiros listados"
-
-#: builtin/update-index.c:963
+#: builtin/update-index.c:952
 msgid "mark files as \"not changing\""
 msgstr "marcar ficheiros como \"não alterados\""
 
-#: builtin/update-index.c:966
+#: builtin/update-index.c:955
 msgid "clear assumed-unchanged bit"
 msgstr "limpar o bit assumed-unchanged"
 
-#: builtin/update-index.c:969
+#: builtin/update-index.c:958
 msgid "mark files as \"index-only\""
 msgstr "marcar ficheiros como \"únicos do índice\""
 
-#: builtin/update-index.c:972
+#: builtin/update-index.c:961
 msgid "clear skip-worktree bit"
 msgstr "limpar o bit ignorar-árvore-de-trabalho"
 
-#: builtin/update-index.c:975
+#: builtin/update-index.c:964
 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:977
+#: builtin/update-index.c:966
 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:979
+#: builtin/update-index.c:968
 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:981
+#: builtin/update-index.c:970
 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:985
+#: builtin/update-index.c:974
 msgid "add entries from standard input to the index"
 msgstr "adicionar elementos da entrada padrão ao índice"
 
-#: builtin/update-index.c:989
+#: builtin/update-index.c:978
 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:993
+#: builtin/update-index.c:982
 msgid "only update entries that differ from HEAD"
 msgstr "atualizar apenas elementos que difiram de HEAD"
 
-#: builtin/update-index.c:997
+#: builtin/update-index.c:986
 msgid "ignore files missing from worktree"
 msgstr "ignorar ficheiros não presentes na árvore de trabalho"
 
-#: builtin/update-index.c:1000
+#: builtin/update-index.c:989
 msgid "report actions to standard output"
 msgstr "mostrar ações na saída padrão"
 
-#: builtin/update-index.c:1002
+#: builtin/update-index.c:991
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr ""
 "(para porcelanas) esquecer conflitos guardados que não foram resolvidos"
 
-#: builtin/update-index.c:1006
+#: builtin/update-index.c:995
 msgid "write index in this format"
 msgstr "escrever o índice neste formato"
 
-#: builtin/update-index.c:1008
+#: builtin/update-index.c:997
 msgid "enable or disable split index"
 msgstr "ativar ou desativar a divisão do índice"
 
-#: builtin/update-index.c:1010
+#: builtin/update-index.c:999
 msgid "enable/disable untracked cache"
 msgstr "ativar ou desativar cache não controlada"
 
-#: builtin/update-index.c:1012
+#: builtin/update-index.c:1001
 msgid "test if the filesystem supports untracked cache"
 msgstr "testar se o sistema de ficheiros suporta cache não controlada"
 
-#: builtin/update-index.c:1014
+#: builtin/update-index.c:1003
 msgid "enable untracked cache without testing the filesystem"
 msgstr "ativar cache não controlada sem testar o sistema de ficheiros"
 
-#: builtin/update-index.c:1134
+#: builtin/update-index.c:1119
+msgid ""
+"core.untrackedCache is set to true; remove or change it, if you really want "
+"to disable the untracked cache"
+msgstr ""
+"core.untrackedCache está definida como true; remova ou altere-a se pretende "
+"mesmo desativar a cache não controlada"
+
+#: builtin/update-index.c:1123
 msgid "Untracked cache disabled"
 msgstr "A cache não controlada está desativada"
 
-#: builtin/update-index.c:1146
+#: builtin/update-index.c:1131
+msgid ""
+"core.untrackedCache is set to false; remove or change it, if you really want "
+"to enable the untracked cache"
+msgstr ""
+"core.untrackedCache está definida como false; remova ou altere-a se pretende "
+"mesmo ativar a cache não controlada"
+
+#: builtin/update-index.c:1135
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr "A cache não controlada de '%s' foi ativada."
@@ -11708,8 +13027,7 @@ msgstr "eliminar a referência"
 #: builtin/update-ref.c:365
 msgid "update <refname> not the one it points to"
 msgstr ""
-"atualizar a referência <nome-da-referência>, e não a referência aponta por "
-"esta"
+"atualizar a referência <nome-da-referência>, não a referência que esta aponta"
 
 #: builtin/update-ref.c:366
 msgid "stdin has NUL-terminated arguments"
@@ -11764,85 +13082,112 @@ msgid "git worktree add [<options>] <path> [<branch>]"
 msgstr "git worktree add [<opções>] <caminho> [<ramo>]"
 
 #: builtin/worktree.c:16
+msgid "git worktree list [<options>]"
+msgstr "git worktree list [<opções>]"
+
+#: builtin/worktree.c:17
+msgid "git worktree lock [<options>] <path>"
+msgstr "git worktree lock [<opções>] <caminho>"
+
+#: builtin/worktree.c:18
 msgid "git worktree prune [<options>]"
 msgstr "git worktree prune [<opções>]"
 
-#: builtin/worktree.c:17
-msgid "git worktree list [<options>]"
-msgstr "git worktree list [<opções>]"
+#: builtin/worktree.c:19
+msgid "git worktree unlock <path>"
+msgstr "git worktree unlock <caminho>"
 
-#: builtin/worktree.c:40
+#: 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:46
+#: builtin/worktree.c:48
 #, c-format
 msgid "Removing worktrees/%s: gitdir file does not exist"
 msgstr "A remover worktrees/%s: o ficheiro gitdir não existe"
 
-#: builtin/worktree.c:51
+#: 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:62
+#: builtin/worktree.c:64
 #, c-format
 msgid "Removing worktrees/%s: invalid gitdir file"
 msgstr "A remover worktrees/%s: ficheiro gitdir inválido"
 
-#: builtin/worktree.c:78
+#: builtin/worktree.c:80
 #, c-format
 msgid "Removing worktrees/%s: gitdir file points to non-existent location"
 msgstr ""
 "A remover worktrees/%s: o ficheiro gitdir aponta para uma localização "
 "inexistente"
 
-#: builtin/worktree.c:113
-#, c-format
-msgid "failed to remove '%s'"
-msgstr "falha ao remover '%s'"
-
-#: builtin/worktree.c:202
+#: builtin/worktree.c:204
 #, c-format
 msgid "'%s' already exists"
 msgstr "'%s' já existe"
 
-#: builtin/worktree.c:234
+#: builtin/worktree.c:236
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "não foi possível criar o diretório de '%s'"
 
-#: builtin/worktree.c:270
+#: builtin/worktree.c:272
 #, c-format
 msgid "Preparing %s (identifier %s)"
 msgstr "A preparar %s (identificador %s)"
 
-#: builtin/worktree.c:322
+#: builtin/worktree.c:323
 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:324
+#: builtin/worktree.c:325
 msgid "create a new branch"
 msgstr "criar um novo ramo"
 
-#: builtin/worktree.c:326
+#: builtin/worktree.c:327
 msgid "create or reset a branch"
 msgstr "criar ou repor um ramo"
 
-#: builtin/worktree.c:327
-msgid "detach HEAD at named commit"
-msgstr "destacar HEAD no commit indicado"
-
-#: builtin/worktree.c:328
+#: builtin/worktree.c:329
 msgid "populate the new working tree"
 msgstr "povoar a nova árvore de trabalho"
 
-#: builtin/worktree.c:336
+#: builtin/worktree.c:337
 msgid "-b, -B, and --detach are mutually exclusive"
 msgstr "-b, -B e --detach são mutuamente exclusivos"
 
+#: builtin/worktree.c:470
+msgid "reason for locking"
+msgstr "razão de trancar"
+
+#: builtin/worktree.c:482 builtin/worktree.c:515
+#, c-format
+msgid "'%s' is not a working tree"
+msgstr "'%s' não é uma árvore de trabalho"
+
+#: builtin/worktree.c:484 builtin/worktree.c:517
+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:489
+#, c-format
+msgid "'%s' is already locked, reason: %s"
+msgstr "'%s' já está trancada, razão: %s"
+
+#: builtin/worktree.c:491
+#, c-format
+msgid "'%s' is already locked"
+msgstr "'%s' já está trancada"
+
+#: builtin/worktree.c:519
+#, c-format
+msgid "'%s' is not locked"
+msgstr "'%s' não está trancada"
+
 #: builtin/write-tree.c:13
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
 msgstr "git write-tree [--missing-ok] [--prefix=<prefixo>/]"
@@ -11859,6 +13204,40 @@ msgstr "escrever objeto árvore do subdiretório <prefixo>"
 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>"
+
+#: upload-pack.c:1028
+msgid "quit after a single request/response exchange"
+msgstr "terminar depois de uma única troca de pedido/resposta"
+
+#: upload-pack.c:1030
+msgid "exit immediately after initial ref advertisement"
+msgstr "sair imediatamente depois do anúncio inicial da referência"
+
+#: upload-pack.c:1032
+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"
+
+#: upload-pack.c:1034
+msgid "interrupt transfer after <n> seconds of inactivity"
+msgstr "interromper transferência depois de <n> segundos de inatividade"
+
+#: credential-cache--daemon.c:223
+#, 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"
+
 #: credential-cache--daemon.c:271
 msgid "print debugging messages to stderr"
 msgstr "imprimir mensagens de depuração no stderr"
@@ -11873,7 +13252,11 @@ msgstr ""
 "guias de conceitos. Consulte 'git help <comando>' ou 'git help <conceito>'\n"
 "para ler sobre um subcomando ou conceito específico."
 
-#: http.c:322
+#: http.c:342
+msgid "Delegation control is not supported with cURL < 7.22.0"
+msgstr "Não é suportado delegar controlo com cURL < 7.22.0"
+
+#: http.c:351
 msgid "Public key pinning not supported with cURL < 7.44.0"
 msgstr "Não é suportado afixar chaves públicas com cURL < 7.44.0"
 
@@ -11990,15 +13373,15 @@ msgstr "data-de-validade"
 msgid "no-op (backward compatibility)"
 msgstr "sem-ação (retrocompatibilidade)"
 
-#: parse-options.h:237
+#: parse-options.h:238
 msgid "be more verbose"
 msgstr "ser mais verboso"
 
-#: parse-options.h:239
+#: parse-options.h:240
 msgid "be more quiet"
 msgstr "ser mais silencioso"
 
-#: parse-options.h:245
+#: parse-options.h:246
 msgid "use <n> digits to display SHA-1s"
 msgstr "usar <n> dígitos para mostrar SHA-1s"
 
@@ -12007,58 +13390,60 @@ msgid "update the index with reused conflict resolution if possible"
 msgstr ""
 "atualizar o índice com resoluções de conflitos reutilizadas se possível"
 
-#: git-bisect.sh:55
+#: git-bisect.sh:54
 msgid "You need to start by \"git bisect start\""
 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.
-#: git-bisect.sh:61
+#: 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]? "
 
-#: git-bisect.sh:122
+#: git-bisect.sh:121
 #, sh-format
 msgid "unrecognised option: '$arg'"
 msgstr "opção não reconhecida: '$arg'"
 
-#: git-bisect.sh:126
+#: 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"
 
-#: git-bisect.sh:155
+#: git-bisect.sh:154
 msgid "Bad HEAD - I need a HEAD"
 msgstr "HEAD incorreta - é necessário uma HEAD"
 
-#: git-bisect.sh:168
+#: git-bisect.sh:167
 #, sh-format
 msgid ""
 "Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
-msgstr "Falha ao extrair '$start_head'. Tente 'git bisect reset <ramo-válido>'."
+msgstr ""
+"Falha ao extrair '$start_head'. Tente 'git bisect reset <ramo-válido>'."
 
-#: git-bisect.sh:178
+#: git-bisect.sh:177
 msgid "won't bisect on cg-seek'ed tree"
 msgstr "não é possível bissetar numa árvore \"cg-seek'ed\""
 
-#: git-bisect.sh:182
+#: git-bisect.sh:181
 msgid "Bad HEAD - strange symbolic ref"
 msgstr "HEAD incorreta - referência simbólica desconhecida"
 
-#: git-bisect.sh:234
+#: git-bisect.sh:233
 #, sh-format
 msgid "Bad bisect_write argument: $state"
 msgstr "Argumento de bisect_write incorreto: $state"
 
-#: git-bisect.sh:263
+#: git-bisect.sh:262
 #, sh-format
 msgid "Bad rev input: $arg"
 msgstr "Revisão incorreta na entrada: $arg"
 
-#: git-bisect.sh:278
-msgid "Please call 'bisect_state' with at least one argument."
-msgstr "Invoque 'bisect_state' com pelo menos um argumento."
+#: git-bisect.sh:281
+#, sh-format
+msgid "Bad rev input: $bisected_head"
+msgstr "Revisão incorreta na entrada: $bisected_head"
 
 #: git-bisect.sh:290
 #, sh-format
@@ -12202,7 +13587,47 @@ msgstr ""
 "argumento inválido $arg de 'git bisect terms'.\n"
 "Opções suportadas: --term-good|--term-old e --term-bad|--term-new."
 
-#: git-rebase.sh:57
+#: git-merge-octopus.sh:46
+msgid ""
+"Error: Your local changes to the following files would be overwritten by "
+"merge"
+msgstr ""
+"Erro: As suas alterações locais nos seguintes ficheiros seriam substituídas "
+"ao integrar"
+
+#: git-merge-octopus.sh:61
+msgid "Automated merge did not work."
+msgstr "A integração automática não funcionou."
+
+#: git-merge-octopus.sh:62
+msgid "Should not be doing an octopus."
+msgstr "Não se deviria estar a fazer um polvo."
+
+#: git-merge-octopus.sh:73
+#, sh-format
+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"
+msgstr "Já está atualizado com $pretty_name"
+
+#: git-merge-octopus.sh:89
+#, sh-format
+msgid "Fast-forwarding to: $pretty_name"
+msgstr "A avançar rapidamente para: $pretty_name"
+
+#: git-merge-octopus.sh:97
+#, sh-format
+msgid "Trying simple merge with $pretty_name"
+msgstr "A tentar integração simples com $pretty_name"
+
+#: git-merge-octopus.sh:102
+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:56
 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"
@@ -12214,16 +13639,21 @@ msgstr ""
 "Para extrair o ramo original e interromper o rebase, execute \"git rebase --"
 "abort\"."
 
-#: git-rebase.sh:168
+#: git-rebase.sh:156 git-rebase.sh:395
+#, sh-format
+msgid "Could not move back to $head_name"
+msgstr "Não foi possível voltar para $head_name"
+
+#: git-rebase.sh:167
 msgid "Applied autostash."
 msgstr "Pilha automática (autostash) aplicada."
 
-#: git-rebase.sh:171
+#: git-rebase.sh:170
 #, sh-format
 msgid "Cannot store $stash_sha1"
 msgstr "Não é possível guardar $stash_sha1"
 
-#: git-rebase.sh:172
+#: git-rebase.sh:171
 msgid ""
 "Applying autostash resulted in conflicts.\n"
 "Your changes are safe in the stash.\n"
@@ -12233,27 +13663,27 @@ msgstr ""
 "As suas alterações estão guardadas na pilha.\n"
 "Pode executar \"git stash pop\" ou \"git stash drop\" oportunamente.\n"
 
-#: git-rebase.sh:211
+#: git-rebase.sh:210
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Rebase recusado pelo hook pre-rebase."
 
-#: git-rebase.sh:216
+#: git-rebase.sh:215
 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
+#: git-rebase.sh:356
 msgid "No rebase in progress?"
 msgstr "Rebase não está em curso?"
 
-#: git-rebase.sh:368
+#: git-rebase.sh:367
 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
+#: git-rebase.sh:374
 msgid "Cannot read HEAD"
 msgstr "Não é possível ler HEAD"
 
-#: git-rebase.sh:378
+#: git-rebase.sh:377
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -12261,12 +13691,7 @@ msgstr ""
 "Deve editar todos os conflitos da integração\n"
 "e marcá-los como resolvidos usando git add"
 
-#: 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:415
+#: git-rebase.sh:414
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -12287,98 +13712,102 @@ msgstr ""
 "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:466
+#: git-rebase.sh:465
 #, sh-format
 msgid "invalid upstream $upstream_name"
 msgstr "$upstream_name a montante inválido"
 
-#: git-rebase.sh:490
+#: git-rebase.sh:489
 #, 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:493 git-rebase.sh:497
+#: git-rebase.sh:492 git-rebase.sh:496
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr "$onto_name: não há nenhuma base de integração"
 
-#: git-rebase.sh:502
+#: git-rebase.sh:501
 #, 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:525
+#: git-rebase.sh:524
 #, sh-format
 msgid "fatal: no such branch: $branch_name"
 msgstr "fatal: ramo inexistente: $branch_name"
 
-#: git-rebase.sh:558
+#: git-rebase.sh:557
 msgid "Cannot autostash"
 msgstr "Não é possível empilhar automaticamente (autostash)"
 
-#: git-rebase.sh:563
+#: git-rebase.sh:562
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr "Pilha automática (autostash) criada: $stash_abbrev"
 
-#: git-rebase.sh:567
+#: git-rebase.sh:566
 msgid "Please commit or stash them."
-msgstr "Submeta ou empilhe-as (stash)."
+msgstr "Submeta ou esconda-as."
 
-#: git-rebase.sh:587
+#: git-rebase.sh:586
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr "O ramo atual $branch_name está atualizado."
 
-#: git-rebase.sh:591
+#: git-rebase.sh:590
 #, 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:602
+#: git-rebase.sh:601
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "Alterações de $mb para $onto:"
 
-#: git-rebase.sh:611
+#: git-rebase.sh:610
 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 desta..."
+"Primeiro, a recuar a cabeça para replicar as suas alterações no topo dela..."
 
-#: git-rebase.sh:621
+#: git-rebase.sh:620
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr "$branch_name avançado rapidamente para $onto_name."
 
-#: git-stash.sh:51
+#: git-stash.sh:50
 msgid "git stash clear with parameters is unimplemented"
 msgstr "não está implementado git stash clear com parâmetros"
 
-#: git-stash.sh:74
+#: git-stash.sh:73
 msgid "You do not have the initial commit yet"
 msgstr "O commit inicial ainda não existe"
 
-#: git-stash.sh:89
+#: git-stash.sh:88
 msgid "Cannot save the current index state"
 msgstr "Não é possível guardar o estado atual do índice"
 
-#: git-stash.sh:124 git-stash.sh:137
+#: git-stash.sh:103
+msgid "Cannot save the untracked files"
+msgstr "Não é possível guardar os ficheiros não controlados"
+
+#: git-stash.sh:123 git-stash.sh:136
 msgid "Cannot save the current worktree state"
 msgstr "Não é possível guardar o estado atual da árvore de trabalho"
 
-#: git-stash.sh:141
+#: git-stash.sh:140
 msgid "No changes selected"
 msgstr "Nenhuma alteração selecionada"
 
-#: git-stash.sh:144
+#: git-stash.sh:143
 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:157
+#: git-stash.sh:156
 msgid "Cannot record working tree state"
 msgstr "Não é possível gravar o estado da árvore de trabalho"
 
-#: git-stash.sh:189
+#: git-stash.sh:188
 #, sh-format
 msgid "Cannot update $ref_stash with $w_commit"
 msgstr "Não é possível atualizar $ref_stash com $w_commit"
@@ -12393,7 +13822,7 @@ msgstr "Não é possível atualizar $ref_stash com $w_commit"
 #. $ git stash save --blah-blah 2>&1 | head -n 2
 #. error: unknown option for 'stash save': --blah-blah
 #. To provide a message, use git stash save -- '--blah-blah'
-#: git-stash.sh:239
+#: git-stash.sh:238
 #, sh-format
 msgid ""
 "error: unknown option for 'stash save': $option\n"
@@ -12402,110 +13831,128 @@ msgstr ""
 "erro: opção desconhecida de 'stash save': $option\n"
 "      Para fornecer uma mensagem, use git stash save -- '$option'"
 
-#: git-stash.sh:260
+#: git-stash.sh:251
+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:259
 msgid "No local changes to save"
 msgstr "Não há alterações locais para guardar"
 
-#: git-stash.sh:264
+#: git-stash.sh:263
 msgid "Cannot initialize stash"
 msgstr "Não é possível inicializar a pilha"
 
-#: git-stash.sh:268
+#: git-stash.sh:267
 msgid "Cannot save the current status"
 msgstr "Não é possível guardar o estado atual"
 
-#: git-stash.sh:286
+#: git-stash.sh:268
+#, 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:285
 msgid "Cannot remove worktree changes"
 msgstr "Não é possível remover as alterações da árvore de trabalho"
 
-#: git-stash.sh:405
+#: git-stash.sh:403
 #, sh-format
 msgid "unknown option: $opt"
 msgstr "opção desconhecido: $opt"
 
-#: git-stash.sh:415
+#: git-stash.sh:416
 msgid "No stash found."
 msgstr "Nenhuma pilha encontrada."
 
-#: git-stash.sh:422
+#: git-stash.sh:423
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Demasiadas revisões especificadas: $REV"
 
-#: git-stash.sh:428
+#: git-stash.sh:438
 #, sh-format
 msgid "$reference is not a valid reference"
 msgstr "$reference não é uma referência válida"
 
-#: git-stash.sh:456
+#: git-stash.sh:466
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr "'$args' não é um commit semelhante a pilha"
 
-#: git-stash.sh:467
+#: git-stash.sh:477
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr "'$args' não é uma referência de pilha"
 
-#: git-stash.sh:475
+#: git-stash.sh:485
 msgid "unable to refresh index"
 msgstr "não foi possível refrescar o índice"
 
-#: git-stash.sh:479
+#: git-stash.sh:489
 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:487
+#: git-stash.sh:497
 msgid "Conflicts in index. Try without --index."
 msgstr "Conflitos no índice. Tente sem --index."
 
-#: git-stash.sh:489
+#: git-stash.sh:499
 msgid "Could not save index tree"
 msgstr "Não foi possível guardar árvore do índice"
 
-#: git-stash.sh:523
+#: git-stash.sh:508
+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:533
 msgid "Cannot unstage modified files"
 msgstr "Não é possível despreparar os ficheiros modificado"
 
-#: git-stash.sh:538
+#: git-stash.sh:548
 msgid "Index was not unstashed."
 msgstr "O índice não foi reposto."
 
-#: git-stash.sh:561
+#: git-stash.sh:562
+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:571
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "A descartar ${REV} ($s)"
 
-#: git-stash.sh:562
+#: git-stash.sh:572
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: Não foi possível descartar elemento da pilha"
 
-#: git-stash.sh:570
+#: git-stash.sh:580
 msgid "No branch name specified"
 msgstr "Nenhum nome de ramo especificado"
 
-#: git-stash.sh:642
+#: git-stash.sh:652
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Para os restaurar execute \"git stash apply\")"
 
-#: git-submodule.sh:219
+#: git-submodule.sh:184
 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:229
+#: git-submodule.sh:194
 #, 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:246
+#: git-submodule.sh:211
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr "'$sm_path' já existe no índice"
 
-#: git-submodule.sh:250
+#: git-submodule.sh:215
 #, sh-format
 msgid ""
 "The following path is ignored by one of your .gitignore files:\n"
@@ -12516,238 +13963,970 @@ msgstr ""
 "$sm_path\n"
 "Use -f se pretende mesmo adicioná-lo."
 
-#: git-submodule.sh:268
+#: git-submodule.sh:233
 #, 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:270
+#: git-submodule.sh:235
+#, 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:243
+#, 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:245
+#, sh-format
+msgid ""
+"If you want to reuse this local git directory instead of cloning again from\n"
+"  $realrepo\n"
+"use the '--force' option. If the local git directory is not the correct "
+"repo\n"
+"or you are unsure what this means choose another name with the '--name' "
+"option."
+msgstr ""
+"Se quer reutilizar este diretório git local em vez de clonar de novo de\n"
+"  $realrepo\n"
+"use a opção '--force'. Se o diretório git local não é o repo correto\n"
+"ou não tem a certeza o que isto significa escolha outro nome com a opção '--"
+"name'."
+
+#: git-submodule.sh:251
+#, 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:263
+#, sh-format
+msgid "Unable to checkout submodule '$sm_path'"
+msgstr "Não foi possível extrair o submódulo '$sm_path'"
+
+#: git-submodule.sh:268
+#, sh-format
+msgid "Failed to add submodule '$sm_path'"
+msgstr "Falha ao adicionar o submódulo '$sm_path'"
+
+#: git-submodule.sh:277
+#, sh-format
+msgid "Failed to register submodule '$sm_path'"
+msgstr "Falha ao registar o submódulo '$sm_path'"
+
+#: git-submodule.sh:324
+#, sh-format
+msgid "Entering '$displaypath'"
+msgstr "A entrar em '$displaypath'"
+
+#: git-submodule.sh:344
+#, 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:415
+#, sh-format
+msgid "pathspec and --all are incompatible"
+msgstr "especificador de caminho e --all são incompatíveis"
+
+#: git-submodule.sh:420
+#, 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:440
+#, 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' contem um diretório .git\n"
+"(use 'rm -rf' se pretende mesmo removê-lo, incluindo todo o seu histórico)"
+
+#: git-submodule.sh:448
+#, 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:451
+#, sh-format
+msgid "Cleared directory '$displaypath'"
+msgstr "Diretório '$displaypath' limpo"
+
+#: git-submodule.sh:452
+#, 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:455
+#, 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:464
+#, 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:617
+#, 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:627
+#, 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:632
+#, sh-format
+msgid ""
+"Unable to find current ${remote_name}/${branch} revision in submodule path "
+"'$sm_path'"
+msgstr ""
+"Não foi possível encontrar a revisão atual ${remote_name}/${branch} no "
+"caminho de submódulo '$sm_path'"
+
+#: git-submodule.sh:650
+#, sh-format
+msgid "Unable to fetch in submodule path '$displaypath'"
+msgstr "Não é possível obter no caminho de submódulo '$displaypath'"
+
+#: git-submodule.sh:656
+#, sh-format
+msgid ""
+"Fetched in submodule path '$displaypath', but it did not contain $sha1. "
+"Direct fetching of that commit failed."
+msgstr ""
+"Obteve-se no caminho de submódulo '$displaypath', mas não continha $sha1. "
+"Falha ao obter aquele commit diretamente."
+
+#: git-submodule.sh:663
+#, 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:664
+#, sh-format
+msgid "Submodule path '$displaypath': checked out '$sha1'"
+msgstr "Caminho de submódulo '$displaypath': '$sha1' extraído"
+
+#: git-submodule.sh:668
+#, 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:669
+#, sh-format
+msgid "Submodule path '$displaypath': rebased into '$sha1'"
+msgstr "Caminho de submódulo '$displaypath': rebase concluído em '$sha1'"
+
+#: git-submodule.sh:674
+#, 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:675
+#, sh-format
+msgid "Submodule path '$displaypath': merged in '$sha1'"
+msgstr "Caminho de submódulo '$displaypath': integrado em '$sha1'"
+
+#: git-submodule.sh:680
+#, 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:681
+#, sh-format
+msgid "Submodule path '$displaypath': '$command $sha1'"
+msgstr "Caminho de submódulo '$displaypath': '$command $sha1'"
+
+#: git-submodule.sh:712
+#, sh-format
+msgid "Failed to recurse into submodule path '$displaypath'"
+msgstr "Falha ao percorrer o caminho de submódulo '$displaypath'"
+
+#: git-submodule.sh:820
+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:872
+#, sh-format
+msgid "unexpected mode $mod_dst"
+msgstr "modo inesperado $mod_dst"
+
+#: git-submodule.sh:892
+#, 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:895
+#, 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:898
+#, 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"
+
+#: git-submodule.sh:1045
+#, sh-format
+msgid "Failed to recurse into submodule path '$sm_path'"
+msgstr "Falha ao percorrer recursivamente o caminho de submódulo '$sm_path'"
+
+#: git-submodule.sh:1112
+#, sh-format
+msgid "Synchronizing submodule url for '$displaypath'"
+msgstr "A sincronizar o URL do submódulo '$displaypath'"
+
+#: 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--interactive.sh:131
+#, sh-format
+msgid "Rebasing ($new_count/$total)"
+msgstr "A rebasear ($new_count/$total)"
+
+#: git-rebase--interactive.sh:147
+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"
+"\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"
+
+#: git-rebase--interactive.sh:162
+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:166
+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:202
+#, sh-format
+msgid ""
+"You can amend the commit now, with\n"
+"\n"
+"\tgit commit --amend $gpg_sign_opt_quoted\n"
+"\n"
+"Once you are satisfied with your changes, run\n"
+"\n"
+"\tgit rebase --continue"
+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"
+
+#: git-rebase--interactive.sh:227
+#, 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:266
+#, sh-format
+msgid "Invalid commit name: $sha1"
+msgstr "Nome de commit inválido: $sha1"
+
+#: git-rebase--interactive.sh:308
+msgid "Cannot write current commit's replacement sha1"
+msgstr "Não é possível escrever o sha1 substituto do commit"
+
+#: git-rebase--interactive.sh:360
+#, sh-format
+msgid "Fast-forward to $sha1"
+msgstr "Avanço-rápido para $sha1"
+
+#: git-rebase--interactive.sh:362
+#, sh-format
+msgid "Cannot fast-forward to $sha1"
+msgstr "Não é possível avançar rapidamente para $sha1"
+
+#: git-rebase--interactive.sh:371
+#, sh-format
+msgid "Cannot move HEAD to $first_parent"
+msgstr "Não é possível mover HEAD para $first_parent"
+
+#: git-rebase--interactive.sh:376
+#, sh-format
+msgid "Refusing to squash a merge: $sha1"
+msgstr "Recusa-se a esmagar uma integração: $sha1"
+
+#: git-rebase--interactive.sh:390
+#, sh-format
+msgid "Error redoing merge $sha1"
+msgstr "Erro ao refazer integração $sha1"
+
+#: git-rebase--interactive.sh:398
+#, sh-format
+msgid "Could not pick $sha1"
+msgstr "Não foi possível apanhar $sha1"
+
+#: git-rebase--interactive.sh:407
+#, sh-format
+msgid "This is the commit message #${n}:"
+msgstr "Esta é a mensagem de commit nº${n}:"
+
+#: git-rebase--interactive.sh:412
+#, sh-format
+msgid "The commit message #${n} will be skipped:"
+msgstr "A mensagem de commit nº${n} será ignorada:"
+
+#: git-rebase--interactive.sh:423
+#, 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:431
+#, sh-format
+msgid "Cannot write $fixup_msg"
+msgstr "Não é possível escrever $fixup_msg"
+
+#: git-rebase--interactive.sh:434
+msgid "This is a combination of 2 commits."
+msgstr "Isto é a combinação de 2 commits."
+
+#: git-rebase--interactive.sh:435
+msgid "This is the 1st commit message:"
+msgstr "Esta é a 1ª mensagem de commit:"
+
+#: git-rebase--interactive.sh:475 git-rebase--interactive.sh:518
+#: git-rebase--interactive.sh:521
+#, sh-format
+msgid "Could not apply $sha1... $rest"
+msgstr "Não foi possível aplicar $sha1... $rest"
+
+#: git-rebase--interactive.sh:549
 #, 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"
+msgid ""
+"Could not amend commit after successfully picking $sha1... $rest\n"
+"This is most likely due to an empty commit message, or the pre-commit hook\n"
+"failed. If the pre-commit hook failed, you may need to resolve the issue "
+"before\n"
+"you are able to reword the commit."
+msgstr ""
+"Não foi possível emendar o commit depois de apanhar com sucesso $sha1... "
+"$rest\n"
+"Deve-se provavelmente a uma mensagem de commit vazia ou o pre-commit hook "
+"falhou.\n"
+"Se o pre-commit hook falhou, pode precisar de resolver o problema ante de "
+"poder\n"
+"reformular a mensagem do commit."
+
+#: git-rebase--interactive.sh:564
+#, sh-format
+msgid "Stopped at $sha1_abbrev... $rest"
+msgstr "Parou em $sha1_abbrev... $rest"
 
-#: git-submodule.sh:278
+#: git-rebase--interactive.sh:579
 #, 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:"
+msgid "Cannot '$squash_style' without a previous commit"
+msgstr "Não é possível efetuar '$squash_style' sem um commit anterior"
 
-#: git-submodule.sh:280
+#: git-rebase--interactive.sh:621
 #, sh-format
-msgid ""
-"If you want to reuse this local git directory instead of cloning again from"
-msgstr ""
-"Se deseja reutilizar este diretório git local em vez de clonar de novo de"
+msgid "Executing: $rest"
+msgstr "A executar: $rest"
 
-#: git-submodule.sh:282
+#: git-rebase--interactive.sh:629
 #, sh-format
+msgid "Execution failed: $rest"
+msgstr "Falha ao executar: $rest"
+
+#: git-rebase--interactive.sh:631
+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:633
 msgid ""
-"use the '--force' option. If the local git directory is not the correct repo"
+"You can fix the problem, and then run\n"
+"\n"
+"\tgit rebase --continue"
 msgstr ""
-"use a opção '--force'. Se o diretório git local não é o repositório correto"
+"Pode corrigir o problema e executar\n"
+"\n"
+"\tgit rebase --continue"
 
-#: git-submodule.sh:283
+#. TRANSLATORS: after these lines is a command to be issued by the user
+#: git-rebase--interactive.sh:646
 #, sh-format
 msgid ""
-"or you are unsure what this means choose another name with the '--name' "
-"option."
+"Execution succeeded: $rest\n"
+"but left changes to the index and/or the working tree\n"
+"Commit or stash your changes, and then run\n"
+"\n"
+"\tgit rebase --continue"
 msgstr ""
-"ou se não tem a certeza do que isto significa, escolha outro nome com a "
-"opção '--name'."
+"Executado com sucesso: $rest\n"
+"mas deixou alterações no índice e/ou na árvore de trabalho\n"
+"Submeta ou esconda as alterações e execute\n"
+"\n"
+"\tgit rebase --continue"
 
-#: git-submodule.sh:285
+#: git-rebase--interactive.sh:657
 #, sh-format
-msgid "Reactivating local git directory for submodule '$sm_name'."
-msgstr "A reativar o diretório git local do submódulo '$sm_name'."
+msgid "Unknown command: $command $sha1 $rest"
+msgstr "Comando desconhecido: $command $sha1 $rest"
 
-#: git-submodule.sh:297
-#, sh-format
-msgid "Unable to checkout submodule '$sm_path'"
-msgstr "Não foi possível extrair o submódulo '$sm_path'"
+#: git-rebase--interactive.sh:658
+msgid "Please fix this using 'git rebase --edit-todo'."
+msgstr "Corrija-o usando 'git rebase --edit-todo'."
 
-#: git-submodule.sh:302
+#: git-rebase--interactive.sh:693
 #, sh-format
-msgid "Failed to add submodule '$sm_path'"
-msgstr "Falha ao adicionar o submódulo '$sm_path'"
+msgid "Successfully rebased and updated $head_name."
+msgstr "$head_name rebaseado e atualizado com sucesso."
 
-#: git-submodule.sh:311
-#, sh-format
-msgid "Failed to register submodule '$sm_path'"
-msgstr "Falha ao registar o submódulo '$sm_path'"
+#: git-rebase--interactive.sh:740
+msgid "Could not skip unnecessary pick commands"
+msgstr "Não foi possível saltar comandos pick desnecessários"
 
-#: git-submodule.sh:355
+#: git-rebase--interactive.sh:898
 #, sh-format
-msgid "Entering '$displaypath'"
-msgstr "A entrar em '$displaypath'"
+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-submodule.sh:375
+#: git-rebase--interactive.sh:931
 #, sh-format
-msgid "Stopping at '$displaypath'; script returned non-zero status."
+msgid ""
+"Warning: the command isn't recognized in the following line:\n"
+" - $line"
 msgstr ""
-"Interrompido em '$displaypath'; o script retornou um valor diferente de zero."
+"Aviso: o comando não é reconhecido na seguinte linha:\n"
+" - $line"
 
-#: git-submodule.sh:448
-#, sh-format
-msgid "pathspec and --all are incompatible"
-msgstr "especificador de caminho e --all são incompatíveis"
+#: git-rebase--interactive.sh:970
+msgid "could not detach HEAD"
+msgstr "não foi possível destacar HEAD"
 
-#: git-submodule.sh:453
-#, sh-format
-msgid "Use '--all' if you really want to deinitialize all submodules"
+#: git-rebase--interactive.sh:1008
+msgid ""
+"Warning: some commits may have been dropped accidentally.\n"
+"Dropped commits (newer to older):"
 msgstr ""
-"Use '--all' se pretende mesmo anular a inicialização todos os submódulos"
+"Aviso: alguns commits podem ter sido descartados acidentalmente.\n"
+"Commits descartados (mais novo para o mais velho):"
 
-#: git-submodule.sh:470
-#, sh-format
-msgid "Submodule work tree '$displaypath' contains a .git directory"
+#: git-rebase--interactive.sh:1016
+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 ""
-"A árvore de trabalho do submódulo '$displaypath' contém um diretório .git"
+"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-submodule.sh:471
+#: git-rebase--interactive.sh:1027
 #, sh-format
 msgid ""
-"(use 'rm -rf' if you really want to remove it including all of its history)"
+"Unrecognized setting $check_level for option rebase.missingCommitsCheck. "
+"Ignoring."
 msgstr ""
-"(use 'rm -rf' se pretende mesmo removê-lo, incluindo todo o seu histórico)"
+"Definição $check_level desconhecida da opção rebase.missingCommitsCheck. "
+"Ignorado."
 
-#: git-submodule.sh:477
-#, sh-format
+#: git-rebase--interactive.sh:1044
 msgid ""
-"Submodule work tree '$displaypath' contains local modifications; use '-f' to "
-"discard them"
+"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
+"continue'."
 msgstr ""
-"A árvore de trabalho do submódulo '$displaypath' contém alterações locais; "
-"use '-f' para as descartar"
+"Pode corrí-lo com 'git rebase --edit-todo' e depois executar 'git rebase --"
+"continue'."
 
-#: git-submodule.sh:480
-#, sh-format
-msgid "Cleared directory '$displaypath'"
-msgstr "Diretório '$displaypath' limpo"
+#: git-rebase--interactive.sh:1045
+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:1069
+msgid "Could not remove CHERRY_PICK_HEAD"
+msgstr "Não foi possível remover CHERRY_PICK_HEAD"
 
-#: git-submodule.sh:481
+#: git-rebase--interactive.sh:1074
 #, sh-format
-msgid "Could not remove submodule work tree '$displaypath'"
+msgid ""
+"You have staged changes in your working tree.\n"
+"If these changes are meant to be\n"
+"squashed into the previous commit, run:\n"
+"\n"
+"  git commit --amend $gpg_sign_opt_quoted\n"
+"\n"
+"If they are meant to go into a new commit, run:\n"
+"\n"
+"  git commit $gpg_sign_opt_quoted\n"
+"\n"
+"In both cases, once you're done, continue with:\n"
+"\n"
+"  git rebase --continue\n"
 msgstr ""
-"Não foi possível remover a árvore de trabalho do submódulo '$displaypath'"
+"Tem alterações preparadas na árvore de trabalho.\n"
+"Se tenciona esmagar estas alterações\n"
+"no commit anterior, execute:\n"
+"\n"
+"  git commit --amend $gpg_sign_opt_quoted\n"
+"\n"
+"Se tenciona pô-las num novo commit, execute:\n"
+"\n"
+"  git commit $gpg_sign_opt_quoted\n"
+"\n"
+"Em ambos os casos, quando estiver pronto, continue com:\n"
+"\n"
+"  git rebase --continue\n"
 
-#: git-submodule.sh:484
-#, 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-rebase--interactive.sh:1091
+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-submodule.sh:493
-#, sh-format
-msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
+#: git-rebase--interactive.sh:1096
+msgid ""
+"You have uncommitted changes in your working tree. Please commit them\n"
+"first and then run 'git rebase --continue' again."
 msgstr ""
-"O registo do submódulo '$name' ($url) foi removido do caminho '$displaypath'"
+"Tem alterações por submeter na árvore de trabalho. Submeta-as primeiro\n"
+"e execute 'git rebase --continue' de novo."
 
-#: git-submodule.sh:635
-#, sh-format
-msgid "Unable to find current revision in submodule path '$displaypath'"
+#: git-rebase--interactive.sh:1101 git-rebase--interactive.sh:1105
+msgid "Could not commit staged changes."
+msgstr "Não foi possível submeter as alterações preparadas."
+
+#: git-rebase--interactive.sh:1129
+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ão foi possível encontrar a revisão atual no caminho de submódulo "
-"'$displaypath'"
+"\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-submodule.sh:644
-#, 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-rebase--interactive.sh:1137 git-rebase--interactive.sh:1295
+msgid "Could not execute editor"
+msgstr "Não foi possível executar o editor"
 
-#: git-submodule.sh:667
+#: git-rebase--interactive.sh:1150
 #, sh-format
-msgid "Unable to fetch in submodule path '$displaypath'"
-msgstr "Não é possível obter no caminho de submódulo '$displaypath'"
+msgid "Could not checkout $switch_to"
+msgstr "Não foi possível extrair $switch_to"
 
-#: git-submodule.sh:680
-#, 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-rebase--interactive.sh:1155
+msgid "No HEAD?"
+msgstr "Sem HEAD?"
 
-#: git-submodule.sh:681
+#: git-rebase--interactive.sh:1156
 #, sh-format
-msgid "Submodule path '$displaypath': checked out '$sha1'"
-msgstr "Caminho de submódulo '$displaypath': '$sha1' extraído"
+msgid "Could not create temporary $state_dir"
+msgstr "Não foi possível criar $state_dir temporário"
 
-#: git-submodule.sh:685
+#: git-rebase--interactive.sh:1158
+msgid "Could not mark as interactive"
+msgstr "Não foi possível marcar como interativo"
+
+#: git-rebase--interactive.sh:1168 git-rebase--interactive.sh:1173
+msgid "Could not init rewritten commits"
+msgstr "Não foi possível inicializar commits reescritos"
+
+#: git-rebase--interactive.sh:1273
 #, sh-format
-msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
+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:1278
+msgid ""
+"\n"
+"However, if you remove everything, the rebase will be aborted.\n"
+"\n"
 msgstr ""
-"Não foi possível efetuar rebase de '$sha1' no caminho de submódulo "
-"'$displaypath'"
+"\n"
+"No entanto, se remover tudo, o rebase será abortado.\n"
+"\n"
+
+#: git-rebase--interactive.sh:1285
+msgid "Note that empty commits are commented out"
+msgstr "Note que commits vazios são comentados"
 
-#: git-submodule.sh:686
+#: git-sh-setup.sh:89 git-sh-setup.sh:94
 #, sh-format
-msgid "Submodule path '$displaypath': rebased into '$sha1'"
-msgstr "Caminho de submódulo '$displaypath': rebase concluído em '$sha1'"
+msgid "usage: $dashless $USAGE"
+msgstr "utilização: $dashless $USAGE"
 
-#: git-submodule.sh:691
+#: git-sh-setup.sh:190
 #, sh-format
-msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
-msgstr "Não é possível integrar '$sha1' no caminho de submódulo '$displaypath'"
+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-submodule.sh:692
+#: git-sh-setup.sh:199 git-sh-setup.sh:206
 #, sh-format
-msgid "Submodule path '$displaypath': merged in '$sha1'"
-msgstr "Caminho de submódulo '$displaypath': integrado em '$sha1'"
+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
+msgid "Cannot rebase: You have unstaged changes."
+msgstr "Não é possível rebasear: tem alterações não preparadas."
 
-#: git-submodule.sh:697
+#: git-sh-setup.sh:223
+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
+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
 #, sh-format
-msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
+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
+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
+msgid "Cannot pull with rebase: Your index contains uncommitted changes."
 msgstr ""
-"Falha ao executar '$command $sha1' no caminho de submódulo '$displaypath'"
+"Não é possível puxar com rebase: o índice contém alterações não submetidas."
 
-#: git-submodule.sh:698
+#: git-sh-setup.sh:248
 #, sh-format
-msgid "Submodule path '$displaypath': '$command $sha1'"
-msgstr "Caminho de submódulo '$displaypath': '$command $sha1'"
+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-submodule.sh:729
-#, sh-format
-msgid "Failed to recurse into submodule path '$displaypath'"
-msgstr "Falha ao percorrer o caminho de submódulo '$displaypath'"
+#: git-sh-setup.sh:252
+msgid "Additionally, your index contains uncommitted changes."
+msgstr "Além disso, o índice contém alterações não submetidas."
 
-#: git-submodule.sh:837
-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-sh-setup.sh:372
+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-submodule.sh:889
-#, sh-format
-msgid "unexpected mode $mod_dst"
-msgstr "modo inesperado $mod_dst"
+#: git-sh-setup.sh:377
+msgid "Unable to determine absolute path of git directory"
+msgstr "Não é possível determinar o caminho absoluto do diretório git"
 
-#: git-submodule.sh:909
-#, sh-format
-msgid "  Warn: $display_name doesn't contain commit $sha1_src"
-msgstr "  Aviso: $display_name não contém o commit $sha1_src"
+#~ msgid "Could not write to %s"
+#~ msgstr "Não foi possível escrever em %s"
 
-#: git-submodule.sh:912
-#, sh-format
-msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
-msgstr "  Warn: $display_name não contém o commit $sha1_dst"
+#~ msgid "Error wrapping up %s."
+#~ msgstr "Erro ao rematar %s."
 
-#: git-submodule.sh:915
-#, 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 "Your local changes would be overwritten by cherry-pick."
+#~ msgstr "As suas alterações locais serão substituídas por cherry-pick."
 
-#: git-submodule.sh:940
-msgid "blob"
-msgstr "blob"
+#~ msgid "Cannot revert during another revert."
+#~ msgstr "Não é possível reverter durante outra reversão."
 
-#: git-submodule.sh:1059
-#, sh-format
-msgid "Failed to recurse into submodule path '$sm_path'"
-msgstr "Falha ao percorrer recursivamente o caminho de submódulo '$sm_path'"
+#~ msgid "Cannot cherry-pick during another cherry-pick."
+#~ msgstr ""
+#~ "Não é possível efetuar cherry-pick durante outro cherry-pick. durante um "
+#~ "cherry-pick."
 
-#: git-submodule.sh:1123
-#, sh-format
-msgid "Synchronizing submodule url for '$displaypath'"
-msgstr "A sincronizar o URL do submódulo '$displaypath'"
+#~ msgid "Could not parse line %d."
+#~ msgstr "Não foi possível analisar a linha %d."
 
-#: git-parse-remote.sh:89
-#, sh-format
-msgid "See git-${cmd}(1) for details."
-msgstr "Consulte git-${cmd}(1) para obter mais detalhes."
+#~ 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"
+
+#~ msgid "bad numeric config value '%s' for '%s': invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto: unidade inválida"
+
+#~ msgid "bad numeric config value '%s' for '%s' in blob %s: invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto no blob %s: unidade "
+#~ "inválida"
+
+#~ msgid "bad numeric config value '%s' for '%s' in file %s: invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto no ficheiro %s: "
+#~ "unidade inválida"
+
+#~ msgid ""
+#~ "bad numeric config value '%s' for '%s' in standard input: invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto na entrada padrão: "
+#~ "unidade inválida"
+
+#~ msgid ""
+#~ "bad numeric config value '%s' for '%s' in submodule-blob %s: invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto no submódulo-blob %s: "
+#~ "unidade inválida"
+
+#~ msgid ""
+#~ "bad numeric config value '%s' for '%s' in command line %s: invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto na linha de comandos "
+#~ "%s: unidade inválida"
+
+#~ msgid "bad numeric config value '%s' for '%s' in %s: invalid unit"
+#~ msgstr ""
+#~ "valor numérico '%s' da configuração '%s' incorreto em %s: unidade inválida"
+
+#~ msgid "This is the 2nd commit message:"
+#~ msgstr "Esta é a 2ª mensagem de commit:"
+
+#~ msgid "This is the 3rd commit message:"
+#~ msgstr "Esta é a 3ª mensagem de commit:"
+
+#~ msgid "This is the 4th commit message:"
+#~ msgstr "Esta é a 4ª mensagem de commit:"
+
+#~ msgid "This is the 5th commit message:"
+#~ msgstr "Esta é a 5ª mensagem de commit:"
+
+#~ msgid "This is the 6th commit message:"
+#~ msgstr "Esta é a 6ª mensagem de commit:"
+
+#~ msgid "This is the 7th commit message:"
+#~ msgstr "Esta é a 7ª mensagem de commit:"
+
+#~ msgid "This is the 8th commit message:"
+#~ msgstr "Esta é a 8ª mensagem de commit:"
+
+#~ msgid "This is the 9th commit message:"
+#~ msgstr "Esta é a 9ª mensagem de commit:"
+
+#~ msgid "This is the 10th commit message:"
+#~ msgstr "Esta é a 10ª mensagem de commit:"
+
+#~ msgid "This is the ${n}th commit message:"
+#~ msgstr "Esta é a ${n}ª mensagem de commit:"
+
+#~ msgid "This is the ${n}st commit message:"
+#~ msgstr "Está é a ${n}ª mensagem de commit:"
+
+#~ msgid "This is the ${n}nd commit message:"
+#~ msgstr "Esta é a ${n}ª mensagem de commit:"
+
+#~ msgid "This is the ${n}rd commit message:"
+#~ msgstr "Esta é a ${n}ª mensagem de commit:"
+
+#~ msgid "The 1st commit message will be skipped:"
+#~ msgstr "A 1ª mensagem de commit será ignorada:"
+
+#~ msgid "The 2nd commit message will be skipped:"
+#~ msgstr "A 2ª mensagem de commit será ignorada:"
+
+#~ msgid "The 3rd commit message will be skipped:"
+#~ msgstr "A 3ª mensagem de commit será ignorada:"
+
+#~ msgid "The 4th commit message will be skipped:"
+#~ msgstr "A 4ª mensagem de commit será ignorada:"
+
+#~ msgid "The 5th commit message will be skipped:"
+#~ msgstr "A 5ª mensagem de commit será ignorada:"
+
+#~ msgid "The 6th commit message will be skipped:"
+#~ msgstr "A 6ª mensagem de commit será ignorada:"
+
+#~ msgid "The 7th commit message will be skipped:"
+#~ msgstr "A 7ª mensagem de commit será ignorada:"
+
+#~ msgid "The 8th commit message will be skipped:"
+#~ msgstr "A 8ª mensagem de commit será ignorada:"
+
+#~ msgid "The 9th commit message will be skipped:"
+#~ msgstr "A 9ª mensagem de commit será ignorada:"
+
+#~ msgid "The 10th commit message will be skipped:"
+#~ msgstr "A 10ª mensagem de commit será ignorada:"
+
+#~ msgid "The ${n}th commit message will be skipped:"
+#~ msgstr "A ${n}ª mensagem de commit será ignorada:"
+
+#~ msgid "The ${n}st commit message will be skipped:"
+#~ msgstr "A ${n}ª mensagem de commit será ignorada:"
+
+#~ msgid "The ${n}nd commit message will be skipped:"
+#~ msgstr "A ${n}ª mensagem de commit será ignorada:"
+
+#~ msgid "The ${n}rd commit message will be skipped:"
+#~ msgstr "A ${n}ª mensagem de commit será ignorada:"
+
+#~ msgid "could not run gpg."
+#~ msgstr "não foi possível executar gpg."
+
+#~ msgid "gpg did not accept the data"
+#~ msgstr "gpg não aceitou os dados"
+
+#~ msgid "unsupported object type in the tree"
+#~ msgstr "tipo de objeto sem suporte encontrado na árvore"
+
+#~ msgid "Fatal merge failure, shouldn't happen."
+#~ msgstr "Falha de integração fatal, não devia acontecer."
+
+#~ 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 "read of %s failed"
+#~ msgstr "falha ao ler %s"
+
+#~ msgid "could not write branch description template"
+#~ msgstr "não foi possível escrever o modelo da descrição do ramo"
+
+#~ msgid "corrupt index file"
+#~ msgstr "ficheiro de índice corrompido"
+
+#~ msgid "detach the HEAD at named commit"
+#~ msgstr "destacar HEAD no commit indicado"
+
+#~ msgid "Checking connectivity... "
+#~ msgstr "A verificar a conectividade... "
+
+#~ msgid "  (unable to update local ref)"
+#~ msgstr "  (não é possível atualizar a referência local)"
+
+#~ msgid "Reinitialized existing"
+#~ msgstr "existente reinicializado"
+
+#~ msgid "Initialized empty"
+#~ msgstr "vazio inicializado"
+
+#~ msgid " shared"
+#~ msgstr " partilhado"
+
+#~ msgid "Verify that the named commit has a valid GPG signature"
+#~ msgstr "verificar se o commit tem uma assinatura GPG válida"
+
+#~ msgid "Writing SQUASH_MSG"
+#~ msgstr "A escrever SQUASH_MSG"
+
+#~ msgid "Finishing SQUASH_MSG"
+#~ msgstr "A concluir SQUASH_MSG"
+
+#~ msgid "   and with remote"
+#~ msgstr "   e com o remoto"
+
+#~ 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."
+
+#~ msgid ""
+#~ "If you want to reuse this local git directory instead of cloning again "
+#~ "from"
+#~ msgstr ""
+#~ "Se deseja reutilizar este diretório git local em vez de clonar de novo de"
+
+#~ msgid ""
+#~ "use the '--force' option. If the local git directory is not the correct "
+#~ "repo"
+#~ msgstr ""
+#~ "use a opção '--force'. Se o diretório git local não é o repositório "
+#~ "correto"
+
+#~ msgid ""
+#~ "or you are unsure what this means choose another name with the '--name' "
+#~ "option."
+#~ msgstr ""
+#~ "ou se não tem a certeza do que isto significa, escolha outro nome com a "
+#~ "opção '--name'."
+
+#~ msgid "Submodule work tree '$displaypath' contains a .git directory"
+#~ msgstr ""
+#~ "A árvore de trabalho do submódulo '$displaypath' contém um diretório .git"
+
+#~ msgid ""
+#~ "(use 'rm -rf' if you really want to remove it including all of its "
+#~ "history)"
+#~ msgstr ""
+#~ "(use 'rm -rf' se pretende mesmo removê-lo, incluindo todo o seu histórico)"
 
 #~ msgid "'%s': %s"
 #~ msgstr "'%s': %s"
@@ -12836,8 +15015,8 @@ msgstr "Consulte git-${cmd}(1) para obter mais detalhes."
 #~ "Quando push.default está definido como 'matching', o Git publica\n"
 #~ "os ramos locais nos ramos remotos que já existam com o mesmo nome.\n"
 #~ "\n"
-#~ "Desde a versão 2.0, o Git assume o comportamento mais conservativo 'simple',"
-#~ "\n"
+#~ "Desde a versão 2.0, o Git assume o comportamento mais conservativo "
+#~ "'simple',\n"
 #~ "publicando só o ramo atual no ramo remoto correspondente, que é usado\n"
 #~ "para atualizar o ramo atual com 'git pull'.\n"
 #~ "Consulte 'git help config' e procure por 'push.default' para mais "
@@ -12913,8 +15092,5 @@ msgstr "Consulte git-${cmd}(1) para obter mais detalhes."
 #~ msgid "--"
 #~ msgstr "--"
 
-#~ msgid "cherry-pick"
-#~ msgstr "cherry-pick"
-
 #~ msgid "Please enter the commit message for your changes."
 #~ msgstr "Por favor insira a mensagem de commit das suas alterações."