如何使用 Git LFS 管理 GitHub 项目中的大文件
GitHub 对单个文件的大小限制是100MB。如果你不小心提交了某些较大的文件(如 xxx.jar),这些文件的大小将远远超过这个限制,导致无法顺利推送至远程仓库。为了解决这个问题,可以使用 Git Large File Storage (LFS) 来有效地管理这些大文件。
1. 使用 Git LFS 管理大文件
安装 Git LFS 如果尚未安装 Git LFS,请访问 Git LFS 官方网站 (https://git-lfs.com/)下载并按照指示进行安装。
初始化 Git LFS 在你的项目根目录下运行以下命令来初始化 Git LFS:
1 | git lfs install |
2. 跟踪大文件 使用以下命令告诉 Git LFS 哪些类型的文件应该被跟踪。例如,如果你想跟踪所有 .jar 文件,可以执行:
1 | git lfs track "*.jar" |
这一步会创建或更新 .gitattributes 文件,记录哪些文件类型需要通过 Git LFS 进行版本控制。
3. 添加和提交更改,接下来将 .gitattributes 文件以及所有大文件添加到暂存区,并提交更改:
1 2 3 4 5 | git add .gitattributes git add . git commit -m "Track large files with Git LFS" |
4. 推送更改 最后,尝试再次推送你的更改:
1 | git push origin xx仓库 |
其他注意事项
清理历史记录 如果之前已经提交了大文件并且不想使用 Git LFS,可以考虑使用 git filter-repo 或 BFG Repo-Cleaner 工具来清理历史记录中的大文件。这有助于减少仓库的整体大小,并避免未来可能出现的问题。检查 .gitignore 文件 确保 .gitignore 文件中没有遗漏任何不应该被追踪的大文件或临时文件,以防止意外提交不必要的大文件。
BFG Repo-Cleaner 的使用
1.安装 BFG Repo-Cleaner 首先下载并安装 BFG Repo-Cleaner(https://rtyley.github.io/bfg-repo-cleaner/)。
2.运行 BFG Repo-Cleaner 在你的项目根目录下运行以下命令来移除所有大于 10MB 的文件:
3.执行命令: java -jar bfg.jar --strip-blobs-bigger-than 10M
这个命令将会从历史记录中删除所有超过指定大小的文件,从而减小仓库的体积。但注意JDK版本和仓库路径。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构