---
# System prepended metadata

title: 'Gitの勉強会 1/15 20:00 - 21:00'

---


# Gitの勉強会 1/15 20:00 - 21:00

主催：もっちゃんさん

Gitの操作をもっちゃんさんの画面を共有しながら
ハンズオン形式で進めています

リポジトリ
https://github.com/mocchann/Git_test


- [x] リポジトリの作成
- [x] README.mdの追加
- [x] リポジトリのclone by ぶささん
- [x] ファイルを追加してプルリク出す
- [x] コンバゼーション(レビューのやり取り)の練習
- [x] コンフリクトの実践 by もっちゃんさん oratakeさん
---

## トピックス

- プッシュが出来ない
→ もっちゃんさんのリポジトリでPush可能なアカウントを招待したら解決

- レビュアーを指定してコードレビュー
    - レビュアーは
      良ければ`Approve`
      変更が必要なら`Request changes`
![](https://i.imgur.com/72h2Eot.png)

- ブランチのプロテクト設定
    - PRの有無
    - 承認の有無　などを設定できる
    - どのブランチにルールを適用するかがポイント(今回は`master`のみ必要)
![](https://i.imgur.com/IYy88df.png)

- File changedの特定の行にコメント出来る
![](https://i.imgur.com/grDsSAg.png)

- ルールを満たしていない場合は指摘が表示される
![](https://i.imgur.com/JLaT2Id.png)
    - レビュイーは、指摘を受けたら追いPushしましょう🙌
![](https://i.imgur.com/GrzC61h.png)
    - 同じブランチ`develop`にPushすれば、前回の続きからレビューを継続出来る
      (新規にPRを出す必要は無い)
    - Pushしたことをコメントする方法は現場によって様々(GitHubだったりSlackだったり)

- GitHubのコメント欄
![](https://i.imgur.com/9wcd6uY.png)

- `Request changes`を依頼したレビュアーは、変更を確認
    - 問題なければApprove

- 全ての指摘が解決したら、マージ可能
    - マージ担当者が決まっている場合も

- 便利なGitコマンド

    ```sh
    > git log --graph --decorate --oneline --color --all --pretty="format:%C(yellow)%h %C(green)%cd %C(reset)%s %C(red)%d %C(cyan)[%an]"
    ```

    Gitログを視覚的に表示出来る
    ![reference link](https://i.imgur.com/Bm7uMkk.png)

- PR作成テンプレート
https://applis.io/posts/how-to-write-git-pull-request


- コンフリクト
    - PRを出そうとする→
      他の人の変更と自分の変更が重複しているとローカルで**コンフリクト**が発生
      ![](https://i.imgur.com/0QEFxoj.png)

    - 自動的にマージ出来ないので、手動で正しい内容に修正する必要がある
    - 青`origin/feature/brilliant_conflict`と赤`master`のログは、根っこが異なる→コンフリクトが発生する可能性あり
      ![](https://i.imgur.com/GazYwFu.png)
    - (参考)https://vector-ium.com/github-rm/
    - コンフリクト解消後の流れ(Commit->Push->PullRequest)は今まで通り
