我会尽力解释我的问题:
- 我们的主分支有以下提交:C1、C2、C3
- 我从 master 创建了自己的功能分支并推送了一个提交,所以我将拥有:C1、C2、C3、C4
- 与此同时,master 分支又进行了一次提交,因此我们有:C1、C2、C3、C5
- 我将我的功能分支从主分支 rebase ,并获得:C1、C2、C3、C4、C5
问题是当我创建一个从我的功能分支到主分支的 merge 请求时,我的 merge 请求将有两个提交要 merge :C4、C5(这里 C5 与主 C5 提交的哈希值不同) .
我的问题是,由于 C5 已经在 master 分支中,是否有任何方法可以仅 merge 我的提交 C4?
最佳答案
在 master
之上重新构建 feature
应该导致提交顺序:C1、C2、C3、C5、C4
尝试重新运行你的 rebase :
# from your 'feature' branch :
git checkout feature
# rebase on 'master' :
git rebase master
# your 'feature' branch should be rewritten, with commits 1,2,3,5,4
# please add a comment if this is not the case
一旦排序完成,推送你的分支(你需要使用--force
),并检查你的 merge 请求:它应该只提到C4
关于git merge request only feature 分支提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62823694/