git lfs pull是否可以忽略某些文件/文件夹?

pw9qyyiw  于 2023-08-01  发布在  Git
关注(0)|答案(3)|浏览(118)

简短的问题:有没有可能配置git,让常规的git pull会忽略一些文件?
问题描述:我有一个存储库,其中包含一些大型数据文件(使用GITLFS存储)
虽然一些处理数据文件的开发人员需要这些文件的更新版本,但其他开发人员需要这些文件,但不一定是最新版本。
他们需要更新的代码版本。数据文件和代码在同一个存储库中。
我想设置一种方法,使定期拉取不会更新数据文件。

  • 我知道不从LFS下载文件也可以进行拉取,但这将用指针文件替换文件,我需要以前版本的文件。
gpfsuwkq

gpfsuwkq1#

我遇到了this man page,我没有测试,但希望它能帮助:

包含和排除

您可以配置Git LFS,使其只获取对象以满足repo的某些路径中的引用,和/或排除repo的某些路径,以减少您下载不使用的内容的时间。
在gitconfig中,将lfs.fetchinclude和lfs.fetchexclude设置为逗号分隔的路径列表,这些路径包含/排除在fetch中(通配符匹配为gitignore)。只有fetchinclude匹配而fetchexclude不匹配的路径才会为它们获取对象。

示例:

  • 第一个月

这将只获取textures文件夹中路径中引用的对象,以及images文件夹中名为foo* 的文件

  • git config lfs.fetchinclude "*.jpg,*.png,*.tga"

仅获取JPG/PNG/TGA文件,无论它们在存储库中的位置

  • git config lfs.fetchexclude "media/reallybigfiles"

不要获取media/reallybigfiles文件夹中引用的任何LFS对象,而是获取其他所有对象

  • git config lfs.fetchinclude "media"

git config lfs.fetchexclude "media/excessive"
仅获取“media”文件夹中的LFS对象,但排除其中一个子文件夹中的对象。

6jjcrrmo

6jjcrrmo2#

如果你想忽略所有git lfs文件:

export GIT_LFS_SKIP_SMUDGE=1

字符串
克隆/拉取之前

deikduxw

deikduxw3#

git checkout patch (choose files to checkout)

我能想到的唯一方法就是使用部分 checkout 来完成这样的工作

git checkout -p

字符串
它将允许您选择手动 checkout 哪些文件。


的数据

相关问题