我已经提交并在bitbucket中推送了一个太大的文件,我已经在本地删除了它,已经提交并再次推送。但是在网站bitbucket上,存储库的大小仍然太大。
答案 0 :(得分:8)
听起来您在删除文件时创建了新提交。这意味着该文件仍然存在于上一次提交中。
您需要做的是重写历史记录。假设两个最新的提交正在删除并添加该文件,您可以执行以下操作:
git reset --hard HEAD~2
git push --force
这将删除两个最新的提交,然后强行将其推送到bitbucket。如果无法帮助减少站点,则需要联系bitbucket支持,以便他们可以在远程存储库上运行git gc
以实际删除已删除的提交/文件。
如果你只想删除给定的文件而不用中断整个提交,你可以使用git-filter-branch
作为explained in the GitHub docs(它不是特定于GH的):< / p>
git filter-branch --index-filter 'git rm --cached --ignore-unmatch THE_FILE' \
--prune-empty --tag-name-filter cat -- --all
显然,您需要将THE_FILE
替换为您想要删除的文件的名称。在此之后,您还需要执行强制推送。