我有一個Rails應用程序,我用git和Capistrano 3部署到遠程服務器。它工作正常。Capistrano 3簡單更新
有時在我更改某些文件(例如在app/views中)後,我想要將這些更改上載到當前版本,而無需運行完整的部署過程。
我需要一個命令將更改後的文件(上次在git中提交時的文件)上載到遠程服務器上的當前版本目錄。
這樣做的最佳方法是什麼?
我有一個Rails應用程序,我用git和Capistrano 3部署到遠程服務器。它工作正常。Capistrano 3簡單更新
有時在我更改某些文件(例如在app/views中)後,我想要將這些更改上載到當前版本,而無需運行完整的部署過程。
我需要一個命令將更改後的文件(上次在git中提交時的文件)上載到遠程服務器上的當前版本目錄。
這樣做的最佳方法是什麼?
提高性能與遠程緩存
方式Capistrano的工作,它會創建庫的每部署一個新的克隆/出口。這可能會很慢,所以有一個選項可以在我們的deploy.rb配方中添加一些額外的命令來加快速度。以下內容添加到您的deploy.rb
的部分,在那裏你描述你的SCM設置:set :deploy_via, :remote_cache
此命令使Capistrano的做你的服務器上的第一次庫的單個克隆/結帳,然後做每一個部署,而不是svn up or git pull
做一個完整的克隆/導出。如果您經常部署,您會注意到這會顯着加快您的部署。
希望這可以幫助你,你在找什麼!
欲瞭解更多詳情,請查看此鏈接。 deploy-with-capistrano
)如果我只想從git中複製已更改的文件,而不創建新版本並且不執行capistrano在部署過程中執行的所有其他操作,該怎麼辦? –
我不認爲它會是容易....因此你需要挖掘Capistrano代碼 – VKatz
爲什麼不經歷完整的部署週期? –
它太慢了。我通過對視圖進行許多小改動來調試服務器上的網站。我正在測試我的網站看起來如何通過另一個工具,它只能從互聯網訪問我的網站,但無法訪問我的本地版本。爲什麼我應該創建一個新版本和其他東西,然後重新啓動Rails應用程序。 –
您是否找到解決方案?我需要做同樣的事情...... :( –