Come faccio a creare e / o inviare una richiesta pull a un altro repository ospitato su GitHub?
Come faccio a creare e / o inviare una richiesta pull a un altro repository ospitato su GitHub?
Risposte:
(Oltre alla pagina ufficiale " Uso di richieste pull " di GitHub Help ,
vedere anche " Forking vs. Branching in GitHub ", " Qual è la differenza tra origine e upstream in GitHub ")
Supponendo che tu abbia prima biforcuto per la un repository , ecco cosa dovresti fare in quel fork che possiedi:
master
dove potresti essere tentato di accumulare e mescolare più modifiche contemporaneamente.origin/master
(assicurandoti che la patch funzioni ancora) aggiornerà automagicamente la richiesta pull (non c'è bisogno di fare clic su nulla)git remote prune origin
). La GUI di GitHub ti proporrà di eliminare il tuo ramo nella pagina di richiesta pull.Nota: per scrivere la richiesta pull stessa, vedere " Come scrivere la richiesta pull perfetta " (gennaio 2015, GitHub)
Marzo 2016: Nuova opzione pulsante di unione PR: vedi " Github squash commette dall'interfaccia web su richiesta pull dopo i commenti di revisione? ".
Il manutentore del pronti contro termine può scegliere merge --squash
tali commit PR.
Per quanto riguarda l'ultimo punto, dal 10 aprile 2013, " Pulsante di unione riprogettato ", il ramo viene eliminato per te:
Anche l'eliminazione dei rami dopo l'unione è stata semplificata.
Invece di confermare l'eliminazione con un passaggio aggiuntivo, rimuoviamo immediatamente il ramo quando lo elimini e forniamo un comodo collegamento per ripristinare il ramo nel caso in cui sia necessario di nuovo .
Ciò conferma la migliore pratica di eliminare il ramo dopo aver unito una richiesta pull.
richiesta pull non è un termine "git" ufficiale.
Git utilizza il request-pull
comando (!) Per creare una richiesta di unione:
"riepiloga le modifiche tra due commit nell'output standard e include l'URL specificato nel riepilogo generato."
Github lancia la sua versione fin dal primo giorno (febbraio 2008) , ma ha riprogettato quella funzionalità a maggio 2010 , affermando che:
Pull Request = Compare View + Issues + Commit comments
<humour>
Quella (richiesta pull) non è nemmeno definita correttamente da GitHub!
Fortunatamente, una vera organizzazione di notizie commerciali lo saprebbe, e c'è una e-note per sostituire pull-sostituisci con 'e-note' :
Quindi, se i tuoi pronti contro termine o Tory ha bisogno di un e-note ... chiedere a Fox Business . Sono al corrente.
</humour>
branch
vs. master
sembra critica per prendere la risposta del mio / Github da una soluzione teorica a qualcosa che si vorrebbe effettivamente usare.
git pull --rebase upstream/master
va bene davvero.
Per sapere come effettuare una richiesta pull ho appena seguito due pagine di aiuto separate su Github (collegate sotto come punti elenco). I seguenti comandi da riga di comando sono per la parte 1 . La seconda parte , l'effettiva richiesta pull, viene eseguita interamente sul sito Web di Github.
$ git clone https://github.com/tim-peterson/dwolla-php.git
$ cd dwolla-php
$ git remote add upstream https://github.com/Dwolla/dwolla-php.git
$ git fetch upstream
// make your changes to this newly cloned, local repo
$ git add .
$ git commit -m '1st commit to dwolla'
$ git push origin master
Parte 1 : fork del repo di qualcuno: https://help.github.com/articles/fork-a-repo
git clone->cd dwolla-php->git remote->git fetch
sequenza sopra per clonare il fork da qualche parte nel computer (ad esempio, "copia / incolla" in, in questo caso:third_party TimPeterson$
:) e sincronizzarlo con il repository principale (Dwolla / dwolla-php)git add->git commit->git push
sequenza sopra per inviare le modifiche al repository remoto, ovvero il fork su Github (tim-peterson / dwolla-php)Parte 2 : richiesta pull: https://help.github.com/articles/using-pull-requests
Tims-MacBook-Pro:third_party TimPeterson$
perché questo è un tutorial per principianti e questi suggerimenti aiutano a orientare l'utente.
git fetch upstream
, non hai bisogno di unire le modifiche a monte con la tua copia locale, usando git checkout master
allora git merge upstream/master
?
Per effettuare una richiesta pull è necessario eseguire le seguenti operazioni:
Mi ci è voluto un po 'per capire questo, spero che questo possa aiutare qualcuno.
Ho avviato un progetto per aiutare le persone a fare la loro prima richiesta pull su GitHub. Puoi fare il tutorial pratico per fare il tuo primo PR qui
Il flusso di lavoro è semplice come
git clone <clone url you copied earlier>
git checkout -b branch-name
git commit
git push origin branch-name
Compare and pull request
pulsantePer quelli di noi che hanno un account github.com, ma ricevono un brutto messaggio di errore quando digitiamo "git" nella riga di comando, ecco come fare tutto nel tuo browser :)
Ho seguito le istruzioni di Tim Peterson ma ho creato una filiale locale per le mie modifiche. Tuttavia, dopo aver spinto non vedevo il nuovo ramo in GitHub. La soluzione era aggiungere -u al comando push:
git push -u origin <branch>
tim-peterson
il secondo èDwolla
Ho scritto un programma bash che fa tutto il lavoro di creazione di un ramo PR per te. Esegue il biforcazione, se necessario, la sincronizzazione con l'upstream, l'impostazione del telecomando upstream, ecc. E devi solo eseguire il commit delle modifiche, inviare e inviare un PR.
Ecco come eseguirlo:
github-make-pr-branch ssh your-github-username orig_repo_user orig_repo_name new-feature
Troverete il programma qui e il suo archivio comprende anche una guida step-by-step per eseguire manualmente lo stesso processo se vuoi capire come funziona, e le informazioni anche in più su come mantenere il vostro ramo di caratteristica up-to data con il master upstream e altre notizie utili.
Il Pull Request più semplice GitHub è dall'interfaccia web senza utilizzare git.
Fai clic sull'icona a forma di matita ,
cerca il testo vicino alla posizione, apporta le modifiche desiderate, quindi visualizzale in anteprima per confermare. Fornire alla modifica proposta una descrizione di massimo 50 caratteri e, facoltativamente, una descrizione estesa, quindi fare clic sul pulsante Proponi modifica file .
Se stai leggendo questo non avrai accesso in scrittura al repository (cartelle di progetto), quindi GitHub creerà una copia del repository (in realtà un ramo) nel tuo account. Fai clic su Crea richiesta pull pulsante .