Reference: https://devcenter.heroku.com/articles/heroku-cli-commands
# Get your heroku username and password ready
$ heroku login
$ heroku logout
USAGE
$ heroku local [PROCESSNAME]
OPTIONS
-e, --env=env location of env file (defaults to .env)
-f, --procfile=procfile use a different Procfile
-p, --port=port port to listen on
DESCRIPTION
Start the application specified by a Procfile (defaults to ./Procfile)
ALIASES
$ heroku local:start
EXAMPLE
$ heroku local
$ heroku local web
$ heroku local web=2
$ heroku local web=1,worker=2
$ heroku local:run bin/migrate
$ heroku run bash
$ heroku run node path-to-file
# Example:
$ heroku run node bin/seed.js
$ heroku config
$ heroku apps:create
$ heroku apps:info
$ heroku apps:rename NEWNAME
$ heroku apps:stacks
▸ heroku-cli: update available from 6.13.19 to 6.99.0-ec9edad
=== ⬢ mind-the-board Available Stacks
* heroku-18
heroku-16
cedar-14
container
heroku config:set NODE_ENV=production # set env to production
heroku config:set NODE_PATH=./src # Use ./src as node path
$ heroku git:remote
$ heroku apps:errors
$ heroku logs
$ heroku logs -t # Stream logs
$ heroku pg [DATABASE]
$ heroku pg:settings [DATABASE]
$ heroku pg:reset [DATABASE]
$ heroku pipelines:setup [NAME] [REPO]
# Example:
$ heroku pipelines:setup example githuborg/reponame -o example-org
$ heroku pipelines
$ heroku pipelines:connect [NAME]
# Example:
$ heroku pipelines:connect example -r githuborg/reponame
$ heroku pipelines:create [NAME]
# Example:
$ heroku pipelines:create -a example-staging
$ heroku pipelines:destroy PIPELINE
# Example:
$ heroku pipelines:destroy example
$ heroku pipelines:diff
OPTIONS
-a, --app=app (required) app to run command against
-r, --remote=remote git remote of app to use
EXAMPLES
$ heroku pipelines:diff --app murmuring-headland-14719
$ heroku pipelines:info PIPELINE
# Example:
$ heroku pipelines:info example
$ heroku buildpacks
▸ heroku-cli: update available from 6.13.19 to 6.99.0-ec9edad
=== mind-the-board Buildpack URL
heroku/nodejs
$ heroku buildpacks:add BUILDPACK
$ heroku buildpacks:info BUILDPACK
$ heroku buildpacks:add BUILDPACK
$ heroku buildpacks:remove [BUILDPACK]
$ heroku buildpacks:search [TERM]
$ heroku buildpacks:set BUILDPACK
$ heroku buildpacks:versions BUILDPACK
$ heroku auth:token
$ heroku whoami
$ heroku authorizations
$ heroku authorizations:create
$ heroku authorizations:info ID # show
$ heroku authorizations:revoke ID # revoke
$ heroku authorizations:update ID # update
$ heroku authorizations:rotate ID # update oAuth authorization token
$ heroku certs
$ heroku certs:add CRT KEY
EXAMPLES
$ heroku certs:add example.com.crt example.com.key
$ heroku certs:generate example.com
$ heroku certs:info
$ heroku certs:key example.com.crt example.com.key
$ heroku certs:remove
$ heroku auth:2fa:generate-recovery-codes
$ heroku keys:add /my/key.pub
$ heroku keys:remove email@example.com
$ heroku keys:clear
$ git remote -v
$ heroku create
heroku git:remote -a thawing-inlet-61413
$ git remote rename heroku heroku-staging
$ git push heroku master
$ git push heroku testbranch:master
$ git add -A
$ git commit -m "heroku deployment message"
$ git push -f heroku
# Example
$ git config --global url.ssh://git@heroku.com # instead of https://git.heroku.com
$ git config --global --remove-section url.ssh://git@heroku.com/
nice