git – cherry-pick – HOWTO / WHYTO

Problem: You want to test a feature someone has developed, but it only
exists in a remote branch which is woefully out of date.

If you merged or rebased, you’d get a bunch of old changes in, possibly conflicting.

With cherry picking, you take one change set, and replay that as a new commit over another branch.

This is useful if you just want one commit onto another branch, without its history.

It’s useful to use the -x option, so the commit message contains a note where it was cherry picked from.

Why won’t I use git am or git apply?

because git apply is for applying patches (files), and git am for applying series of patches. git cherry-pick applies commits – i.e., commits from your own repo, vs commits you import from other repos.

Leave a Comment