651 Stimmen

Übertragungen in einen anderen Zweig verschieben

Ist es möglich, Änderungen von einem Zweig auf einen anderen zu übertragen und zu verschieben.

Angenommen, ich habe Änderungen in BRANCHE1 und wollen sie dazu bringen BRANCHE2 .

De BRANCHE1 ist es zulässig, dies zu tun:

git push origin **BRANCH2**

Und dann BRANCH1 zurücksetzen?

1161voto

SLaks Punkte 832502

Das wird fast funktionieren.

Beim Verschieben in einen nicht standardmäßigen Zweig müssen Sie die Quell- und die Zielreferenz angeben:

git push origin branch1:branch2

Oder

git push <remote> <branch with new changes>:<branch you are pushing to>

108voto

Ryan Stewart Punkte 120600

Sicherlich, aber es funktioniert nur, wenn es sich um einen Schnellvorlauf von BRANCH2 handelt oder wenn Sie es erzwingen. Die korrekte Syntax für eine solche Aktion lautet

git push <remote> <source branch>:<dest branch> 

Siehe die Beschreibung einer "refspec" auf der Seite git push man-Seite für weitere Details zur Funktionsweise. Beachten Sie auch, dass sowohl ein Force Push als auch ein Reset Operationen sind, die "die Geschichte umschreiben", und sollten nicht von schwachen Nerven versucht werden, es sei denn, Sie sind absolut sicher, dass Sie wissen, was Sie in Bezug auf alle entfernten Repositories und andere Leute, die Forks/Klone des gleichen Projekts haben, tun.

46voto

Bilal Ahmed Yaseen Punkte 2238

Es ist ganz einfach. Angenommen, Sie haben Änderungen an Ihrer Filiale vorgenommen A die sich sowohl auf dem lokalen als auch auf dem entfernten Standort befindet, aber Sie möchten diese Änderungen in den Zweig B die es nirgendwo gibt.

Schritt-01: Erstellen und Wechseln zum neuen Zweig B

git checkout -b B

Schritt-02: Änderungen im neuen lokalen Zweig hinzufügen

git add . /oder bestimmte Datei(en)

Schritt-03: Übernehmen Sie die Änderungen

git commit -m "commit_message"

Schritt-04: Änderungen in den neuen Zweig verschieben B . Mit dem folgenden Befehl wird ein neuer Zweig erstellt B auch aus der Ferne

git push origin B

Jetzt können Sie in Bitbucket überprüfen, ob der Zweig B wird eine Übergabe mehr haben als der Zweig A . Und wenn Sie den Zweig auschecken werden A diese Änderungen werden nicht mehr vorhanden sein, da sie in den Zweig verschoben wurden B .

Anmerkung: Wenn Sie Ihre Änderungen in den Zweig übertragen haben A und danach wollen Sie diese Änderungen in den neuen Zweig verschieben B dann müssen Sie diese Änderungen zunächst zurücksetzen. #HappyLearning

19voto

Baalamurgan Punkte 141
  1. Übertragen Sie Ihre Änderungen auf BRANCH1.
  2. Terminal öffnen und den Befehl -> "git push <remote_name> <branch1_name>:<branch2_name>" eingeben.

された。

Für diese Frage: Der Befehl lautet

git push origin BRANCH1:BRANCH2

Bearbeiten: Jetzt, wo ich weiß, dass GitHub Desktop eine gute Benutzeroberfläche hat, um Änderungen von einem Zweig zum anderen zu übertragen. Natürlich nicht eine gute Option als schlagen die Befehle im Terminal mit unseren Händen.

11voto

Benyamin Jafari Punkte 20585

Ich habe ein schlechtes Ergebnis mit git push origin branch1:branch2 Befehl:

In meinem Fall, branch2 wird gelöscht und branch1 wurde mit einigen neuen Änderungen aktualisiert.

Wenn Sie also nur die Änderungen auf der branch2 von der branch1 versuchen Sie die folgenden Verfahren:

  • オン branch1 : git add .

  • オン branch1 : git commit -m 'comments'

  • オン branch1 : git push origin branch1

  • オン branch2 : git pull origin branch1

  • オン branch1 : zur vorherigen Übertragung zurückkehren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X