问题描述
代码修改完了准备上传到github,使用 git add . 命令发现一直卡住不动了。没办法只能强行退出,如下图所示。
解决办法
研究了一番,发现了这类问题的套路,在此给大家提供一个debug的思路。
首先需要知道,git add . 就算成功执行了,也不会打印任何信息,我们也不知道文件到底有没有修改成功。所以第一步需要先确认一下我们的文件确实修改了,有哪些修改了?是不是修改的这些文件中的一个或多个有问题才导致git add . 卡住的?
使用 git status打印修改的文件信息,以我的为例,打印信息如下:
修改了那么多文件,观察一下发现其中有log文件夹,而log文件夹一般是模型训练存储的文件,所占内存比较大,查看一下大小:
好家伙,8.7g,怪不得传不上去,git不卡才怪!果断删除再重新 git add . ,结果又报错。
按照提示,删除在同级目录下 .git 文件中的 index.lock 文件
或者直接在命令行输入 rm -f .git/index.lock
成功运行~
总结
- 使用git status看看文件是否修改成功,判断是不是修改的文件引起的错误
- 判断是不是有大文件,如果有的话,删除或者替换成小文件
- 在git add .运行时打断,之后再运行git add . 会报错,解决办法为删除index.lock文件