我不小心将一个巨大的文件添加到了我的仓库(〜250 MB)中,名称为--exclude
。该文件是在OS X上生成的,而我正在为此仓库编写一些新代码。现在,我试图从这里和这里学习如何从Git的历史中删除它。这些教程很好而且很清晰,但是问题是Git的“思考”--exclude
不是文件而是选项。
当我运行此命令时:
git filter-branch \ --index-filter“ git rm -r --cached --ignore-unmatch '--exclude” “ HEAD
Git抱怨:
error: unknown option `exclude'
usage: git rm [<options>] [--] <file>...
我尝试使用文件的sha编号,但未更改任何内容。删除此类文件的正确方法是什么?
构造参数行的常见UNIX方法是
<command> <keys&arguments> [--] <arguments>
在你的情况下
command: git rm
keys: -r --cached --ignore-unmatch
arguments: '--exclude'
通常,键由前导-
s检测。
但是,你可以随时通过强制使用该行的参数部分明确写他们将它们移动到参数--
所以,你得到
git filter-branch --index-filter "git rm -r --cached --ignore-unmatch -- '--exclude' " HEAD
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句