Git 复制连续多个提交
有时候我们有一个分支A,里边包含了提交A1->A2->A3->A4->A5等。然后我们又有一个分支B,里边包含了提交A1->A2->B1->B2->B3,现在我们想把分支A中的A3,A4,A5版本复制到分支B上,我们应该怎么办呢?
我们可以使用cherry-pick 三次,分别将A3,A4,A5复制到B上,但是如果我们需要cherry-pick的提交数量达到10个以上怎么办呢?其实cherry-pick支持自动多个连续的饿提交复制。
方法如下:
现在在B分之上,然后
git cherry-pick A3^..A5
上述命令会把A3和A5之间的所有提交都复制到当前分支上。
上述命令等同于:
git cherry-pick A2..A5
cherry-pick的区间遵从前开后闭的原则, (A2, A5],也就是说不包含A2,包含A5。所以你会看到我们使用了A3^来表达A3的父亲节点。
期间会遇到不少冲突,解决完冲突后请:git cherry-pick --continue
小人才疏学浅,看官不喜勿喷,谢谢