Claude Codeでチーム開発を始める完全ガイド|プロジェクト設定・Git運用・役割分担まで【2026年最新】

複数人がノートPCを囲んでChante Codeでチーム開発をしているイメージイラスト AIツール
チーム開発 実践ガイド

Claude Codeで
チーム開発を始める完全ガイド

プロジェクト設定・Git運用・役割分担まで——チームで読んですぐ使える【2026年最新】

「Claude Code を個人では使えているけれど、チームで同じように使うにはどうすればいい?」——そう感じているリーダーや開発者は多いはずです。

Claude Code をチームで使いこなすには、プロジェクトの初期設定・CLAUDE.md の整備・Git との連携ルールの3点が鍵になります。これらを最初にしっかり整えておけば、メンバー全員が「Claude に毎回同じことを説明する」手間がなくなり、コードの品質と一貫性が自然に保たれます。

本記事はチーム全員が読んですぐに作業を開始できるように、プロジェクトのセットアップ手順から Git の基本コマンド・運用ルールまでを一冊にまとめました。

1. チーム開発での Claude Code の考え方

Claude Code をチームで使う場合、最も重要な原則は「Claude への指示をコード化して共有する」ことです。個人利用では「その場でプロンプトを書けばいい」で済みますが、チームでは以下の問題が起きます。

  • メンバーごとに Claude への指示スタイルが異なり、生成コードのスタイルがバラバラになる
  • 新しいメンバーが「このプロジェクトの Claude の使い方」を一から学ばなければならない
  • 「以前うまくいったプロンプト」がメンバー間で共有されず属人化する

これを解決するのが CLAUDE.mdGit による設定ファイルの共有です。プロジェクトのルールを CLAUDE.md に書いて Git で管理すれば、全員が同じ前提で Claude を使えるようになります。

チーム開発の3つの原則
  1. ルールはファイルに書く:口頭や Slack での共有ではなく CLAUDE.md に書く
  2. ファイルは Git で管理する:設定ファイルをバージョン管理してチーム全員が同じ設定を使う
  3. Claude はレビュアーとしても使う:コードを書くだけでなく、PR のレビュー・テスト生成にも活用する

2. プロジェクトフォルダのセットアップ

推奨ディレクトリ構成

新しいプロジェクトを始めるとき、以下の構成を最初に作っておきましょう。

my-project/
├── .claude/
│   ├── settings.json       ← チーム共通の Claude Code 設定
│   └── settings.local.json ← 個人設定(.gitignore に追加)
├── CLAUDE.md               ← チーム共通の Claude への指示
├── CLAUDE.local.md         ← 個人の補足指示(.gitignore に追加)
├── .gitignore
├── README.md
└── src/

ステップ①:リポジトリを初期化する

# 新規プロジェクトの場合
mkdir my-project && cd my-project
git init
git branch -M main

# 既存リポジトリをクローンする場合
git clone https://github.com/your-org/my-project.git
cd my-project

ステップ②:.gitignore を作成する

個人設定ファイルはリポジトリに含めないようにします。

# .gitignore に追加する内容
.claude/settings.local.json
CLAUDE.local.md

# OS・エディタのファイル
.DS_Store
Thumbs.db
.vscode/
.idea/

# 環境変数
.env
.env.local

ステップ③:.claude/settings.json を作成する

チーム全員に適用される Claude Code の設定です。Git で管理してリポジトリに含めます。

{
  "permissions": {
    "allow": [
      "Bash(git:*)",
      "Bash(npm:*)",
      "Bash(npx:*)"
    ],
    "deny": [
      "Bash(rm -rf:*)",
      "Bash(git push --force:*)"
    ]
  },
  "env": {
    "NODE_ENV": "development"
  }
}
settings.local.json は必ず .gitignore に追加する

.claude/settings.local.json には個人の API キーや環境固有のパスが含まれる場合があります。誤ってリポジトリに push しないよう、必ず .gitignore に追加してから作業を始めてください

ステップ④:初回コミットをプッシュする

git add CLAUDE.md .claude/settings.json .gitignore README.md
git commit -m "chore: initial project setup with Claude Code configuration"
git remote add origin https://github.com/your-org/my-project.git
git push -u origin main

3. CLAUDE.md の書き方(チーム共通ルール)

CLAUDE.md は Claude Code が起動時に自動で読み込む設定ファイルです。「毎回 Claude に説明していること」をすべてここに書くのが基本です。

チーム向け CLAUDE.md テンプレート

# プロジェクト名

一言でプロジェクトの目的を説明する。

## 技術スタック

- フロントエンド: Next.js 15 / TypeScript / Tailwind CSS
- バックエンド: Node.js / Express / Prisma
- DB: PostgreSQL
- テスト: Vitest / Playwright
- CI/CD: GitHub Actions

## 開発コマンド

```bash
npm run dev      # 開発サーバー起動(localhost:3000)
npm run test     # テスト実行
npm run build    # 本番ビルド
npm run lint     # Lint チェック
```

## コーディング規約

- コメントは日本語で書く
- TypeScript の any 型を使用しない
- 関数は30行以内に収める
- 公開関数には JSDoc を必ず書く
- カバレッジ 80% 以上を維持する

## ディレクトリ構成

```
src/
├── app/          # Next.js App Router のページ
├── components/   # 再利用可能な UI コンポーネント
├── lib/          # ユーティリティ・ヘルパー関数
├── server/       # サーバーサイドロジック
└── types/        # TypeScript の型定義
```

## 禁止事項

- `any` 型の使用禁止
- `console.log` を本番コードに残さない
- `main` ブランチへの直接 push 禁止
- テストなしのコードを PR に含めない
- `git push --force` 禁止(`--force-with-lease` を使うこと)

## PR の作り方

1. `feature/` または `fix/` プレフィックスのブランチを切る
2. コミットメッセージは Conventional Commits 形式で書く
3. PR を出す前に `npm run test` と `npm run lint` を通す
4. レビュアーを最低1名アサインする

## 環境変数

`.env` は Git 管理外。`.env.example` を参考に各自作成する。
本番の環境変数は GitHub Actions Secrets で管理。
CLAUDE.md は短くするほど効果的

CLAUDE.md はコンテキストウィンドウを消費します。1,000〜3,000文字を目安に、本当に毎回説明が必要なことだけを書きましょう。全部書こうとして長くなると、肝心な情報が埋もれてしまいます。

4. Git の基本コマンド早見表

チーム開発で毎日使う Git コマンドを場面別にまとめました。

リポジトリの操作

コマンド 意味
git clone <URL> リモートリポジトリをローカルにコピー
git status 変更ファイルの確認(最初に必ず実行)
git log --oneline -10 直近10件のコミット履歴を表示
git diff ステージング前の変更差分を表示
git diff --staged ステージング済みの変更差分を表示

ブランチの操作

コマンド 意味
git branch ローカルブランチの一覧表示
git branch -a リモートを含む全ブランチの一覧
git checkout -b feature/xxx 新しいブランチを作成して切り替え
git switch main main ブランチに切り替え(推奨)
git branch -d feature/xxx マージ済みブランチを削除

変更の記録(コミット)

コマンド 意味
git add <ファイル名> 特定ファイルをステージング
git add -p 変更を部分的にステージング(対話形式)
git commit -m "feat: xxx" メッセージ付きでコミット
git commit --amend 直前のコミットを修正(push 前のみ)
git reset HEAD <ファイル> 特定ファイルをアンステージング

リモートとの同期

コマンド 意味
git fetch origin リモートの変更を取得(マージしない)
git pull origin main リモートの変更を取得してマージ
git pull --rebase origin main リベースでマージ(履歴をきれいに保つ)
git push origin feature/xxx ブランチをリモートに push
git push --force-with-lease 安全な強制 push(他の変更がない場合のみ)
git push –force は禁止。–force-with-lease を使う

git push --force は他のメンバーの push を上書きしてしまう危険があります。リベース後の push が必要な場合は、他者の変更がないことを確認してから上書きする --force-with-lease を使いましょう。

変更を一時退避する(stash)

コマンド 意味
git stash 作業中の変更を一時退避
git stash list 退避リストを表示
git stash pop 退避した変更を復元して削除
git stash drop 退避した変更を削除(復元しない)

5. チーム開発の Git 運用フロー

チームで使う標準的な開発フローです。毎日の作業は以下のサイクルで回します。

毎日の作業開始時

# 1. main の最新を取得する(必ず最初に実行)
git switch main
git pull origin main

# 2. 作業用ブランチを切る
git checkout -b feature/add-user-authentication

# 3. Claude Code を起動して作業開始
claude

作業中のコミット

# こまめにコミットする(1機能 = 1コミットが理想)
git add src/auth/login.ts src/auth/logout.ts
git commit -m "feat: ログイン・ログアウト機能を追加"

# テストも一緒にコミットする
git add src/auth/__tests__/login.test.ts
git commit -m "test: ログイン機能のテストを追加"

PR を出す前の確認

# 最新の main を取り込む(コンフリクトを早期発見)
git fetch origin
git rebase origin/main

# テストと Lint を通す
npm run test
npm run lint

# リモートに push
git push origin feature/add-user-authentication

コミットメッセージの書き方(Conventional Commits)

チーム全員が同じ形式でコミットメッセージを書くと、変更履歴が読みやすくなります。

プレフィックス 意味
feat: 新機能 feat: ユーザー認証機能を追加
fix: バグ修正 fix: ログイン後のリダイレクトを修正
docs: ドキュメント変更 docs: README にセットアップ手順を追記
style: コードスタイルのみ(動作変更なし) style: インデントを修正
refactor: リファクタリング refactor: 認証ロジックを共通化
test: テストの追加・修正 test: ログアウトのテストケースを追加
chore: ビルド・設定変更 chore: ESLint ルールを更新

6. ブランチ戦略とネーミングルール

ブランチの種類

ブランチ名 役割 直接 push
main 本番リリース済みのコード ❌ 禁止
develop 開発の統合ブランチ(大規模開発向け) ❌ 禁止
feature/xxx 新機能の開発 ✅ 自分のみ
fix/xxx バグ修正 ✅ 自分のみ
hotfix/xxx 本番の緊急修正 ✅ 自分のみ
docs/xxx ドキュメントのみの変更 ✅ 自分のみ

ブランチ名のネーミングルール

# 良い例(具体的で何をするか分かる)
feature/add-user-authentication
feature/PROJ-123-add-login-page
fix/login-redirect-bug
fix/PROJ-456-fix-token-expiry
hotfix/critical-sql-injection
docs/update-api-documentation

# 悪い例(何をするか分からない)
feature/test
fix/bug
my-branch
temp
チケット番号を含めると追跡しやすい

Jira や Linear などのプロジェクト管理ツールを使っている場合、ブランチ名にチケット番号を含める(例: feature/PROJ-123-add-login)と、どのタスクに対応した変更かが一目でわかり、レビューや履歴管理が楽になります。

7. プルリクエストの作り方・レビュー方法

PR を作る前のチェックリスト

  • npm run test が通っている
  • npm run lint が通っている
  • git rebase origin/main で最新を取り込み済み
  • ✅ コミットメッセージが Conventional Commits 形式になっている
  • ✅ 不要な console.log や TODO コメントを削除した
  • ✅ PR の説明に「何を・なぜ変更したか」を書いた

GitHub CLI で PR を作成する

# GitHub CLI(gh)を使った PR 作成
gh pr create \
  --title "feat: ユーザー認証機能を追加" \
  --body "$(cat <<'EOF'
## 変更内容
- ログイン・ログアウト機能を実装
- JWT 認証を導入
- セッション管理を追加

## 確認手順
1. `npm run dev` で開発サーバーを起動
2. `/login` にアクセスしてログインできることを確認
3. ログアウト後にリダイレクトされることを確認

## 関連チケット
PROJ-123
EOF
)"

Claude Code でコードレビューを依頼する

PR を出す前に Claude Code にレビューを依頼すると、人間のレビュアーが見落としやすい点を事前に修正できます。

# Claude Code に PR のレビューを依頼する例
"src/auth/ ディレクトリの変更をレビューして。
特に以下を確認してほしい:
- セキュリティの問題(SQLインジェクション・XSS など)
- エラーハンドリングの漏れ
- テストカバレッジの不足"

レビュワーとしての確認ポイント

レビュー時に必ず確認する4点
  1. 動作:変更が意図通りに動くか。テストが通っているか
  2. 設計:既存のアーキテクチャと整合しているか。責務が明確か
  3. セキュリティ:入力値の検証・認証・認可に問題がないか
  4. 可読性:コードが理解しやすいか。コメントは適切か

8. コンフリクトの解消手順

同じファイルを複数人が編集するとコンフリクト(競合)が発生します。落ち着いて以下の手順で解消しましょう。

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

# rebase 中にコンフリクトが発生した場合
git rebase origin/main

# コンフリクトしているファイルを確認
git status
# → "both modified: src/auth/login.ts" と表示される

# エディタでコンフリクト箇所を編集して解消
# ファイル内の以下のマーカーを手動で修正する:
# <<<<<<< HEAD(自分の変更)
# =======
# >>>>>>> origin/main(リモートの変更)

# 解消したファイルをステージング
git add src/auth/login.ts

# rebase を続行
git rebase --continue

Claude Code でコンフリクトを解消する

コンフリクトが複雑な場合は Claude Code に解消を依頼できます。

"src/auth/login.ts にコンフリクトが発生しています。
<<<<<<< と >>>>>>> のマーカーを確認して、
両方の変更を意図通りに統合する形で解消してください。
どちらの変更も失わないように注意してください。"

rebase を途中でやめたいとき

# rebase を中断して元の状態に戻す
git rebase --abort
コンフリクトを減らすコツ

コンフリクトは作業期間が長くなるほど増えます。PR は小さく・早く出すことが最大の予防策です。また毎朝 git pull --rebase origin main で最新を取り込む習慣をつけると、コンフリクトが小さいうちに気づけます。

9. Claude Code をチームで使うコツ

① CLAUDE.md を定期的にメンテナンスする

プロジェクトが進むと技術スタックや規約が変わります。古い情報が残った CLAUDE.md は Claude が誤った情報を参照する原因になります。月に1回、チームで CLAUDE.md の内容を見直す時間を設けましょう。

② Claude への指示をチームで共有する

「このプロンプトでうまくいった」という経験は Slack や Notion にメモを残してチーム全員に共有しましょう。特に効果的な指示パターンは CLAUDE.md の「よく使うプロンプト例」セクションにまとめておくのもおすすめです。

③ レビュー前に Claude にセルフチェックを依頼する

コードを書いたら人間のレビュアーに出す前に Claude Code にセルフチェックを依頼します。「このコードに問題がないか確認して」と依頼するだけで、バグ・セキュリティ問題・テスト不足を事前に発見できます。

④ Claude にテストコードを書かせる

「このファイルのテストを書いて」と依頼するだけで、Vitest や Jest の形式でテストコードを自動生成してくれます。テストカバレッジを上げる作業が格段に速くなります。

⑤ 個人設定は CLAUDE.local.md に書く

「自分はコメントを英語で書きたい」「自分の環境だけ別のポートを使う」といった個人差は CLAUDE.local.md に書きます。Git 管理外なのでリポジトリに影響せず、チームの共通設定と個人設定を明確に分離できます。

Claude Code の設定の読み込み優先順位

Claude Code は複数の CLAUDE.md を読み込みます。優先順位は CLAUDE.local.md → .claude/settings.local.json → CLAUDE.md → .claude/settings.json → ~/CLAUDE.md の順です。個人設定が共通設定を上書きする形になっています。

まとめ

チーム開発を始めるチェックリスト

  • リポジトリ初期化:git init → .gitignore 作成 → 初回コミット
  • .claude/ フォルダ作成:settings.json をリポジトリに含める。settings.local.json は .gitignore に追加
  • CLAUDE.md 作成:技術スタック・コマンド・規約・禁止事項を記載。Git で管理
  • ブランチルール設定:main への直接 push を禁止。feature/ / fix/ のプレフィックスルールを周知
  • コミットメッセージ形式:Conventional Commits(feat: / fix: / docs: …)をチームで統一
  • PR 前の確認:test・lint を通してから push。rebase で最新を取り込む
  • Claude の活用:コード生成だけでなくレビュー・テスト生成にも使う

Claude Code をチームで使う最大のポイントは「Claude への指示をファイルに書いて Git で共有する」ことです。CLAUDE.md と settings.json を整えるだけで、新メンバーも即日から同じ品質でコードを書けるようになります。

最初は「チームの共通ルールを文書化する作業」が少し面倒に感じるかもしれませんが、一度整えてしまえば後の作業が圧倒的に楽になります。まずは CLAUDE.md に「毎回説明していること」を3つ書くところから始めてみてください。

関連記事もあわせてどうぞ

CLAUDE.md の書き方完全ガイド・Claude Code Hooks 実践・Claude Code MCP 連携
タイトルとURLをコピーしました