部署 Yeoman 網站

執行 gulp build 任務會在 dist 目錄中產生最佳化的應用程式版本。有多種方法可以將此程式碼編成版本和部署到製作環境中。

Gulp-gh-pages

使用 Gulp gulp-gh-pages 外掛程式,您可以使用特定任務 (例如 gulp deploy) 讓您的應用程式部署。它有以下選項

  • Git 原始程式碼,預設為 origin
  • 推送到哪個分支,預設為 gh-pages
  • 提交訊息。
  • 選項,可指定是否要自動將分支推送到原始程式碼。

欲了解更多資訊,您隨時都可以檢視 自述檔

Grunt-build-control 任務

Grunt 建置控制專門為了部署 Yeoman 應用程式而開發。它有助於您使用 grunt 任務自動化版本編制和部署建置的程式碼。組態選項包括

  • 用於提交的分支名稱 (例如 prod、gh-pages)
  • 推送到目的地 (例如 Heroku 執行個體、GitHub 遠端或本機原始程式碼存放庫)
  • 自動提交訊息,包括分支和提交原始程式碼建置
  • 安全性檢查,以確保原始程式碼存放庫乾淨,以便建置的程式碼始終對應於原始程式碼提交

建置控制在每次提交之前都會擷取,且通常可以很好地將程式碼維護在有版本控制的狀態,即使多位協力者各自獨立部署程式碼。只要沒有使用者強制推送,它就可以維護完整的版本記錄。完整的說明文件在該專案的 GitHub 頁面 上提供。

Git subtree 命令

您也可以在同一分支上維護原始程式碼和建置程式碼,並只使用 git subtree 命令部署 dist 目錄。

  1. .gitignore 檔案中移除 dist 目錄。Yeoman 專案預設會忽略它。
  2. dist 目錄新增到您的存放庫中

     git add dist && git commit -m "Initial dist subtree commit"
    
  3. 將子樹部署到不同的分支。使用 --prefix 指定相對路徑至您的 dist 目錄

     git subtree push --prefix dist origin gh-pages
    
  4. 正常地開發,將您的整個存放庫提交至您的預設 (主) 分支。
  5. 若要部署 dist 目錄,請從根目錄執行 subtree push 命令

     git subtree push --prefix dist origin gh-pages
    

Git-directory-deploy 腳本

Git 目錄部署是一個自動化程度比較低的腳本,它的工作原理類似於 grunt 建置控制。

進一步閱讀