🐰

うさぎでもわかるチームGitHub開発手順書

に公開

うさぎでもわかるチームGitHub開発手順書

はじめに

「チームでGitHubを使ってプロダクト開発をしたいけど、何からすればいいの?」
「プルリクって何?ブランチって何?」

安心してください!この記事では、猫でも分かるようにチームでGitHubを使った開発手順を解説します。

GitHubは、コードを共有・管理するためのプラットフォームです。複数人で協力して開発するときに便利です。チームでGitHubを使うと:

  • 変更履歴をしっかり記録できる
  • 複数人が同時に作業できる
  • 変更内容をレビューしてから反映できる

では早速、チーム開発の流れを見ていきましょう!

全体の流れ

まずは、チーム開発の全体像をつかみましょう。

GitHub開発フロー

基本的な流れは以下のとおりです:

  1. リポジトリを作成
  2. ローカルにクローン
  3. 機能ブランチを作成
  4. 機能を開発
  5. 変更をコミット
  6. GitHubへプッシュ
  7. プルリクエストを作成
  8. コードレビュー
  9. マージ
  10. ローカルを最新に更新

これを繰り返すことで、チーム全体で安全に開発を進めることができます。

準備するもの

チーム開発を始める前に、以下のものを準備しましょう。

Gitのインストール

各メンバーのコンピュータにGitをインストールする必要があります。

GitHubアカウントの作成

各メンバーがGitHubでアカウントを作成してください。

チーム内の役割

基本的には全員が同じことができますが、通常は以下のような役割分担をします:

  • リポジトリ管理者:リポジトリの設定や権限管理を担当
  • レビュアー:コードレビューを担当
  • 開発者:機能実装を担当

小規模なチームでは、全員が開発者であり、交代でレビュアーを担当するのが一般的です。

リポジトリ作成とクローン

リポジトリの作成方法

  1. GitHubにログインします
  2. 右上の「+」マークをクリックし「New repository」を選択
  3. 必要事項を入力します

リポジトリ作成画面

主な設定項目:

  • リポジトリ名:プロジェクト名を入力
  • 説明:簡単なプロジェクト説明
  • 公開設定:「Public」か「Private」を選択
  • README.mdの追加:プロジェクトの説明を書くファイル(推奨)
  • .gitignoreの追加:バージョン管理に含めないファイルを指定
  • ライセンスの追加:必要に応じて選択

「Create repository」をクリックして完了です!

ローカルにクローンする方法

リポジトリを作成したら、ローカルコンピュータにコピー(クローン)します。

  1. GitHubのリポジトリページで緑色の「Code」ボタンをクリック
  2. URLをコピー
  3. ターミナル(コマンドプロンプト)を開いて、作業したいディレクトリに移動
  4. 以下のコマンドを実行:
git clone https://github.com/チーム名/リポジトリ名.git

これで、リポジトリがローカルにコピーされます。

ブランチ戦略

開発を進めるには「ブランチ」という仕組みを使います。ブランチとは、コードの流れを分岐させる機能です。

ブランチ戦略

mainブランチの役割

  • main(またはmaster)ブランチは、常に正常に動作するコードを保管します
  • このブランチには直接コミットせず、プルリクエストを通してのみ変更を反映します

機能ブランチの作成方法

新しい機能を開発するときは、mainブランチから新しいブランチを作成します。

# mainブランチに移動
git checkout main

# 最新の状態に更新
git pull origin main

# 新しいブランチを作成して移動
git checkout -b feature/ログイン機能

ブランチ名の付け方は、feature/機能名fix/修正内容などとするのが一般的です。チーム内でルールを決めておきましょう。

ローカルでの開発作業

新しいブランチを作る

上記の通り、作業前に新しいブランチを作りましょう。

コードを書く

お好みのエディタやIDEを使ってコードを書きます。例えば:

  • Visual Studio Code
  • IntelliJ IDEA
  • Sublime Text

など。

変更をコミットする

作業が一段落したらコミットします。コミットとは、変更内容を記録することです。

# 変更されたファイルを確認
git status

# 変更をステージングエリアに追加
git add ファイル名
# または全ての変更を追加
git add .

# コミットする(変更内容の説明付き)
git commit -m "ログインボタンのデザインを実装"

コミットメッセージは、何を変更したのかがわかるように書くことが大切です。

変更をGitHubにプッシュする

ローカルでコミットした変更をGitHubに送信(プッシュ)します。

# ブランチをプッシュ
git push origin feature/ログイン機能

もし初めてプッシュする場合:

# リモートブランチを作成してプッシュ
git push -u origin feature/ログイン機能

プルリクエストの作成と管理

プルリクエストの作成手順

  1. GitHubのリポジトリページにアクセス
  2. 「Pull requests」タブをクリック
  3. 「New pull request」ボタンをクリック
  4. ベースブランチ(通常はmain)と、作成したブランチを選択
  5. 「Create pull request」をクリック
  6. タイトルと説明を入力して「Create pull request」をクリック

プルリクエスト

わかりやすいプルリクの書き方

良いプルリクエストには以下の情報を含めましょう:

  • どんな変更をしたのか
  • なぜその変更が必要だったのか
  • どうテストしたのか
  • 関連するイシュー番号

例:

## 変更内容
- ログイン画面を実装しました
- ユーザー認証機能を追加しました
- テストコードも追加しています

## 関連イシュー
#42

## テスト結果
- ユーザー名/パスワードでログインできることを確認
- エラー時の表示も確認済み

コードレビューとマージ

レビューのポイント

プルリクエストが作成されたら、他のメンバーがコードレビューを行います。

レビューのポイント:

  • 機能は仕様通りに動作しているか
  • コードは読みやすいか
  • バグの可能性はないか
  • セキュリティ上の問題はないか

レビューコメントは具体的に、優しい言葉で書きましょう。

マージの方法

レビューが完了し、承認されたら、プルリクエストをマージします。

  1. プルリクエストページで「Merge pull request」ボタンをクリック
  2. 確認して「Confirm merge」をクリック

これで機能ブランチの内容がmainブランチに統合されます。

ローカルの同期

他のメンバーの変更を取り込むには、ローカルリポジトリを最新の状態に更新します。

# mainブランチに移動
git checkout main

# リモートの変更を取得
git pull origin main

# 新しい機能ブランチを作成するとき
git checkout -b feature/新機能

定期的に最新の状態に更新して、他のメンバーの変更と競合しないようにしましょう。

よくあるトラブルと解決法

コンフリクトの解決方法

コンフリクト(競合)は、同じファイルの同じ部分を複数人が別々に変更したときに発生します。

コンフリクト

コンフリクトが発生したら:

  1. コンフリクトが発生しているファイルを開く
  2. コンフリクトマーカー(<<<<<<<, =======, >>>>>>> など)を探す
  3. どちらの変更を残すか、または両方を残すかを決めて編集
  4. コンフリクトマーカーを削除
  5. 変更をコミットしてプッシュ
# コンフリクト解決後
git add .
git commit -m "コンフリクトを解決"
git push origin feature/ブランチ名

その他よくあるエラー

Q: git pushでエラーが出る
A: まずはgit pullで最新の変更を取り込んでから再度プッシュしてみましょう。

Q: 間違ったブランチで作業してしまった
A: git stashで変更を一時保存し、正しいブランチに移動してからgit stash popで変更を復元できます。

Q: コミットメッセージを間違えた
A: 直前のコミットならgit commit --amend -m "正しいメッセージ"で修正できます。

まとめ

チームでGitHubを使った開発の基本的な流れを紹介しました。

  1. リポジトリを作成・クローン
  2. 機能ごとにブランチを作成
  3. 各自が担当機能を開発・コミット
  4. GitHubにプッシュしてプルリクエストを作成
  5. レビュー後にマージ
  6. ローカルを最新に更新

最初は難しく感じるかもしれませんが、繰り返し使ううちに自然と身につきます。チームで決めたルールに従って、コミュニケーションを大切にしながら開発を進めましょう。

猫でも分かるようになったでしょうか?今日からGitHubでのチーム開発を始めてみましょう!


参考リンク

Discussion