TortoiseHG关闭公共分支后推送失败:abort: push creates new remote head
解决TortoiseHG推送关闭公共分支时出现"push creates new remote head"错误的方法
这个错误的核心原因是:远程仓库的4.4.72分支存在本地未同步的提交,你推送关闭分支的变更会导致远程出现两个独立的分支头,Mercurial默认会阻止这类操作,避免公共分支出现混乱。
以下是具体解决步骤:
- 拉取远程最新变更:在TortoiseHG Workbench中点击顶部的
Pull按钮,将远程仓库的最新提交同步到本地。如果拉取过程中出现冲突,需要手动解决冲突后再提交。 - 合并分支头:拉取完成后,找到远程分支的头节点和你本地关闭分支的头节点,右键选择
Merge操作,合并两个变更集,完成后提交合并结果。 - 重新推送变更:合并并提交后,再次点击
Push按钮,即可正常推送关闭分支的变更。
如果确认远程的多余提交无需保留,可使用强制推送,但公共分支下严禁这么做——强制推送会覆盖远程提交,破坏协作环境。强制推送的命令为:hg push --force(在TortoiseHG中可在推送窗口勾选"Force push"选项)。

内容的提问来源于stack exchange,提问作者ottelo15
相关产品推荐
相关产品推荐

