初始化和上传回购的Mercurial操作相当于什么?

时间:2011-10-07 12:28:16

标签: git mercurial bitbucket

在Mercurial中,我通常这样做:

hg init
hg addremove
hg commit -m "init repo"
hg push https://arezzo:mypassword@bitbucket.org/arezzo/mynewrepo

我在git中尝试过类似的东西,但它不起作用:

git init .
git add .
git commit -m "init repo"
git push https://arezzo:mypassword@bitbucket.org/arezzo/mynewrepo

我在push之后得到的消息是:

Everything up-to-date

什么都没有被推到bitbucket。

1 个答案:

答案 0 :(得分:4)

当您在使用git push时未指定要推送的分支时,默认情况下它只会推送远程存储库中存在具有相同名称的分支的分支。在这种情况下,我猜这是您第一次推送到此存储库,因此还没有名为master的分支 - 因此,git push URL不会推送任何内容。

另一个可能有用的提示是,当您使用git时,通常会创建remote作为存储库URL的简称。因此,要稍微修改您的步骤,请尝试以下方法:

mkdir mynewrepo
cd mynewrepo

git init
git add .
git commit -m "Initial commit"
git remote add origin https://arezzo:mypassword@bitbucket.org/arezzo/mynewrepo
git push -u origin master

然后您可以使用origin代替网址。您只需要在第一次推送时使用-u选项 - 它只是设置了一些有用的默认配置选项,以便git pull可以在没有其他参数的情况下工作。