Die Doku ist insofern etwas unvollständig, da nicht klar ist, dass wir am Anfang auf dem Zweig master sind:
git checkout release-3.4.1
ODER
git checkout master
git pull
Der erste Befehl holt den Master zum Stand des release ab und der zweite Befehl holt die aktuelle unstable (auch aus dem master).
Weiter oberhalb in der doku steht dann der kryptische, aber sichere checkout Befehl:
git checkout `git tag -l | egrep -ve "(alpha|beta|rc)" | tail -1`
Allerdings ist die Vorbedingung, dass der Zweig vorher "gefetcht" wird.
Beispiel:
Mein Zweig
git tag -l | egrep -ve "(alpha|beta|rc)" | tail -1
release-3.5.2
git branch
* meiner-361-1
master
Master Zweig
git checkout master
git fetch
* [neues Tag] release-3.5.3 -> release-3.5.3
* [neues Tag] release-3.5.4 -> release-3.5.4
* [neues Tag] release-3.5.4beta -> release-3.5.4beta
* [neues Tag] release-3.5.5 -> release-3.5.5
* [neues Tag] release-3.5.6 -> release-3.5.6
* [neues Tag] release-3.5.6.1 -> release-3.5.6.1
* [neues Tag] release-3.5.7 -> release-3.5.7
* [neues Tag] release-3.5.8 -> release-3.5.8
* [neues Tag] release-3.6.0 -> release-3.6.0
* [neues Tag] release-3.6.0beta -> release-3.6.0beta
* [neues Tag] release-3.6.1 -> release-3.6.1
* [neues Tag] release-3.7.0 -> release-3.7.0
Jetzt checken wir die aktuellste Stable aus:
git checkout `git tag -l | egrep -ve "(alpha|beta|rc)" | tail -1`
Hinweis: Wechsle zu 'release-3.7.0'.
git checkout meiner-361-1
git rebase master # verheiratet jetzt die stable 3.7 mit meinen eigenen änderungen in meiner-361-1