Azure Git仓库GIT LFS推送含大文件提交突发失败求助
Azure DevOps Git LFS推送大文件失败的解决思路
我之前也碰到过类似的Azure DevOps LFS上传失败的问题,结合你的报错信息和已经做过的操作(重装Git/LFS、清理仓库),给你几个针对性的排查和解决方向:
检查并强制指定LFS媒体类型
你的报错明确提示Only application/vnd.git-lfs and application/vnd.git-lfs+json are supported,说明LFS客户端发送的请求头媒体类型不符合服务器要求。可以尝试强制配置LFS使用合规的媒体类型:# 全局配置(所有仓库生效) git config --global lfs.contenttype application/vnd.git-lfs # 仅当前仓库生效 git config lfs.contenttype application/vnd.git-lfs配置后重新尝试
git push。解决HTTP 413(请求实体过大)错误
413错误本质是单次上传的文件分片超过了服务器允许的大小,即使之前正常,也可能是Azure DevOps服务器端的临时限流或配额调整导致的。可以尝试:- 调整LFS上传的分片大小,将大文件拆分为小分片上传:
git config --global lfs.transfer.maxchunk 104857600 # 设置为100MB git config --global lfs.transfer.maxretries 10 # 增加重试次数 - 前往Azure DevOps仓库的「设置」-「存储」页面,检查LFS存储配额是否已用尽,若已达上限需要清理旧的LFS对象或扩容配额。
- 调整LFS上传的分片大小,将大文件拆分为小分片上传:
排查代理/防火墙的干扰
公司网络的代理或防火墙可能会篡改LFS请求的HTTP头信息,导致媒体类型不被服务器识别。可以尝试:- 临时关闭代理,直接连接网络尝试推送
- 配置Git让Azure DevOps的请求绕过代理:
git config --global http.https://dev.azure.com/.proxy ""
升级Git和Git LFS版本
你当前使用的Git 2.33.1和Git LFS 3.0.1版本较旧,存在已知的LFS兼容性bug。建议升级到最新稳定版(比如Git 2.40+、Git LFS 3.4+),新版本修复了很多与Azure DevOps LFS交互的问题。手动上传LFS对象(兜底方案)
如果以上方法都无效,可以尝试手动上传LFS对象再关联仓库:- 用
git lfs ls-files查看大文件对应的LFS对象ID(OID) - 执行
git lfs push --object-id origin <OID>:<OID>上传单个对象 - 最后执行
git push推送代码引用
- 用
内容的提问来源于stack exchange,提问作者halvorsen
相关产品推荐
相关产品推荐

