Git结帐只给我一些机器上的指针文件

时间:2019-05-29 14:33:58

标签: git jenkins-pipeline git-lfs

我有一些在多个Windows机器上运行的Jenkins管道作业。据我所知,这些机器具有相同的配置。但是在某些机器上,git仓库的签出使我剩下了git-lfs指针文件,而不是它们指向的二进制文件。

如果我再调用git lfs pull,它将解析二进制文件。但是我试图弄清楚为什么它不能在结帐时解决它们。

我已经确认两台机器上的git(2.21.0)和git-lfs(2.7.2)的版本完全相同。

是什么原因导致git-lfs在结帐时无法解析二进制文件?

1 个答案:

答案 0 :(得分:0)

要使Git LFS自动检出文件,您需要正确设置过滤器选项。您可以运行git lfs env,它将在底部打印三个git config命令。正确配置后,它们应如下所示:

git config filter.lfs.process = "git-lfs filter-process"
git config filter.lfs.smudge = "git-lfs smudge -- %f"
git config filter.lfs.clean = "git-lfs clean -- %f

如果该值为空或对于您的系统而言看起来不正确,则应进行适当配置,或使用git lfs install --skip-repo基于每个用户进行安装(或使用该命令的其他选项之一来将其安装在其他位置)。

请注意,如果不确定在可以运行的系统上将其设置在什么地方,可以使用git config -l --show-origin进行检查,然后将配置复制到另一个系统上的相同位置。