在 Git 中推送提交时出现消息 “src refspec master 不匹配”

我用以下方法克隆我的存储库:

git clone ssh://xxxxx/xx.git

但是,在我更改了一些文件并addcommit它们之后,我想将它们推送到服务器:

git add xxx.php
git commit -m "TEST"
git push origin master

但是我得到的错误是:

error: src refspec master does not match any.  
error: failed to push some refs to 'ssh://xxxxx.com/project.git'

答案

也许您只需要提交即可。我这样做的时候遇到了这个问题:

mkdir repo && cd repo
git remote add origin /path/to/origin.git
git add .

糟糕!从未犯过!

git push -u origin master
error: src refspec master does not match any.

我要做的就是:

git commit -m "initial commit"
git push origin master

成功!

  1. 尝试使用git show-ref来查看您拥有的参考。是否有refs/heads/master

  2. 您可以尝试使用git push origin HEAD:master作为更独立于本地引用的解决方案。这明确表明您要将本地 ref HEAD推送到远程 ref master (请参阅git-push refspec文档)。

在删除本地计算机上的所有文件后,我也遇到了类似的错误,并且我必须清理存储库中的所有文件。

我的错误消息是这样的:

error: src refspec master does not match any.
error: failed to push some refs to 'git@github ... .git'

通过执行以下命令解决了该问题:

touch README
git add README

git add (all other files)
git commit -m 'reinitialized files'
git push origin master --force  # <- caution, --force can delete others work.
  1. 我的更改已经提交
  2. 强制推送仍然给了我同样的错误。

所以我尝试了Vi 的解决方案

git push origin HEAD:<remoteBranch>

这对我有用。

git push -u origin master
error: src refspec master does not match any.

为此,您需要输入以下提交消息,然后推送代码:

git commit -m "initial commit"

git push origin master

成功地推向高手。

对我来说,我必须确保的公共密钥正确的服务器(在〜/ .ssh / authorized_keys 的附加)上配置并在GitHub 上 / 到位桶 (加入 GitHub 上或到位桶我的 SSH 密钥) - 他们需要匹配。

然后:

git add --all :/

git commit -am 'message'

git push -u origin master

最后它对我有用。

在我仅添加目录之后,我发现这发生在全新的存储库中。

一旦我添加了一个文件(例如自述文件),Git push 的效果就很好。

缺少或跳过git add .git commit可能导致此错误:

git push -u origin master
Username for 'https://github.com': yourusername
Password for 'https://yourusername@github.com': 
error: src refspec master does not match any.
error: failed to push some refs to 'https://github.com/yourusername/foobar.git'

要修复此问题,请重新初始化并遵循正确的顺序:

git init
git add .
git commit -m 'message'
git *create remote
git push -u origin master

要修复此问题,请重新初始化并遵循正确的代码顺序:

git init
git add .
git commit -m 'message'
git push -u origin master

确保先添加,然后提交 / 推送:

喜欢:

git init
git add .
git commit -m "message"
git remote add origin "github.com/your_repo.git"
git push -u origin master