Come ripristinare il ramo principale in upstream


145

Ho creato un repository git e installato a monte. Ho apportato alcune modifiche al ramo Master e mi sono impegnato e spinto su Github.

Ora cosa devo fare per abbandonare tutte le mie modifiche nel ramo Master e renderlo identico al ramo principale a monte?

Risposte:


277

(Suppongo che le modifiche che ora desideri ignorare siano sul tuo origintelecomando, sei sul tuomaster ramo e vuoi tornare ai contenuti del upstreamtelecomando)

Innanzitutto, reimposta la copia di lavoro sul master upstream:

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 --

Quindi spingere questo nuovo ramo nel repository di origine, ignorando il fatto che non sarà un avanzamento veloce:

git push origin +master

14
Potrebbe anche essere necessario eseguire git remote add upstream <upstream_repo_url>se hai biforcuto il ramo usando GitHub.
Kato

3
Qual è il significato di +in git push origin +master? È lo stesso di solo git push origin master?
bluenote10

4
@ bluenote10 Non sono gli stessi. Questo +è ciò che dice a Git di "[ignorare] il fatto che non sarà un avanzamento veloce". È un po 'come fare un git push --force, ma si applica solo a quel riferimento specifico.
Nickgrim,

1
Non ha funzionato per me. Ho fatto uno stato git dopo che ha elementi che sono stati modificati. Devo cancellare e ricominciare. Git è estremamente difficile da capire.
Mitch,

1
@mehmet No, cambia solo il ramo in cui ti trovi.
Giovanni,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.