2011-09-03 22 views
14

dire fare le seguenti operazioni:Rebase sul ramo github

  • forcella qualche progetto, creare un ramo argomento
  • spinta quel ramo sopra a GitHub
  • richiesta un tiro da quel ramo al progetto originario

Tuttavia, ricevo alcuni commenti per migliorare il codice.

  • ho sistemare il codice, non un commit
  • Rebase di schiacciare vecchio commette

Il problema è che non riesco a spingerlo più al ramo argomento sopra a GitHub.

Qual è il modo migliore per gestirlo?

risposta

16

Una volta calcolato su base, non si può semplicemente aggiungere nuovi commit sul repo biforcuta (dal momento che avete riprodotto quelle commit durante il rebase, riscrivendo il loro SHA1), è necessario forzare il push:

git push -f 

e poi ri -fare la tua richiesta di pull.

Questo va bene poiché nessuno ha ancora clonato il repository e ha iniziato a utilizzare il ramo.

Se quel ramo è stato già utilizzato, seguire that blog post:

Importante: Se hai già spinto impegna a GitHub, e poi li schiacciare a livello locale, non sarà in grado di spingere lo stesso ramo di nuovo su GitHub.
Creare un nuovo ramo - come 100-retweet-bug-squashed o 100-retweet-bug-rc1 (per il candidato di rilascio 1) - e schiacciare il tuo impegno lì.
Una volta che tutto è pronto e pronto, spingere il nuovo ramo schiacciato su GitHub e inviare la richiesta di pull a Gina.

+0

+1 per la spiegazione del commento 'importante'. –

+2

Vale la pena notare che qualsiasi discussione sulla richiesta di estrazione github originale non sarà disponibile nella nuova richiesta di pull. – sym3tri

Problemi correlati