你怎么能只拉当前分支?

有没有一个configuration方式来设置,而不必指定哪个分支?

Git已经只是拉动当前的分支。 如果将分支设置为跟踪分支,则不需要指定远程分支。 git branch --set-upstream localbranch reponame/remotebranch将build立跟踪关系。 然后你发出git pull [--rebase] ,只有那个分支会被更新。

当然,所有远程跟踪分支和远程的所有参考都将被更新,但是只有您的本地跟踪分支将被修改。

我只是这样做了:

 git pull origin "$(git branch | grep -E '^\* ' | sed 's/^\* //g')" 

要么

 git pull origin $(git rev-parse --abbrev-ref HEAD) 

这从git branch提取当前分支,并从远程原点拉取该分支。

请注意,就像Seth Robertson所说的那样,当没有给出参数时,只有当前分支被修改,但所有远程分支都被获取。 我不想取所有的远程分支,所以我这样做了。

试试这个新版本的git:

 $ git config --global push.default current 

--set-upstream标志已弃用,将被删除。 因此,使用--track--set-upstream-to

例如:如果你想为这个分支设置跟踪信息,你可以这样做:

 git branch --set-upstream-to=<remote>/<branch> develop 

是的,在.gitconfig有一个可以更改的.gitconfig ,例如:

 [push] default = current 

这将推动当前分支在接收端更新同名的分支。

检查:

 git config --global --get push.default 

请参阅: git-config 。