Ich habe eine Entwicklung Zweig und eine Funktion Zweig in meinem Git-Repo. Ich habe ein Commit für die Entwicklung hinzugefügt und möchte nun, dass das Commit mit meinem Feature-Zweig zusammengeführt wird. Wenn ich dies tueWie git Commits in der Entwicklung Zweig zu einem Feature-Zweig zu verschmelzen
git checkout feature
git merge develop
Ich am Ende mit einem Merge-Commit. Da ich neue Commits für die Entwicklung zu meinem Feature-Zweig regelmäßig zusammenführen werde, möchte ich all diese unnötigen Merge-Commits vermeiden. Ich sah dieses answer, das schlug vor, eine git rebase develop
zu tun, aber es landet meinen Zweig zurück zu weit zurückspulen und die Rebase schlägt fehl.
Update: Was ich am Ende war tun
git checkout feature
git merge develop # this creates a merge commit that I don't want
git rebase # this gets rid of the merge commit but keeps the commits from develop that I do want
git push
Update: Ich habe gerade bemerkt, dass das Original auf begehen entwickeln wird einen anderen Hash, wenn ich dann auf den Funktionszweig rebase verschmelzen. Ich denke nicht, dass das ist, was ich will, denn schließlich werde ich Feature wieder in Entwicklung zusammenführen und ich denke, das wird nicht nett spielen.
Hmm, ich weiß, dass Sie Ihre Commits zusammen "quetschen" können, wenn Sie Rebase, als eine Möglichkeit, nicht so viele Commits auf Ihrem Zweig haben. Schauen Sie sich http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html an. – Houdini
Rebasing * ist * die Antwort, wenn es für Sie nicht funktioniert, gibt es eine andere Frage, die Sie sich fragen sollten * warum * es funktioniert nicht. – meagar