git clone 远程分支
git clone 远程分支
小祁1124 发表于1年前
git clone 远程分支
  • 发表于 1年前
  • 阅读 5
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

git clone 远程分支

标签: gitbranchpythonandroidj#up

2012-03-22 10:20 78630人阅读 评论(0) 收藏 举报

 

有时Git clone下来会出现很多branch,更麻烦的是如果主分支没代码那你就只能看到.git目录了。如下面的这个:

$ git clonegit://gitorious.org/Android-eeepc/mesa.git

 

  发现本地就只有一个.git目录,那么这个时候就需要checkout了。

  进入你的本地目录,如这个是mesa,利用

$ git branch –r

  查看branch信息(当然你也可以用git show-branch查看,不过有时并不好用),获得如下branch信息:

origin/android
origin/mesa-es
origin/mesa-es-dri

  此时我们需要的是android分支的代码,那么此时就要进行checkout了。

$ git checkout origin/android

  你再看你的目录(mesa)下是不是有了代码了?其它的branch同理。

 

 

git clone默认会把远程仓库整个给clone下来; T2 {0 t, l+ @0 U" C2 g) i
但只会在本地默认创建一个master分支
如果远程还有其他的分支,此时用git branch -a查看所有分支:

  1. * master   
  2. remotes/origin/HEAD -> origin/master   " A4 u3 ~+ n5 u5 \7 R" Z( d# J
  3. remotes/origin/master   
  4. remotes/origin/python_mail.skin   
  5. remotes/origin/udisk   
  6. remotes/origin/vip
复制代码

能看到远程的所有的分支,如remotes/origin/python_mail.skin  e  Y' X9 ~, f1 |
可以使用checkout命令来把远程分支取到本地,并自动建立tracking

  1. $ git checkout -b python_mail.skin origin/python_mail.skin) X& X: I3 Q; ?9 j9 T5 @; J/ M
  2. Branch python_mail.skin set up to track remote branch python_mail.skin from origin.; i/ B! ^3 J# u6 a( }. I$ M- i
  3. Switched to a new branch 'python_mail.skin'
复制代码

或者使用-t参数,它默认会在本地建立一个和远程分支名字一样的分支
折叠展开复制代码

  1. $ git checkout -t origin/python_mail.skin
复制代码

也可以使用fetch来做:

  1. $ git fetch origin python_mail.skin:python_mail.skin
复制代码

不过通过fetch命令来建立的本地分支不是一个track branch,而且成功后不会自动切换到该分支上- z) t: R4 p- s6 _2 d3 a
注意:不要在本地采用如下方法:

  1. $ git branch python_mail.skin
  2. $ git checkout python_mail.skin/ i8 z/ N: a% v/ Q: M
  3. $ git pull origin python_mail.skin:python_mail.skin
复制代码

因为,这样建立的branch是以master为基础建立的,再pull下来的话,会和master的内容进行合并,有可能会发生冲突... 

标签: Git
共有 人打赏支持
粉丝 15
博文 77
码字总数 18220
×
小祁1124
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: