Wie setze ich in TortoiseGit einen lokalen Branch auf einen entfernten Branch zurück?

Melden
  1. Einleitung
  2. Vorbereitung
  3. Schritt-für-Schritt-Anleitung
  4. Wichtige Hinweise
  5. Zusammenfassung

Einleitung

Wenn du in TortoiseGit deinen lokalen Branch auf einen entfernten Branch zurücksetzen möchtest, bedeutet das meist, dass du den Zustand deines lokalen Branches exakt so anpassen willst, wie es im Remote-Repository vorliegt. Dies ist besonders nützlich, wenn der lokale Branch Änderungen enthält, die verworfen werden sollen, oder wenn du einfach sicherstellen möchtest, dass dein lokaler Branch mit dem entfernten Branch genau übereinstimmt.

Vorbereitung

Stelle sicher, dass du alle wichtigen Änderungen gesichert oder committet hast, da das Zurücksetzen Änderungen, die noch nicht gespeichert wurden, unwiderruflich entfernen kann. In TortoiseGit funktioniert der Vorgang im Wesentlichen über die Kombination von Fetch (um sicherzustellen, dass du den aktuellsten Stand vom Remote hast) und Reset (um den lokalen Branch anzupassen).

Schritt-für-Schritt-Anleitung

Zuerst öffnest du in deinem Windows-Explorer den Ordner, der dein Git-Repository enthält. Klicke mit der rechten Maustaste irgendwo in den Ordner und wähle im Kontextmenü TortoiseGit sowie anschließend Fetch... aus. Im Fetch-Dialog kannst du den entsprechenden Remote auswählen (normalerweise origin) und durch einen Klick auf OK holst du den aktuellen Stand der entfernten Branches in dein lokales Repository, ohne jedoch deinen Arbeitsbaum zu beeinflussen.

Nach dem erfolgreichen Fetch kannst du erneut mit der rechten Maustaste in das Repository-Verzeichnis klicken und diesmal den Punkt TortoiseGit und dann Switch/Checkout auswählen, um sicherzustellen, dass du dich auf dem Branch befindest, den du zurücksetzen möchtest. Falls du den Branch bereits ausgecheckt hast, kannst du diesen Schritt überspringen.

Um den lokalen Branch nun auf den entfernten zurückzusetzen, klicke wieder mit der rechten Maustaste auf das Repository-Verzeichnis und wähle TortoiseGit und dann Reset.... Im Reset-Dialog kannst du im Feld Revision den Remote-Branch eingeben, auf den du zurücksetzen möchtest, zum Beispiel origin/develop, wenn der entfernte Branch develop ist.

Unter Reset-Typ hast du meist drei Optionen: Soft, Mixed und Hard. Um den Branch komplett zurückzusetzen, inklusive der Arbeitskopie und des Staging-Bereichs, solltest du Hard wählen. Das bedeutet, dass alle lokalen Änderungen, sowohl im Index als auch im Arbeitsverzeichnis, verworfen werden und der Branch exakt dem ausgewählten Remote-Branch entspricht.

Nachdem du die Revision und den Reset-Typ ausgewählt hast, klickst du auf OK. TortoiseGit führt nun den Reset aus. Dein lokaler Branch ist jetzt auf denselben Stand wie der entfernte Branch gesetzt.

Wichtige Hinweise

Beachte, dass ein Hard-Reset alle nicht gespeicherten Änderungen verwirft. Wenn du also noch Änderungen hast, die du behalten möchtest, solltest du diese vorher committen oder stashen. Außerdem setzt dieser Vorgang voraus, dass du zuvor per Fetch den aktuellen Stand des Remote aktualisiert hast, da sonst kein aktueller Stand zur Verfügung steht.

Zusammenfassung

In TortoiseGit setzt du einen lokalen Branch auf einen entfernten zurück, indem du zuerst per Fetch den Remote aktualisierst, dann sicherstellst, dass du auf dem gewünschten lokalen Branch bist, und schließlich im Reset-Dialog einen Hard-Reset auf den entsprechenden Remote-Branch (zum Beispiel origin/main oder origin/develop) durchführst. So kannst du deinen lokalen Branch genau auf den Stand des entfernten Branches bringen.

0