GitHub - 错误:无法将某些引用推送到 'git@github.com:myrepo.git'

64
我运行了以下命令:

git add .

git commit -m 't'

接下来,当运行以下命令时:

git push origin development

我遇到了以下错误:

To git@github.com:myrepo.git
 ! [rejected]        development -> development (non-fast-forward)
error: failed to push some refs to 'git@github.com:myrepo.git'
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.

有什么方法可以解决上述错误吗?
15个回答

1
这个命令对我有效:

git push --set-upstream origin master

如果不起作用,请确保您正在推送当前分支。

App University>git branch
* master
  test

然后,您必须将代码推送到主分支。
 App University>git push origin master

1
不在有效分支上会出现此问题,正如此答案所指出的那样。如果您正在使用GIT的IDE插件,则可能会遇到此问题。有时这些插件默认为“master”,而更近期的默认值是“main”。因此,IDE插件可能会将存储库切换到主分支或其他分支 - 因此,当您进行手动提交时,可能会看到此问题作为结果。 - Mark Parris

0
$ git fetch --unshallow origin
$ git push you remote name

0

同样的错误,但是具体细节可能与存储库中隐私设置的更改有关。实际上,这些细节非常清晰明了。

例如:我更改了我的个人资料设置以隐藏我的电子邮件地址,这会影响到我所有的存储库。 但是,您可以保留该设置并在“电子邮件设置”部分取消选中“阻止命令行推送以公开我的电子邮件”选项。


0

我遇到了以下错误 $ git push origin main error: src refspec main does not match any error: failed to push some refs to 'https://github.com/--------/git-init-sample.git'

解决方案:我没有连接到本地git仓库 https://github.com/login/oauth/authorize?response_type=

一旦我连接上了,错误就消失了

$ git push origin main Enumerating objects: 3, done. Counting objects: 100% (3/3), done.


格式缺失 - mightyteja

0

我可以使用 "--force" 进行强制推送:

git push origin --force

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接