1. 程式人生 > >最全Pycharm教程(13)——Pycharm部署

最全Pycharm教程(13)——Pycharm部署

如果覺得這篇文章對您有所啟發,歡迎關注我的公眾號,我會盡可能積極和大家交流,謝謝。 


  1、主題

  這篇教程將逐步介紹如何通過Pycharm將你的程式碼部署在遠端伺服器上。

  2、準備工作

  (1)Pycharm版本為3.0或者更高

  (2)擁有待部署遠端伺服器的訪問許可權

  強調這篇教程是針對win7作業系統,使用了預設的快捷鍵配置方案,不同系統下的預設快捷鍵配置方案可能不同。

  3、準備例項

  建議使用 Getting Started篇所介紹的例項,那裡面已經將主要步驟描述清楚,直接借用即可。

  4、配置一個部署伺服器

  單擊主工具欄中的設定按鈕來開啟Settings/Preferences對話方塊,選擇 

Deployment頁面(也可以通過主選單上的Tools→Deployment→Configuration命令來完成)。

  單擊綠色加號,在Add Server對話方塊中,輸入伺服器的名稱(MyRemoteServer)並指定其型別(此處選擇Local or mounted folder):

  此時已經添加了一個新的伺服器,但其內容為空。它只顯示了Web服務的根域名(http://localhost),你需要在其中上傳你的檔案。

  5、如何定值連線表單

  選擇帶上傳檔案所在目錄,這裡為本地目錄C:\xampp\htdocs(既可以手動輸入,也可以通過Shift+Enter快捷鍵來開啟Select Path

對話方塊進行輸入),詳見 product documentation

  6、如何定製對映表單

  接下來,選擇Mappings tab,其中的Local path欄預設包含了工程根目錄。當然你可以選擇你的工程樹中的任意目錄,這裡我們使用它的預設值。

  在Deployment path欄中(預設值為空),需要定義伺服器所在資料夾,將來Pycharm會從Local path資料夾向其中上傳檔案。這裡選擇為C:\xampp\htdocs。

  最後在 Web path on the server MyRemoteServer欄中使用其預設值:

  OK,儲存設定,服務可用。

  7、瀏覽遠端主機

  你需要簡單的確認一下你的伺服器是否已上線並正常執行。開啟

Remote Hosts tool window(位於PyCharm視窗的右邊緣):

  當然,也可以通過Tools→Deployment→Browse Remote Hosts選單命令來開啟這個視窗。

  8、部署工具

  接下來開始執行部署操作。

  9、上傳

  首先,向遠端伺服器上傳檔案,做法如下:

  在 Project tool window視窗中,右擊待上傳的檔案,這裡為Solver.py。在彈出的快捷選單中,選擇Deployment→Upload to MyRemoteServer,觀察上載結果:

  當然我們也可以上傳工程目錄下的所有檔案。例如,右擊Solver.py檔案所在父目錄(src),在快捷選單中選擇Upload to MyRemoteServer,就能夠將目錄下的所有檔案上傳到服務端:

  10、遠端、本地版本比較

  此時再遠端服務端和本地服務端都有一份Solver.py檔案,它們是完全相同的。此時切換到本地檢視。

  做法很簡單,將游標定位在函式宣告語句上,按下Ctrl+Alt+Shift+T(或者主選單上的Refactor→Refactor This命令):

  如你所見,快捷選單中列出了當前文字下可用的所有程式碼重構,我們這裡選擇Rename refactoring,並且rename a method

  單擊Do Refactor,觀察函式名稱以及用法的改變。

  此時我們已經對一個本地版本進行了更改,接下來我們需要做的就是讓Pycharm接收到這些更改。再次進入Project tool window,右擊Solver.py檔案,在快捷選單中選擇Deployment→Compare with Deployed Version on MyRemoteServer。Pycharm會開啟differences viewer for files對話方塊,在這裡你可以通過shevron按鈕來核對所做的改變:

  11、下載

  右擊Solver.py,選擇Deployment→Download from MyRemoteServer,Pycharm會立即給出警告提示:

  不必驚慌,直接單擊Continue即可:

  對應的你也可以下載整個目錄下的檔案,前提是這些檔案已經上傳完成。例如,右擊父目錄src,執行相同操作,即會自動下載目錄中所有巢狀檔案。

  然而如果你試圖下載一個還未上傳的檔案,Pycharm會給出下載失敗的提示:

  12、同步機制調整

  首先需要進行一步準備工作,就是將對Solver.py檔案所做的更改撤銷(Ctrl+Z),此時會再次看到Solver.py檔案中類的成員函式重構名稱。

  接下來右擊Solver.py,選擇Deployment→Sync with Deployed to MyRemoteServer,Pycharm彈出 differences viewer for folders視窗,在這裡你可以通過shevron按鈕來核對所做的單獨改變:

  當然也可以對整個資料夾進行同步操作。例如右擊node_modules選擇Deployment→Sync with Deployed to MyRemoteServer,此時會在左視窗中顯示node_modules資料夾中的內容,但右側視窗為空,因為該目錄下的檔案並未上傳到服務端。我們可以在此處進行上傳。選擇待同步的檔案,單擊工具欄上的按鈕:

  13、自動上傳至預設伺服器

  當用戶需要在服務端使用與Pycharm工程中完全相同的檔案時,自動上傳功能就顯得很用幫助。自動上傳功能意味著無論在IDE中對程式碼進行了何種改變,Pycharm都會自動將其儲存在已部署的預設的服務端。

  14、將伺服器指定為預設伺服器

  預設伺服器的最大優點就是可以使用自動上傳功能,指定方法如下:

  (1)在Deployment page頁面上選擇一個伺服器。有兩種開啟Deployment page頁面的方法:要麼使用Settings/Preferences→Deployment選單命令,要麼使用Tools→Deployment→Configuration選單命令。

  (2)在server configurations列表中,單擊預設按鈕:

  15、啟用自動上傳功能

  設定完預設伺服器之後,接下來就是開啟自動上傳功能。做法如下:

  首先,開啟Options部署選項(主選單中的Settings/Preferences→Deployment→Options 或者 Tools→Deployment→Options命令),在Upload files automatically to the defaylt server選項中選擇Always,或者On explicit save action選項:

  第二步,勾選主選單Tools→Deployment→Automatic upload複選框,注意此時的automatic apload選項已經處於Always的模式:

  值得一提的是,我們並不推薦在釋出的產品中使用Always模式,避免我們在部署過程中不經意上傳了未開發完整的程式碼,從而破壞了產品的穩定性。

  16、上傳外部更改

  預設情況下Pycharm只上傳檔案自身的更改情況,如果我們通過其他途徑對檔案進行了更改,例如通過VCS branch、transpilation of SASS 或者 LESS or a File Watcher進行的更改,Pycharm是不會將這些更改自動上傳的,為了保證這些更改也能順利上傳,需要啟用Upload external changes功能: