Seitenhistorie
Git merge Branch A in Branch B
Als Bespiel Beispiel wird der Branch 3.12 in den Branch 3.13 gemerged.
...
Codeblock |
---|
$ # Updaten der 'remote Heads'
$ git fetch
$ # Wechsel auf den Branch, in den gemerged werden soll
$ git checkout 3.13
$ # Testmerge ohne das Ergebnis einzutragen
$ git merge --squash origin/3.12
$ # Gab es Konflikte?
$ git status
# Auf Zweig 3.13
# zum Eintragen bereitgestellte Änderungen:
# (benutzen Sie "git reset HEAD <Datei>..." zum Herausnehmen aus der Bereitstellung)
#
# geändert: nuclos-client/src/main/java/org/nuclos/client/dbtransfer/DBTransferExport.java
# geändert: nuclos-client/src/main/java/org/nuclos/client/dbtransfer/DBTransferImport.java
# geändert: nuclos-client/src/main/java/org/nuclos/client/livesearch/LiveSearchController.java
# geändert: nuclos-client/src/main/java/org/nuclos/client/livesearch/LiveSearchSettingsPanel.java
# geändert: nuclos-client/src/main/java/org/nuclos/client/main/SimpleSplash.java
# geändert: nuclos-common/src/main/java/org/nuclos/common/dal/vo/Delete.java
# geändert: nuclos-common/src/main/java/org/nuclos/server/livesearch/ejb3/LiveSearchFacadeRemote.java
# geändert: nuclos-installer/build.xml
# neue Datei: nuclos-installer/conf/3rdparty/apache-tomcat-7.0.39.zip.SHA1
# neue Datei: nuclos-installer/conf/3rdparty/postgresql-9.2.4-1-linux-x64.run.SHA1
# neue Datei: nuclos-installer/conf/3rdparty/postgresql-9.2.4-1-linux.run.SHA1
# neue Datei: nuclos-installer/conf/3rdparty/postgresql-9.2.4-1-osx.dmg.SHA1
# neue Datei: nuclos-installer/conf/3rdparty/postgresql-9.2.4-1-windows-x64.exe.SHA1
# neue Datei: nuclos-installer/conf/3rdparty/postgresql-9.2.4-1-windows.exe.SHA1
# geändert: nuclos-installer/src/main/java/org/nuclos/installer/Constants.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/dbtransfer/TransferFacadeBean.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/dbtransfer/content/EntityFieldNucletContent.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/dbtransfer/content/ImportNucletContent.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/dbtransfer/content/ResourceNucletContent.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/livesearch/ejb3/DocumentHandler.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/livesearch/ejb3/IndexQuery.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/livesearch/ejb3/LiveSearchFacadeBean.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/livesearch/ejb3/LuceneWriter.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/livesearch/ejb3/NuclosCoordinate.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/livesearch/ejb3/NuclosIndexer.java
# geändert: nuclos-server/src/main/java/org/nuclos/server/masterdata/ejb3/MasterDataFacadeHelper.java
# geändert: nuclos-server/src/main/resources/resources/data/localeresource.json
#
# Nicht zusammengeführte Pfade:
# (benutzen Sie "git reset HEAD <Datei>..." zum Herausnehmen aus der Bereitstellung)
# (benutzen Sie "git add/rm <Datei>..." um die Auflösung zu markieren)
#
# von beiden geändert:nuclos-client/src/main/java/org/nuclos/client/eventsupport/EventSupportManagementController.java
$ # Aha, 'Nicht zusammengeführte Pfade' bedeutet Konflikt(e)
$ # Lösung des Konflikts z.B. mit
$ # git mergetool (siehe unten)
$ # Testmerge zurückrollen
$ git reset --hard HEAD
$ # Wir sind jetzt wieder im Branch 3.13, wie er vor dem Testmerge war... |
Test tatsächlich durchführen:
Codeblock |
---|
$ # Updaten der 'remote Heads' $ git fetch $ # Wechsel auf den Branch, in den gemerged werden soll $ git checkout 3.13 $ # Richtiger TestmergeMerge, ohneder das Ergebnis einzutragensofort einträgt, falls keine Konflikte auftreten $ git merge origin/3.12 $ # Gab es Konflikte? $ git status [...] $ # Falls es keine Konflikte gab, ist jetzt der Merge bereits durchgeführt! $ # D.h. es kann 'gepushed' werden... $ # Konflikte lösen (siehe unten) $ git mergetool $ # Merge mit manuell gelösten Konflikten einchecken $ git commit -s |
...
Überblick
Inhalte