Git

Git检出指定文件夹

Posted by Alei Blog on July 19, 2017

问题

有时候,不想克隆整个仓库,只对其中的某一个或某几个文件夹感兴趣。

比如,jekyll的博客模板,作为整个仓库提交到github,目录如下

jekyll博客目录

发布静态网页,只需要将_site目录克隆给nginx服务器

方法

  • 在nginx服务器的根目录下,创建仓库
    mkdir blog
    cd blog
    git init
    git remote add -f origin git@github.com:alei/blog.git
    
  • 设置sparse checkout,指定要检出的文件夹,按行添加
    git config core.sparseCheckout true
    echo "_site/" >> .git/info/sparse-checkout
    
  • 同步
    git pull origin master
    
  • 结果目录
    --blog
    --_site