我想做一些类似于git rebase但没有折叠并行提交的东西。
假设我有以下提交:
B (bar)
/
A-C-D (foo)
现在我想在分支foo中将D引入的更改引入C中,并将它们应用于分支栏中的B.所以我最终得到以下结果:
B-E (bar)
/
A-C-D (foo)
提交B和E之间的差异等于提交C和D之间的差异。这可能吗?有没有办法在不创建补丁的情况下做到这一点?
是:
git checkout -b mergebranch B
git cherry-pick D
如果您希望挑选的分支上的最后一次提交(示例中的foo)是合并提交,则可以使用git cherry-pick branchname~1
指向特定提交以进行提取,以获取作为其父级的提交。合并。
在我的情况下,我需要应用另一个分支的特定提交的更改。我这样做是通过樱桃挑选它们:git cherry pick COMMIT-HASH
。