今天想使用一下之前开源项目Blog_mini一个分支的代码,于是把整个项目克隆下来:
1
2
3
4
5
6
7
|
xpleaf@leaf:~
/test
$ git clone https:
//github
.com
/xpleaf/Blog_mini
正克隆到
'Blog_mini'
...
remote: Counting objects: 1153,
done
.
remote: Total 1153 (delta 0), reused 0 (delta 0), pack-reused 1153
接收对象中: 100% (1153
/1153
), 2.18 MiB | 238.00 KiB
/s
, 完成.
处理 delta 中: 100% (673
/673
), 完成.
检查连接... 完成。
|
然后查看分支,发现竟然没有之前创建的分支:
1
2
|
xpleaf@leaf:~
/test/Blog_mini
$ git branch
* master
|
这是因为git clone命令默认就是克隆仓库中master的代码的,但是可以查看远程仓库的分支:
1
2
3
4
5
6
7
8
9
|
xpleaf@leaf:~
/test/Blog_mini
$ git branch -r
origin
/HEAD
-> origin
/master
origin
/master
origin
/version_1
.0
xpleaf@leaf:~
/test/Blog_mini
$ git branch -a
* master
remotes
/origin/HEAD
-> origin
/master
remotes
/origin/master
remotes
/origin/version_1
.0
|
然后再使用git checkout命令切换到自己期望的分支上:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
xpleaf@leaf:~
/test/Blog_mini
$ git checkout remotes
/origin/version_1
.0
Note: checking out
'remotes/origin/version_1.0'
.
You are
in
'detached HEAD'
state. You can
look
around,
make
experimental
changes and commit them, and you can discard any commits you
make
in
this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do
so (now or later) by using -b with the checkout
command
again. Example:
git checkout -b <new-branch-name>
HEAD 目前位于 2ff197d... update README.md
|
于是就可以看到目前已经在分支version_1.0上了,相应的代码也会克隆下来:
1
2
3
4
5
6
|
xpleaf@leaf:~
/test/Blog_mini
$ git branch
* (头指针分离于 origin
/version_1
.0)
master
xpleaf@leaf:~
/test/Blog_mini
$
ls
app LICENSE migrations README.md requirements.txt
config.py manage.py Procfile requirements
|
当然上面是用Github的例子来说明,实际上使用Gitlab或者其它自己搭的Git服务器也是可以的,因为使用的都是Git版本控制系统。
本文转自 xpleaf 51CTO博客,原文链接:http://blog.51cto.com/xpleaf/1927278,如需转载请自行联系原作者