Help us understand the problem. What is going on with this article?

gulpやgruntでbuildしたファイルをHerokuにどうdeployするか

More than 3 years have passed since last update.

gulpやgruntでbuildされたファイルは通常gitignoreしてあるので困った

3通り方法見つけました。
自分は一番目の方法でしばらくやってみることにしました。

deploy用の一時branchを作る

#!/bin/bash
set -e

# Create new deploy branch based on master
git checkout -b deploy
# gulp comands to build our site
gulp build
# the dist/ directory is in my .gitignore, so forcibly add it
git add -f build/
git commit -m "Deploying to Heroku"
# Push it up to heroku, the -f ensures that heroku won't complain
git push heroku -f deploy:master
# Return to the last branch
git checkout -
# Delete current deploy branch
git branch -D deploy

一時的にdeployブランチを作成し、そこでbuild後にgitignoreしてあるファイルをforce addしています。
pushし終えたら元のブランチに戻って一時ブランチを削除しています。

この方法でいいなと思ったのは、少しの変更をいちいちcommitしないでもherokuにpush出来てしまうという点です。
開発初期段階ではいちいちcommit&pushするのが嫌だったので。。

参考: http://stackoverflow.com/questions/13784600/how-to-deploy-node-app-that-uses-grunt-to-heroku

heroku上でbuildを実行(postinstallにgulpコマンドを記述)

  "scripts": {
    "postinstall": "gulp build",
    "start": "node build/server.js",
  }

heroku上でpakageのinstallが完了したあとにpostinstallが実行されます。
なのでpostinstallにgulpコマンドを書くという方法もありです。
ただ、コマンド実行に必要なpackageを"devDependencies"ではなくて"Dependencies"に記述しないとダメなようです。

参考: https://medium.com/@adambretz/heroku-gulp-c96dc3a8044d

ローカルでBuildしたファイルをそのままpushする

ローカルでbuildを実行し、buildされたファイルをgitignoreせずにpushするという方法でもいけると思います。

enu-kuro
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした