赞
踩
遇到此问题 首先参考 了此文
但是此文依然少了一个步骤因此依然会报错,原文是
有可能错误直接爆出是哪个文件,也有可能只是爆出了该文件的代号。如果是代号需要先使用该语句查询具体是哪个文件$ git rev-list --objects --all | grep xxx
$ git filter-branch --tree-filter 'rm -f xxx' --tag-name-filter cat -- --all
这里的XXX替换成报错文件的具体路径(例如我这里的xxx是target/travel-0.0.1-SNAPSHOT.jar)
git push origin master
到第二步完成如果直接推依然报错,因为历史记录里面还有,会报错
- Ref 'refs/heads/master' was rewritten
- WARNING: Ref 'refs/remotes/origin/master' is unchanged
- WARNING: Ref 'refs/remotes/origin/master' is unchanged
需要增加一步,因此完整步骤为:
有可能错误直接爆出是哪个文件,也有可能只是爆出了该文件的代号。如果是代号需要先使用该语句查询具体是哪个文件$ git rev-list --objects --all | grep xxx
$ git filter-branch --tree-filter 'rm -f xxx' --tag-name-filter cat -- --all
这里的XXX替换成报错文件的具体路径(例如我这里的xxx是target/travel-0.0.1-SNAPSHOT.jar)
$ git log --pretty=oneline --branches -- xxx
xxx就是文件路劲同上
git push origin master
4步骤才会成功,本次踩坑记录。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。