2011-11-15 18 views
133

Ho biforcuto un repository git e l'installazione upstream. Ho apportato alcune modifiche al ramo Master e ho eseguito il commit e l'invio a github.Come ripristinare il ramo principale a monte

Ora, cosa devo fare per abbandonare tutte le mie modifiche nel ramo Master e renderlo identico al ramo principale dell'upstream?

risposta

255

(sto supponendo che i cambiamenti che ora desidera ignorare sono a vostra origin a distanza, sei sulla buona master ramo, e si desidera ripristinare il contenuto del upstream remota)

In primo luogo , reimpostare la copia di lavoro al master monte:

git remote update 
# the double hyphen ensures that upstream/master is 
# considered as a revision and not confused as a path 
git reset --hard upstream/master -- 

Poi spingere questo nuovo ramo-testa al repository di origine, ignorando il fatto che non sarà un fast-forward:

git push origin +master 
+13

Potrebbe anche essere necessario eseguire 'git remote add upstream ' se si biforca il ramo usando GitHub. – Kato

+3

Qual è il significato di '+' in 'git push origin + master'? È lo stesso di "git push origin master"? – bluenote10

+3

@ bluenote10 Non sono la stessa cosa. Il '+' è ciò che dice git a "[ignora] il fatto che non sarà un avanzamento rapido". È un po 'come fare un 'git push --force', ma si applica solo a quel specifico ref. – nickgrim

Problemi correlati