本地排除文件
本指南用于在本地工作区中排除远程仓库的特定目录,而不影响远程仓库本身。
1. 进入仓库根目录
打开终端或命令行,`cd` 到你的本地 Git 仓库根目录。
2. 启用 Sparse Checkout
git sparse-checkout init --cone3. 使用 non-cone 模式
执行以下命令来初始化稀疏检出功能。
git sparse-checkout init --no-cone此命令会初始化功能并明确告知 Git 使用 non-cone 模式。这种模式允许我们使用通配符 (*) 和排除符号 (!)
4. 设置排除规则
git sparse-checkout set /* !'Other/数学分类/'这条命令的作用是:同步所有根目录下的文件和文件夹,但是排除 "Other/数学分类".
注意: 执行后,Git 会立即从你的本地工作区移除这些目录。
你也可以使用空格分隔, 输入多个目录
git sparse-checkout set /* !'assets/' !'Other/'5. 后续工作流
- 工作流不变: 日常
git pull,git push,git commit等操作完全照常,无需任何额外步骤。 - 恢复显示: 如果某天你又需要那个目录了,只需重新应用规则,把它从排除列表中去掉即可。要恢复所有文件,可执行:
git sparse-checkout reapply
6. 稀疏提交
如果你想让本地只保留需要的数学内容,不把前端、部署或其他配置文件拉到你的本地磁盘里, 可以用这个方案.
这个方案只影响本地显示,不影响远端仓库,也不影响别人正常使用。
操作流程:
- 克隆仓库后,在仓库根目录启用
sparse-checkout。 - 按自己的需要写排除规则,只保留常用目录。
- 后续
pull / commit / push照常使用,不需要额外步骤。
如果只是本地不想下载某些目录, 比如GitHub Action部署相关的static.yml,可以直接用这套方法;
git show origin/main:.github/workflows/static.yml如果临时需要查看远端的部署配置,也不必恢复全部文件,可以直接读取远端内容,例如:
git ls-tree -r --name-only origin/main .github/workflows链接到当前文件 0
没有文件链接到当前文件