过去我使用过svn和cvs,但从不使用BitBucket或Git。我刚刚获得了一个与空项目关联的BitBucket帐户。
我阅读Getting Started with Bitbucket并在我的BitBucket页面上我应该执行以下操作:
git clone https://bitbucket.org/REST_OF_URL/...
我使用Git提供的URL;它成功接受我的密码没有任何麻烦。但它会打印以下内容:
警告:您似乎克隆了一个空存储库。
这对我来说很有意义,因为我刚刚注册了BitBucket。
这会生成一个名为myproject
的目录。然后我将一个文件复制到该目录并将其添加到存储库中:
cd myproject
echo 'Hello Git!' > hello.txt
git add hello.txt
我检查了状态:
git status
并看到hello.txt被识别为新文件。
然后我尝试将文件推送到服务器:
git push https://bitbucket.org/REST_OF_URL/...
再次,我输入了我的密码并没有抱怨。 它写着:
一切都是最新的
但该文件在我的在线Git项目中显示不。我还注意到有一个git commit
命令。我也尝试过这个:
git commit -m "Initial project set up"
输出显示:
您的姓名和电子邮件地址是根据自动配置的 您的用户名和主机名。请检查它们是否准确。
由于文件仍未显示在我的目录中,我觉得我必须在自己的机器上进行本地提交。任何人都可以通过告诉我来帮助我
正如另一位用户从the Git BitBucket manual体验到的那样,当您推送
时,它只会传输git push origin master
但是当你用
推进时,不工作git push
这解决了我的问题,但我仍然不知道为什么会这样。
答案 0 :(得分:6)
简单的解决方案是第一次使用master分支推送:
$ git push origin master
然后,您可以使用git push
默认推送到Bitbucket(主分支)。
答案 1 :(得分:3)
git add
仅将文件添加到本地索引,以便可以提交。你首先需要git commit
(你做过),然后git push
你对BitBucket的提交,这样他们就会出现在那里。
您认为自己在当地提交是正确的。这可能是分散版本控制系统(DVCS)的定义特征之一。您可以在本地计算机上获得项目历史的完整副本。当您git push
时,您将本地提交的提交发送给BitBucket。
您的项目文件夹顶层应该有一个.git
目录。这是所有元数据的用武之地。
答案 2 :(得分:0)
您可能希望在http://www.ava.co.uk/git查看这些视频。其中有9个,平均每个约4分钟,完成基础知识,希望能够平息一个陡峭的学习曲线...随意宣传此条目如果您发现视频有益
答案 3 :(得分:0)
使用Bitbucket,您还可以选择使用Mercurial,它比Git更容易使用,并使其术语更接近Subversion。我个人确实主要使用Git,但仍然很努力地抓住它的概念和实现。对我来说,Mercurial更容易使用,尽管过去从未使用过Subversion。我从命令行使用Git和Mercurial,因此这不是对CLI的厌恶。
是的,您的提交始终是Git和Mercurial的本地提交,然后您将其推送到Bitbucket或其他服务器或托管解决方案。如果您希望继续使用Mercurial(甚至可能与Git派上用场,因为概念相似),您可能需要阅读Hg Init至少阅读intro对比分布式SCM到集中模型。如果你想要一个面向Git的资源或书籍考虑Pro Git,但它不如Hg Init那么好(或简短)。