git中commit了过大的文件的解决办法
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
非常完美的解决了此问题。