我正在按照gitlab的说明执行发布分支到我们的develop分支的本地合并:
在本地签出,查看和合并
第1步。获取并检出该合并请求的分支
git fetch origin git checkout -b releaseX origin/releaseX
第2步。在本地查看更改
第3步。合并分支并解决出现的所有冲突
git fetch origin git checkout origin/develop git merge --no-ff releaseX
第4步。将合并结果推送到GitLab
git push origin develop
我之前已经拉过发布分支,所以我从开发分支的第3步开始。
git fetch origin
-在开发中获取了一些更改
git checkout origin/develop
-创建了一个独立的头部
git merge --no-ff releaseX
-与冲突合并
我手动解决了所有冲突,然后恢复:
git commit
-调出提交消息编辑器;保存并关闭了
git push origin develop
尝试推送没有任何反应,并回答:
Everything up-to-date
我不确定从这里去哪里。到目前为止,我发现的所有答案似乎都不适用于此。我找到的最接近的是this one,但不确定所讨论的方案是否适用于此。
我应该提到,我在Windows上使用git,为此使用git bash。
答案 0 :(得分:2)
关键部分是:
git checkout origin/develop
-创建了一个独立的头部
如果您使用的是分离头,请不要担心按下本地分支(例如git push origin develop
)会触发...什么都没有:开发HEAD不变。
相反,更新开发:
git checkout develop
git pull
然后进行合并:git merge --no-ff releaseX
:解决冲突,添加,提交和推送。
有什么方法可以将磁头重新连接到
origin/develop
?
是:请确保您的分支develop
引用您当前的(分离的)头部。
(请仔细检查git status
仍显示头部分离)
参见git branch -f
:
git branch -f develop