gitrebasecherry-pickgit-cherry-pick

git apply changes from one commit onto another branch


I want to do something similar to git rebase but without collapsing parallel commits.

Let's say I have the following commits:

  B (bar)
 /
A-C-D (foo)

Now I want to take the changes that D introduced to C in branch foo, and apply them to B in branch bar. so that I end up with the following:

  B-E (bar)
 /
A-C-D (foo)

Where the difference between commits B and E is equal to difference between commits C and D. Is this possible? Is there a way to do it without creating a patch?


Solution

  • Yes:

    git checkout -b mergebranch B
    git cherry-pick D