gpt4 book ai didi

git - 在 Git 中 merge/ rebase 'disconnected' 分支

转载 作者:太空狗 更新时间:2023-10-29 13:22:45 24 4
gpt4 key购买 nike

假设我们在Git中有如下情况:

      X---Y feature
/
A---B---C---D edge

现在我重新设置 edge 分支的基线,稍微更改 B 提交(使用 edit),所以它现在看起来像这样:

      X---Y feature

A---E---C'---D' edge

C' 和 D' 与 C 和 D 是相同的提交,但应用在 E 之上(请注意 feature 分支中的 X 已断开连接)。

现在我怎样才能:

  1. Rebase/merge feature 分支,使其提交看起来就像是在 D' 之上应用的一样?
  2. Rebase/merge feature 分支,这样它的提交看起来就好像它们是在 E 之上应用的,但没有单独的“merge 分支...”提交(以及 C' 和 D ' 被重写为 C'' 和 D'')?

最佳答案

X 本身并没有断开连接,它仍然有原始的 B 作为它的父级。如果你想随后在 edge 之上 rebase feature,那么:

git checkout feature
git rebase edge

如果您希望更改树以使其具有与原始版本相似的结构,但将 X 作为 E 的子级,则:

git checkout feature
git rebase --onto <sha-of-E> <sha-of-B> feature

关于git - 在 Git 中 merge/ rebase 'disconnected' 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5349928/

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