场景:我有两个分支:develop
和feature_xyz
。我正在通过 Gitlab 中的合并请求将feature_xyz
集成到develop
中,但我面临着非快进的情况,所以我必须在本地将develop
变基为 feature_xyz
,然后再次推送和请求。
但是我遇到了一个循环变基问题:变基后本地变基develop
feature_xyz
,当我尝试将本地feature_xyz
分支推送到远程时,我收到一个错误,说我的本地分支落后于其远程对应项。将遥控器变基到我的本地feature_xyz
分支并推送它工作得很好,但是如果我尝试再次将develop
变基到我的feature_xyz
本地分支中,如果我尝试推送到feature_xyz
远程分支,我将面临同样的错误。
我怎样才能解决它,而不必强制或删除遥控器并再次推送本地?
PS.:合并不是一种选择。
我认为你需要做的不是变基,而是合并。
您应该将develop
合并到沙盒中的feature_xyz
中,并推送更新的feature_xyz
分支。
git checkout feature_xyz
git merge develop
# test the merged results and commit any required fixes
git push
然后,拉取请求确实会根据需要进行快进合并。
理想情况下,不应重定已推送的分支的基数。Rebase 最好保留给仅存在于沙盒中的私有分支。