38
39

More than 5 years have passed since last update.

Herokuアプリを開発するときのgitブランチの使い分け

Posted at

はじめに

herokuアプリを本番用として、ローカル(または開発用サーバ)で開発アプリを動かすためのgit管理方法を備忘として残しておく。

masterは使わない

特にgit cloneしてきたとき、clone元(本家)を保持しておくため。

本家にアップデートがあったときには、まずmasterへgit pullして本家の変更を反映する。Changelog等も参考にしつつ、devへgit mergeする。

dev, prodというブランチを作る

branch 位置付け
master 本家用。ここは変更しない
dev 開発用。まずここを更新&テスト
prod 本番用。herokuへプッシュする対象ブランチ

ブランチの作り方は以下。

git
% git branch dev
% git branch prod

基本的なワークフロー

devブランチで作業

  1. % git checkout dev devブランチへ移動
  2. % emacs something.txt ファイル更新
  3. % git add . ファイルをgitへ登録
  4. % git commit -m コミット

prodブランチへ切替

  1. % git checkout prod prodブランチへ切替
  2. % git merge dev devブランチの内容をprodブランチへマージ
  3. コンフリクトしたらがんばって直す
  4. % git commit -m 本番用のコミット
  5. % git push heroku prod:master リモートリポジトリherokuのmasterブランチへ、ローカルのprdoブランチをpush

devブランチへ戻しておく

  1. % git checkout dev 間違ってprodで開発しないよう、忘れずにdevブランチへ戻しておく。例えばリモートpushとブランチ変更を同時に行っておくと忘れづらくて良い。

    git
    % git push heroku prod:master && git checkout dev
    

環境情報

git
% git --version
git version 1.8.4.4
heroku
% heroku --version
heroku-toolbelt/3.10.6 (x86_64-linux) ruby/2.1.2
inxi
% inxi -SM
System:    Host: hakuba.vps.sakura.ne.jp Kernel: 2.6.32-279.11.1.el6.x86_64 x86_64 (64 bit)
           Console: tty 4 Distro: CentOS release 6.5 (Final)
Machine:   System: Red Hat product: KVM v: RHEL 6.2.0 PC
           Mobo: N/A model: N/A Bios: Sea v: 0.5.1 date: 01/01/2007
38
39
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
38
39