1.之前在项目中commit 了一个 .log 文件(140M左右),然后push 到 git.oschina的时候被提示文件过大不能push,然后我就用 电脑键盘的 ‘delete ’键删除了这个文件,并在此 commit 然后push ,还是报一样的错误
单纯的新增一个commit或者commit --amend,只是从当前版本中删除了这个文件,历史提交中仍然记载有你添加这个文件以及删除这个文件的全过程。如果要从版本库中彻底去除这个文件,必须改写历史中存在这个文件的所有提交。
commit
commit --amend
要改写历史,可以用git filter-branch,具体可以看Github上的教程。当然对于简单的情况,你也可以选择git reset加git rebase。
git filter-branch
git reset
git rebase
补充:git rm file.log相当于rm file.log && git add file.log,题主都已经把文件删掉并提交了,不懂的不要乱答了好不好…
git rm file.log
rm file.log && git add file.log
使用git rm来删除
git rm
git rm --cached <filename>
然后再重新进行 add commit 等操作题主之后可以在 .gitignore 文件里忽略.log文件不然每次生成都要删掉太麻烦了
单纯的新增一个
commit
或者commit --amend
,只是从当前版本中删除了这个文件,历史提交中仍然记载有你添加这个文件以及删除这个文件的全过程。如果要从版本库中彻底去除这个文件,必须改写历史中存在这个文件的所有提交。
要改写历史,可以用
git filter-branch
,具体可以看Github上的教程。当然对于简单的情况,你也可以选择
git reset
加git rebase
。补充:
git rm file.log
相当于rm file.log && git add file.log
,题主都已经把文件删掉并提交了,不懂的不要乱答了好不好…使用
git rm
来删除然后再重新进行 add commit 等操作
题主之后可以在 .gitignore 文件里忽略.log文件
不然每次生成都要删掉太麻烦了