# GitHubでのチーム開発の流れ

Gitを使った開発の際に、チームで開発するためのリポジトリ共有、管理ツールはいくつかありますが、最も有名で使われているのが**GitHub**になります。今回はGithubを使った一般的な開発の流れを説明します。

まずプロジェクトに途中から参加した場合、そのプロジェクトをGithubから**clone(複製)**&#x3057;ます。

そうすることで、現在Github上に上がっているソースコードを自分のPCに取り込むことができます。こちらは初回のみ実施します。

この時、自分のPCに取り込んだものを**ローカルリポジトリ**、githubに上がっているものを**リモートリポジトリ**と言います。

<figure><img src="https://1869761657-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcUBbYqol4PMzZJggiMqV%2Fuploads%2FJCVaKgaQSauNN90QoJsG%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202023-11-28%2010.01.50.png?alt=media&#x26;token=9a93a5ae-80c5-48ae-8dab-d15409d004a8" alt=""><figcaption></figcaption></figure>

その後branchを切ってcommitを積んでいき、開発が終わったら**push(ローカルリポジトリの特定のbranchをリモートリポジトリに送る)**&#x3057;ます。**push**は**branch単位**で送るので**大元のbranch**を編集して**push**さえしなければ、リモートリポジトリのソースコードが汚れることはありません。

<figure><img src="https://1869761657-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcUBbYqol4PMzZJggiMqV%2Fuploads%2FirMTm05qPH0h8IHYkb30%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202023-11-28%2010.02.27.png?alt=media&#x26;token=ea934abc-b767-4fa8-81f5-24dffb80f069" alt=""><figcaption></figcaption></figure>

pushした後は、**PR(プルリクエスト)**&#x3092;作成します。PRは作業branchと大元のbranchの差分をグラフィカルに表示して、編集があった行ごとにコメントを残すことができます。

この**PR**を別の人が**レビュー(PRをチェックすること)**&#x3092;して、問題なければ大元のbranchに**merge**を行います。

**PR作成、レビュー、mergeまでの作業はgithub上にて行います。**

<figure><img src="https://1869761657-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcUBbYqol4PMzZJggiMqV%2Fuploads%2FRF812bI1z9fOx1zJqvGG%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202023-11-28%2010.21.15.png?alt=media&#x26;token=3ccc1662-74dc-4f18-9d3a-006e935811d2" alt=""><figcaption></figcaption></figure>

リモートリポジトリにて大元のbranchが更新された際に、それをローカルリポジトリに取り込むために、**pull(リモートリポジトリの特定のbranchをローカルリポジトリに取り込む)**&#x3057;ます。

<figure><img src="https://1869761657-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcUBbYqol4PMzZJggiMqV%2Fuploads%2F7ekTgSEXIjx6qaf3pXmh%2F%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%202023-11-28%2010.24.30.png?alt=media&#x26;token=2a4c2155-3893-49b4-b188-2c9aa229e760" alt=""><figcaption></figcaption></figure>

実務では上記の流れを繰り返し行なっていきます。
