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

当我使用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.

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


当前回答

Git错误:当本地存储库名称与相应的远程存储库名称匹配时,也会出现未能推一些引用。在将更改拉入远程存储库之前,请确保您正在使用正确的存储库对。

如果拼写错误,并且希望删除本地存储库,请执行以下步骤。

删除Windows上的本地存储库:

del /F /S /Q /A .git 删除目录. 更正本地文件夹名称(XXXX02->XXXX20),或者如果是新创建的repo,则删除它并重新创建repo (XXXX02 repo名称更改为XXXX20)。 git init 如果没有映射,则使用远程repo重新映射。 git remote add origin https://github.com/<username>/XXXX20.git . zip Git push -u origin master

其他回答

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

git push heroku master

to

Git push Heroku Main

这样你的问题就解决了。

如果你试图用一个现有的GitHub存储库初始化一个目录,你应该确保你正在提交更改。

尝试创建一个文件:

touch initial
git add initial
git commit -m "initial commit"
git push -u origin master

这将放置一个名为initial的文件,您可以稍后删除该文件。

如果你使用git-with-ssh,它不起作用的一个原因是它可能指向错误的ssh-private-key文件或correct-file-wrong-private-key文件。如果我没记错的话,我最近在添加ssh-private-key时遇到了一些困难。所以我清空了那些妓女特工

ssh-add -D

然后一切都正常了!

我创建了一个自定义预推送文件,我忘记以exit 0结束它。

这导致我得到这个“未能推动一些裁判”错误。我将exit 0添加到pre-push hook的末尾,当然,现在它工作得很好。

当您没有任何文件时,可能会发生这种情况。 尝试创建一个文本文件,然后执行以下命令:

git add .
git commit -m "first commit"
git push --set-upstream origin master