我正在Heroku上主持。我想推动一下:
git push master Heroku
我收到消息:
error: src refspec master does not match any.
error: failed to push some refs to '[email protected]: etc ...'
这对我有用: -
git push heroku HEAD:master
只需添加一个问题的答案即可
您正面临此错误,因为Git仅在提交到您的本地存储库后才创建主分支。如果你只是初始化repo那么就没有master。
那么你如何解决它?
只需添加并提交至少一个更改到您的repo并重新运行push命令。您可以添加和提交一个简单的.gitignore文件,同样在其他答案中说明
我遇到过你遇到的问题。我这样解决了这个问题
$ touch readme
$ git add .
$ git commit -m "init"
$ git push heroku master
我不知道为什么。
乍一看,你看起来你的master
和Heroku
参数是错误的,因为git push
的第一个参数应该是远程存储库的名称,第二个是refspec(通常是分支)。您更有可能拥有一个名为master
的分支和一个名为Heroku
的远程分支。但我希望你得到一个不同的错误信息,如果是这种情况,如:
fatal: 'master' does not appear to be a git repository
fatal: Could not read from remote repository.
您看到的错误消息暗示没有本地master
分支。如果你还没有提交任何提交,那就是这种情况,因为git在第一次提交之前不会创建分支。您可以通过运行来检查:
git show-ref
如果你有一个主分支,你应该看到一行包含refs/heads/master
。如果没有,那么试试运行:
git commit -m 'Initial commit'
您还可以找到您可用的遥控器:
git remote -v
如果你有一个名为Heroku的遥控器你应该看到类似的东西:
Heroku [email protected]:yourproject.git (fetch)
Heroku [email protected]:yourproject.git (push)
当我不在我的本地主分支上时尝试推送到Heroku时出现此错误。
我解决了
git push heroku my_branch_name:master
并用我所在的git分支的名称替换my_branch_name
。我想这告诉Heroku在Heroku的主分支上接收这个本地分支。
在我的情况下,这发生是因为我没有什么可推动的。我先忘了先做一个“git add”。一旦我为实际内容做了“git add”然后“git commit”,推送工作正常。
实际上,我需要创建一个文件,否则提交是空的。
touch readme.md
这是一个迟到的答案,但可能会帮助某人。
而不是这个:
git push master Heroku
尝试:
git push heroku master
我按照heroku的分步指南来到这里。对我来说,问题是在存储库中创建最小文件,提交它然后再次推送到heroku之后解决的。