我使用以下内容克隆存储库:

git clone ssh://xxxxx/xx.git 

但在我更改一些文件并添加和提交它们之后,我想将它们推送到服务器:

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'

当前回答

我有一个非常长的本地分行名称。

git branch -m new_shorter_branch_name

解决了问题。

其他回答

也许GitHub不知道你是谁。

首先,您必须运行:

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

要修复它,请重新初始化并遵循正确的代码序列:

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

我遇到了同样的问题,我使用了--允许空:

$ git commit -m "initial commit" --allow-empty
...
$ git push
...

补充

这个问题的一个主要原因是,在克隆新的存储库时,一些Git服务器(如BitBucket)没有初始化其主分支。

这个问题主要有两种可能性。让我们逐一考虑一下。

可能是错误,主分支甚至不存在。在我的例子中,它被命名为main,而不是master。在这种情况下,您需要用main替换master。您甚至还没有提交更改。如果是这种情况,请转到-->

git添加。gitcommit-m“初始提交”git推送原点<branch>

那么它应该会起作用。

尝试一下,会很好。:)

权限问题?解决方案:分叉

我收到这个错误是因为我没有对存储库的推送权限,所以我不得不分叉它,然后我在分叉的存储库上再次执行了pull、commit和push命令。