Forum: PC-Programmierung GIT früheren Zustand wiederherstellen aber Änderungen als Branch behalten?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Oliver P. (mace_de)


Lesenswert?

Hallo Zusammen,

ich bin nicht so der GIT Spezi und finde daher nicht so wirklich eine 
Lösung für mein Problem. Ich möchte den Main-Branch auf einen früheren 
Zustand zurück setzen und von dort als Main Branch weiterführen. Die 
Änderungen die ab diesem Zustand bereits stattgefunden haben möchte ich 
allerdings erstmal nicht komplett verwerfen sondern irgendwie (als einen 
neuen Branch?) behalten.
Geht das?
Aktuell hab ich es nur hinbekommen ab dem früheren Zeitpunkt einen neuen 
Branch zu erstellen wobei der Main-Branch in dem Fall aber in einer 
Sackgasse enden würde.

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Erstelle einen neuen "backup" Branch der von main abzweigt. Danach 
revertest du alle Änderungen im main Branch, die du los werden willst.
https://git-scm.com/docs/git-revert.html

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

1) Änderungen committen oder in den Staging-Bereich

2) Neuen Branch anlegen: git checkout -b <branch-name>

3) Weitere Änderungen machen und schließlich committen.

4) Zurück zu master: git checkout master.

5) Master auf gewünschte ref zurücksetzen: git reset --hard <ref>.

Alternativ geht auch:

1) Master auf die gewünschte ref zurücksetzen: git reset --soft <ref>

2) Damit gehen alle Commits, die neuer sind als <ref>, zurück in den 
Staging-Bereich.

3) Neuen Branch anlegen: git checkout -b <branch-name>

4) Weitere Änderungen machen und schließlich committen.

5) Zurück zu master: git checkout master.

von Oliver P. (mace_de)


Lesenswert?

Ah, hat funktioniert. Der Backup Branch baut sich dann quasi rückwärts 
auf. Wenn man es weiß macht es irgendwie auch Sinn. Danke für die Hilfe!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.