Git Rebase - 与 master 变基时缺少合并请求

问题描述 投票:0回答:1

使用 master 进行变基时,合并提交丢失,而代码更改保持不变。

变基前的初始分支(非主分支)状态:

commit 52c********************************
Merge: 1******
Author: M*********************************
Date:   Tue Feb 9 17:49:25 2016 +0530

    Merge pull request #1342 from *********************

    Changes for ******************

commit 6be**********************************
Author: Ma***********************************
Date:   Tue Feb 9 14:39:48 2016 +0530

    Changes for W********************************
    commit ef2***********************************

一旦我们使用 master 进行 rebase,以“52c..”开头的合并提交就会在 git 日志中丢失。

git github git-rebase
1个回答
0
投票

我在这里展示的

git rebase --rebase-merges与Git 2.18(2018年第2季度)取代了我在2016年在评论
中提到的旧的
--preserve-merges

默认情况下,变基只会从

todo

列表中删除合并提交,并将变基提交放入单个线性分支中。

使用

--rebase-merges

,变基将通过重新创建合并提交来尝试保留要变基的提交内的分支结构。这些合并提交中任何已解决的合并冲突或手动修改都必须手动解决/重新应用。

因此,虽然

git rebase -p

 在 2016 年工作,但当前的答案是 
git rebase -r

© www.soinside.com 2019 - 2024. All rights reserved.