参考链接:https://blog.youkuaiyun.com/wzk4869/article/details/131661472
- 安装Git LFS
根据系统选择安装方式:
- Windows:从官网下载安装包 https://git-lfs.github.com/
- macOS:用Homebrew安装
brew install git-lfs
- Ubuntu/Debian:
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
- 初始化LFS
git lfs install
- 指定要跟踪的大文件类型(以zip为例)
git lfs track "*.zip"
- 提交配置文件
git add .gitattributes
git commit -m "添加LFS跟踪配置"
- 正常提交大文件
git add large_file.zip
git commit -m "添加大文件"
git push
注意要点:
- 远程仓库需支持LFS(GitHub/GitLab/Gitee都支持)
- 首次使用LFS需要额外授权(push时会提示)
- 查看已跟踪文件:
git lfs ls-files
如果已经错误提交了大文件:
git rm --cached large_file.zip
git commit -m "移除大文件"
git lfs track "*.zip"
git add large_file.zip
git commit -m "通过LFS添加大文件"
git push
- 使用Git LFS(推荐方案)
# 安装Git LFS
git lfs install
# 追踪大文件类型(示例追踪zip文件)
git lfs track "*.zip"
# 查看生成的.gitattributes文件
cat .gitattributes
# 常规提交操作
git add .gitattributes
git add your_large_file.zip
git commit -m "add large file via LFS"
git push origin master
- 分割大文件方案(当LFS不可用时)
# 使用split命令分割文件(每个分割文件500MB)
split -b 500M large_file.zip large_file_part_
# 添加分割文件
git add large_file_part_*
git commit -m "add splitted large files"
git push
# 合并文件(在下载端)
cat large_file_part_* > large_file.zip
- 修改仓库配置(临时方案,不推荐)
# 设置临时缓存大小(示例设置为200MB)
git config http.postBuffer 209715200
# 强制推送(慎用)
git push --force
注意事项:
- Git原生不建议存储二进制大文件,LFS是官方推荐方案
- Gitee的LFS限额:
- 免费用户1GB存储空间
- 每月1GB流量
- 单个文件限制1GB
- 提交前请确保:
# 检查文件大小
du -sh your_file
# 查看git仓库大小
git count-objects -vH
如果遇到错误提示:“remote: error: File xxx is 1024.00 MB; this exceeds GitHub’s file size limit of 100.00 MB”,建议优先采用Git LFS方案。