Git
Português (Brasil) ▾ Topics ▾ Latest version ▾ git-am last updated in 2.46.0

NOME

git-am - Aplica uma série de patches vindas de um mailbox (caixa de correio unix)

RESUMO

git am [--signoff] [--keep] [--[no-]keep-cr] [--[no-]utf8] [--no-verify]
	 [--[no-]3way] [--interactive] [--committer-date-is-author-date]
	 [--ignore-date] [--ignore-space-change | --ignore-whitespace]
	 [--whitespace=<action>] [-C<n>] [-p<n>] [--directory=<dir>]
	 [--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]
	 [--[no-]scissors] [-S[<keyid>]] [--patch-format=<format>]
	 [--quoted-cr=<action>]
	 [--empty=(stop|drop|keep)]
	 [(<mbox> | <Maildir>)…​]
git am (--continue | --skip | --abort | --quit | --retry | --show-current-patch[=(diff|raw)] | --allow-empty)

DESCRIÇÃO

Divide as mensagens de correio num mailbox dentro das mensagens do registro log do commit, as informações de autoria, os patches e as aplica ao ramo atual. Você poderia pensar nisso como uma operação reversa do git-format-patch[1] executado num ramo com um histórico direto e sem mesclagens.

OPÇÕES

(<mbox>|<Maildir>)…​

A lista de arquivos da caixa de correio para leitura de patches. Se você não usar este argumento, o comando lerá a partir da entrada predefinida. Se você informar os diretórios, eles serão tratados como Maildirs.

-s
--signoff

Adicione um trailer Signed-off-by à mensagem do commit, usando a sua identidade de committer. Consulte a opção signoff do comando git-commit[1] para obter mais informações.

-k
--keep

Repasse o comando -k para o comando git mailinfo (consulte git-mailinfo[1]).

--keep-non-patch

Repasse o comando -b para o comando git mailinfo (consulte git-mailinfo[1]).

--[no-]keep-cr

Com --keep-cr, invoque o comando git mailsplit (consulte git-mailsplit[1]) com a mesma opção, para evitar que ele remova o caractere "CR" no final das linhas. A variável de configuração am.keepcr pode ser usada para especificar o comportamento padrão. A opção --no-keep-cr é útil para sobrepor os valores em am.keepcr.

-c
--scissors

Remova tudo no corpo antes de uma linha "scissors" (tesouras) (see git-mailinfo[1]). Pode ser ativada de fora predefinida ao utilizar a variável de configuração mailinfo.scissors.

--no-scissors

Ignore linhas "scissors" (tesouras) (veja git-mailinfo[1]).

--quoted-cr=<ação>

Esta opção será passada ao comando git mailinfo (consulte git-mailinfo[1]).

--empty=(drop|keep|stop)

How to handle an e-mail message lacking a patch:

drop

The e-mail message will be skipped.

keep

An empty commit will be created, with the contents of the e-mail message as its log.

stop

The command will fail, stopping in the middle of the current am session. This is the default behavior.

-m
--message-id

Use a opção -m para o comando git mailinfo (consulte git-mailinfo[1]), para que o cabeçalho "Message-ID" seja adicionado à mensagem do commit. A variável de configuração am.messageid pode ser usada para especificar o comportamento padrão.

--no-message-id

Não adicione o cabeçalho Message-ID à mensagem de confirmação. A opção --no-message-id é útil para sobrepor os valores em am.messageid.

-q
--quiet

Fique em silêncio Exiba apenas as mensagens de erro.

-u
--utf8

Use a sinalização -u para o git mailinfo (consulte git-mailinfo[1]). A mensagem proposta do registro log do commit, extraída do e-mail, é recodificada para UTF-8 (a variável de configuração i18n.commitEncoding pode ser usada para definir a codificação preferida do projeto, caso ela não seja UTF-8).

Isso era opcional nas versões anteriores do git, agora é a predefinição inicial. É possível usar --no-utf8 para sobrepor isso.

--no-utf8

Repasse o comando -n para o comando git mailinfo (consulte git-mailinfo[1]).

-3
--3way
--no-3way

Quando o patch não for aplicado corretamente, use a mesclagem de 3 vias caso o patch registre a identidade das bolhas aos quais devem ser aplicadas disponibilizando-as localmente. A opção --no-3way pode ser utilizada para substituir uma variável de configuração de três vias. Para mais informações, consulte am.threeWay em git-config[1].

--rerere-autoupdate
--no-rerere-autoupdate

Depois que o mecanismo rerere reutilizar uma resolução registrada no conflito atual para atualizar os arquivos na árvore de trabalho, permita que ele também atualize o índice com o resultado da resolução. A opção --no-rerere-autoupdate é uma boa maneira de verificar novamente o que o rerere fez e detectar possíveis erros de mesclagem, antes de fazer o commit resultante no índice com um comando git add separado.

--ignore-space-change
--ignore-whitespace
--whitespace=<ação>
-C<n>
-p<n>
--directory=<dir>
--exclude=<caminho>
--include=<caminho>
--reject

Estas opções são usadas pelo comando git apply (consulte git-apply[1]) que aplica a correção.

Valid <action> for the --whitespace option are: nowarn, warn, fix, error, and error-all.

--patch-format

É predefinido que o comando tentará detectar o formato do patch automaticamente. Esta opção permite que o usuário ignore a detecção automática e determine como o formato do patch deve ser interpretados. Os formatos válidos são mbox, mboxrd, stgit, stgit-series e hg.

-i
--interactive

Execute de forma interativa.

-n
--no-verify

É predefinido que os ganchos pre-applypatch e applypatch-msg sejam executados. Quando qualquer uma das opções --no-verify ou -n é usado, elas são ignoradas. Consulte também githooks[5].

--committer-date-is-author-date

É predefinido que o comando registre a data da mensagem do e-mail como a data do autor que fez o commit e utilize a hora da criação como a data do commit. Permite que usuário minta sobre a data do commit utilizando o mesmo valor da data de quem fez o commit.

--ignore-date

É predefinido que o comando registre a data da mensagem do e-mail como a data do autor que fez o commit e utilize a hora da criação como a data do commit. Permite que usuário minta sobre a data do autor utilizando o mesmo valor da data de quem fez o commit.

--skip

Ignora o patch atual. Isso só é relevante ao reiniciar um patch que foi abortado.

-S[<keyid>]
--gpg-sign[=<keyid>]
--no-gpg-sign

Commits assinados com o GPG O argumento keyid é opcional e a predefinição retorna para a identidade de quem fez o commit; caso seja utilizado, deve estar anexado a opção e sem espaço. A opção --no-gpg-sign é útil para revogar a variável de configuração commit.gpgSign e a anterior --gpg-sign.

--continue
-r
--resolved

Após uma falha do patch (tentativa de aplicar um patch conflitante por exemplo), o usuário o aplicou manualmente e o arquivo de índice armazena o resultado da aplicação. Faça um commit usando a autoria e o registro do commit extraídos da mensagem de e-mail, do arquivo do índice atual e continue.

--resolvemsg=<msg>

Quando ocorrer uma falha no patch, <msg> será impresso na tela antes de encerrar. Isso substitui a mensagem predefinida que informa que você deve usar --continue ou --skip para lidar com a falha. Isso é apenas para uso interno entre o comando "git rebase" e o comando "git am".

--abort

Restaura o ramo original e aborta a operação de aplicação de correções (patches). Reverter o conteúdo dos arquivos envolvidos na operação git am para o estado anterior à git am.

--quit

Anule a operação de correção, porém mantenha o HEAD e o índice inalterados.

--retry

Try to apply the last conflicting patch again. This is generally only useful for passing extra options to the retry attempt (e.g., --3way), since otherwise you’ll just see the same failure again.

--show-current-patch[=(diff|raw)]

Mostra a mensagem onde o comando git am foi interrompido devido a conflitos. Se raw for usado, mostrará o conteúdo bruto da mensagem de e-mail; já diff, mostrará apenas a diferença. A predefinição é raw.

--allow-empty

Após uma falha do patch numa mensagem de e-mail recebida sem um patch, crie um commit vazio com o conteúdo da mensagem de e-mail como sua mensagem de registro log.

DISCUSSÃO

O nome do autor do commit é retirado da linha "From: " da mensagem, e a data do autor do commit é obtida da linha "Date: " da mensagem. A linha "Subject: " é usada como o título do commit, após remover o prefixo comum "[PATCH <qualquer coisa>]". A linha "Subject: " deve descrever de forma concisa o assunto do commit numa linha de texto.

As linhas que iniciam com "From:" (De:), "Date:" (Data) e "Subject:" (Assunto:) no corpo, substituem os respectivos valores do nome e título do autor do commit que foram retirados dos cabeçalhos.

A mensagem de confirmação é formada pelo título retirado do "Subject: ", uma linha em branco e o corpo da mensagem até o início do patch. O excesso de espaço em branco no final de cada linha é automaticamente removido.

Espera-se que o patch esteja em linha, diretamente após a mensagem. Qualquer linha que tenha o formato:

  • três-traços e fim-de-linha, ou

  • uma linha que começa com "diff -" ou

  • uma linha que começa com "Index:"

é tomado como o início de um patch, a mensagem do registro log do commit é finalizado antes da primeira ocorrência de tal linha.

Ao invocar inicialmente o git am, você fornece a ele os nomes das caixas de correio QUE SERÃO processadas. Ao ver o primeiro patch que não É POSSÍVEL APLICAR, ele é interrompido no meio. Você pode se recuperar dessa situação de duas maneiras:

  1. pule o patch atual reexecutando o comando com a opção --skip.

  2. Resolve o conflito no diretório de trabalho e atualiza o arquivo do índice para colocá-lo Num estado que o patch deveria ter produzido. Em seguida, execute o comando com a opção --continue.

O comando se recusa a processar as novas caixas de correio até que a operação atual seja concluída, portanto, caso decida recomeçar do zero, execute o comando git am --abort antes de executar o comando com os nomes das caixas de correio.

Antes que qualquer correção seja aplicada, ORIG_HEAD é definido como a ponta do ramo atual. Isso é útil se você tiver problemas com vários commits, como a execução do git am no ramo errado ou um erro nos commits que seja mais facilmente corrigido com a alteração da caixa de correio (por exemplo, erros nas linhas "From:").

GANCHOS

Esse comando pode executar os ganchos applypatch-msg, pre-applypatch e post-applypatch. Para mais informações consulte githooks[5].

CONFIGURAÇÃO

Warning

Missing pt_BR/includes/cmd-config-section-all.txt

See original version for this content.

Warning

Missing pt_BR/config/am.txt

See original version for this content.

GIT

Parte do conjunto git[1]

scroll-to-top