我在mysql_
创建了一个新的仓库,并遵循规定的非常简单的步骤。首先,我在本地文件夹中Bitbucket
进行版本控制。然后我做了:
git init
那很有用。最后一步是:
git remote add origin https://my_account@bitbucket.org/my_account/my_project.git
我获得了以下内容:
git push -u origin master
为什么我会收到此错误?
答案 0 :(得分:5)
如果有人仍然收到此错误,请在git add .
之前尝试git commit -m "init"
和git push origin master
。希望这有用。
答案 1 :(得分:1)
您没有master
分支。
考虑你所做的步骤:
git init
:这创建了一个新的空存储库,没有提交。
鉴于没有提交,提交哪个分支或分支? (这是一个有点哲学的问题,但它应该得到你最好的答案。)
git remote add origin url
:这添加了一个远程,它基本上只是一个URL的简称。您的空存储库现在有一个名为origin
的遥控器,它是URL的缩写。
git push origin master
:这会要求您的Git将短名origin
指定的URL推送到其他Git,master
分支上的所有提交,不在他们的 master
分支上,然后将他们的master
分支设置为指向与您的{{相同的特定分支提示提交1}}分支。
现在,计算存储库中的所有提交。那里有多少?你希望你的Git在第3步推进多少次提交?分支master
上有多少次提交?如果没有提交,那么分支master
甚至是否存在? (这让我们回到第1步中的哲学问题。)
现在假设您{<1}}某些文件到索引(索引是您构建 next 提交的位置),然后运行master
。你有多少次提交?提交将在哪个分支上进行? (这个问题最终令人惊讶地棘手,虽然事实上显而易见的答案 - “所有新提交,因此是一次提交,将在分支git add
上” - 是正确答案。)
在Git的世界中,分支永远不会为空 - 它永远不会没有提交。没有提交的分支根本就不存在。奇怪的是,你可以 on 这样的分支。 (这些分支有两个不同的形容词,用于描述或创建它们,具体取决于您正在查看的Git命令或输出:未出生的分支和孤儿分支。)
在Git中分支意味着你的 next 提交,你在索引中构建的那个将扩展那个分支,为它添加一个新的提交。因此,您的问题的解决方案是在分支git commit
时至少进行一次提交,以便分支master
与您首次提交时出现。然后你就可以推它了。
答案 2 :(得分:0)
最后我尝试了这个。可以。
git push origin HEAD:<remoteBranch>