我在GitHub中有一个Git分支,其中有一个开放拉取请求。但是我无法合并它,因为GitHub抱怨与最新的master冲突的文件。然后我将master和rebase master拉到我的本地分支,并且在rebase期间遇到冲突。因此,我解决了冲突,当尝试将分支推到原点时,我的推被拒绝,错误提示我当前分支的尖端在后面。但是,当我用力推动时,它将被接受。无论如何,我可以不使用强制推动来实现这一目标?
答案 0 :(得分:1)
由于重新设定基准会改变历史记录,因此需要某种强制推动。
幸运的是,有git push --force-with-lease
,如果与此同时向分支添加了另一个提交,它仍然会拒绝推送。
答案 1 :(得分:0)
您应该合并而不是重新合并,这不会重写历史记录,并且无需force push
就可以推送历史记录。如果您不想合并,那么很遗憾,如果没有force push
,我将无法实现。
答案 2 :(得分:0)
将您的代码推送到GitHub上的新分支。
git push origin old-conflicts-branch:new-remote-branch
然后,您可以继续使用新分支。旧的分支仍然存在,因此您可以删除它或将其保留为备份。