GIT – Kernänderungen in bereits differenzierten Branches aufnehmen

Wenn in einem Projekt mit mehreren Branches(z. Bsp. Ländern) eine Kernfunktionalität angepasst oder erweitert werden soll sich aber die Codebasis der Branches bereits unterscheidet ist ein Merger so nicht möglich.

Was wir hier brauchen ist das Cherry Picking folgende Voraussetzung müssen gegeben sein:
1. Die Branches müssen alle fertig comitted sein, heißt vorherige Änderungen abschließen!

2. Die Änderung die alle betrifft sollte nicht bereits unterschiedlich in den Codebasen sein da das zu Konflikten führt, wenn sich die Branches also inhaltlich an genau den Zeilen wo wir Änderungen vornehmen wollen schon unterscheidet wird es schwierig, wenn auch nicht unmöglich

Vorgehensweise

1. Zuerst wird die Änderungen in einen der Branches geschrieben, dabei ist egal in welchen, in diesem Beispiel fügen wir in ein kleines Projekt nur einen neuen DIV Container ein.

DIV Container hinzugefügt erkennbar an GIT grün für Änderung

2. Danach die Änderung commiten und pushen, die Bezeichnung die wir für diesen Commit wählen wird sich in jedem Branch wiederfinden für den wir diese Änderung übernehmen wollen

3. Jetzt auf den Branch wechseln in dem die Änderung auch benötigt werden und dort unter Branch/Tag Cherry Pick anklicken, in dem folgenden Fenster kann dann bei Klick auf select ausgewählt werden welcher Commit übernommen werden soll

Cherry Pick zur Übernahme eines Commits
In diesem Beispielen wird aus dem Branch alternativ der Commit „Branding ergänzt“ für den Branch master übernommen

4. Nach dem der Commit selected und applied wurde gilt die Änderung für diesen Branch lokal schon als commit, das einzige was noch fehlt ist der Push.

Schon haben beide Branches den inhaltlich gleichen Commit mit der gleichen Bezeichnung

This entry was posted in   Git.
Bookmark the   permalink.

Daniel Borstel has written 15 articles