2015-11-24 15 views
5

In un repository che non è mio, una terza persona ha aperto una richiesta di pull. Uno dei proprietari ha suggerito alcune modifiche da apportare prima di poterlo unire. Tuttavia, l'autore della richiesta pull non lo ha fatto, e rimane aperto per diversi mesi senza che le modifiche siano state implementate.È possibile continuare una richiesta di pull aperta da qualcun altro su Github?

In realtà mi riferisco a una situazione like this one.

Farei i miglioramenti richiesti.

Qual è il modo più pulito e migliore per farlo? Posso aggiungere i miei commit al seguente o devo aprire una nuova richiesta pull?

+0

che possiamo fare 'origine git pull ' di nostra o filiale locale. I cambiamenti dal ramo saranno ora nella tua filiale e possiamo apportare le modifiche. Una volta fatto possiamo portarlo al ramo principale. – staticvoidmain

risposta

7

L'unico modo per aggiornare una richiesta di pull è di passare al ramo che è stato PRed - così anche il proprietario del repository originale non può modificare il PR, per impostazione predefinita. È ha senso - per la tracciabilità, almeno.

Quindi, se si vuole finire quel lavoro, la cosa migliore che potete fare è di sborsare il repo originale, clone sulla vostra macchina, aggiungere repo del PR come remote, checkout il ramo PR'ed, commit in cima di quello, push quelle modifiche al proprio fork, e fare un nuovo PR affermando nei commenti che continua e corregge l'altro PR, quindi il PR originale si chiuderà quando il tuo 'viene unito.

In questo caso, qualcosa di simile a:

$ # Go to https://github.com/cheeriojs/cheerio/ and fork it 
$ git clone https://github.com/Delgan/cheerio/ && cd cheerio # assuming that's your GH username :) 
$ git remote add pr-base https://github.com/digihaven/cheerio/ 
$ git fetch pr-base 
$ git checkout pr-base/master -b 641-appendTo_prependTo 
$ # work work work 
$ git add #... 
$ git commit -m 'Fixed all the things! See #641, fixes #726' 
$ git push origin 641-appendTo_prependTo 
$ # Go to your repo and make the PR 
$ # ... 
$ # SUCESS! (??!) 
+0

Forking il repository di qualcun altro non funziona per me, dal momento che ho già biforcato il repository originale, e suppongo che Github non mi permetta di inserire sia l'originale che la sua forcella. Quali sono le mie opzioni? – max

2

dall'uso filiale questo comando

git pull origin <the open pull request branch name> 

Si tira i commit da quel ramo al ramo.

Apportare i miglioramenti e spingerlo al ramo principale.

+0

Nessuna cosa funziona se non si dispone dell'accesso in scrittura al repository originale. – mgarciaisaia