从存储库中删除被忽略的文

时间:2013-11-16 21:13:05

标签: git svn

我将SVN存储库迁移到Git。我知道我的存储库中有很多大的旧文件,通常应该被忽略(当我启动项目时,我在VCS中是noob,所以每次提交都会重新创建并保存所有可执行文件和库)。现在这个存储库的大小已超过1.6 GB,尽管代码库非常少且资产很少。现在,我的想法是创建.gitignore文件,它将包含所有生成的文件,如库,可执行文件和其他文件,但我想知道我是否可以从我的所有提交中删除所有这些文件,包含在我的.gitignore文件中Git存储库。我不介意Git会重写每次提交,我只是想在所有提交中删除所有这些文件,但我想保留我的历史消息。

1 个答案:

答案 0 :(得分:3)

参见'git help filter-branch',特别是它的例子部分:

  

git filter-branch --index-filter'git rm --cached --ignore-unmatch filename'HEAD

https://www.kernel.org/pub/software/scm/git/docs/git-filter-branch.html