我们一直在使用Git和我们自己的Gitlab实例托管的git-lfs。
有时当一个特定用户推送文件时,其中一些(似乎是.png文件)不会进入LFS存储,而是添加到git。当他们的机器上发生这种情况时,我还没有看到日志/消息。
但最终发生的事情是当其他用户尝试从LFS下载该文件时,会抛出错误:
[28bbec36fe441b7de97d566872c71cd4542384d871b369168285408c1f062cfd]服务器上不存在对象,或者您无权访问该对象
我尝试在git-lfs数据目录中的Gitlab服务器上手动上传文件,并使用正确的文件名SHA标识,但它似乎没有被提取。到目前为止,我唯一的解决方案是触摸文件,以便生成不同的SHA ID,然后重新上传。
有没有办法手动将单个文件添加到Gitlab的git-lfs存储中?
答案 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