应用场景
在一个大工程里包含由不同部门开发的模块时,项目的Git仓库肯定很大,造成每次Git操作相对比较耗时。因为开发人员一般只关心他们部门的模块的代码,所以完全可以排除一些他完全不需要用到的目录。这时候就可以使用Git的Sparse Checkout。
操作步骤
1、若未拉取仓库代码时
mkdir project_folder cd project_folder git init git remote add -f origin <url>
上面代码会帮助你创建一个空的本地仓库,同时将远程Git Server URL加入到Git Config文件中。
若已经拉取了代码,则不用走上面的步骤。
2、进入仓库目录,在Config中允许使用Sparse Checkout模式:
git config core.sparsecheckout true
3、告诉Git哪些文件或文件夹是你需要排除的编辑 .git/info/sparse-checkout
*
!data/ !config/database.php
以上则表示排除了data和config/database.php文件。这样git就会排除掉这两个文件夹。
同样也可以利用此功能下载Git项目内指定文件或文件夹
只需要编辑.git/info/sparse-checkout
文件,加入需要下载的文件或文件夹即可
原文:使用Sparse Checkout 排除跟踪Git仓库中指定的目录或文件