0
You asked to pull from the remote 'hub', but did not specify a branch.
Because this is not the default configured remote for your current
branch, you must specify a branch on the command line.

我的问题是:以下是什么意思?

default configured remote for your current branch

我们配置了一个远程 REPO。

谁能澄清一下?

4

3 回答 3

1

每个本地分支都可以配置为“跟踪”远程分支。这意味着:每当您拉出远程并在远程分支上发生更新时,git 将尝试更新您的本地分支以包含远程分支的所有变更集:如果本地分支上没有发生任何事情,它将被快速转发到远程分支的新提示;如果您在本地分支上有本地提交,则两个不同的分支将被合并。

otoh,没有规则说您的本地分支必须跟踪远程分支。拥有彼此无关的本地分支foobar和远程分支是完全有效的。hub/foobar

经验法则是:

  • 克隆远程存储库时,默认情况下,本地分支clone跟踪所有远程分支(在 时存在)

  • 添加新远程时,默认不会跟踪远程分支

如果您想让本地分支明确地跟随远程分支,我发现-u在推送到远程时最容易使用该标志:

 git checkout localbranch
 git push -u <REMOTE>
于 2013-04-24T11:41:41.307 回答
0

意思是它所说的,你试图从远程仓库中提取,hub而指定分支的远程是别的东西。如果您这样做git branch -a,它将向您显示该分支当前正在远程跟踪的内容。

于 2013-04-24T11:30:02.733 回答
0

git remote -v

它将显示每个远程的名称以及相关 git 服务器的 url。
然后,

git pull [REMOTE] master

应该允许您从 git 服务器中提取。[REMOTE] 是您从上一个命令中获取的名称。

编辑。我想添加更多细节。当您使用 克隆 git 存储库时git clone [GIT_URL],git 会自动配置与分支origin关联的远程命名。masterRungit pull等价于 run git pull origin master,也git push等同于git push origin master.
回到你的问题,你运行git pull hub,但默认关联 remote-branch 是origin-master所以你可能必须运行

git pull hub master

让它工作

于 2013-04-24T11:31:26.187 回答