6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Laravel new と composer create-project の違いと使い分け

6
Last updated at Posted at 2026-02-24

概要

本ドキュメントでは、Laravelプロジェクトを新規作成する際に使用する

  • laravel new
  • composer create-project

の違いについて、役割・内部処理・実務上の使い分けの観点から整理する。


背景と目的

Laravelプロジェクトを作成する方法は複数存在するが、

  • 何が違うのか
  • 実務ではどちらを使うべきか
  • CI環境ではどちらが適切か

といった点が曖昧なまま利用されることが多い。

本ドキュメントでは内部挙動まで踏み込み、実務判断ができるレベルで整理する。


コマンドの役割の違い

laravel new

Laravel公式の Laravel Installer を使用するコマンド。

特徴

  • 事前に laravel/installer のインストールが必要
  • 対話形式で以下を選択可能
    • テストフレームワーク
    • データベース種別
    • スターターキット(Breeze / Jetstream 等)
  • 最新Laravelの推奨構成に沿った生成体験を提供

実行例

laravel new example-app

composer create-project

Composerが提供する汎用的なプロジェクト生成機能。

Laravelに限らず使用可能。

実行例

composer create-project laravel/laravel example-app

バージョン固定例

composer create-project laravel/laravel example-app "^12.0"

内部で行われる処理の違い

composer create-project の場合

Laravelスケルトン(laravel/laravel)の composer scripts が実行される。

代表的な処理:

  • .env.example.env コピー
  • php artisan key:generate
  • database.sqlite 自動生成
  • php artisan migrate 実行

つまり、

スケルトンの展開 + 依存解決 + 初期セットアップ自動実行

という流れになる。


laravel new の場合

内部的には上記処理をベースにしつつ、

  • 対話式選択
  • スターターキットの自動導入
  • 初期UIスキャフォールド生成

などが追加される。

つまり、

「生成体験」に強みがある

のが laravel new である。


実務でのベストプラクティス

ローカル開発

推奨:laravel new

理由:

  • 最新推奨構成に沿う
  • 初期選択が明確
  • 開発者体験が良い

CI / Docker / 自動化環境

推奨:composer create-project

理由:

  • バージョン固定が容易
  • 再現性が高い
  • スクリプト制御が明確

チーム開発の場合

重要なのは「どちらを使うか」よりも

  • バージョン固定
  • 初期テンプレートの統一
  • READMEへの明記

である。


まとめ

観点 laravel new composer create-project


対話生成 ○ ×
バージョン固定 △ ◎
CI適性 △ ◎
DX ◎ ○

結論

  • 普段の開発 → laravel new
  • 自動化・CI → composer create-project

目的に応じて使い分けるのが最適解である。

6
2
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
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?