我正在使用Capistrano部署Rails应用程序,如何在不进行新发布的情况下更新服务器上的一个文件?
例如:
假设我只对我的UserController.rb进行了更改,并将其提交到git服务器,那么我该如何将此更新获取到服务器上而不进行新的部署。
例如:
假设我只对我的UserController.rb进行了更改,并将其提交到git服务器,那么我该如何将此更新获取到服务器上而不进行新的部署。
Capistrano有一个部署任务,可以更新单个文件,而不必进行完整的部署。
cap -e deploy:upload
在您的情况下,可能会像这样:
cap deploy:upload FILES='app/controllers/UserController.rb'
你可能还需要重启你的应用程序
cap deploy:restart
cap deploy:upload
任务在 Capistrano 3 中已经不存在。
你可以添加这个 gem https://github.com/Reiknistofa/capistrano-upload 来恢复它。