简短的问题: 是否可以配置 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/