我在主分支中有33个提交被网格化。现在我需要整齐地保持记录。所以现在我已经创建了功能分支,我试图在不同的功能分支中对这33个提交进行分类。那么可以一次选择多个提交来复制相关的功能分支吗?当我尝试使用cherry-pick命令进行多次提交时,我也面临着冲突。
git cherry-pick A B C
这里A,B,C是提交的哈希码。
答案 0 :(得分:18)
你做得对。概要是
git cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] [--ff] <commit>...
git cherry-pick
从左到右提交。你可以订购你想要的。
如果您有冲突,您有三种选择。您可以git cherry-pick --quit
(停止挑选并让您的树处于当前状态),git cherry-pick --abort
(停止挑选并将您的分支重置为您开始之前的状态git cherry-pick
)或者使用编辑器或git mergetool
解决此冲突,然后git cherry-pick --continue
转到列表中的下一个提交。
答案 1 :(得分:6)
如果您需要整齐地维护记录,最好创建一个主题分支并运行git rebase -i <commit before the 33rd>
,一个交互式的rebase。按照提交删除的说明进行操作。这应该比以特定严格的顺序挑选这么多提交更简单。