Die Auswahl dieser Option scheint jedoch keinerlei Auswirkungen zu haben.
Ja, da die aktuellen Änderungen einer der aktuellen Zweige sind dev
.
Rebasing dev
auf dev
bedeutet ein No-Op.
git checkout dev
git rebase master
Das heißt: aktueller Zweig ist dev
: neu aufgebaut werden auf master
.
In SourceTree müssen Sie also mit der rechten Maustaste auf klicken master
(während dev
es ausgecheckt ist) und Folgendes auswählen:
Rebase current changes onto master
Howe fügt in den Kommentaren hinzu :
Die aktuelle Benennung von " rebase current changes onto [branch]
" ist irreführend. Schauen Sie sich diese Verbesserungsdiskussion anSRCTREE-1578
.
Nachdem ich verblüfft war, einen Feature-Zweig mit der Entwicklung auf den neuesten Stand zu bringen, und dies fehlschlug, wurde mir klar, dass der Kontextmenüpunkt im linken Bereich mit der Bezeichnung " rebase current changes onto $somebranch
" tatsächlich das Gegenteil von dem bewirkt, was sein Name andeutet:
Er stützt den aktuellen Zweig neu an den Staat $ somebranch;
Mit anderen Worten, es wird $somebranch
auf den aktuellen Zweig (oder in diesen) zurückgesetzt, nicht umgekehrt. (Richtig?)
Die Präposition " onto
" im aktuellen Text ist irreführend; Dies bedeutet, dass das Objekt des Satzes ( $somebranch
in meinem Beispiel) die Änderungen erhält.
In der Tat ist es das Gegenteil, das eintreten wird.
Das Fehlen des Namens der aktuellen Niederlassung trägt zur Verwirrung bei.
Eine Neuformulierung, die die Satzstruktur verbessert und den Namen des betroffenen Zweigs enthält, würde einen großen Gewinn für die Klarheit bringen.
Zum Beispiel:
rebase $currentbranch to head of $somebranch
rebase $somebranch onto $currentbranch