如何忽略Git LFS无法找到源

问题描述 投票:0回答:2

我得到了一个带有 LFS 的旧存储库,但一些(可能是较旧的)文件丢失了,所以我无法推送:

git push -u origin
Locking support detected on remote "origin". Consider enabling it with:
  $ git config lfs.https://gitlab.com/gitlabaccount/repo.git/info/lfs.locksverify true
Unable to find source for object 43cb9e6d1d15bb8d31af911aa69a15a67174c5 (try running git lfs fetch --all)                                                                                                                                           
Uploading LFS objects:  87% (600/691), 546 MB | 0 B/s, done
error: failed to push some refs to '[email protected]:gitlabaccount/repo.git'

据称我的同事运行了

git lfs fetch --all
,但并没有解决问题。

我真的想要一份最新的、所有历史记录的副本,以及一个现在可以运行的版本。我并不真正担心旧文件,我的偏好是完成推送并丢失一些丢失的 lfs 文件,但 lfs 错误不会让我这么做。

Gitlab 允许我在项目上禁用 lfs,但我不知道如果我这样做,大小/限制会发生什么。不确定在服务器或客户端上启用然后禁用它的正确过程是什么。或者,推送是否有“忽略丢失的文件”选项?

git gitlab push git-lfs
2个回答
8
投票

你可以使用下面的方法忽略它,它会忽略 git lfs 的 pre-push hook

git push --no-verify

0
投票
git config lfs.allowincompletepush true

对我有用。它忽略损坏的 lfs 对象。

© www.soinside.com 2019 - 2024. All rights reserved.