为远程指定git分支

时间:2011-02-09 10:50:02

标签: git github

我正在尝试从github更新我的webbynode,但我收到了以下消息:

  

您要求从远程'git@github.com:sigbackup / gsapp.git'中提取,但未指定   分店。因为这不是当前分支的默认配置远程,所以必须在命令行上指定分支。

所以我已经查看了这个论坛寻求帮助,我发现了一些关于.git/config文件的评论,但我看起来已经很好了(至少对我来说):

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        fetch = +refs/heads/*:refs/remotes/origin/*
        url = git@github.com:sigbackup/gsapp.git
[branch "master"]
        remote = origin
        merge = refs/heads/master
[branch "origin"]
        remote = origin
        merge = refs/heads/master

我错过了什么吗? 我有什么想法可以解决它吗?

PS我也试过git pull origin git@github.com:sigbackup/gsapp.git而且我得到了

  

致命:无法找到远程参考git@github.com

2 个答案:

答案 0 :(得分:24)

您检查了哪个本地分支?

git status显示了什么?

您可能正在处理除本地主分支之外的其他分支。如果要从github获取新提交并将它们合并到本地主分支,则必须:

git checkout master
git pull

如果您希望在您正在工作的分支机构中进行这些提交,则需要:

git pull origin master

你接近PS的尝试,但最后一个参数应该是分支名称,而不是repo url。


您也可以从github获取新提交,并且不要将其合并到任何本地分支中,并使用:

git fetch origin

然后使用git diffgit log等审核这些更改,稍后将其合并到当前已检出的分支中:

git merge origin/master

答案 1 :(得分:5)

你有一个名为origin的分支,这很奇怪。 origin用于命名在git clone期间自动创建的远程;你将遇到麻烦,不得不消除origin - 分支和origin - 遥控器的歧义。您是否手动将分支添加到.git/config?你运行了什么命令?我怀疑你搞砸了。