gpt4 book ai didi

Git rebase : Merge branch before last commit

转载 作者:太空狗 更新时间:2023-10-29 14:38:17 24 4
gpt4 key购买 nike

我有以下场景:

分支特征

A - X (HEAD)

Branch Master(自创建分支以来有一些新东西)

A - B - C

如果我执行 git merge(在分支功能之上)我有:

A - X - B - C

有没有办法做一些 rebase 来得到 A - B - C - X?如果我还没有提交,那么 master 分支中的更改可能会被快速转发,所以我想在该分支上有一个更全面的 git 日志。

真正的用例(也许我做的不好)是:我创建了一个分支,用于从主分支开发新功能。在做了一些提交之后,有人告诉我 master 分支有一个错误已经修复了,所以我也必须从 master 那里得到那个更改。 Git merge ,工作正常,但如果我稍后执行 git 日志,我会在我的提交之上看到大量不相关的提交,并且显示我在我的分支中所做的更改有点困惑。

最佳答案

如果我没理解错的话,你的repo原来的状态是这样的:

  B - C [master]
/
A - - - X [feature]

现在,如果您 merge (featuremaster),您将最终

A - X - B - C

正如您在问题中所写的那样,但是

  B - C - D [HEAD,master]
/ /
A - - - X [feature]

相反,您应该执行以下操作

git checkout feature
git rebase master

你最终会得到

A - B - C [master]
\
X' [HEAD,feature]

根据需要 :)

关于git rebase的推荐阅读:

关于Git rebase : Merge branch before last commit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25490376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com