Multiple commits cherry-picking

蓝咒 提交于 2020-01-10 09:26:30

问题


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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!