Git新建本地分支与远程分支关联问题:git branch --set-upstream
git在本地新建分支, push到remote服务器上之后,再次pull下来的时候,如果不做处理会报以下提示:
You asked me to pull without telling me which branch you
want to merge with, and 'branch.production.merge' in
your configuration file does not tell me, either. Please
specify which branch you want to use on the command line and
try again (e.g. 'git pull <repository> <refspec>').
See git-pull(1) for details. If you often merge with the same branch, you may want to
use something like the following in your configuration file: [branch "debug"]
remote = <nickname>
merge = <remote-ref> [remote "<nickname>"]
url = <url>
fetch = <refspec> See git-config(1) for details.
问题解析:
git本地新建一个分支后,必须要做远程分支关联。如果没有关联, git 会在下面的操作中提示你显示的添加关联。关联目的是如果在本地分支下操作: git pull, git push ,不需要指定在命令行指定远程的分支. 推送到远程分支后, 你只要没有显示指定, git pull 的时候,就会提示你。
解决方法:
使用命令git branch --set-upstream ;实例如下,其中debug为创建的分支
git branch --set-upstream debug origin/debug
命令的最终修改都是针对 config 文件。
使用-- set-upstream 去跟踪远程分支。
[core]
repositoryformatversion = 0
filemode = true
bare = true
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@192.168.1.160:android2.3.5_r1.git
[branch "master"]
remote = origin
merge = refs/heads/master [branch "debug"]
remote = origin
merge = refs/heads/debug [receive]
denyCurrentBranch = ignore
注意仓库.git目录下的config文件