spl*_*cer 4 git merge date rebase cherry-pick
假设我有一个看起来像这样的git存储库:
merge-base---A1--A2------A3------A4 (branchA)
\
----------B1------B2 (branchB)
Run Code Online (Sandbox Code Playgroud)
为了简化操作,我们假设branchA上的提交是对fileA的严格修改,而branchB上的提交是对fileB的严格修改.
我想将这些分支组合成第三个分支,branchAB,其中提交将按日期排序:
merge-base---A1--A2------A3------A4 (branchA)
\
----------B1------B2 (branchB)
\
A1--A2--B1--A3--B2--A4 (branchAB)
Run Code Online (Sandbox Code Playgroud)
有没有办法用一个git命令自动执行此操作,还是我坚持使用手动方法(例如,cherry pick或rebase -i)?
BTW,merge-base是一个标签.
根据adymitruk的原始答案,这是一个可以满足我的需求的解决方案:
git checkout -b branchAB merge-base
git merge branchA
git merge branchB
git rebase --onto merge-base merge-base branchAB
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4477 次 |
| 最近记录: |