我昨天还能推,现在却推不动了。

当我使用git push origin master时,我得到一个错误:

$ git remote -v
origin  https://github.com/REDACTED.git (fetch)
origin  https://github.com/REDACTED.git (push)

$ git push origin master
Username for 'https://github.com': REDACTED
Password for 'https://REDACTED@github.com':
To https://github.com/REDACTED.git
! [rejected]         master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/REDACTED.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

我的工作目录和远程存储库看起来像什么:


当前回答

由于最近的“在GitHub中用main替换master”操作,如果你执行git show-ref,你可能会注意到有一个refs/heads/main。因此,下面的命令可能会从

git push heroku master

to

Git push Heroku Main

这样你的问题就解决了。

其他回答

记得在推送到GitHub存储库之前提交您的更改。这可能会解决你的问题。

由于最近的“在GitHub中用main替换master”操作,如果你执行git show-ref,你可能会注意到有一个refs/heads/main。因此,下面的命令可能会从

git push heroku master

to

Git push Heroku Main

这样你的问题就解决了。

对于Sourcetree用户

首先进行初始提交,或者确保没有任何未提交的更改。然后在Sourcetree的一侧有一个“REMOTES”。右键单击它,然后单击“推到原点”。好了。

在我的案例中,Git预推钩子有一个问题。

运行git push——verbose查看是否有任何错误。

在. Git /hooks目录下仔细检查你的Git钩子,或者将它们临时移动到另一个地方,看看之后是否一切正常。

如果您创建了一个空的repo并且忘记使用,也会得到这个错误

git init

在你第一次提交之前。