Ruby on rails 如何撤消捆绑包安装--部署?

Ruby on rails 如何撤消捆绑包安装--部署?,ruby-on-rails,ruby,git,heroku,bundle,Ruby On Rails,Ruby,Git,Heroku,Bundle,我一直在开发一个rails应用程序,并定期使用本地git库将其部署到heroku。我不小心运行了命令: bundle install --deployment 它似乎下载了所有的宝石到本地文件夹,现在当我想上传到heroku它正试图上传很多兆字节的宝石。。。如何撤消运行的命令并删除本地gem?如何防止bundle install再次下载所有gems?您可以尝试以下方法: 首先,移除所有本地宝石 rm -r vendor/bundle 再捆一捆 bundle install 运行git ad

我一直在开发一个rails应用程序,并定期使用本地git库将其部署到heroku。我不小心运行了命令:

bundle install --deployment
它似乎下载了所有的宝石到本地文件夹,现在当我想上传到heroku它正试图上传很多兆字节的宝石。。。如何撤消运行的命令并删除本地gem?如何防止bundle install再次下载所有gems?

您可以尝试以下方法:

首先,移除所有本地宝石

rm -r vendor/bundle
再捆一捆

bundle install
运行git add--all


提交并再次推送到heroku。

想回答这个问题,因为是jrochkind的评论帮了忙

rm -rf vendor/bundle
f in-rf忽略了询问您是否真的要删除此文件的问题

bundle install --no-deployment
上述操作将禁用捆绑部署模式,并在非生产环境中安装所需的软件包

git add .
git commit -m "fixed deployment bundle"
git push heroku master
上面将把所有锁文件添加到git中,用新的更新创建一个提交。然后,它会将您的固定锁文件发送到您的主分支到Heroku主分支(它只有一个主分支)以及您所做的任何其他更改

如果您需要向Heroku主机以外的其他主机发送不同的分支,请运行以下代码,而不是
git-push-Heroku-master

git push heroku development:master

上面的命令将把您的开发分支推送到Heroku主分支。将
development
更改为要发送给Heroku的分支名称。

编辑应用程序根路径下的绑定器配置文件。bundle/config并删除以下行:

BUNDLE_DEPLOYMENT: "true"
或使用oneliner:

sed '/BUNDLE_DEPLOYMENT: "true"/d' .bundle/config

宝石是如何上传到heroku的?你把它们添加到git中了?是的,我通常做git添加。为了简单起见(我知道这可能不是最佳实践),请回到上次ok git提交,即运行
bundle install--deployment
之前的一次提交。本地gems是什么文件夹?“rm”之后是否应该指定要删除哪些文件/文件夹?我认为,当您再次使用
捆绑安装
进行捆绑时,它将“记住”您以前的
--部署
选择。您必须使用
bundle install撤消它--无部署
。我想?