由于github有上传文件大小的限制,超过100M的文件无法直接上传,这时需要使用Git LFS上传
使用Git LFS上传超过100M的文件
1、下载并安装Git LFS
2、安装以后打开Git本地仓库,初始化Git LFS
git lfs install
3、指定LFS文件
git lfs track "test/test-file.7z"
或者指定一种文件类型 ,文件名的指定支持正则表达式,这个例子包含了所有的zip文件
git lfs track "*.zip"
4 、添加修改至仓库
git add test/test-file.7z
5、提交修改
git commit -m "add file"
6、上传
git push -u origin master
注:如果上传大文件后,仍然报下列错误,请看后面的解决办法
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
remote: error: Trace: de35e860e6f088f7ca549a40b47655df
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File xxx/aaa is 130.82 MB; this exceeds GitHub's file size limit of 100.00 MB
使用Git LFS后仍报错error: Large files detected.解决办法
出错原因:先前直接push大文件失败了,并且push失败后才下载Git LFS并且添加大文件到Git LFS。之前的大文件仍在工作区等待上传,导致报错。
解决办法:应该回滚到上一个无错误版本,放弃之前添加大文件那次的commit,重新提交文件即可。
1、将git切换到之前提交的git项目所在目录
2、查看commit的历史记录及其对应的commit_id
git log
3、复制commit_id,使用Ctrl+C退出log查看页面,输入下面的命令,使git回退到commit_id的状态
前面3个单词不需改变,将最后一个长字符串改成要回滚的commit_id
git reset --hard 845ba7cbd435d94978faf86e76860d5aba26c1f7
4、使用Git LFS上传大文件
git lfs track "test/test-file.7z"
git add test/test-file.7z
git commit -m "add file"
git push -u origin master
等待一会后,文件成功上传,问题解决。
参考: