如何在GIT中更新缓存?

时间:2012-01-14 02:05:50

标签: git github

我正在尝试将我的git repo推送到heroku服务器,现在我曾经有一个大的供应商文件夹,但我使用以下方法将其删除:

 git rm -r --cached vendor  

我在那个阶段没有问题,无论如何我删除了文件,并做了提交和一切,似乎每当我推动我仍然使用相同的文件(甚至我删除的文件),我'我很确定它以某种方式缓存,所以我应该如何刷新缓存?我尝试了很多东西,比如更新索引,但这很奇怪,因为我现在还在推动20 MB而不是2 MB。

任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:4)

> 我应该如何完全删除文件夹,甚至从历史记录和所有内容中删除?

这是git filter-branch可能派上用场的地方。以下应该可以解决问题。

$ git filter-branch --index-filter 'git rm --cached --ignore-unmatch vendor' --prune-empty -- --all

注意:确保在使用git filter-branch之前制作项目的本地副本,特别是如果您尝试回收一些空间(在下面的链接参考中有更多相关内容)。

一旦您的历史记录清晰,以下内容将替换您的上游存储库与重写的。

$ git push origin --all --force

我强烈建议您阅读之前的链接运行任何命令。真的:)

<强>参考