Git克隆Github或Gitlab上非Master分支代码的方法

简介:

    今天想使用一下之前开源项目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,如需转载请自行联系原作者

相关文章
|
1月前
|
开发工具 git
图解Git——分支的新建与合并《Pro Git》
在Git开发中,新建与合并分支是常见的操作。以实际开发为例:为实现新需求创建分支`iss53`进行开发;遇紧急Bug时,切换至线上分支创建`hotfix`修复并合并回线上分支,再切换回`iss53`继续工作。完成`iss53`后,切换到`master`合并。若出现冲突,使用`git status`查看,手动编辑解决冲突后标记为已解决并提交。图形化工具如`git mergetool`也可辅助解决冲突。
48 9
|
12天前
|
开发工具 git 开发者
vscode+git解决远程分支合并冲突
通过这些详细步骤,您可以掌握如何使用VSCode和Git高效地解决远程分支合并冲突,提高开发效率和代码质量。希望这些内容对您的学习和工作有所帮助。
157 86
|
1月前
|
存储 项目管理 开发工具
图解Git——分支开发工作流《Pro Git》
分支开发工作流利用Git的分支功能,支持灵活的项目管理。长期分支如`master`和`develop`分别保存稳定和开发中的代码;短期主题分支用于开发单一特性或修复问题,完成后合并到主分支。此模式确保代码稳定性,支持并行开发、便于审查和灵活调整。建议维护明确的长期分支,保持主题分支短小精悍,并定期清理无用分支。配置上可保护关键分支,遵循命名规范。
60 7
|
1月前
|
存储 缓存 Java
图解Git——远程分支《Pro Git》
远程分支是 Git 中用于管理分布式协作的关键概念。远程引用指向远程仓库中的分支和标签,常用 `git ls-remote` 或 `git remote show` 查看。日常开发中,通常使用远程跟踪分支(如 `origin/main`)与远程分支交互,简化远程仓库状态的管理和使用。远程跟踪分支记录远程分支的状态,但本身只读。
32 6
Github分支管理范例
Github分支管理范例
80 0
Github分支管理范例
Github分支管理范例
77 0
|
5天前
|
开发工具 git C++
【够用就好002】外行第一次发布github项目仓库
#deepseek#自学 记录外行学习代码的历程 今天是上传自己的工具代码到github仓库,一直以来是伸手党克隆别人的项目,今天在deepseek的辅导下上传自己的内容。
|
1月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
197 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
4月前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
140 3
|
6月前
|
存储 安全 Java
【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私
在一次意外中,作者因三年前将测试代码遗忘在GitHub上而遭遇了代码被他人fork的问题。为解决这一危机,作者详细介绍了如何通过GitHub的DMCA下架通知流程安全删除敏感代码,包括处理私人信息和商标侵权的具体步骤。本文不仅提供了实用的操作指南,还强调了及时响应的重要性,帮助读者避免类似风险
162 1
【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私

热门文章

最新文章