处理GitHub上的不允许100MB大文件上传

Posted dune.F

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了处理GitHub上的不允许100MB大文件上传相关的知识,希望对你有一定的参考价值。

今天初次使用GitHub,管理自己的项目代码。项目里用到了百度导航SDK,由于百度导航SDK大于100MB,所以在向GitHub提交代码时出错。具体信息如下:
Total 3007 (delta 664), reused 0 (delta 0)
remote: error: GH001: Large files detected.
remote: error: Trace: 7b7de6b9372ee392e0f3961b05ea6f33
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File XXX/XXX/BaiduNaviSDK/libbaiduNaviSDK.a is 102.68 MB; this exceeds GitHub‘s file size limit of 100.00 MB
remote: error: File XXX/XXX/BaiduNaviSDK/libbaiduNaviSDK.a is 102.68 MB; this exceeds GitHub‘s file size limit of 100.00 MB。这句话的意思是GitHub问件长度限制在100MB以内。它还提示我们到 (http://git.io/iEPt8g) 去如何处理上传大文件。开始我按照原文的操作,结果还是出现这个错误。后来我左思右想,是不是自己理解错了原文作者的意思。果然后来我在.gitinore这个文件中添加了忽略libbaiduNaviSDK.a 的命令,才成功将自己的文件上传。
具体操作如下:
当我们上传的项目中包含大于100MB的文件时。我们首先要在.gitinore中忽略它。
然后在最新的一次提交中,将该文件从本地仓库和远程仓库全部移除掉。如果这个文件很重要,要记得做一次备份。
如果这个文件是最近一次commit的,并且你还没有push到github
第一步:在.gitinore中忽略你需要忽略的大文件名字(跟忽略一般文件一样)
cat .gitinore
vi .gitinore
*.libbaiduNaviSDK.a

 

第二步:从本地仓库移除掉大文件

git rm --cached /User/xxx/xxx/xxx/libbaiduNaviSDK.a (/User/xxx/xxx/xxx/libbaiduNaviSDK.a换为自己要移除的文件即可)

 

第三步:提交我们的操作

git commit --amend -CHEAD

执行完这一步,libbaiduNaviSDK.a将从你的commit仓库中移除。
此时在向远程服务器push即可成功。



作者:MichleMin
链接:http://www.jianshu.com/p/09a2d9db861c
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。



以上是关于处理GitHub上的不允许100MB大文件上传的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Autodesk Forge 上的数据管理 API 上传超过 100MB 的大文件?

Github 修正上传时“this exceeds GitHub’s file size limit of 100 MB”错误

Github如何上传超过100M的大文件

如何在 ASP.Net MVC 4 中上传大文件

githubGit LFS上传大文件到github

Github挂载大文件解决方案