具体工作意义是从某一个Git仓库 克隆时,只克隆检测出这个仓库里的某些文件夹内容,而不是跟平常那样把整个仓库的内容都克隆下来

从1.7.0版本开始git提供稀疏检出的功能。所谓稀疏检出就是本地版本库检出时不检出全部,只将指定的文件从本地版本库检出到工作区,而其他未指定的文件则不予检出(即使这些文件存在于工作区,其修改也会被忽略)。

检查Git版本

在命令行中运行如下命令

git --version

比如保证git的版本大于1.7.0,这里以 git version 1.8.3.1作为演示。

创建仓库存放目录

mkdir swoole-src-examples && cd swoole-src-examples

创建一个目录,这里以swoole-src-example,并且使用cd命令进入到目录中。

初始化仓库

执行初始化仓库的命令

git init

添加远程仓库地址

git remote add origin https://github.com/swoole/swoole-src.git

使用Sparse checkout模式

使用下面的命令允许config中使用Sparse checkout模式。

git config core.sparsecheckout true

配置要检出的目录或文件

将要检出的目录或文件使用文件追加的形式写入到git的配置.git/info/sparse-checkout文件中,允许添加多行

echo "examples/*" >> .git/info/sparse-checkout

多次添加配置后,通过cat .git/info/sparse-checkout命令查看最终添加的目录或者文件。

从远程将目标目录或文件拉取下来

当仓库还是空白的情况下,首次需要执行下面的命令从远程将配置的目录或者文件拉取到本地。

git pull origin master

对配置增删改后重新获取代码

在对配置文件.git/info/sparse-checkout的内容进行操作之后,使用下面的命令重新修正目录和文件。

git checkout

稀疏检出-使用git检索出仓库里的某一个目录文件,而不是整个仓库的所有文件的更多相关文章

  1. Git下载GitHub仓库里的某一个文件夹或某一个文件

    从Github上下载github上的整个项目,可以用下面指令: git clone https://github.com/XXX/xxxxx.git 其中:XXX是用户在Github上的用户名 xxx ...

  2. git 检出项目部分目录(稀疏检出)

    git clone 会把整个项目都clone下来,对于大项目git status比较慢,每次pull时候也拉取一些无关的代码或者文件:git可以实现像svn一样检出部分目录 步骤: git clone ...

  3. git worktree 稀疏检出(sparseCheckout)

    稀疏检出配置: git config core.sparsecheckout true echo another_folder/xxxx/ >> .git/info/sparse-chec ...

  4. git 签出(恢复)指定文件

    在项目开发中,偶尔会因为误删文件或其他原因需要从git仓库中恢复某些文件.此篇文章将介绍如何通过git从历史提交记录.分支记录恢复指定文件. 1. git checkout 说明:使用git chec ...

  5. ElasticSearch(十)Elasticsearch检索出的数据列表按字段匹配的优先顺序及搜索单词拼音一部分搜不到数据

    检索出的数据列表按字段匹配的优先顺序 一.举例 比如,发布一篇文章,文章包括基本的字段包括标题.发布时间.点击率.关键字.内容.当在页面中输入“教育”搜索关键词,会检索出指定字段包括“教育”的所有数据 ...

  6. pb中sql语句用to_char查询出来数据,居然无法检索出数据,oracle数据库,这是什么原因?

    /*这样dw_modified总是无法检索出正确的结果*/ ') into :is_recoder_old_sn from emra03 where szybh01 = :as_pat_id and ...

  7. SQL学习之Insert的特殊用法(插入检索出的数据,表之间的数据复制)

    1.插入检索出的数据 select * from dbo.Customers_1

  8. MTK Android Git提取出两个版本之间的差异文件并打包

    git提取出两个版本之间的差异文件并打包 首先你得知道版本之间的commit id git log –pretty=oneline $ git log --pretty=oneline 1 差异文件并 ...

  9. 下载STRING数据库检索互作关系结果为空,但是在STRING网站却能检索出互作关系,为什么呢???关键词用的是蛋白ID(ENSP开头)

    首先介绍下两种方法: 一.本地分析 1.在STRING数据库下载人的互作文件,如下图,第一个文件 https://string-db.org/cgi/download.pl?sessionId=HGr ...

随机推荐

  1. http://man7.org/linux/man-pages/man2/epoll_wait.2.html

    https://segmentfault.com/a/1190000007240744 https://baike.baidu.com/item/Glibc http://man7.org/linux ...

  2. JFinal-layui极速开发企业应用管理系统

    Jfinal-layui 官网:http://www.qinhaisenlin.com/ 项目:https://gitee.com/QinHaiSenLin/Jfinal-layui 介绍 JFina ...

  3. npm WARN deprecated fsevents windows

    更新下 使用yarn貌似会帮助跳过这个问题: info fsevents@2.1.2: The platform "win32" is incompatible with this ...

  4. Python3基础 str : 字符串的逆序

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  5. bootstrap 输入框只能数字和字母等其他限制

    --输入中文.数字.英文: <input οnkeyup="value=value.replace(/[^\w\u4E00-\u9FA5]/g, '')"> --输入数 ...

  6. CharUtil

    package com.opslab.util; import java.io.UnsupportedEncodingException; /** * Various character and ch ...

  7. Linux记录-批量安装ssh(转载)

    首先,需要检查expect是否安装:rpm -qa|grep expect 然后,在操作机上创建公钥:ssh-keygen 一路回车即可 创建好之后到/root/.ssh/下就可以看到id开头的2个文 ...

  8. 转 mysql mysql命令行中执行sql的几种方式总结

    https://www.jb51.net/article/96394.htm 1.直接输入sql执行 MySQL> select now(); +---------------------+ | ...

  9. 机器学习中的数学-线性判别分析(LDA)

    前言在之前的一篇博客机器学习中的数学(7)——PCA的数学原理中深入讲解了,PCA的数学原理.谈到PCA就不得不谈LDA,他们就像是一对孪生兄弟,总是被人们放在一起学习,比较.这这篇博客中我们就来谈谈 ...

  10. 【prometheus 抓取源】

    配置prometheus从prometheus爬取数据 prometheus提供了下面这个端口来让其他prometheus来抓取(scrape)自己的时序数据: http://prometheus_i ...