3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Railsアプリを git-flow で管理する

Last updated at Posted at 2020-03-21

はじめに

就活用のポートフォリオをGitで管理する際、これまでは全ての作業を同じブランチで行なっていました。
しかし今後現場に入ってチームで開発する際には、issueごとにブランチを切ってそれぞれで作業するということもあると思います。
そうした状況に今から慣れておくために、ポートフォリオを作成する過程のGit管理に、git-flowを活用することにしました。

issueを作成する

まずはこれから追加したい機能などの内容を記述したissueを作成します。

スクリーンショット 2020-03-21 18.29.50.png

対象リポジトリに移動する

ターミナル上で対象のリポジトリに移動します。

$ cd myapp #自分のアプリの名前 

git-flowをインストールする

ターミナルで下記コマンドを打ち込み、git-flowをインストールします。

$ brew install git-flow

ブランチ「develop」を作成

「git checkout」は、gitのブランチを切り替えたい時に使います。

$ git checkout master
Already on 'master'

で、masterブランチに合わせた上で、

$ git branch develop

新しいブランチ「develop」を作成します。

git-flowを導入する

対象のリポジトリに git-flow を導入します!

$ git flow init
Which branch should be used for bringing forth production releases?
   - develop
   - master
   - socialization
Branch name for production releases: [master] 

Which branch should be used for integration of the "next release"?
   - develop
   - socialization
Branch name for "next release" development: [develop] 

How to name your supporting branch prefixes?
Feature branches? [feature/] 
Release branches? [release/] 
Hotfix branches? [hotfix/] 
Support branches? [support/] 
Version tag prefix? [] 

いろいろ項目を聞かれますが、デフォルトの設定で良いので、Enterを押していきます。

「feature」ブランチに切り替える

git-flow には5つのブランチの概念があり、先ほど作成した「develop」は開発用。
そして下記で作成する「feature」は、機能実装用のブランチです。
issue番号を指定することで、issueに紐づけることができます。

$ git flow feature start <issue番号>

具体的には下記のように書きます。

$ git flow feature start 14
Switched to a new branch 'feature/14'

Summary of actions:
- A new branch 'feature/14' was created, based on 'develop'
- You are now on branch 'feature/14'

Now, start committing on your feature. When done, use:

     git flow feature finish 14

切り替わったかどうか、確認してみます。

$ git branch
  develop
* feature/14
  master

切り替わっています。
このままではまだローカル環境内で切り替わっているだけなので、「publish」コマンドでGitHubに反映します。

$ git flow feature publish 14
Summary of actions:
- A new remote branch 'feature/14' was created
- The local branch 'feature/14' was configured to track the remote branch
- You are now on branch 'feature/14'

コミットする際に「#issue番号」を入れる

コミットメッセージの中に、「#issue番号」を入れることで自動的にコミットが、該当するissueに紐づきます。
issueごとにコミット内容が確認できるため、コミットの差分が視覚的に分かりやすいです。

例です。

$ git add .
$ git commit -m "SpecialBookモデルを追加 #14"
スクリーンショット 2020-03-21 18.30.08.png

GitHubの管理画面で、Pull Requestを送信する

該当のブランチからPull Requestを送信します。

スクリーンショット 2020-03-21 18.37.08.png

内容を確認し、Pull Requestをマージする

変更内容を確認し問題がなければ、コミット内容をマージします。

スクリーンショット 2020-03-21 18.40.29.png

以上です。
今後も現場の開発を意識した学習を進めていきます。

3
2
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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?