3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Git 開発マニュアル(Claude Code 個人開発者向け)

3
Posted at

1. ブランチ戦略の全体像

main (本番)
 ├── develop (開発統合)
 │    ├── feature/grow-calendar    ← 機能追加
 │    ├── feature/spark-task-ui    ← 機能追加
 │    ├── fix/login-error          ← バグ修正
 │    └── hotfix/crash-on-start   ← 緊急修正(mainから分岐)
ブランチ 用途 分岐元 マージ先
main 本番リリース済みコード - -
develop 開発中の統合ブランチ main main
feature/* 新機能開発 develop develop
fix/* バグ修正 develop develop
hotfix/* 本番の緊急修正 main main → develop

2. 初期セットアップ(最初に1回だけ)

# リポジトリをクローン(まだの場合)
git clone https://github.com/ユーザー名/リポジトリ名.git
cd リポジトリ名

# develop ブランチを作成
git checkout -b develop
git push -u origin develop

3. 日常の開発フロー

Step 1: 機能ブランチを作る

# develop を最新にする
git checkout develop
git pull origin develop

# 機能ブランチを作成
git checkout -b feature/grow-calendar

命名ルール:

  • 機能追加: feature/簡潔な説明 (例: feature/grow-calendar, feature/spark-quiz
  • バグ修正: fix/簡潔な説明 (例: fix/login-timeout
  • 緊急修正: hotfix/簡潔な説明 (例: hotfix/crash-on-start

Step 2: 開発してコミットする

# 変更をステージング
git add .

# コミット(何をしたか簡潔に)
git commit -m "feat: カレンダー画面の基本レイアウトを実装"

# リモートにプッシュ
git push -u origin feature/grow-calendar

コミットメッセージの書き方:

prefix 用途
feat: 新機能 feat: 栽培記録の写真アップロード機能
fix: バグ修正 fix: 日付選択で翌月が表示されない問題
refactor: リファクタリング refactor: APIクライアントを共通化
docs: ドキュメント docs: READMEにセットアップ手順を追加
chore: 雑務 chore: パッケージバージョン更新

Step 3: こまめにコミット&プッシュ

# 作業の区切りごとに
git add .
git commit -m "feat: カレンダーに栽培イベントを表示"
git push

Tips: 1日の終わりには必ずプッシュしておく。PCが壊れても安心。


4. 開発が完了したら — GitHub でマージ

方法A: GitHub の Pull Request を使う(推奨)

① GitHub で Pull Request を作成

  1. GitHub のリポジトリページを開く
  2. 「Compare & pull request」ボタンをクリック(プッシュ直後に表示される)
  3. または「Pull requests」タブ →「New pull request」
  4. base: develop ← compare: feature/grow-calendar を選択
  5. タイトルと説明を書いて「Create pull request」

② マージする

  1. PR ページで変更内容を確認
  2. 問題なければ「Merge pull request」→「Confirm merge」
  3. マージ後「Delete branch」で不要になったブランチを削除

③ ローカルを同期

git checkout develop
git pull origin develop

# マージ済みのローカルブランチを削除
git branch -d feature/grow-calendar

方法B: コマンドラインでマージ

# develop に切り替え
git checkout develop
git pull origin develop

# 機能ブランチをマージ
git merge feature/grow-calendar

# プッシュ
git push origin develop

# 不要になったブランチを削除
git branch -d feature/grow-calendar
git push origin --delete feature/grow-calendar

5. develop を main にマージ(リリース)

ある程度機能がまとまったら、develop を main にマージする。

# main を最新に
git checkout main
git pull origin main

# develop をマージ
git merge develop

# タグをつける(バージョン管理)
git tag -a v1.2.0 -m "Grow カレンダー機能リリース"

# プッシュ
git push origin main
git push origin --tags

または GitHub で develop → main の Pull Request を作ってマージする。


6. 緊急修正(hotfix)

本番で致命的なバグが見つかった場合:

# main から直接ブランチを切る
git checkout main
git pull origin main
git checkout -b hotfix/crash-on-start

# 修正してコミット
git add .
git commit -m "fix: 起動時のクラッシュを修正"

# main にマージ
git checkout main
git merge hotfix/crash-on-start
git push origin main

# develop にも反映(修正漏れ防止)
git checkout develop
git merge hotfix/crash-on-start
git push origin develop

# ブランチ削除
git branch -d hotfix/crash-on-start

7. よくある操作チートシート

ブランチ一覧を見る

git branch          # ローカルのブランチ一覧
git branch -a       # リモート含む全ブランチ

作業中のブランチを一時退避(stash)

# 別ブランチに切り替えたいけど、今の変更をコミットしたくない
git stash

# 別ブランチで作業して戻ってきたら
git stash pop

間違えてコミットした場合

# 直前のコミットを取り消し(変更は残す)
git reset --soft HEAD~1

# コミットメッセージだけ修正
git commit --amend -m "正しいメッセージ"

コンフリクトが起きたら

# マージ時にコンフリクトが発生した場合
# 1. 該当ファイルを開いて手動で修正
# 2. 修正後
git add .
git commit -m "resolve: マージコンフリクトを解消"

コンフリクトマーカーの見方:

<<<<<<< HEAD
develop 側のコード
=======
feature ブランチ側のコード
>>>>>>> feature/grow-calendar

→ 残したい方を選んでマーカーごと削除する

マージ済みブランチを一括削除

# develop にマージ済みのローカルブランチを全削除
git checkout develop
git branch --merged | grep -v "main\|develop" | xargs git branch -d

8. 日常ワークフロー早見表

朝:
  git checkout develop && git pull
  git checkout -b feature/今日の作業

作業中:
  git add . && git commit -m "feat: やったこと"
  (区切りごとに繰り返す)

終わり:
  git push -u origin feature/今日の作業

完了したら:
  GitHub で PR 作成 → マージ → ブランチ削除
  git checkout develop && git pull

9. Claude Code(ターミナル版)でブランチ開発

Claude Code を使うと、ブランチ作成からコミット、PR作成まで自然言語で操作できる。
手動の git コマンドの代わりに、Claude Code がすべて代行してくれる。

前提条件

# Claude Code のインストール(Node.js 18+ 必要)
npm install -g @anthropic-ai/claude-code

# GitHub CLI のインストール(PR作成に必要)
# macOS
brew install gh
# Ubuntu
sudo apt install gh

# GitHub CLI にログイン
gh auth login

9-1. CLAUDE.md をリポジトリに設置する

プロジェクトルートに CLAUDE.md を置くと、Claude Code がプロジェクトの規約を理解して動いてくれる。

# CLAUDE.md

## プロジェクト概要
AIseed - 神経多様性のための強み発見プラットフォーム

## ブランチ規約
- 機能追加: feature/アプリ名-機能名 (例: feature/grow-calendar)
- バグ修正: fix/簡潔な説明
- 緊急修正: hotfix/簡潔な説明
- 開発は develop ブランチから分岐する
- main への直接コミットは禁止

## コミットメッセージ規約
- feat: 新機能
- fix: バグ修正
- refactor: リファクタリング
- docs: ドキュメント
- chore: 雑務

## 技術スタック
- フロントエンド: Flutter(Riverpod不使用、自己完結型Widget)
- バックエンド: Python (FastAPI)
- 認証: Go

## コマンド
- Flutter ビルド: cd frontend && flutter build
- Python テスト: cd backend && pytest
- リント: flutter analyze

9-2. Claude Code での日常開発フロー

ターミナルでプロジェクトディレクトリに移動して claude を起動:

cd ~/projects/aiseed
claude

ブランチ作成から開発開始:

あなた > Grow のカレンダー機能を開発したい。develop から
        feature/grow-calendar ブランチを作って

Claude > (git checkout develop → git pull → git checkout -b feature/grow-calendar を実行)
         ブランチ feature/grow-calendar を作成しました。

コーディングを依頼:

あなた > カレンダー画面の基本レイアウトを Flutter で作って。
        StatefulWidget で自己完結させて

Claude > (ファイルを作成・編集)

コミット&プッシュ:

あなた > ここまでの変更をコミットしてプッシュして

Claude > (git add → git commit → git push を実行)
         コミットしました: "feat: カレンダー画面の基本レイアウトを実装"

PR 作成:

あなた > develop に向けて PR を作成して

Claude > (gh pr create を実行)
         PR #12 を作成しました: "feat: Grow カレンダー機能"
         https://github.com/ユーザー名/aiseed/pull/12

9-3. カスタムスラッシュコマンドを作る

よく使う操作は .claude/commands/ にコマンドとして保存できる。

ブランチ作成コマンド: .claude/commands/branch.md

---
description: feature ブランチを作成する
---

develop ブランチに切り替えて最新を pull し、
feature/$ARGUMENTS という名前で新しいブランチを作成してください。

使い方:

あなた > /branch grow-calendar

コミット&プッシュコマンド: .claude/commands/push.md

---
description: 変更をコミットしてプッシュする
---

!git diff --stat
!git status

上記の変更内容を確認し、適切なコミットメッセージ(feat:/fix:/refactor: 形式)を
生成してコミット&プッシュしてください。
全てを1つのメッセージで実行してください。

使い方:

あなた > /push

PR 作成コマンド: .claude/commands/pr.md

---
description: Pull Request を作成する
---

!git log develop..HEAD --oneline

上記のコミット履歴を確認し、develop ブランチに対して PR を作成してください。
- タイトル: コミット内容を要約
- 本文: 変更点をリスト形式で記述
既に PR が存在する場合は教えてください。

使い方:

あなた > /pr

9-4. Git Worktree で並行開発

複数の機能を同時に開発したいとき、worktree を使うと別ディレクトリで独立した Claude Code セッションを走らせられる。

# Grow カレンダー用の worktree
git worktree add ../aiseed-grow-calendar -b feature/grow-calendar

# Spark クイズ用の worktree
git worktree add ../aiseed-spark-quiz -b feature/spark-quiz
# ターミナル1
cd ../aiseed-grow-calendar && claude

# ターミナル2
cd ../aiseed-spark-quiz && claude
# 開発完了後、worktree を削除
git worktree remove ../aiseed-grow-calendar

9-5. Claude Code ターミナル版の早見表

起動:
  cd プロジェクト && claude

ブランチ作成:
  /branch grow-calendar
  (または自然言語で「develop から feature ブランチ作って」)

開発中:
  「この関数を作って」「テスト書いて」など自然言語で指示

コミット&プッシュ:
  /push
  (または「変更をコミットしてプッシュして」)

PR 作成:
  /pr
  (または「develop に PR 作って」)

セッション再開:
  claude --continue        # 直前のセッション
  claude --resume          # セッション一覧から選択

10. Claude Code Web 版(ブラウザから直接開発)

2025年10月リリースの Claude Code on the web(リサーチプレビュー)。
ブラウザから GitHub リポジトリに直接接続して、コーディングタスクを丸ごと任せられる。
ターミナル不要。スマホ(iOS)からも操作可能。

10-1. 公開できるコード向け — これが大前提

Web 版はすべてのコードが Anthropic のクラウド上で実行される。

リポジトリの内容がクラウドにクローンされて処理されるため、
公開リポジトリやオープンソースプロジェクトには非常に便利だが、
非公開の業務コードや機密情報を含むリポジトリには注意が必要。

用途 Web 版 CLI 版
公開リポジトリ / OSS ◎ 最適
個人の公開プロジェクト ◎ 最適
機密性の低い社内ツール △ 判断が必要
機密コード / 顧客データ ✕ 避けるべき ◎ ローカル完結

CLI 版はローカル PC 上で完結するため、コードが外部に送信されない。
機密性が求められる場合は CLI 版を使う。

10-2. アクセスと初期設定

URL: https://claude.ai/code

必要なもの:

  • Claude Pro($20/月)または Max($100 or $200/月)プラン
  • GitHub アカウント

初回セットアップ:

  1. https://claude.ai/code にアクセス(またはサイドバーの「コード」メニュー)
  2. 「GitHubに接続」をクリック
  3. GitHub の認証画面で Claude アプリをインストール
  4. アクセスを許可するリポジトリを選択

一度設定すれば、以後は新しいリポジトリも自動的に利用可能。

10-3. 画面の見方

┌─────────────────┬──────────────────────────────────┐
│ セッション一覧    │  メイン作業エリア                   │
│                 │                                  │
│ ・過去のセッション │  リポジトリ選択: [aiseed-dev/aiseed-tool ▼] │
│   aiseed-tool   │  モデル: [Sonnet 4.6 ▼]            │
│   worldtime     │                                  │
│   vegitage-data │  [Write a CLAUDE.md]               │
│                 │  [Explain this codebase]           │
│                 │  [Review recent changes]           │
│                 │                                  │
│                 │  プロンプト入力欄                    │
│                 │  [編集の自動承認] トグル              │
└─────────────────┴──────────────────────────────────┘
  • リポジトリ選択 — プルダウンで GitHub リポジトリを切り替え
  • モデル選択 — Sonnet 4.6(デフォルト)/ Opus 等を選択
  • 編集の自動承認 — ON にすると確認なしで自動実行
  • セッション一覧 — 左サイドバーに過去のセッション履歴

10-4. 基本的な使い方

リポジトリを選んでプロンプトを入力するだけ。

作業は Anthropic のクラウド上のサンドボックスで実行され、
完了するとリポジトリの新しいブランチにプッシュ → PR 作成まで行ってくれる。

例1: 機能の実装

aiseed-dev/aiseed-tool を選択 → プロンプト:

Grow のカレンダー画面を作成してください。
- Flutter で StatefulWidget として自己完結させる
- 月の切り替えボタン(左右矢印 + 「今月」ボタン)
- 栽培イベントをカレンダー上に表示
- feature/grow-calendar ブランチで作業して PR を作成

例2: バグ修正

日付選択で翌月が表示されないバグを修正してください。
修正後、テストも追加して fix/calendar-month ブランチで PR を作成。

例3: コードベースの理解(クイックアクション)

画面のクイックアクションボタンから:

  • Write a CLAUDE.md — CLAUDE.md を自動生成
  • Explain this codebase — プロジェクト構造の概要を説明
  • Review recent changes — 最近のコミットを確認してレビュー

10-5. 並列タスク実行

Web 版の最大の強みは 複数タスクの並列実行
異なるリポジトリ、あるいは同じリポジトリの異なるタスクを同時に走らせられる。

タスク1: aiseed-tool → カレンダー機能の実装
タスク2: worldtime  → タイムゾーン表示のバグ修正
タスク3: aiseed-tool → README の更新

各セッションは独立したサンドボックスで実行され、
リアルタイムで進捗を確認・途中で指示の追加も可能。

10-6. ブランチ開発との組み合わせ

Web 版で開発する場合の典型的なフロー:

1. Web版で実装を依頼(プロンプトにブランチ名を指定)
   → Claude が feature/grow-calendar ブランチを作成して実装

2. 完了すると自動で PR が作成される
   → GitHub の PR 画面で差分を確認

3. 問題があれば Web版のセッションで追加指示
   「PR のレビューコメントに対応して修正して」

4. OK なら GitHub で develop にマージ

5. develop → main の PR を作成してリリース

10-7. CLAUDE.md との連携

Web 版もリポジトリの CLAUDE.md を読んでくれる。
セクション 9-1 で作成した CLAUDE.md がそのまま活きる。

初回は Web 版のクイックアクション「Write a CLAUDE.md」で自動生成し、
必要に応じて手動で修正するのが効率的。

10-8. CLI 版との使い分け

項目 CLI 版(ターミナル) Web 版(ブラウザ)
環境 ローカル PC Anthropic のクラウド
セットアップ Node.js + npm install GitHub 接続のみ
並列実行 worktree で可能 標準で並列対応
ファイルアクセス ローカルファイル全体 GitHub リポジトリ内のみ
カスタマイズ スラッシュコマンド、hooks 等 限定的(プレビュー版)
モバイル 不可 iOS アプリ対応
向いている作業 対話しながらの開発、複雑な実装 定型タスク、バグ修正、並列作業

10-9. 注意事項

  • リサーチプレビュー — 正式版ではないため、機能追加・変更の可能性あり
  • 利用枠は共有 — Web チャット・CLI・Web版すべて合わせて Max プランの枠を消費
  • GitHub リポジトリのみ — GitLab 等には非対応(2025年10月時点)
  • サンドボックス制限 — ローカルファイルへの直接アクセスはできない
  • ネットワーク制限 — デフォルトでは外部 API 等へのアクセスが制限される(カスタム設定で許可可能)

11. ツール比較 — どう使い分けるか

操作 手動 Git Claude Code CLI Claude Code Web
ブランチ作成 git checkout -b 自然言語で指示 プロンプトで指定
コーディング エディタで手書き 対話しながら生成 プロンプトで丸投げ
コミット git add && commit /push 一発 自動コミット&プッシュ
PR 作成 GitHub UI / gh /pr 一発 自動作成
コードレビュー 自分で確認 Claude に聞く Review recent changes
並列作業 ブランチ切替 worktree 標準で並列対応
コスト 無料 Pro,Max 契約内(定額) Pro,Max 契約内(定額)
操作場所 ターミナル ターミナル ブラウザ / スマホ
コードの機密性 ◎ ローカル完結 ◎ ローカル完結 △ クラウド送信

個人開発者の推奨スタイル(Max プラン):

公開プロジェクト(AIseed, worldtime 等):
  Web 版で気軽にタスクを投げる → 並列で効率的
  畑仕事の合間にスマホから指示も可能

デスクで集中作業・複雑な実装:
  CLI 版で対話しながら開発
  → /push でコミット → /pr で PR 作成

機密コード・非公開プロジェクト:
  CLI 版をローカルで使う(コードがクラウドに送信されない)

リリース:
  develop → main の PR を作成してマージ
3
4
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
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?