Git 稀疏检出

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


具体工作意义是从某一个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