参考链接

实践

1
2
3
4
5
6
7
8
9
10
11
12
13
## SOME_FILE_PATH 为相对于工程根目录的路径
## 若 SOME_FILE_PATH 为文件夹,git rm 需加上 -r 参数
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch SOME_FILE_PATH' \
--prune-empty --tag-name-filter cat -- --all

git push origin --force --all
git push origin --force --tags

## 刷新本地缓存
git for-each-ref --format='delete %(refname)' refs/original | git update-ref --stdin
git reflog expire --expire=now --all
git gc --prune=now