问题
I have 33 commits in the main branch that are meshed up. Now I need to maintain the record neatly. So now I have created feature branches and I'm trying to classify those 33 commits in different feature branches. So can it be possible to pick multiple commits at a time to copy in the relevant feature branch? And I am also facing its conflicts when I tried multiple commits with the cherry-pick command.
git cherry-pick A B C
here A, B, C are the commits' hashcode.
回答1:
You do it correct. The synopsis is
git cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] [--ff] <commit>...
git cherry-pick
goes from left to right commit. You can order how you want.
If you have a conflict you have three choices. you can git cherry-pick --quit
(stop cherry-picking and let your tree in his current state), git cherry-pick --abort
(stop cherry-picking and reset your branch to the state where he was before you start git cherry-pick
) or resolve this conflict with an editor or with git mergetool
and then git cherry-pick --continue
go to next commit in your list.
回答2:
If you need to maintain the record neatly you are better off with creating a topic branch and running git rebase -i <commit before the 33rd>
, an interactive rebase. Follow the instructions for dropping commits. This should be simpler than cherry-picking so many commits in a particular strict order.
来源:https://stackoverflow.com/questions/20698614/multiple-commits-cherry-picking