何をしたか
git-flowというものがあります。これは、gitリポジトリの管理手法の一つで、Vincent Driessenmという方の提唱するブランチモデルだそうです。
これまで、git-flowの存在は知っていたのですが、見よう見まねでなんとなく導入していました。この度、ライブラリを使ってしっかり導入していく方法があると知ったので、自分自身のために、導入手順をメモしていきます。
なお、git-flowの実践方法は優れた記事が何本も出ており、特に、以下の記事はブランチ作成、pull、pushと一通りの流れが紹介されていました。
導入方法
ライブラリのインストール
まずはgit-flowのライブラリを入手します。
訳あって、macとWinのマシンの両方で導入したので、両方をメモしていきます。
# macOS
$ brew install git-flow-avh
# Ubuntu(WSL)
$ apt-get install git-flow
初期化
次にプロジェクトのルートディレクトリに移動し、git-flowの初期化をします。
$ git flow init
対話形式で、いくつかgit-flowの設定に対する質問がなされます。全てデフォルトの設定にすることが推奨されるようです(こちらのページ下方の記述による)。
ブランチの切り方
git-flowには、master、develop、feature、hotfix、releaseなどのブランチがありますが、それぞれの意味は、先にあげたこちらのページが詳しかったので、割愛させてください。
developからfeature(作業用)ブランチを切るには、以下のコマンドをうちます。
git flow feature start 001_first-branch
これにより、feature/001_first-branchというブランチが作成されます。
feature/001_first-branchにブランチを移動して、作業を続けます。
pushをするとき
これはいつも通りですね^^
git push origin feature/001_first-branch
プルリクは、girhub上で作って、マージします。
マージ後
以下のコマンドを打つようです。(まだそこまで行ってないので、試せていない)
git flow feature finish 001_first-branch
これをすると、以下のことが行われるそうです。
-
001_first-branchブランチのdevelopへのマージ - 開発用ブランチ(
001_first-branch)の削除 -
developブランチへのスイッチ
その他作業のコマンド
まだ、開発を始めたばかりなので、あまりコマンドを売っていないのですが、
- 開発が終わって
developにマージするとき -
developをリリースにマージするとき - 他の人の修正を取り込むとき
などでそれぞれコマンドが違うようですので、調べつつ実装し、続きをQiitaにまとめたいと思います。