我即将将本地存储库推送到新的 GitHub 存储库,但收到以下错误:
remote: error: GH008: Your push referenced
at least 1 unknown Git LFS object:
remote: B41C79ADE3155B758388A338200A7B2A79E9FDBF48D5C4AFEDCE03886F4B873A
remote: Try to push them with 'git lfs push --all'.
我可以确认该物体不存在。是否有命令列出哪些提交引用了该 LFS 对象?
附注
git fsck --full
不会失败
您尚未在源历史记录中的所有本地提交:
git rev-list \
$(git for-each-ref --format='%(refname)' refs/heads refs/tags) \
--not $(git for-each-ref --format='%(refname)' refs/remotes/origin)
在所有这些中搜索 lfs 存根中对该哈希的引用:
alias doit='git for-each-ref --format="%(refname)"'
search=$( git rev-list \
$(doit refs/heads refs/tags) --not $(doit refs/remotes/origin)
)
git grep -i B41C79ADE3 $search -- ':(attr:filter=lfs)*'
这是一个老话题,但以防万一:我个人只是使用
-S
的
git log
选项
例如
git log -Sb41c79ade3155b758388a338200a7b2a79e9fdbf48d5c4afedce03886f4b873a
(小写十六进制)表示 OP 请求。