我可以删除我当地的.git仓库吗?
我的heroku repo增长到1.5gb,所以heroku支持的好伙伴清除了远程heroku repo,并建议我推送一份新的副本。
然而,du -h .git本地的结果显示.git为276m。 并且,可以预见的是,当我尝试将master推向它时,heroku会抛出一个错误。
所以,我的问题是:我可以删除我的本地.git文件夹,执行git init
并推送到heroku吗? 这到底是做什么的?
我的应用程序代码被推送到github – 我通常的工作流程是:
git add . git commit -m "message" git push #to github git push heroku master
可能的问题
您的存储库可能比预期更大的原因有两个。
- 您的存储库中有很多二进制资产。
- 你有一个巨大的提交历史。
可能的解决方案
如果其中任何一个是原因,您有几个选择。 考虑以下。
-
如果您的问题是二进制资产,请将资产移至外部资产商店(例如Amazon S3或远程文件系统)。 然后,您可以使用git-filter-branch和git-gc将其从历史记录中删除。 这将大大减少您的存储库。
-
如果您的问题是一个非常大的历史记录,请将一个单独的浅层克隆推送到Heroku。 例如:
git clone --depth 1 my_repo heroku_repo
好吧,你不能这样做,除非你强行推(这几乎从不推荐)。 这将删除整个提交历史记录并创建一个全新的存储库。
但如果你想因为空间而抹去一切……你可以。 这只是……很奇怪。
如果你只推大师会怎么样?
你可能想做一些家务 。
做出赞成的回答,但请记住,你不能推动浅层克隆。 这是一个跟进: 在浅层克隆之后推送到github