我正在自己的分支上工作,但是我上一次提交时遇到问题。
1)以前,我使用错误的提交消息提交了一些更改,并通过git commit --ammend命令更新了提交消息。
现在,我可以在分支上的git存储库上看到此提交,并且带有先前提交的消息。 (修改前的消息)
2)现在,我又提交了另一项更改,当我要推送它时,除了当前的提交外,我还看到先前的修订提交也在推送列表中。
但是我无法推送它们,git说我需要合并它们,但是当我单击合并时,它说我:
17:41提取失败:下面仍然有裁判 'refs / remotes / origin / mybr'
17:41推送被拒绝:推送被拒绝,并且更新失败并显示错误。
我不知道mybr实际来自哪里。不是我正在处理的分支。
我该如何解决此问题是什么问题?
答案 0 :(得分:1)
是的,正如Tyler指出的那样,由于您重写了您的中现在不存在的提交,因此您尝试推送到远程的历史记录与分支的远程历史记录不匹配。历史。
如果,这是一个功能分支,您一个人可以在其上工作,只需告诉git您要做,即使它与当前一个:
git push --force <remoteName> <branchName>
如果您与其他人共享分支,那么不是您的最佳选择。但是我想你会这么说的。
答案 1 :(得分:1)
我建议您在哈希功能正常的位置创建一个新分支,然后将文件复制到该新分支,然后提交并推送到原始文件
之后,将您的分支强制到新分支上并删除新分支。那应该可以使事情顺利进行