技术背景

Git是代码版本最常用的管理工具,此前也写过一篇介绍Git的基本使用的博客,而本文介绍一个可能在特定场景下能够用到的功能--直接拉取指定分支的内容。

Git Clone

首先看一下如果我们按照常规的操作去拉取一个Gitee的代码仓,是什么样的效果:

$ git clone https://gitee.com/mindspore/mindscience.git
正克隆到 'mindscience'...
remote: Enumerating objects: 2884, done.
remote: Counting objects: 100% (97/97), done.
remote: Compressing objects: 100% (83/83), done.
remote: Total 2884 (delta 21), reused 46 (delta 9), pack-reused 2787
接收对象中: 100% (2884/2884), 21.49 MiB | 1.59 MiB/s, 完成.
处理 delta 中: 100% (1454/1454), 完成.
$ cd mindscience/
$ git branch
* master

拉取了仓库之后,我们发现默认是把master分支给拉取了下来,此时如果要切换到线上的另一个分支dev-md,就需要在本地用git checkout -b新建一个分支,然后在git pull远程的dev-md分支。而且之后要push的时候,还需要用set_upstream对齐等等。这样的操作是比较麻烦的,特别是有时我们就只需要其中某一个特定的分支,那我们就可以按照下面的步骤来进行,在clone时就加上-b branch_name的操作,就可以指定分支进行拉取:

$ git clone -b dev-md https://gitee.com/mindspore/mindscience.git
正克隆到 'mindscience'...
remote: Enumerating objects: 2884, done.
remote: Counting objects: 100% (97/97), done.
remote: Compressing objects: 100% (83/83), done.
remote: Total 2884 (delta 21), reused 46 (delta 9), pack-reused 2787
接收对象中: 100% (2884/2884), 21.49 MiB | 1.70 MiB/s, 完成.
处理 delta 中: 100% (1454/1454), 完成.
$ cd mindscience/
$ git branch
* dev-md

可以看到,在拉取结束后,分支名也跟上游进行了同步,我们就可以在想要的分支上进行操作了。

总结概要

当我们使用Gitee和Github等通过Git来进行代码版本管理的平台时,有时会面临这样的一个问题:某一个代码仓里面划分了很多个分支,而我只需要其中的某一个特性分支,此时如果直接克隆下来,就会导致一系列的麻烦操作。而我们只需要在clone的指令加上一条配置,就可以直接指定分支进行拉取,方便后续的操作。

版权声明

本文首发链接为:https://www.cnblogs.com/dechinphy/p/git-branch.html

作者ID:DechinPhy

更多原著文章请参考:https://www.cnblogs.com/dechinphy/

打赏专用链接:https://www.cnblogs.com/dechinphy/gallery/image/379634.html

腾讯云专栏同步:https://cloud.tencent.com/developer/column/91958

CSDN同步链接:https://blog.csdn.net/baidu_37157624?spm=1008.2028.3001.5343

51CTO同步链接:https://blog.51cto.com/u_15561675

git clone指定分支的更多相关文章

  1. git clone 指定分支 拉代码

    1.git clone 不指定分支 git clone http://10.1.1.11/service/tmall-service.git 2.git clone 指定分支 git clone -b ...

  2. git clone 指定分支

    使用Git下载指定分支命令为:git clone -b 分支名仓库地址 克隆asp.net core 2.1.6版本 git clone -b 2.1.6 https://github.com/asp ...

  3. git clone 指定分支的内容

    使用Git下载指定分支命令为:git clone -b 分支名仓库地址 使用Git下载v.2.8.1分支代码,使用命令:git clone -b v2.8.1 https://git.oschina. ...

  4. linux git clone 指定分支

    git clone -b develop http://192.168.11.11:8888/scm/git/vrmmo 指定下载develop分支

  5. git clone 指定分支操作

    服务器迁移,而且原来本地开发是在同一个目录中切换不同的分支,感觉有点挫,于是打算一个文件目录对应一个分支,这样不会有太大的文件差异. 记录下来本次操作,可能以后还会用到. git初始化一般是这样. g ...

  6. Git 克隆指定分支代码

    git clone 指定分支 拉代码 1.git clone 不指定分支 git clone  http://10.1.1.11/service/sz-service.git 2.git clone ...

  7. git命令行clone指定分支、更新、冲突解决、提交代码步骤

    clone指定分支 : git init 初始化仓库 git clone -b 分支名  git@192.168.3.166:xxxx/xxxx.git   克隆指定分支 更新 :git status ...

  8. 克隆指定的分支:git clone -b 分支名仓库地址

    克隆指定的分支:git clone -b 分支名仓库地址 git clone -b 分支名 仓库地址 -b 是在克隆的时候制定一个分支

  9. git命令学习之clone指定分支代码

    今天要拉取一个项目,但是是一个指定分支,本来我以为直接git clone就行,但是发现好像不能,报错: Cloning into 'lecture'...fatal: unable to update ...

随机推荐

  1. Failed to write HTTP message,Could not write JSON错误

    今天遇到使用@ResponseBody注解返回json数据时报错 Failed to write HTTP message: org.springframework.http.converter.Ht ...

  2. C++大作业——教职工管理系统

    教职工信息管理系统 1.问题描述: 设计一个学校职工管理系统,要求实现如下功能:建立职工信息数据, 包括职工编号.姓名. 性别.工资.出生时间.岗位.参加工作时间和年 龄(必须计算得到),初始模拟数据 ...

  3. '\ddd'转义字符与八进制转换

    所有的ASCII码都可以用"\"加数字(一般是8进制数字)来表示.而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等, ...

  4. chrome插件one-read开发1:准备

    阅读我的博客文章:chrome插件one-read开发:准备 前言 为啥要做这个,因为我原本想用chrome做一个书签管理的东西,但是很久没有碰过chrome的插件开发了.所以先做一个简单的,来熟悉下 ...

  5. webpack+vue-cli+ElementUI+vue-resource 前端开发

    线上商城项目(电脑0环境)1.安装node.js (参考http://www.runoob.com/nodejs/nodejs-install-setup.html): 2.安装 webpack (全 ...

  6. ES6-11学习笔记--函数的参数

    参数的默认值 与解构赋值结合 length属性 作用域 函数的name属性   ES5设置函数参数默认值: function foo(x, y) { y = y || 'world'; console ...

  7. Oracle中between 和 in

    select * from test_s where id between 2 and 12; between 就是左右全闭区间. SELECT columnsFROM tablesWHERE col ...

  8. 检查是否安装ASM

    ASM和管理 ASM是一个有效的抽象层,使Oracle数据库可以与叫做DiskGroups的抽象空间一起使用,而不是直接使用DataFiles. Oracle ASM脱离操作系统的文件系统约束,使得对 ...

  9. 『忘了再学』Shell基础 — 8、管道符介绍

    我们之前已经有文章说过管道符了,今天这里再简单总结一下用法. 1.行提取命令grep grep命令的作用,是在指定的文件中,搜索符合条件的字符串. 命令格式: [root@localhost ~ ] ...

  10. Java的源码执行(建议结合Javase语法学习来加深印象)

    一.源码执行时的先后顺序: 父类的静态属性和静态块(按照声明顺序) 本类的静态属性和静态块(按照声明顺序) main方法 父类的成员属性和成员块(按照声明顺序) 父类构造器 本类成员属性和块(按照声明 ...