Como crio e / ou envio uma solicitação pull para outro repositório hospedado no GitHub?
git
github
pull-request
git-fork
Tim Peterson
fonte
fonte
Respostas:
(Além da página oficial " Ajuda do GitHub 'Usando solicitações de recebimento' ",
consulte também " Bifurcação versus ramificação no GitHub ", " Qual é a diferença entre origem e upstream no GitHub ")
Algumas dicas sobre solicitações de recebimento:
Supondo que você tenha adquirido um repositório pela primeira vez , eis o que você deve fazer no garfo que possui:
master
, de onde você pode ficar tentado a acumular e misturar várias modificações ao mesmo tempo.origin/master
(certificando-se de que seu patch ainda esteja funcionando) atualizará a solicitação pull automaticamente, automaticamente (não é necessário clicar em nada)git remote prune origin
). A GUI do GitHub proporá que você exclua seu ramo na sua página de solicitação de recebimento.Nota: para escrever a solicitação pull, consulte " Como escrever a solicitação pull perfeita " (janeiro de 2015, GitHub)
Março de 2016: nova opção de botão de mesclagem de relações públicas: consulte " Squash do Github confirmado na interface da web na solicitação de solicitação após comentários de revisão? ".
O mantenedor do repositório pode escolher para
merge --squash
aqueles comprometimentos de relações públicas.Após uma solicitação de recebimento
Em relação ao último ponto, desde 10 de abril de 2013, " botão de mesclagem reprojetado ", a ramificação é excluída para você:
Isso confirma a melhor prática de excluir a ramificação após mesclar uma solicitação de recebimento.
solicitação de extração vs. solicitação de extração
solicitação pull não é um termo oficial "git".
O Git usa o
request-pull
comando (!) Para criar uma solicitação de mesclagem:"resume as alterações entre duas confirmações na saída padrão e inclui a URL especificada no resumo gerado".
O Github lança sua própria versão desde o primeiro dia (fevereiro de 2008) , mas redesenhou esse recurso em maio de 2010 , afirmando que:
notas eletrônicas para "repositório" (sic)
<humour>
Essa (solicitação de recebimento) nem é definida corretamente pelo GitHub!
Felizmente, uma verdadeira organização de notícias de negócios saberia e existe uma nota eletrônica para substituir pull-replace por 'e-note' :
Portanto, se seus repos O tory precisa de um e-nota ... pedir Fox Business . Eles estão no saber.
</humour>
fonte
branch
vs.master
parece crítica para levar a resposta do meu / Github de uma solução teórica para algo que realmente se usaria.git pull --rebase upstream/master
está bem.Para aprender a fazer uma solicitação pull, apenas segui duas páginas de ajuda separadas no Github (link abaixo como pontos de marcador). Os seguintes comandos de linha de comando são para a Parte 1 . A Parte 2 , a solicitação de recebimento real, é feita inteiramente no site do Github.
Parte 1 : forçar o repo de alguém: https://help.github.com/articles/fork-a-repo
git clone->cd dwolla-php->git remote->git fetch
sequência acima para clonar seu fork em algum lugar do seu computador (por exemplo, "copie / cole" para, neste casothird_party TimPeterson$
:) e sincronize-o com o repositório principal (Dwolla / dwolla-php)git add->git commit->git push
sequência acima para enviar suas alterações ao repositório remoto, ou seja, seu fork no Github (tim-peterson / dwolla-php)Parte 2 : faça solicitação de recepção: https://help.github.com/articles/using-pull-requests
fonte
Tims-MacBook-Pro:third_party TimPeterson$
porque este é um tutorial para iniciantes e esses avisos ajudam a orientar o usuário.git fetch upstream
, você não precisa mesclar as alterações upstream com sua cópia local, usandogit checkout master
entãogit merge upstream/master
?Para fazer uma solicitação de recebimento, você precisa executar as seguintes etapas:
Levei um tempo para entender isso, espero que isso ajude alguém.
fonte
Comecei um projeto para ajudar as pessoas a fazer sua primeira solicitação de recebimento do GitHub. Você pode fazer o tutorial prático para fazer seu primeiro PR aqui
O fluxo de trabalho é simples como
git clone <clone url you copied earlier>
git checkout -b branch-name
git commit
git push origin branch-name
Compare and pull request
botãofonte
Para aqueles que possuem uma conta no github.com, mas só recebem uma mensagem de erro desagradável quando digitam "git" na linha de comando, veja como fazer tudo isso no navegador :)
fonte
Segui as instruções de tim peterson, mas criei uma filial local para minhas alterações. No entanto, depois de pressionar, eu não estava vendo a nova ramificação no GitHub. A solução foi adicionar -u ao comando push:
fonte
tim-peterson
o 2º éDwolla
Eu escrevi um programa bash que faz todo o trabalho de configurar uma filial de relações públicas para você. Ele realiza bifurcação, se necessário, sincronizando com o upstream, configurando o upstream remoto, etc. e você só precisa confirmar suas modificações, enviar e enviar um PR.
Aqui está como você o executa:
Você encontrará o programa aqui e seu repositório também inclui um guia passo a passo para executar o mesmo processo manualmente, se você quiser entender como ele funciona, e também informações adicionais sobre como manter sua ramificação de recursos atualizada. data com o mestre upstream e outros boatos úteis.
fonte
A solicitação de extração mais simples do GitHub é da interface da web sem usar o git.
Clique no ícone de lápis ,
pesquise texto próximo ao local, faça as edições desejadas e visualize-as para confirmar. Dê à alteração proposta uma descrição com até 50 caracteres e, opcionalmente, uma descrição estendida e clique no botão Propor alteração do arquivo .
Se você estiver lendo isso, não terá acesso de gravação ao repositório (pastas do projeto), portanto o GitHub criará uma cópia do repositório (na verdade uma filial) em sua conta. Clique no botão Criar solicitação de recebimento.
fonte