【问题标题】:Error in Github when I do "git push origin master" (error: src refspec master does not match any)当我执行“git push origin master”时 Github 出错(错误:src refspec master 不匹配)
【发布时间】:2021-03-27 08:08:26
【问题描述】:

我在 Github 存储库中的分支是“master”。在终端我做了:

git 分支

输出是:

* 主要

我的临时工作

我想将文件推送到 Github,我使用了:

git add exploratory_analysis.ipynb

git commit -m "新版本"

git push origin master

“git add”和“git commit”命令有效。但是,最后一个命令(即“git push origin master”)不起作用,我收到此错误:

错误:src refspec master 不匹配任何

错误:未能将一些引用推送到 'git@github.com:NAME-OF-USER/REPOSITORY-NAME.git'

也就是说,我似乎无法将任何代码从笔记本电脑推送到 Github。我该如何解决?

【问题讨论】:

  • 您实际上无法将 文件 推送到另一个 Git 存储库。你只能推送 commits。提交 contain 文件,但您要么发送整个提交,要么不发送任何内容。您的 conversation with Davis S 处于正确的轨道上,但在尝试将提交添加到其提交之前,您需要确保拥有上游 (GitHub) 存储库的所有提交。

标签: linux git github


【解决方案1】:

几天前我遇到了同样的问题。 如果您现在(2020 年)创建了一个新的存储库,那么默认分支在 GitHub 上的main

您现在可以在您的存储库分支中查看 GitHub。

这就是你需要运行的原因

git push origin main

而不是

git push origin master

祝你好运,更多细节你可以观看video

【讨论】:

  • 谢谢。我从笔记本电脑中删除了一些尚未推送的文件,然后“git push origin main”处理了一个文件。
  • 我遇到了类似的问题,但我的是主分支,我尝试了他的做法,说要推送到 master,但我无法解决
  • 你的建议对我不起作用,我使用了 git push origin main -f
【解决方案2】:

如果分支命令输出 main,为什么要推送到 master?试试 'git push origin main'

还发现了这个变化的解释: https://stackoverflow.com/a/65008828/1959534

【讨论】:

  • 你好,我也尝试使用'git push origin main'。但是,如果我使用“git push origin main”,那么文件夹中的所有文件都会从我的笔记本电脑推送到 Github。当我执行 'git push origin main' 时,大约有 4000 个文件被推送到 Github,这需要相当长的时间。我的目标是一次推送一个文件(例如,只推送 exploratory_analysis.ipynb)。
  • 你确定没有其他任何东西被暂存(检查 git status)?如果您只在 exploratory_analysis.ipynb 上执行了 git add 并提交了它,那么它将被推送。
  • 嗨,David S,我现在刚刚做了“git status”。这是“git status”的结果:在主分支上 你的分支在 'origin/main' 之前 19 次提交。 (使用“git push”发布你的本地提交) 没有提交,工作树干净
  • Akey,这就解释了为什么有更多的文件被推送,还有 18 个额外的提交在本地等待。他们也应该被推吗?如果没有,您可以使用 'git reset HEAD~19' 取消暂存所有文件,然后重新暂存您要推送的文件。
  • 我这样做了,但它不起作用。我做了'git reset HEAD~19'但我仍然得到同样的错误。
猜你喜欢
  • 2012-05-21
  • 2011-08-13
  • 2014-02-11
  • 2018-01-28
  • 2023-01-30
  • 2012-12-13
  • 1970-01-01
  • 1970-01-01
  • 2018-07-30
相关资源
最近更新 更多