Git拉忽略图像文件
我是一个偶尔发布图片的存储库的贡献者。这些图像实际上并不重要,但其他贡献者将继续Git拉忽略图像文件,git,Git,我是一个偶尔发布图片的存储库的贡献者。这些图像实际上并不重要,但其他贡献者将继续添加并将它们推送到存储库中。我想执行忽略图像文件后缀的pull操作,例如*.png。git目录占用了太多的空间,我真的不需要拉这些图像文件 如何才能不拉取图像文件,而获取其他所有内容?您可以使用稀疏签出来稀疏填充您的工作目录稀疏签出利用位,使git假定工作树中的文件是最新的 对于以下内容,我将假设您当前位于存储库的根目录中,并且有一个干净的工作树(git stashe.g.) 首先,您必须使用git config
添加并将它们推送到存储库中。我想执行忽略图像文件后缀的pull
操作,例如*.png
。git目录占用了太多的空间,我真的不需要拉这些图像文件
如何才能不拉取图像文件,而获取其他所有内容?您可以使用稀疏签出
来稀疏填充您的工作目录<代码>稀疏签出
利用位,使git假定工作树中的文件是最新的
对于以下内容,我将假设您当前位于存储库的根目录中,并且有一个干净的工作树(git stash
e.g.)
首先,您必须使用git config core.sparsecheckout true启用稀疏签出
;在此之后,您可以在.git/info/sparse checkout
中定义要在签出时“忽略”的所有模式
语法与.gitignore
文件中的语法相同,不同之处在于定义了所有要签出的文件,而不是要忽略的文件
假设您不想签出存储库中的所有png
文件,那么稀疏签出
文件可能如下所示:
* # Include everything
!*.png # Flag png files with the 'skip-worktree' bit
如果要对当前工作目录应用稀疏签出
,则必须在之后执行命令
git read-tree -m -u HEAD
之后,您可以像往常一样继续使用存储库,而不必在工作树中使用“忽略”的文件
TL;医生:
- 激活稀疏签出
:git config core.sparsecheckout true
在.git/info/
下定义一个稀疏签出
文件,其中包含要包含的文件模式
更新您的工作树git read tree-m-u HEAD
您可以在的官方文档中阅读有关稀疏签出的更多信息。这是不可能的。也许可以将图像文件提取到一个单独的存储库(可能通过子模块提供),您可以选择不从中提取。我将尝试一下。谢谢你的提示!