MoyaSystem

もやしです。

Gitでbranch作成->push->内容を共有->masterに取り込み までの手順

本記事は以下のサイトを参考にしました。
remote に branch を push し、remote から clone したリポジトリの branch を変更して push する - basyura's blog
Git - ブランチとマージの基本

開発に携わっているWebサービスで、そろそろbranchも活用した開発体制を視野に入れたくなってきたのでメモ。
TexChange | 使わなくなった「教科書」を誰かの「ありがとう」にテクスチェンジ!

2人の作業者(A, B)で協力して開発している想定で進めます。
Aさんがブランチをつくり、Bさんはそのブランチの内容を共有します。

A, Bの作業

1. まずはマスターからチェックアウト

$ git clone < URL >

これは基本。

Aの作業

2. ローカルブランチをつくって作業しよう

$ git checkout -b test

これでローカルにtestブランチが作られ、作業用ブランチもtestに移動する。*1
この状態でブランチを確認するとこうなっているはず。

$ git branch -a
master
* test

この状態で何かしらファイルを編集する。

3. リモートにpushしよう

決まり文句。

$ git add .
$ git commit -m "comment"
$ git push origin test

3行目でもし test を master と打ち間違ったとしても、作業用ブランチがtestになっているので、masterには何も変更が加えられない。
これでリモートに test のブランチがpushされ、誰にでも見える状態になった。

Bの作業

4. testブランチの内容をcheckoutしよう

Aさんの作業が終わったので、Bさんがそのソースコードを受け取る。

$ git checkout -b test origin/test

これでtestブランチの内容を共有できた。

5. testブランチの内容をmasterにマージしよう

最後に、masterに対してtestブランチの内容を取り込む。

$ git checkout master
$ git merge test
$ git push origin master

おつかれさまでした。

*1:これは、こうコマンド打ったのと同じ。$ git branch test / $ git checkout test