分享

git 把远程分支拿到本地,并建立关联关系track

 灬木木的花灬 2015-08-21

http://www./lib/view/open1328069889514.html

从远程分支 checkout 出来的本地分支,称为_跟踪分支(tracking branch)_。跟踪分支是一种和远程分支有直接联系的本地分支。在跟踪分支里输入git push,Git 会自行推断应该向哪个服务器的哪个分支推送数据。反过来,在这些分支里运行git pull 会获取所有远程索引,并把它们的数据都合并到本地分支中来。

在克隆仓库时,Git 通常会自动创建一个名为 master 的分支来跟踪 origin/master。这正是git push 和 git pull 一开始就能正常工作的原因。当然,你可以随心所欲地设定为其它跟踪分支,比如origin 上除了 master 之外的其它分支。刚才我们已经看到了这样的一个例子:git checkout -b [分支名] [远程名]/[分支名]

  1. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (master)  
  2. $ git checkout --track origin/br-2.1.2.1  
  3. Branch br-2.1.2.1 set up to track remote branch br-2.1.2.1 from origin.  
  4. Switched to a new branch 'br-2.1.2.1'  
  5.   
  6. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (br-2.1.2.1)  
  7. $ git status  
  8. # On branch br-2.1.2.1  
  9. nothing to commit, working directory clean  
  10.   
  11. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (br-2.1.2.1)  
  12. $ git br  
  13. * br-2.1.2.1  
  14.   br-2.1.2.2  
  15.   master  
  16.   
  17. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (br-2.1.2.1)  

删掉刚才track的分支

  1. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (master)  
  2. $ git br  
  3.   br-2.1.2.1  
  4.   br-2.1.2.2  
  5. * master  
  6.   
  7. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (master)  
  8. $ git status  
  9. # On branch master  
  10. nothing to commit, working directory clean  
  11.   
  12. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (master)  
  13. $ git branch -d br-2.1.2.1  
  14. warning: deleting branch 'br-2.1.2.1' that has been merged to  
  15.          'refs/remotes/origin/br-2.1.2.1', but not yet merged to HEAD.  
  16. Deleted branch br-2.1.2.1 (was cec094b).  
  17.   
  18. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (master)  
  19. $ git br -v  
  20.   br-2.1.2.2 1dfeab3 [behind 9] 升级META客户端2.1.4.4  
  21. * master     89700a3 optimize upload file  

使用checkout命令,创建新的分支 br-2.1.2.1,跟踪远程的origin/br-2.1.2.1

  1. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (master)  
  2. $ <span style="color:#ff0000;">git checkout -b br-2.1.1.1  origin/br-2.1.2.1</span>  
  3. Branch br-2.1.1.1 set up to track remote branch br-2.1.2.1 from origin.  
  4. Switched to a new branch 'br-2.1.1.1'  
  5.   
  6. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (br-2.1.1.1)  
  7. $ git status  
  8. # On branch br-2.1.1.1  
  9. nothing to commit, working directory clean  
  10.   
  11. shuohailhl@SHUOHAILHL-PC /f/ggg/jingwei (br-2.1.1.1)  
  12.   
  13. $ git branch -a  
  14. * br-2.1.1.1  
  15.   br-2.1.2.2  
  16.   master  
  17.   remotes/origin/HEAD -> origin/master  
  18.   remotes/origin/br-2.1.2.1  
  19.   remotes/origin/br-2.1.2.2  
  20.   remotes/origin/br-2.1.3  
  21.   remotes/origin/master  




    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多