在进行其他几次提交后,如何将一个提交分离到一个分支中?
我有一个具有以下结构的 Git 存储库:
A--B--C--D--E
我想将 C 提交分离到一个分支中:
C
/ \
A--B---D--E
我该怎么做?
I have a Git repo with the following structure:
A--B--C--D--E
I’d like to separate the C commit into a branch:
C
/ \
A--B---D--E
How do I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将创建一个指向
C
的新分支,名为new-branch
,最终结果如下:will create a new branch pointing to
C
namednew-branch
, ending up with this:正确的答案是尊重 D 在您想要的输出中有 2 个父母这一事实。我假设master 正在指向E。
你最终会得到这样的结果:
这将在合并到主分支时保留 C 作为父级。您可以使用 git rebase -i head^^^ 将 D 压缩为 Y。然后你会:
The correct answer is to honour the fact that D has 2 parents in the output that you want. I'm going to assume E is being pointed to by master.
you will end up with this:
this will preserve C as a parent in a merge into the main branch. You could squash D into Y with git rebase -i head^^^. You would then have: