如何通过受保护分支的命令行解决合并--squash冲突?

时间:2020-01-30 07:43:19

标签: git git-merge conflict squash

我正在尝试-将功能分支压缩到master(受保护且无法推送到),
并且有冲突。因此,自动合并失败了,并且我收到一条消息,提示应该通过命令行执行以下操作:

  1. 同时获取

  2. 检出受保护的分支(主)

  3. 运行合并命令

  4. 解决冲突

  5. 推送到受保护的分支(主服务器)
    这当然会失败,因为我无法推送到受保护的分支。因此,我陷入了冲突,无法合并分支。

是否存在将分支合并为受保护分支的正确方法?
我该如何解决这些冲突?

1 个答案:

答案 0 :(得分:1)

这意味着您的分支位于master分支后面,而master向前移动,并且同一文件/同一行中可能存在git无法自动解析的更改。您可以先将其重新建立到主服务器上,解决冲突(如果存在),然后将分支推送到远程服务器。

git fetch origin
git checkout master
git pull origin master
git checkout <your branch>
git rebase master
git push --force origin <your branch>

现在您的分支机构将与master保持最新,然后您就可以执行之前的工作了。