我有一个安装了 git-lfs 的 git 存储库,我希望在 LFS 中保存所有大于某个大小的 PDF 文件,但不是所有的 PDF 文件,因为 git-lfs 支持。这样做的原因是我有许多矢量格式的小型 PDF 图形文件,它们可以在常规版本控制中使用,还有一些大型 PDF。
可以这样配置 git-lfs 吗?
我使用来自 Atlassian source-tree 的 git 并在 bitbucket 中托管存储库,也许那些支持这个更高级的用例?
最佳答案
不幸的是,这在 git-lfs 上是不可能的。见问题 #282 .
然而,有一个 hack由用户 Baccanno 提供,但我不建议将它用于包含许多文件的存储库。它跟踪 全部 超过阈值的文件,但可以修改为仅对 PDF 执行此操作。
黑客:
(复制到这里,没有保修)
把这个放在 [alias]
您的 git 配置部分( project_root/.git/config
)并将末尾的 300k 更改为您希望的大小
track-large = !"git st --porcelain --ignore-submodules | grep -v \"D \" | awk '{ l=length($0); s=substr($0,4,l-1); print s}' | sed -n 's/\\(\\(.* -> *\\)\\|\\)\\(.*\\)/\\3/p' | xargs -I{} find {} -size +300k | xargs -I{} git lfs track \"{}\""
关于git - 配置 git-lfs 以跟踪超过一定大小的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56540406/