标题:[实践OK]Git只获取部分目录的内容(稀疏检出),Git如何Check Out出指定文件或者文件夹。 出处:向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除 时间:Wed, 28 Jun 2017 10:05:33 +0000 作者:jackxiang 地址:http://jackxiang.com/post/9309/ 内容: Git的克隆,默认是直接拉取整个远程仓库,如果项目比较大,大量和自己无关的内容也会拉到本地,占用很多硬盘空间。 在网上搜了一下,Git在1.7版本后,已经支持只Checkout部分内容,这个功能叫做 sparse checkout(稀疏检出)。 打开 sparse checkout 功能 如果本地还没有建版本库,要用这个功能,先进入要放版本库的目录,在命令行执行几条命令: mkdir myrepo cd myrepo git init git config core.sparseCheckout true git remote add -f origin git://... echo path/to/subdir/*> .git/info/sparse-checkout git checkout branchname 实践一下: mkdir myrepo cd myrepo git init git config core.sparseCheckout true git remote add -f origin git@gitlab.jackxiang.com:irdcops/spec.git echo centos6/*> .git/info/sparse-checkout git pull origin master 实践发现也就只有这一个目录了,添加2个目录到checkout的列表。路径是版本库下的相对路径,也可以用文本编辑器编辑这个文件。 $git pull origin master From gitlab.jackxiang.com:irdcops/spec * branch master -> FETCH_HEAD $ls #也就只Checkout这个目录,要多条就多加几个即可。 centos6 参考来源:https://zhgcao.github.io/2016/05/11/git-sparse-checkout/ http://www.tuicool.com/articles/QjEvQvr 详细点的参考: https://my.oschina.net/u/183217/blog/185289?p=%7B%7BcurrentPage+1%7D%7D 发现对于目录有点的这种情况,好像实践发现不行如:jackxiang.com 这样的目录。 Generated by Jackxiang's Bo-blog 2.1.1 Release