如何删除已合并的分支并保留日期

时间:2018-04-27 07:48:16

标签: git

假设使用主线A和已经合并的分支B的git历史记录。

                  b1     b2
             -----•------•---            B
            /                \
   •------•----•--------------•-------•  A
   a1     a2   a3             a4      a5   

a4是合并提交w / commit消息合并"合并B到A。

是否可以将历史记录更改为以下内容。

                    b1'  b2'
   •-----•-----•-----•-----•-----•  A
   a1     a2   a3                a5  

编辑: 如果可能,我不想更改提交日期。

1 个答案:

答案 0 :(得分:1)

git cherry-pick保存提交日期

1)去提交a2 git checkout a2
2)创建新分支C git branch C
3)转到新的分支C git checkout C
4)从A分支git cherry-pick a3 b1 b2 a5获取 5)回到A git checkout A
6)永久删除比提交a2 git reset --hard a2更新的所有内容 7)从分支C git cherry-pick a3 b1 b2 a5获取 8)最好删除分支C,删除分支C git branch -D C