Yeoman サイトのデプロイ

gulp build タスクを実行すると、dist ディレクトリ内でアプリケーションの最適化バージョンが生成されます。このコードをバージョン管理してプロダクションにデプロイする方法がいくつかあります。

Gulp-gh-pages

gulp-gh-pages Gulp プラグインを使用すると、アプリケーションを gulp deploy などの特定のタスクを使用してデプロイできます。さまざまなオプションを使用できます。

  • Git の origin。デフォルトは origin です。
  • プッシュ先のブランチ。デフォルトは gh-pages です。
  • コミットメッセージ
  • ブランチを自動的に origin にプッシュするかどうかを指定するオプション

詳細については、readme をチェックできます。

Grunt-build-control タスク

Grunt build control は、Yeoman アプリケーションをデプロイするために特別に開発されました。Grunt タスクを使用して、ビルドされたコードを自動的にバージョン管理してデプロイできます。設定オプションには以下が含まれます。

  • コミット先のブランチ名(例: prod、gh-pages)
  • プッシュ先のリモート(例: Heroku インスタンス、GitHub リモート、またはローカルソースコードリポジトリ)
  • ブランチとコミット 元のコードがビルドされたことを含む自動コミットメッセージ
  • ソースリポジトリがクリーンであることを確認して、ビルドされたコードが常にソースコードコミットに対応するようにするための安全チェック

ビルドコントロールは、すべてのコミットの前にフェッチし、一般に、複数のコントリビューターが独立してデプロイする場合でも、コードのバージョン管理を適切に行います。ユーザーの強制プッシュが行われない限り、完全なリビジョン履歴を保持します。プロジェクトのGitHub ページで完全なドキュメントを確認できます。

Git サブツリーコマンド

同一ブランチでソースとビルド済みコードを管理し、git subtreeコマンドを使用して dist ディレクトリのみをデプロイすることもできます。

  1. dist ディレクトリを .gitignore ファイルから削除します。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 directory deploy は、grunt build control と同じ原則に従って動作する、自動化の少ないスクリプトです。

関連情報