核弹级的git指令 git filter-branch

 

 比如一不小心把node模块目录加入git仓库了,导致仓库很大 :

 

git filter-branch --index-filter 'git rm --cached --ignore-unmatch -fr ./node_modules' -- --all

  

如果不保留空的提交,可以这样:

 

git filter-branch -f --prune-empty --index-filter 'git rm --cached --ignore-unmatch -fr ./image' -- --all 

 

 

还有批量修改邮件地址等操作,参考这里: https://git-scm.com/docs/git-filter-branch

 
 

转载于:https://www.cnblogs.com/fwindpeak/p/7127689.html

你可能感兴趣的:(git)