Src refspec master与任何错误都不匹配:无法推送一些引用

时间:2017-08-20 20:19:31

标签: windows git visual-studio visual-studio-2015 bitbucket

我的本​​地磁盘上有一个VS 2015项目,我想使用代码版本控制系统来与其他人合作。

他告诉我要使用BitBucket。

我在BitBucket上建立了一个新的存储库,我想将我的项目放入其中。

因此我下载了“Git on Windows”。 在安装过程中,我选中了“使用Windows命令行”。 然后我启动了cmd,然后运行了以下命令:

d:\dev\projects\myproject>
git init
git remote add origin https://MYNAME@bitbucket.org/MYREPONAME/OSC.git
git push -u origin master

最后一个命令返回错误

"error: src refspec master does not match any. error: failed to push some refs to "https://MYNAME@bitbucket.org/MYREPONAME/OSC.git""

当我输入“git branch”时,不会返回任何内容。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

git init创建了一个空存储库。该存储库中有零(计数!)提交。

git remote add origin <url>将Git称之为远程 - 另一个Git存储库的短名称 - 添加到现有的空存储库中。您现有的存储库继续没有提交零。

git push <remote> <branch>告诉你的Git打电话给另一个Git。你的Git这样做了。然后它告诉你Git向你的其他Git发送你没有的所有提交,你的Git可以在你的分支上找到(master,在这种情况下)。

你仍然没有提交。你有多少次提交,他们没有?

现在,有一个有趣的(相关的)旁注:在Git中,分支甚至不能存在,直到它至少有一个提交。因此,当您 master分支时,您的master实际上并不存在。这解释了错误消息的确切形式。

但解决方案仍然相同:您必须在master分支上的存储库中添加一些提交。您创建的第一个将导致该分支实际存在,并且一旦您有一些他们没有的提交,您将能够发送您拥有的提交,他们不会#39对他们来说。

(这并不意味着他们接受你的提交,只是你会有一些要发送。但是,让我们不要借用我们还没看到的麻烦:首先,你可能应该创建一些提交。:-)也就是说,除非其他 Git - Bitbucket上的那个已经进行了一些提交。在这种情况下,您可能应该获得他们的。但我会假设他们也没有。)