Ruby on rails 为什么没有;heroku bundle更新";?
我不明白为什么我必须在本地更新我的gems并将其推送到heroku,以获得它们的更新版本Ruby on rails 为什么没有;heroku bundle更新";?,ruby-on-rails,heroku,gem,bundler,Ruby On Rails,Heroku,Gem,Bundler,我不明白为什么我必须在本地更新我的gems并将其推送到heroku,以获得它们的更新版本 为什么没有heroku bundle update命令?当您bundle update或运行任何等效的CLI命令时,我相信Bundler会更新您的Gemfile.lock文件,该文件保存了所有gem依赖项的树,并且锁定文件由您的git存储库跟踪() 如果您能够直接在Heroku上运行该命令,那么您必须再次提取存储库,否则您将面临git快进问题 因此,实际上,您不必在本地执行命令并将其向上推送,从而不再运行任
为什么没有
heroku bundle update
命令?当您bundle update
或运行任何等效的CLI命令时,我相信Bundler会更新您的Gemfile.lock文件,该文件保存了所有gem依赖项的树,并且锁定文件由您的git存储库跟踪()
如果您能够直接在Heroku上运行该命令,那么您必须再次提取存储库,否则您将面临git快进问题
因此,实际上,您不必在本地执行命令并将其向上推送,从而不再运行任何命令。应该首先在本地运行bundle update的真正原因是测试您的应用程序是否仍在使用较新的gem版本。heroku bundle update将是一个危险的命令。这一点很好,但我仍然不喜欢它,它是一个复杂的项目,在让服务器运行并重新编译.lock文件之前,我必须做很多事情。也许有办法稍微改进一下部署过程?我知道对于一些更复杂的应用程序,我通常倾向于编写一个rake任务,比如
rake-app:deploy
。它将运行预部署任务,运行测试(如果通过),然后推送到heroku。