O Magit pode fazer o patch de formato git?

15

Eu só queria saber se o Magit tem essa funcionalidade. O manual de referência não possui isso explicitamente, por isso estou perguntando.

CestDiego
fonte
@itsjeyd sim, desculpe, eu estava testando o sx.el (o cliente stackexchange do emacs) e ele não mostrou nenhuma resposta. Depois de abrir o link em um navegador, vi: Desculpe :( Editar : comentário excluído
Lee H
@LeeH Sem problemas, obrigado por acompanhar! :)
itsjeyd
@ LeeH Isso é muito estranho. Se você encontrar esse problema novamente, envie um relatório de bug.
Malabarba
@Malabarba I did! Em seguida, ele foi fixado em sx.el e tudo funciona agora :)
Lee H

Respostas:

16

Você está certo, ele não parece estar embutido. Mas observe que você pode executar qualquer git subcomando que desejar a partir de um buffer Magit pressionando :, que está vinculado magit-git-commandpor padrão:

magit-git-commandé uma função Lisp compilada, interativa, carregada automaticamente magit.el.

(magit-git-command ARGS DIRECTORY)

Execute um subcomando Git de forma assíncrona, exibindo a saída. Com um argumento de prefixo, execute o Git na raiz do repositório atual. Execute o Git de maneira não interativa DIRECTORYcom ARGS.

Portanto, para obter um patch para, por exemplo, a confirmação mais recente usando, git format-patchvocê pode fazer o seguinte:

: format-patch -1 RET

A saída (exibida no *magit-process*buffer) será mais ou menos assim:

  0 git --no-pager -c core.preloadindex=true format-patch -1
0001-Commit-message-associated-with-latest-commit.patch
itsjeyd
fonte
16

Começando com v2.1.0Magit fornece suporte básico para git format-patche também git request-pull. Eles compartilham um pop-up magit-patch-popup, ao qual Westá vinculado.

tarso
fonte