1. 程式人生 > >處理GitHub上的不允許100MB大文件上傳

處理GitHub上的不允許100MB大文件上傳

total min 開始 sha -- 結果 info 提示 是不是

今天初次使用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大文件上傳