ich die git Strömungs Weise bin mit Niederlassungen in meinem Repo der Verwaltung, wie beschrieben in: http://nvie.com/posts/a-successful-git-branching-model/git verschmelzen mit --no-ff und --squash
So ist die Folge von Befehlen soll ich verwenden als wäre folgt:
git checkout mybranch
git pull --rebase origin develop
git checkout develop
git merge --no-ff mybranch
jedoch eine Sache gibt, die ich anders in einigen Fällen tun möchte:
ich möchte alle meine Commits auf meinem Zweiges (mybranch
), erhalten, sondern haben sie wurden zusammen geworfen (oder gequetscht) zu einem einzigen Unterschied beim Zusammenführen in develop
.
So ist es das, was ich denke, die Folge von Befehlen sein sollte:
git checkout mybranch
git pull --rebase origin develop
git checkout develop
git merge --no-ff --squash mybranch
Würde ich Dinge falsch machen, wenn ich --no-ff
mit --squash
kombinieren waren?
Ich bin zögerlich, dies zu versuchen, ergibt sich aus, wie „Quetschen“ und „Bewahrung der Geschichte“ sind orthogonal Anforderungen - siehe Squashing all of my commits (including merges) into one commit without altering history
Meine Begründung ist, dass ich Geschichte bewahren auf einem Zweig wollen (mybranch
) und suqash auf ein weiterer Zweig (develop
) -> da diese Aktionen in getrennten Zweigen ausgeführt werden, ist das OK.
Warum nicht Sie es einfach versuchen. Sie können immer ein hartes "Reset" durchführen, wenn es nicht funktioniert. Mach einfach einen temporären Zweig an der alten Stelle. Mach weiter. Versuch es. Du weißt, dass du willst ... –