Git 如何删除已合并的分支并保留日期
假设跟随git历史,主线A和已经合并的分支BGit 如何删除已合并的分支并保留日期,git,Git,假设跟随git历史,主线A和已经合并的分支B b1 b2 -----•------•--- B / \ •------•----•--------------•-------• A a1 a2 a3 a4 a5 a4是一个合并-提交w/提交消息-合并“将B合并到a” 是否可以将历史记录
b1 b2
-----•------•--- B
/ \
•------•----•--------------•-------• A
a1 a2 a3 a4 a5
a4是一个合并-提交w/提交消息-合并“将B合并到a”
是否可以将历史记录更改为以下内容
b1' b2'
•-----•-----•-----•-----•-----• A
a1 a2 a3 a5
编辑:
如果可能,我不想更改提交日期。
git cherry pick
保存提交日期1) 转到提交a2
git签出a2
2) 创建新的分支C
git分支C
3) 转到新分支C
git签出C
4) 从分支机构取货
git cherry pick a3 b1 b2 a5
5) 返回A
git签出A
6) 永久删除比提交a2更新的所有内容
git reset--hard a2
7) 从C分支机构取货
git cherry pick a3 b1 b2 a5
8) 删除分支C很好,删除分支C
git branch-dc也必须将a5
重写为一个新的和不同的提交。在a3git rebase a2
@Daniel1147 afaik cherry pick不会改变从git rebase a2 a
中选择的提交如果您已经在分支A上。a3、b1、b2和a5将被重写,a4将被展平。感谢您的提示,它不能解决a5和a3的提交日期问题。它不适用于大型存储您希望a5和a3中的哪个日期?(我的解决方案中的步骤以与图片a1 a2 a3 b1 a5中相同的顺序保存日期)