Git 大文件使用 Git-LFS 管理,推送失败

配置了.gitattributes文件后,

复制代码
*.jar filter=lfs diff=lfs merge=lfs -text
*.so filter=lfs diff=lfs merge=lfs -text
*.aar filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.a filter=lfs diff=lfs merge=lfs -text

仍然推送失败

复制代码
POST git-receive-pack (chunked)
remote: 推送失败,以下文件大小超过单文件 200MB 的系统限额:        
remote: Blob ID  | 大小(MB) | 文件名        
remote: -------------------------------        
remote: e5c4a548 | 422.77   | libil2cpp.so        
remote: 91623ee1 | 339.26   | libil2cpp.so        
remote: 
remote: 大文件请使用 Git-LFS 管理,使用说明: https://help.aliyun.com/document_detail/321367.html. git推送失败,      

可能的原因:

  1. 1. Git LFS 未正确安装或配置: 你需要确保你在本地安装了 Git LFS 并进行了正确的配置。可以通过以下命令来安装和配置 Git LFS:

    复制代码
    git lfs install
  2. 2. 文件未被 Git LFS 跟踪 : 即使在 .gitattributes 文件中已经配置了 LFS,但如果文件没有被正确标记为 LFS 文件,它们仍然会被当作普通文件处理。你需要确保这些文件已经通过 Git LFS 跟踪。可以使用以下命令来确保文件被 LFS 跟踪:

复制代码
   git lfs track "*.so"
   git lfs track "*.a"
   git lfs track "*.jar"
   git lfs track "*.bin"
   git lfs track "*.aar"

然后,提交这些更改:

复制代码
   git add .gitattributes
   git commit -m "Track large files using LFS"
  1. 3. 文件已经超过了 Git 的历史限制 : 如果你在 Git 历史中已经提交了这些大文件,并且它们的大小超过了限制,你可能需要重写 Git 历史来将它们迁移到 LFS。你可以使用 git lfs migrate 来做这件事:

复制代码
   git lfs migrate import --include="*.so,*.a,*.jar,*.bin"

这将会将这些类型的文件移动到 LFS。

相关推荐
暮云星影5 小时前
git仓库分支管理
git·gitee·github·gitea
互联网中的一颗神经元1 天前
ZZ — Git 速查表
大数据·git·elasticsearch
早安试言1 天前
git使用
git
燐妤1 天前
梦绘片场 ProjectDream故事总纲场景剧本篇:从项目到成片的 AI 漫剧工作台
人工智能·git·ai·项目开发
JackieDYH2 天前
Git 与 GitHub 新电脑配置指南(从零开始)
git·github·工具·使用教程
Jeanyia2 天前
GitLab 配套 Git 常用命令
git·gitlab
10mAh2 天前
【Git】误删分支、reset --hard 后提交丢了怎么办?——reflog、fsck 与安全恢复实战
数据库·git·安全·回归
Lydro2 天前
CentOS 7 安装高版本git
git·centos 7
guwentian3 天前
Git Worktree 实战:用并行多 Agent 把开发提速 N 倍
大数据·git·elasticsearch·wroktree
不吃鱼的羊3 天前
Git识别未修改的文件有修改
git