Git commit --amend后Git not-fast-forward错误

use*_*330 3 git git-amend git-commands

我使用git commit --amend修改了之前的提交.在那之后,当我推动我的更改时,由于'not -fast-forward'错误,我被拒绝了.我找到了答案.不幸的是,如命令,git pull --rebase,git fetech origin不工作.如果我的本地仓库没有冲突,为什么我的推送失败了.

Jan*_*dec 5

永远不要修改或重新提出你已经发布的承诺!

如果您发布了一个提交而其他人提取它,那么提交就会保留.修改或改组时,您创建一个新提交并忘记旧提交.但是当其他人已经拥有旧提交时,它将不会为它们更新.因此,当它们稍后合并时,提交的两个版本将合并导致破坏.

有了这个错误,git阻止你推送你已经错误发布的修改版本的提交.

规则有例外.如果你想要一个没有人工作的备份,你可以在那里推送新的历史(称为倒带).如果有一个分支被宣布为倒带(例如git自己的"pu"分支和所有主题尚未在"next"中),那么倒带显然很好.

如果您确定不会因此而导致问题,您可以通过使用告诉git继续并快退

git push -f
Run Code Online (Sandbox Code Playgroud)

它也是配置为镜像的远程控制器的默认设置.

请注意,某些存储库可以配置钩子以禁止倒带或禁止重绕某些分支.