我已经为我的工作开发了git分支,我创建了一个名为feature1的新分支,并完成了提交1、2、3和4。
我需要将提交3,4从feature1分支移到新创建的分支feature2。
提交3,4应该从feature1中删除并添加到一个新的分支feature2中,因此最终的结果应该是类似于带有1的feature1,以及带有3和4的2分支和feature2。
请注意,目前我已经开发和feature1分支机构。feature2还没有添加。
实现这一目标的最佳途径是什么?我试过采樱桃,但想确定最好的方法。
发布于 2014-09-24 18:44:53
如果我正确理解你的描述,你的回购现在看起来是这样的,
... -- o [develop]
\
1 -- 2 -- 3 -- 4 [feature1]你想让它看起来像那样
3'-- 4'[feature2]
/
... -- o [develop]
\
1 -- 2 [feature1]对,是这样?如果是这样,请执行以下操作。
首先,确保你处于干净的工作状态。然后,创建并签出一个名为feature2的分支,该分支指向与develop相同的提交
git checkout -b feature2 develop你的回购将如下所示。
... -- o [HEAD=feature2,develop]
\
1 -- 2 -- 3 -- 4 [feature1]樱桃-选择两个感兴趣的提交(3和4):
git cherry-pick <commit-ID-of-3> <commit-ID-of-4>在此之后,您的回购将如下所示。
3'-- 4'[HEAD=feature2]
/
... -- o [develop]
\
1 -- 2 -- 3 -- 4 [feature1]最后,查看您的feature1分支并将其重置为两个提交返回:
git checkout feature1
git reset --hard HEAD~2你的回购会如愿以偿,
3'-- 4'[feature2]
/
... -- o [develop]
\
1 -- 2 [HEAD=feature1]你就会处于一个干净的工作状态。
https://stackoverflow.com/questions/26023761
复制相似问题