如何成功从远程服务器更新本地存储库?

时间:2014-07-30 04:48:59

标签: git github git-merge git-rebase

github.org中,B有一个名为helloworld.git的存储库和两个分支。

    http://github.org/B/helloworld.git:
        master
        dev   --> always updated.

我将存储库分叉到我的帐户A,并创建一个名为test的新分支。

    http://githu.org/A/helloworld.git:
        master
        dev
        test  --> do my work and commit it into this branch

我已将存储库签出到本地计算机中:

    git clone http://github.org/A/helloworld.git
    git checkout master
    git checkout dev
    git checkout test

然后,我想保持我的本地存储库从B的存储库更新:

    git remote add upstream http://github.org/B/helloworld.git
    git fetch upstream
    git checkout master
    git merge upstream/master
    git checkout dev
    git merge upstream/dev

如果我使用git status,则会显示Your branch is ahead of 'origin/dev' by 22 commits.

但是,当我提交时,出现错误:

    git checkout test
    (do some modifications in doc/Readme.md)
    git add doc/Readme.md
    git commit -am "modified doc/Readme.md"
    git push origin test

有一个错误:

    fatal: Authentication failed

怎么了?我怎么能成功地完成这项工作?谢谢!

1 个答案:

答案 0 :(得分:1)

如果您使用https网址作为原始仓库,引用您的分支,那么您需要输入A GitHub帐户登录名/密码作为凭证。

使用git remote -v

检查您当前的遥控器

我更喜欢在网址中添加用户名,以便只输入密码:

git remote set-url origin http://A@github.org/A/helloworld.git