【问题标题】:How to resolve conflicts of merge --squash via command line of a protected branch?如何通过受保护分支的命令行解决合并 --squash 的冲突?
【发布时间】:2020-05-15 18:45:19
【问题描述】:
我正在尝试将 --squash 功能分支合并到 master(受保护且无法推送到),
并且有冲突。所以自动合并失败了,我收到一条消息,它应该通过命令行完成,并附有一些说明:
同时获取
签出受保护的分支(主)
运行合并命令
解决冲突
推送到受保护的分支(主)
这当然是失败的,因为我无法推送到受保护的分支。所以我留下了冲突,无法合并分支。
是否有正确的方法将 --squash 分支合并到受保护的分支中?
我该如何解决这些冲突?
【问题讨论】:
标签:
git
git-merge
conflict
squash
【解决方案1】:
这意味着您的分支位于 master 分支之后,而 master 向前移动,并且同一文件/同一行中可能存在 git 无法自动解析的更改。您可以先将其变基到 master 上,解决冲突(如果有)并将您的分支推送到远程。
git fetch origin
git checkout master
git pull origin master
git checkout <your branch>
git rebase master
git push --force origin <your branch>
现在您的分支将与 master 保持同步,然后您就可以执行之前的操作了。