拥有两个分支的存储库。
主分支提交:
c1,c2,c3,c4,c5,c6,c7,...,c15,......
Staging Branch提交:
c1,c2,c3,c4,c5,c6,c7
我想在 c7 之后将所有提交从Master分支转移到分段分支
然后还原主分支
带
git reset --hard c7-hash
如何将特定提交从一个分支移动/复制到另一个分支?
答案 0 :(得分:35)
在您描述的情况下,登台分支上的所有提交也在主分支上,这很容易:
git checkout staging
git merge master
git checkout master
git reset --hard c7-hash
合并将是一个快进。
在一般情况下,您可以使用git cherry-pick c8 c9 c10 c11 c12 c13 c14 c15
来挑选当前分支的单个提交。樱桃挑选主要但不是当前分支的所有提交的简短方法是git cherry-pick ..master
,还有git help cherry-pick