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

标签 git git-lfs

简短的问题: 是否可以配置 git,使常规 git pull 忽略某些文件?

问题描述: 我有一个包含一些大数据文件的存储库(使用 git lfs 存储)

虽然一些处理数据文件的开发人员需要这些文件的更新版本,但其他开发人员需要这些文件,但不一定是最新版本。

他们确实需要更新的代码版本。并且数据文件与代码位于同一存储库中。

我想设置常规 pull 不会更新数据文件的方式。

  • 我知道可以在不从 LFS 下载文件的情况下进行 pull ,但这会用指针文件替换文件,而我需要文件的先前版本。

最佳答案

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


包含和排除

您可以将 Git LFS 配置为仅获取对象以满足特定的引用 repo 的路径,和/或排除 repo 的某些路径,以减少 您花在下载不使用的东西上的时间。

在 gitconfig 中,将 lfs.fetchinclude 和 lfs.fetchexclude 设置为逗号分隔的列表 在获取中包含/排除的路径(根据 gitignore 的通配符匹配)。 仅与 fetchinclude 匹配且与 fetchexclude 不匹配的路径 将为他们获取对象。

例子:

  • git config lfs.fetchinclude "textures,images/foo*"

    这只会获取纹理文件夹中路径中引用的对象,并且 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 对象,但排除其中一个文件夹中的对象 子文件夹。

关于git - git lfs pull 是否可以忽略某些文件/文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36376136/

相关文章:

git - 删除 BitBucket 上的大文件

ios - pull 后 Xcode 构建 "old"代码

git - 无法将大型仓库从 gitlab 迁移到 github

Git LFS 与 Google Drive、Dropbox 等?

git - 超过限制后撤消 git lfs

git - 如何缩小 git LFS 存储库

git - 从 protected github 仓库中获取单个 LFS 文件

java - 使用 gitflow-maven-plugin 从发布分支发布到主控的正确 Maven 命令是什么?

git - 什么管道命令提供与 git log --follow 相同的功能?

Windows Git Bash - ulimit - 打开的文件太多