在服务器上找不到Git LFS文件

时间:2016-01-27 22:47:13

标签: git gitlab git-lfs

我们一直在使用Git和我们自己的Gitlab实例托管的git-lfs。

有时当一个特定用户推送文件时,其中一些(似乎是.png文件)不会进入LFS存储,而是添加到git。当他们的机器上发生这种情况时,我还没有看到日志/消息。

但最终发生的事情是当其他用户尝试从LFS下载该文件时,会抛出错误:

  

[28bbec36fe441b7de97d566872c71cd4542384d871b369168285408c1f062cfd]服务器上不存在对象,或者您无权访问该对象

我尝试在git-lfs数据目录中的Gitlab服务器上手动上传文件,并使用正确的文件名SHA标识,但它似乎没有被提取。到目前为止,我唯一的解决方案是触摸文件,以便生成不同的SHA ID,然后重新上传。

有没有办法手动将单个文件添加到Gitlab的git-lfs存储中?

1 个答案:

答案 0 :(得分:11)

我猜在客户端推送的客户端上没有正确安装git-lfs。但是,如果您有git-lfs 0.5.4,您应该可以使用以下命令修复它:

# git lfs push --object-id origin [oid] [oid] [oid]
$ git lfs push --object-id origin 28bbec36fe441b7de97d566872c71cd4542384d871b369168285408c1f062cfd