为什么我不能推送空提交?

Modified on: Tue, 20 Nov 2018 11:20:03 +0800
  git commit --amend --allow-empty

然后

  git push origin master

git说那个

! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'remoteurl' To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes (e.g. 'git pull') before pushing again. See the 'Note about fast-forwards' section of 'git push --help' for details.

为什么呢?如何解决这个问题?

作者:Kim

最佳答案

问题不在于您正在推送提交
它是关于推送不同的提交(一个具有不同的SHA1)而不是已经推送的提交。
这就是git commit --amend所做的:它修改了最后一次提交,它没有创建一个新提交。

这意味着您推送不同的历史记录而不是其他人可能已克隆的历史记录
如果您确定这不会有问题,您需要强制推送:

git push -f origin master

你应该做完:

git commit --allow-empty

您可能已经创建了一个 new (空)提交,您可以毫无问题地推送它。

作者:rageit,VonC

相关问答

添加新评论