是否有方法将一组连续提交从一个(本地)分支移动到另一个分支?我已经找了很多,但仍然没有找到一个明确的答案,我想做什么。
例如,假设我有这个:
master A---B---C
\
feature-1 M---N---O---P---R---Q
我已经决定,最后的3次承诺最好是这样:
master A---B---C
\
feature-1 M---N---O
\
f1-crazy-idea P---R---Q
我知道我能做到这一点,而且确实有效:
$ git log --graph --pretty=oneline (copying down sha-1 ID's of P, R, Q)
$ git checkout feature-1
$ git reset --hard HEAD^^^
$ git checkout -b f1-crazy-idea
$ git cherry-pick <P sha1>
$ git cherry-pick <R sha1>
$ git cherry-pick <Q sha1>
我希望有一个更简洁的方法来实现这一点,可能是使用git rebase,尽管我没有太多的运气。
任何洞察都将不胜感激。
谢谢,
杰米