我克隆了我的存储库:
git clone ssh://xxxxx/xx.git
但是在我更改了一些文件和 add
和 commit
之后我想将它们推送到服务器:
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'
30 回答
我的更改已提交
Force push仍然给了我同样的错误 .
所以我试了Vi's solution:
这对我有用 .
我有同样的问题 . 我按照以下步骤来做
希望它会帮助任何人
just add a initial commit ,follow steps:-
git add .
git commit -m“initial commit”
git push origin master
这对我有用
也许你只需要提交 . 我做的时候碰到了这个:
哎呀!从不承诺!
我所要做的就是:
成功!
Try this:
对我来说,我必须确保 public key 在服务器中正确配置(附加在〜/ .ssh / authorized_keys中)和github / bitbucket(添加到我在github或bitbucket上的SSH密钥) - 它们需要匹配 .
然后:
最后为我工作 .
如果在分离HEAD模式下工作时出现此错误,则可以执行以下操作:
另见:making a git push from a detached head
如果您位于与远程分支不同的本地分支上,则可以执行以下操作:
是你需要的所有代码跟踪你的目录中的所有未跟踪文件
缺少或跳过
git add .
或git commit
可能会导致此错误:要修复它,请重新初始化并遵循正确的顺序:
当您在特定分支中并尝试推送另一个尚不存在的分支时,也会发生这种情况,例如:
添加文件,忘记提交和推送时会发生这种情况 . 所以提交文件然后推送 .
在提交之后和推送之前我忘了做一个“git pull origin master”它导致了同样的问题:“当在git中提交提交时,src refspec master不匹配” . 那么,你应该做的是:
确保先添加,然后提交/推送:
喜欢:
在git只添加了一个目录后,我发现这发生在一个全新的存储库中 .
一旦我添加了一个文件(例如README),git push就能很好地工作 .
要修复它,请重新初始化并遵循正确的代码序列:
我错过了跑步时遇到了同样的问题:
(您必须至少有一个文件,否则您将再次收到错误)
我在添加空目录时遇到了这个问题 . Git不允许推送空目录 . 这是一个简单的解决方案 .
在要推送到远程的目录中创建文件.gitkeep,并从命令行提交“空”目录:
我认为这是因为你推了一个无效的分支 . 通常因为存储库没有公共主分支(可能是开发分支) . 你可以使用git branch来查看分支 .
这对我来说重置为远程主控回购
如果你是第一次使用它,你需要配置你的git:
试试
git show-ref
看看你有什么裁判 . 是refs/heads/master
?您可以尝试使用
git push origin HEAD:master
作为更多与本地参考无关的解决方案 . 这明确指出您要将本地refHEAD
推送到远程refmaster
(请参阅git-push refspec文档) .如果您在执行git init并推送初始提交后遇到此问题 . 您可以尝试以下方式,
您的代码将作为新分支推送 .
如果您尝试推送的分支名称中有拼写错误,也会发生这种情况 .
此问题的另一个可能原因是您拼错了分支名称 . 所以如果你做了我做的事情,那么问题将通过纠正:
至
我的问题是“主”分支尚未在本地创建 .
快点
创建了主分支,在这一点上,快速:
推动工作到git repo .
我遇到了同样的问题而且我使用了
--allow-empty
.第一个git add .
秒git commit -m "message"
第三个git push origin分支请检查拼写错误,因为这也可能会出错 .
删除本地计算机中的所有文件后,我也遇到了类似的错误,我必须清理存储库中的所有文件 .
我的错误信息是这样的:
并通过执行以下命令解决:
就是这样,希望这会有所帮助 .
为此,您需要输入如下的提交消息,然后按下代码
成功地推到掌握
这只是意味着你忘了做初始提交,试试