LoginSignup
8
6

More than 5 years have passed since last update.

【個人用まとめ】git flowを使った開発

Last updated at Posted at 2019-02-28

はじめに

コマンドラインからgit flowを使って開発をしたときにコマンドや手順を調べるのが面倒だったのでまとめます。
個人開発なので、複数人での開発とは違う部分もあるかと思います。
間違い等ありましたらご指摘お願いします。

git flow のインストール

yum install git-flowでインストールできるというのを見かけたのですが、できないっぽいので他のやり方でインストールします。

$ cd /usr/local/src
$ sudo bash
$ wget -q -O - --no-check-certificate https://github.com/nvie/gitflow/raw/develop/contrib/gitflow-installer.sh | bash
$ exit

git flowの初期化

管理したいリポジトリで下記コマンド実行。

$ git flow init
# いろいろでてくるけどとりあえず全部EnterでOK

ちなみに-dオプションを付けると自動で初期設定をしてくれます。

リモートリポジトリがあるなら初期化した後git push --allしてもいいかも。

開発手順

featureブランチ

developブランチからfeatureブランチを切って機能の追加を行います。

$ git flow feature start hogehoge

これでfeature/hogehogeブランチが作成され、チェックアウトされます。

作業が終わったら

$ git add .
$ git commit -m "hoge"
$ git flow feature finish hogehoge

でdevelopブランチにマージされてfeature/hogehogeブランチは削除されます。

developブランチにマージされた後、developブランチをpushします。

releaseブランチ

リリース作業をする際は、developブランチからreleaseブランチを切ります。

$ git flow release start v1.0

リリース作業が終わったら

$ git add .
$ git commit -m "hogehoge"
$ git flow release finish v1.0

を実行すると、masterブランチとdevelopブランチにマージして、masterブランチにタグをつけてくれます。

タグはreleaseブランチの名前が付くようです。

また、releaseブランチは削除されます。

この作業が終わったらgit push --allですべてリモートリポジトリにあげます。

hotfixブランチ

緊急性の高いバグなどを修正する際に利用します。
master ブランチからhotfixブランチを切ります。

$ git flow hotfix start v1.1

作業が終わったら

$ git add .
$ git commit -m "hogehoge"
$ git flow hotfix finish v1.1

でmasterとdevelopブランチにマージされて、masterブランチにタグが付きます。

余談

Cmderを利用しているのですがreleaseブランチを終了させて、masterブランチにマージする際のコメント記入を何もしないで:wqとすると画面がバグります。
少し書き換えればバグらずに済むのですが、ちょっとめんどうなのでどうにかして直したいですね…

2019年3月10日追記:上記のバグはCmderを一度削除し、再度ダウンロードしたところ直りました。

参考

コマンドラインで Git Flow をインストールして使ってみる
git-flow を試す
git-flow cheatsheet
git-flow コマンド説明和訳

さいごに

個人的に便利なツールだと思います。
この記事には載っていないコマンドもあり、理解するにはまだ勉強が足りないようです。

8
6
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
8
6