Git如何管理远程仓库分支?
It’s important to note that when you do a fetch that brings down new remote-tracking branches, you don’t automatically have local, editable copies of them. In other words, in this case, you don’t have a new serverfix branch — you have only an origin/serverfix pointer that you can’t modify
推送本地分支到远程(远程没有该分支)
git push <remote> <branch>
例如将本地serverfix分支推送到远程,这样远程仓库也有serverfix分支了: git push origin serverfix
本地拉取远程分支(本地没有该分支):两步走-先拉取再checkout
$ git fetch origin $ git checkout -b serverfix origin/serverfix
拉取远程serverfix分支到本地的serverfix分支
将本地已有分支与远程已有分支建立track关系
如下在本地serverfix分支敲这个命令:将当前分支 与 远程仓库的serverfix分支建立track关系
$ git branch --set-upstream-to origin/serverfix Branch serverfix set up to track remote branch serverfix from origin. or 简写成: $ git branch -u origin/serverfix
其他命令
查看本地分支与远程分支的track关系:git branch -vv
$ git branch -vv iss53 7e424c3 [origin/iss53: ahead 2] Add forgotten brackets master 1ae2a45 [origin/master] Deploy index fix * serverfix f8674d9 [teamone/server-fix-good: ahead 3, behind 1] This should do it testing 5ea463a Try something new
- 远程仓库分支列表以及详细
列表:git ls-remote <remote>
详细:git remote show <remote>
- 删除远程仓库的分支
git push origin --delete serverfix