使用Sparse Checkout,排除跟踪Git仓库中指定的目录

应用场景

在一个大工程里包含由不同部门开发的模块时,项目的Git仓库肯定很大,造成每次Git操作相对比较耗时,而且耗费硬盘空间。Macbook用户伤不起啊~

因为开发人员一般只关心他们部门的模块的代码,所以完全可以排除一些他完全不需要用到的目录。这时候就可以使用Git的Sparse Checkout。


操作步骤

  1. 若未拉取仓库代码的时候
$mkdir project_folder
$cd project_folder
$git init
$git remote add -f origin 

上面的代码会帮助你创建一个空的本地仓库,同时将远程Git Server URL加入到Git Config文件中。
若已经拉取了代码,则不用走上面的步骤。

  1. 接下来进入仓库目录,在Config中允许使用Sparse Checkout模式:
$git config core.sparsecheckout true
  1. 告诉Git哪些文件或者文件夹是你真正想排除的
    编辑 .git/info/sparse-checkout
*
!Chromium/**
!ChromiumRes/**

以上表示排除Chromium和ChromiumRes两个文件夹。这样git就会排除掉这两个文件夹。


Git版本

至少需要Git1.7.0及以上版本


参考文章

http://www.tuicool.com/articles/QjEvQvr

你可能感兴趣的:(使用Sparse Checkout,排除跟踪Git仓库中指定的目录)