强制推送git lfs文件ID

时间:2018-02-06 10:30:37

标签: git git-lfs

使用git lfs,如何强制推送我知道我在本地的文件ID,但由于某种原因没有推送到服务器?

即,在我的构建系统上,我有像

这样的错误
  

Git LFS:(15个文件中的0个,跳过1个)0 B / 1.10 MB,跳过4.30 MB Git LFS :( 15个文件中的15个,跳过1个)1.10 MB / 1.10 MB,跳过4.30 MB   [f54812afe7bfdff14c154af6adb7cc4cb425763c1bdaa5fcf0bcea4fd2da7ab9]服务器上不存在对象:[404]服务器上不存在对象

所以我知道我只需要推送ID为f5481...的文件,但是这样做的命令是什么? git lfs push无法正常工作我必须强制同步该特定文件ID

我记得在一些github问题中发现了这个魔法命令曾经丢失但是我丢失了它并且man文档似乎没有帮助......

2 个答案:

答案 0 :(得分:1)

我设法以某种方式触发了一些额外的文档....语法实际上是

git lfs push origin --object-id [ID]

它会强制同步一个简单的git lfs push不会

的对象

答案 1 :(得分:0)

在迁移存储库并将其管道传输到新的远程服务器后,我的构建系统出错。在迁移LFS数据(我忘记了它)之前,我删除了旧远程服务器上的存储库。管道运行时,我看到了诸如

的错误
fetch: Fetching reference f0e482d67ea35e173e15a22c0bacb37f2c059365
[b898bde8bb8ee3ee58390ec930e8608568920f61cc9954f198bdacdf79e0d7a8] LFS object not found: [404] LFS object not found
[112e9f3c1dba98d5cafcaadbf2a34dda733a4175632c0d4ba3dbfc590d95ffd4] LFS object not found: [404] LFS object not found
[dd8066b545c4fb09057ace1cf6c6fb8df41b89647c33b5f071d38255da7539ed] LFS object not found: [404] LFS object not found
error: failed to fetch some objects from '<redacted>.git/info/lfs'
##[warning]Git lfs fetch failed with exit code 2, back off 5.225 seconds before retry.

幸运的是,我在本地拥有LFS数据,并能够通过以下方式进行解析:

git remote rm origin
git remote add origin <new_remote_url>
git lfs push origin --all