我正在将存储库从 svn 迁移到 git。
在这最后一步中,我想从历史记录中删除大量不需要的文件。
我正在尝试以下命令:
git filter-branch --prune-empty --index-filter \
"for file in $(cat files); do git rm -rf --cached --ignore-unmatch ${file}; done" -f
但是它说参数列表太长了。
我可以这样重写:
for file in $(cat files); do
git filter-branch --prune-empty --index-filter \
"git rm -rf --cached --ignore-unmatch ${file}" -f
done
但它会运行 filter-branch 很多次,而且历史很长.. 所以,它会花费太多时间。
有没有更快的方法来过滤分支删除大量文件?