🎃
Next.js + Prisma開発で覚えておきたい重要コマンド完全ガイド
はじめに
Next.js + Prisma + TypeScriptでの開発では、様々なコマンドを使い分ける必要があります。本記事では、開発フロー別に整理した重要コマンドを、実際の用途と合わせて解説します。
🔍 型チェック関連
基本の型チェック
# 型チェックのみ実行(ファイル出力なし)
npx tsc --noEmit
# 外部ライブラリの型エラーを無視して自分のコードのみチェック
npx tsc --noEmit --skipLibCheck
# ファイル変更を監視して自動型チェック
npx tsc --noEmit --watch
使い分けのポイント:
-
--noEmit
: JavaScriptファイルを生成せず型チェックのみ -
--skipLibCheck
:node_modules
の型エラーを無視して高速化 -
--watch
: 開発中のリアルタイム型チェックに最適
npm run build との違い
コマンド | 用途 | 実行内容 | 出力 | 実行時間 |
---|---|---|---|---|
npx tsc --noEmit --skipLibCheck |
型チェック | TypeScript型検証のみ | なし | ⚡ 数秒 |
npm run build |
本番ビルド | Prisma生成 + マイグレーション + Next.jsビルド |
.next/ フォルダ |
🐌 数十秒〜分 |
🗄️ Prisma Database関連
開発環境でのDB操作
# マイグレーション作成・実行(開発用)
npx prisma migrate dev --name [migration_name]
# Prismaクライアント生成(型定義更新)
npx prisma generate
# データベースGUIツール起動
npx prisma studio
# 既存DBからPrismaスキーマを生成
npx prisma db pull
# スキーマをDBに直接反映(マイグレーションファイル作らない)
npx prisma db push
本番環境用コマンド
# 本番用マイグレーション実行
npx prisma migrate deploy
# データベース完全リセット(⚠️開発環境のみ)
npx prisma migrate reset
# シードデータ投入
npx prisma db seed
マイグレーション戦略:
-
開発:
migrate dev
でマイグレーションファイル生成 -
本番:
migrate deploy
で作成済みマイグレーションを適用 -
プロトタイピング:
db push
で手軽にスキーマ反映
🛠️ 開発・ビルド関連
日常的な開発コマンド
# 開発サーバー起動
npm run dev
# 本番ビルド(Prisma + Next.js)
npm run build
# 本番サーバー起動
npm run start
コード品質管理(Biome使用)
# Lintチェック
npm run lint
# Lint自動修正
npm run lint:fix
# コードフォーマット
npm run format
# フォーマットチェック(修正なし)
npm run format:check
# Lint + Format 同時実行
npm run check
# Lint + Format 自動修正
npm run check:fix
🚀 開発フロー別コマンド組み合わせ
朝の開発開始時
# 1. 依存関係更新
npm install
# 2. DBマイグレーション適用
npx prisma migrate dev
# 3. 開発サーバー起動
npm run dev
コミット前チェック
# 1. コード品質修正
npm run check:fix
# 2. 型チェック
npx tsc --noEmit --skipLibCheck
# 3. ビルド確認(必要に応じて)
npm run build
DBスキーマ変更時
# 1. schema.prisma 編集後
npx prisma migrate dev --name "add_user_table"
# 2. 型定義更新(通常は自動実行されるが明示的に)
npx prisma generate
# 3. 変更確認
npx prisma studio
本番デプロイ前
# 1. 全体ビルド
npm run build
# 2. 本番サーバー起動テスト
npm run start
# 3. マイグレーション確認
npx prisma migrate deploy --dry-run
🔧 トラブルシューティング
キャッシュ・依存関係問題
# Next.jsキャッシュクリア
rm -rf .next && npm run build
# node_modules再構築
rm -rf node_modules package-lock.json && npm install
# Prismaクライアント再生成
npx prisma generate
型エラー詳細調査
# 厳密な型チェック
npx tsc --noEmit --strict
# 特定ファイルのみ型チェック
npx tsc --noEmit src/specific-file.ts
データベース問題
# マイグレーション状態確認
npx prisma migrate status
# マイグレーション履歴表示
npx prisma migrate diff
# 開発DB完全リセット(⚠️データ消失)
npx prisma migrate reset
📋 チートシート
毎日使うコマンド Top 5
npm run dev # 開発サーバー
npx tsc --noEmit --skipLibCheck # 型チェック
npm run check:fix # コード品質修正
npx prisma studio # DB確認
npx prisma migrate dev # DB変更時
パッケージ管理
# 本番向けクリーンインストール
npm ci
# パッケージ更新
npm update
# セキュリティ脆弱性修正
npm audit fix
# 未使用パッケージ検出
npx depcheck
💡 実践的なTips
1. エイリアス設定
# ~/.zshrc または ~/.bashrc に追加
alias ndev="npm run dev"
alias ntype="npx tsc --noEmit --skipLibCheck"
alias ncheck="npm run check:fix && npx tsc --noEmit"
alias pstudio="npx prisma studio"
alias pmigrate="npx prisma migrate dev"
2. package.json スクリプト活用
{
"scripts": {
"type-check": "tsc --noEmit --skipLibCheck",
"db:migrate": "prisma migrate dev",
"db:reset": "prisma migrate reset",
"db:studio": "prisma studio",
"full-check": "npm run check:fix && npm run type-check && npm run build"
}
}
3. CI/CD向けコマンド
# 型チェック(CI用)
npm run type-check
# ビルドテスト
npm run build
# マイグレーション確認
npx prisma migrate deploy --dry-run
まとめ
適切なコマンドを使い分けることで:
- ✅ 開発効率向上:型チェックとビルドの使い分け
- ✅ 品質保証:コミット前の自動チェック
- ✅ トラブル回避:データベース操作の安全性
- ✅ チーム開発:統一されたワークフロー
開発段階に応じてコマンドを選択し、効率的な開発環境を構築しましょう!
Discussion