重新定级时如何从父分支中删除提交?

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

假设我有一个分支widget,是通过分支feature并添加一些有关构建widget的提交而完成的。

我现在希望小部件在master中可用,而没有其余功能。是否有一种自动方法来制作仅由widget以及有关小部件的内容组成的master新版本?

简单地检出widget并进行git rebase master是行不通的,因为那样会使功能的所有其他部分随身携带。

我可以执行git rebase --interactive master,但是这需要手动识别和删除与小部件无关的提交。有没有可以给我三个分支名称的命令,并让它自动执行此操作?

git rebase
1个回答
2
投票

一种非常简单的方法是选择提交由master创建的新分支的方法:

git checkout -b widget-2 master
git cherry-pick feature..widget

# then to apply that to the real widget branch and get rid of the temp

git checkout -B widget widget-2
git branch -d widget-2
© www.soinside.com 2019 - 2024. All rights reserved.