Pergunta

Estou especificamente interessado em solicitações pull, edição de problemas e vinculá-los a commits e outras coisas que geralmente preciso usar hub na linha de comando para.No entanto, comecei a usar o magit e gosto muito dos atalhos de teclado e da interface geral --- gostaria de permanecer no emacs para esta parte também, em vez de precisar manter um shell extra aberto para solicitações pull, problemas, etc.

Os pacotes que podem adicionar mais funcionalidades do github ao magit que pude encontrar são:

Alguém, possivelmente envolvido com esses projetos, pode recomendar como eles seriam comparados e o que seria melhor para integrar solicitações pull em um ambiente magit?

Foi útil?

Solução

Eventualmente irei implementar essas coisas no Magit (eu sou o mantenedor), mas primeiro preciso lançar um lançamento.

Infelizmente, atualmente também não existem extensões de terceiros que possam preencher essa função. magithub está quebrado há muito tempo. magit-gh-pulls (por Yann, meu antecessor como mantenedor do Magit) também não foi mantido em sincronia com as mudanças no Magit.Tentei consertar isso há algum tempo, mas desisti quando ficou claro que isso resultaria em uma reescrita completa. gh.el também foi escrito por Yann e é usado por magit-gh-pulls.Eu contribuí para isso no passado, mas acabei parando de usá-lo porque (a) ele usa url.el e isso acabou não sendo confiável (b) é muito complexo.

Receio que atualmente não exista um pacote que faça o que você deseja.Se você quiser escrever sozinho, recomendo que use request.el e, em seguida, implemente apenas as partes da API do Github que você realmente precisa, para evitar engenharia excessiva.

Editar:Em outubro de 2015 magit-gh-pulls é mantido novamente, mas não é mais uma extensão oficial.Pessoalmente não uso, pois acho que deveria ser para mais ou para menos.Atualmente uso "menos" na forma de magit-branch-pull-request de magit-rockstar biblioteca.Embora eu mantenha essa biblioteca, não a considero uma extensão oficial - ela é fornecida como está.Essa função é muito básica, você dá um número de problema e ela cria uma ramificação para você, é isso.

Editar em setembro de 2016:Eu tenho escrito ghub.el e glab.el como substitutos para gh.el.Eles se destinam principalmente ao meu uso pessoal e fornecem muito pouco, basicamente eles oferecem funções como ghub-get (resource &optional params data noerror), você precisará consultar a respectiva documentação da API para descobrir o que resource, params, e data você tem que usar.Além disso, o tratamento de erros não é ótimo e atualmente usa url.el.Pretendo melhorar ambos eventualmente usando libcurl algum tempo depois que um Emacs com suporte ffi foi lançado.

Outras dicas

Você pode obter suporte "manual" simples do Github configurando magit-git-executable para "hub".Então você pode usar todos hub comandos e recursos por meio de magit-git-command (vinculado a : em buffers Magit).Isso pelo menos permite que você interaja com o Github através do Emacs/Magit.

Embora observe que no momento em que este livro foi escrito, isso não funcionaria porque a versão de lançamento do hub não reconhece o --literal-pathspecs opção , que Magit usa (Veja aqui).Então, até a próxima versão, você precisa instalar o hub da fonte mais recente: https://github.com/github/hub#source

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top