Sparse Checkout

  • 必须先git config core.sparsecheckout true
  • 作用:按需下载,下载一次会后不会再下载,没有下载则会下载
  • git sparse-checkout切换工作区视图
    • init必须在一个仓库下,这个init会创建.git/info/sparse-checkout文件
      • 默认内容是/*(所有文件和目录)!/*/(不要所有目录)
        • 即仅仅需要根目录下的文件
    • set pattern... 会清空原来的
      • 一般都用/开头,如果是一个路径
      • /a*==/a==/a/==/a/*
      • --stdin
      • sparse模式:
      • --cone默认
      • --sparse-index
    • add pattern...
    • reapply重新应用sparse-checkout配置(更新workspace)
    • list显示所有pattern
    • disable禁用sparse-checkout
  • 不推荐配合git init,而推荐配合git clone --sparse
    • 因为git init git sparse-checkout git remote add xxx xxx git pull xxx xxx会下载所有文件
    • git clone --sparse仅仅是下载根目录下的文件,不下载所有目录,执行git sparse-checkout才会下载