LoginSignup
9
12

More than 3 years have passed since last update.

【Git】GitLabで1人コードレビューごっこしてみた③(レビューからマージまで)

Posted at

前回の続きです。
【前回】:【Git】GitLabで1人コードレビューごっこしてみた②(branch作成からMergeRequestまで)

プルリクエストを使った開発プロセス

>>>引用

①[ 開発者 ] 作業対象のソースを clone または pull します。
②[ 開発者 ] 作業用のブランチを作成します。
③[ 開発者 ] 機能追加、改修といった開発作業を行います。
④[ 開発者 ] 作業が完了したら push します。
⑤[ 開発者 ] プルリクエストを作成します。
⑥[ レビュー・マージ担当者 ] 通知されたプルリクエストから変更を確認しレビューします。
⑦[ レビュー・マージ担当者 ] レビュー結果を判断し、必要ならば開発者にフィードバックします。
⑧[ レビュー・マージ担当者 ] レビューの結果、問題がない場合はマージします。
⑨[ レビュー・マージ担当者 ] レビューの結果、対応自体が不要となるなど、プルリクエスト自体が必要ない場合はクローズします。

今回は⑥~⑧までです。
⑨はマージをGitLab側で拒否するだけなので書きません。
一旦、GitLabに関してのメモはこれで最後になりそうです。

本来は一人ですることではないので、それこそ"ごっこ遊び"の感覚でなぞっていきます。

コード準備

レビュー用にコードを用意します。

「僕Unityできますよ」のTシャツで有名なコードをお借りします。

public float speed = 100;

    void Update () 
    {
        if(GameObject.Find("MainGame").GetComponent<MainGame>().gameStart)
        {
            if(Input.GetButton("Vertical"))
            {
                transform.position += transform.forward * speed;
            }
        }
    }

【参考リンク】:「僕Unityできますよ」Tシャツのコードレビュー

このコードを作業ディレクトリにぶち込んで準備完了です。

マージ用のブランチ作成

前回の軽いおさらいです。
マージリクエスト用のブランチを作ります。
2つの方法でメモしときますが、今回は①の方法が楽そうです。

①ローカルのブランチを基にしたブランチをローカルに作ってリモートに登録

作業ブランチを任意のブランチに
git checkout 任意のローカルブランチ
ブランチを作成してチェックアウト
git checkout -b 作りたいブランチの名前
先程作成したブランチ
git push -u origin 先程作成したローカルのブランチ名

②リモートのブランチを基にしたブランチをローカルに作ってリモートに登録

ローカルにブランチ作成、ついでにチェックアウト
git checkout -b ローカルに作成するブランチ名 origin/リモートのブランチ名
リモートにPush
git push -u origin 作成したブランチ名

これでリモートにブランチができたはずです。

ただし、これだとまだローカルの変更が反映されていない状態なので
addcommitを使って変更を反映させていきます。

全ての変更をadd
git add .
addしたファイル全てをcommitする。-mはたぶんmessageの意味
git commit -a -m "てすと"
origin以下は無くても大丈夫。ただ、念のため明示したほうが安全かも
git push origin 作成したブランチ名

MargeRequest

下記画像のMerge requestを押して次に進みます。

MR.PNG

色々とコメントやらタイトルやらを書いてリクエスト送ります。
そうすると、下記画像のように、変更箇所が見れます。
クソコード.PNG

今回の変更箇所は、完全に新たなファイルであって
何かしらのファイルに修正を加えたものではありません。
なので、差分等は表示されていない状態です。

今回はなんかの間違いでこのコードのマージが通ってしまった、、、
という仮設定で進んでいきます。

レビュー

変更の差分

誤ってマージされていたクソコードをリファクタリングし、
再度ブランチを切ってマージリクエストを送ります。
そうすると、下記画像のように増えた箇所、減った箇所をそれぞれ緑、ピンクで教えてくれます。

ChangeGitLab.PNG

コメントする

コメントしたいコードの行にカーソルを合わせると
吹き出しマークが出てきます。
あとは、クリックして適当にコメントしてCommentを押せばOKです。

Gitlabコメント.png

コメントにリプライを送ることもできます。
全部ひとりでやってるのでカオスですが、非常に便利ですね。

gitlab孤独.PNG

修正後に前回のコメントが書いてあった箇所を見る方法もちゃんとあります。
version1として遡って見ることが可能です。

GilabTest3.gif

WIPについて

マージリクエストを送る際のタイトルにはデフォルトで
WIPという文字がついています。

意味はWork In Progressで、まだ作業中だからマージしないようにね!ってことです。
WIP:という文字列をつけることで、マージボタンを非表示にできます。

マージしたい時はResolve WIP statusを押せばマージボタンが出現します。

WIP.png

その他使ったコマンド

ローカルのブランチの追跡ブランチを表示
git branch -vv
追跡ブランチの切り替え
git branch -u origin/[ブランチ名]

uはupstreamの略らしいです。

参考リンク

仕様書のレビューをGitlabのMerge Requestでやろう!
GitLabでタイトルにWIP:を付けるとマージボタンをdisableにすることができる
[git]ローカルブランチがどのリモートブランチを追跡してるのか確認する方法

9
12
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
9
12