0

我在 Git 的很多提交中有很多增量文件 (.*~),我想从所有提交中删除所有文件。

4

1 回答 1

2

从所有提交中删除看起来像使用git filter-branch

git filter-branch --index-filter 'git rm --cached --ignore-unmatch .*~' HEAD

GitHub 帮助页面有一个更完整的命令:

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch .*~'  --prune-empty --tag-name-filter cat -- --all

使用(如本文中所述):

  • --index-filter这类似于--tree-filter但不检查树,并且速度更快。
  • --ignore-unmatch参数,用于忽略不存在的文件。

不过,这将改写你的回购的历史。
这意味着任何已经克隆了所述 repo 的合作者都需要将他/她的本地克隆重置为你的 repo 的新历史git push --force

于 2013-05-26T14:20:07.663 回答