gpt4 book ai didi

git - 在 git 上 merge 一个主题分支,删除所有主题分支的提交历史?

转载 作者:太空狗 更新时间:2023-10-29 13:31:42 25 4
gpt4 key购买 nike

我想知道在 git 中是否可以执行以下操作:

假设我有以下历史:

A---B---C---D---E  master
\
W---X---Y topic

我想将主题分支中所做的所有更改 merge 回 master,但不保留提交历史。也就是说,而不是:

A---B---C---D---E---F  master
\ /
W---X---Y topic

我想要以下历史:

A---B---C---D---E---F  master

其中 F 是 master 分支中的新提交,相当于在提交 WX 中所做的更改Y,一次全部应用。

我还希望能够保持主题分支完好无损:

A---B---C---D---E---F  master
\
W---X---Y topic

这可能吗?我一直在用 git rebase 进行一些测试,但到目前为止它并没有按照我需要的方式运行。

提前致谢。

最佳答案

它应该比 bad zeppelin 建议的更简单,但我还没有尝试过:

$ git checkout master
$ git merge --squash topic
$ git commit *what has changed*

但是,当我正确理解 git help merge 时,它应该可以解决问题。

关于git - 在 git 上 merge 一个主题分支,删除所有主题分支的提交历史?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6884094/

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