从推送中删除重型文件夹

时间:2017-06-24 09:05:11

标签: git github version-control

我有远程主人提前6次提交。 一个文件夹充满了高分辨率图片,之前提交了5次提交。 我不能推,因为变化太重了。

问题:即使我从历史中删除目录,再加上它给gitignore,我对主人的推动仍然是相同的大小和错误。 在97%时它开始从20mb增长到500

还有其他清洁方式吗?

1 个答案:

答案 0 :(得分:2)

您必须重新定义本地提交并删除重文件夹:

git rebase --interactive COMMIT_THAT_ADDED_THE_FOLDER^ # the ^ is important here
# change 'pick' to 'edit' on the line for the commit that added
#       the folder (should be the first one), then validate
git rm --cached -r THE_FOLDER # it will remove the folder but keep it locally
git rebase --continue
# you may encounter conflict if you modified files in the folder in next commits

您应该考虑使用git-lfs之类的解决方案来处理git存储库中的大量文件。