首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >git稀疏-签出忽略特定文件类型

git稀疏-签出忽略特定文件类型
EN

Stack Overflow用户
提问于 2020-05-05 21:51:04
回答 1查看 1.5K关注 0票数 2

我有一个包含大量csv的git存储库,我不想克隆,所以我遇到了git稀疏签出和下面的文章:https://github.blog/2020-01-17-bring-your-monorepo-down-to-size-with-sparse-checkout/

在这篇文章中,我采取了以下措施:

代码语言:javascript
复制
git clone --no-checkout https://github.com/john_doe/repo-with-big-csv.git
cd repo-with-big-csv
git sparse-checkout init --cone

然后编辑.git/info/sparse-checkout并添加以下内容(根据上面页面中的示例改编):

代码语言:javascript
复制
/*
!**/*.csv

但它似乎不能正常工作。在git pull之后,有些文件夹被克隆,有些则没有。我还注意到一个警告,当我做git sparse-checkout list时,我得到:

代码语言:javascript
复制
warning: unrecognized pattern: '**/*.csv'
warning: disabling cone pattern matching
/*
!**/*.csv

只忽略某个文件类型的正确方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2020-05-06 05:52:45

请参阅"带排斥的Git稀疏签出“,并确保使用Git2.26.x,它为命令提供了一些修复。

在锥形模式下,git稀疏签出集子命令接受目录列表,而不是稀疏签出模式列表。 如果是core.sparseCheckoutCone=true,那么Git将解析稀疏签出文件,期望这些类型的模式。如果模式不匹配,Git将发出警告。

您只需要使用基于文件夹前缀匹配的限制模式。

Frode Akselsen添加在评论中

我的示例实际上是在工作:没有显示的文件夹只包含.csv文件,因此,在应用.git/info/sparse-checkout中的规则之后,文件夹中没有任何内容,因此Git不会显示该文件夹。

我确认Git将只显示内容:如果文件夹没有文件(没有“内容”),则该文件夹不可见。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61623691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档