'git remote show <remote>'不服从'config push.default'</remote>

时间:2012-07-19 02:33:54

标签: git

我需要一个本地分支拉动并推送到另一个名称的远程分支。克隆和提取后会自动设置拉取。但推动力有点困难。我想要这个:

git push <remote> <localBranch>:<remoteBranch>

每次都不必担心local:remote。感谢this blog post,我已经完成了所有工作。

正如博客解释的那样,我将我的全局配置设置为默认使用'upstream'选项。 e.g:

git config --global push.default upstream

它只用git push <remote>正确地将本地分支推送到远程分支。

但是当我在默认主分支作为上游的遥控器上执行git remote -v show <remote>时,我得到以下内容:

* remote <remote>
  Fetch URL: <giturl>
  Push  URL: <giturl>
  HEAD branch: master
  Remote branch:
    master tracked
  Local branch configured for 'git pull':
    myLocalBranch merges with remote master
  Local ref configured for 'git push':
    master pushes to master (local out of date)

为什么它仍然报告当地的“主”分支作为推送的来源?它甚至说过时了(如果使用当地的'主人'那就是这样)。除了在git push <remote>中执行Everything up-to-date结果外,所以它正确使用myLocalBranch

我误解了什么吗?这是git remote show命令中的错误吗?或者我的配置是否处于奇怪的状态?

1 个答案:

答案 0 :(得分:1)

实际上,OP的错误印象是'git remote'提到主人是myLocalBranch推动的分支。

事实并非如此:所有显示的是本地master正在推送到远程master(可能在回购的初始克隆期间设置)。

branch.myLocalBranch.merge未列出myLocalBranch特定于git remote的{​​{1}}配置。