git中commit了過大的文件的解決辦法
由於我作死的忘了把編譯生成的文件過濾掉,導致提交歷史中一直有個高達200多M的文件,一直提交不了github和gitee
,我試過網上其他什么方法,都不太管用,
如:
https://gitee.com/help/articles/4232#article-header0
最后還是這個辦法管用。
解決思路
在網上看到了一個大神的帖子,雖然沒有詳細的步驟,但是一語驚醒夢中人。那就是在commit的時候,之前的版本里面已經包含過這些大文件了,雖然后來在新版本里面刪除了大文件,但是之前commit的記錄還是存在。所以在統一push的時候就呵呵了。搞清楚這一點,那么我們把大文件的幾次提交給它取消不就好了嗎。心里又盛開了小花,說干就干。
撤銷commit
先查看一下最近提交的commit的版本號。
git log
依次撤銷commit
(包含過要刪除的大文件的commit必須都給撤銷了,要不然會報錯)
git reset xxxxxxxxxxxxx
你一定在想你的代碼還在不在?不要擔心,上面的撤銷只是對commit命令的撤銷,不會對你修改過的代碼撤銷的,他們還是在的。
刪除掉本地的大文件(或者備份到其他地方)
參考:
https://gitee.com/help/articles/4232#article-header0
重新進行提交
git add .
git commit -m '提交版本的注釋'
git push
非常完美的解決了此問題。