010.progit笔记---git多个远程分支

01、已经有origin远程仓库,再通过git remote add teamone git://git.team1.ourcompany.com添加另外一个远程仓库(只添加了仓库,本地并无其分支数据)

  

 02、拉取远程git fetch teamone,由于第二个远程仓库,只是第一个仓库的子集,所以只加了1个远程跟踪分支

  

 03、将本地master推送到远程分支

  $ git push origin master------>等价于$ git push origin refs/heads/master : refs/heads/master   或等级于 $ git push origin master : master  (将本地的master分支,推动到远程master分支)

  $ git push teamone master

  $ git push origin master : <remote-name>  (将本地master分支推送到origin仓库,分支名改为remote-name)

04、拉取远程分支

  $ git fetch origin  (仅拉取远程仓库,本地无此远程分支工作分支)

  $ git merge origin/<branch-name>  (将远程仓库分支合并到当前工作分支)

  $ git checkout -b <local-branch> origin/<remote-branch>  (创建本地工作分支,并跟踪远程分支)

05、修改跟踪的远程分支

  $ git branch -u origin/<remote-branch>  (添加/修改本地分支跟踪的远程分支,可将本地dev分支,改到跟踪远程master分支)

06、查看本地分支跟踪的远程分支

  $ git branch -vv

  

  iss53跟踪远程origin/iss53,且本地2次提交没推送到远程分支

  master跟踪远程origin/master,且和远程同步

  serverfix跟踪远程teamone/server-fix-good,3次提交未更新,远程1次提交未合并到本地

  testing未跟踪远程分支

  上述所有信息,都来自本地缓存的远程仓库,并未和远程仓库通信。

  若要查看最新的,$ git fetch --all; git branch -vv

07、git pull 

  由于git fetch仅从远程拉取数据,并不会合并到本地工作目录。

  $ git pull  (从当前工作分支跟踪的远程分支拉取数据,并合并到当前工作分支。等价与 $ git fetch; $ git merge)

08、删除远程分支

  $ git push origin --delete serverfix  (服务器仅移除此指针,Git服务器会保留一段时间知道垃圾回收运行。所以误删很容易恢复)

原文地址:https://www.cnblogs.com/geniushuangxiao/p/12678443.html