[英]single file git deployment into server
我正在使用 Capistrano 部署 Rails 應用程序; 如何在不發布新版本的情況下在服務器上更新一個文件?
例如:
假設我只對我的UserController.rb.
並將其提交給 git 服務器,我應該如何在不進行新部署的情況下將此更新放到服務器上。
Capistrano 有一個部署任務,用於更新不需要完整部署的單個文件。
cap -e deploy:upload
在你的情況下,它可能是這樣的:
cap deploy:upload FILES='app/controllers/UserController.rb'
您可能還需要重新啟動您的應用程序
cap deploy:restart
您應該通過 Capistrano 發布新版本。
部署工具的目的是為您提供可重復的結果並幫助您跟蹤已部署的內容。 繞過此過程進行小修復意味着您將失去這兩個優勢。 如果您認為為一個簡單的更改運行整個部署過程是多余的,那么您可能應該簡化該過程(或確保您永遠不必執行簡單的修復 - 祝您好運。)。
務實地說,我相信很多人只會在服務器上手動編輯文件。 不推薦,原因如上。 如果您認為權衡是值得的,那是您的決定:)。
作為免責聲明:我不是 ruby 開發人員,而且我從未真正使用過 Capistrano,我的建議是通用的,而不是特定於這些技術。 也許有一種特殊的方法可以通過系統推動小的變化——如果是這樣,我希望有一個答案指出它......
Capistrano 3 中不再存在任務cap deploy:upload
。
您可以添加這個 gem https://github.com/Reiknistofa/capistrano-upload來取回它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.