Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

GitHubでのLaravelプロジェクトの管理についてまとめています。

GitHubでLaravelプロジェクトを管理する

LaravelはPHPフレームワークのひとつで、Amazon SQS(キューサービス)、SES(Eメールサービス)、S3(ストレージサービス)との連携、Vue.jsとの連携が最初からできるのが特徴。バックエンドのフレームワークとしては、PythonのDjango、RubyのRuby on Railsと並んで3大バックエンドフレームワークと言われることもあります。

関連)Laravel – ウェブ職人のためのPHPフレームワーク

GitHubに新しくリポジトリを作成

GitHubに新しくリポジトリを作成します。

当記事では、my-laravel-projectという名前でリポジトリを作成しました。

Laravelのインストール

Laravelのインストールには、phpモジュールの依存関係をチェックしながらインストールするcomposerが必要になります。まずは、以下の手順でcomposerをローカルディレクトリにダウンロードし、ファイルのハッシュ値をチェックします。「Installer verified」と表示されるのを確認します。

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ ls
composer-setup.php

$ php -r "if (hash_file('sha384', 'composer-setup.php') === '756890a4488ce9024fc62c56153228907f1545c228516cbf63f885e036d37e9a59d27d63f46af1d4d07ee0f76181c7d3') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Installer verified

以下のコマンドで、composerをインストールします。インストール後、unlinkでインストール用のファイルを削除しています。composer.pharというファイルが生成されるので、/user/local/binなどパスの通ったフォルダに、composerという名前で移動します。
$ php composer-setup.php
All settings correct for using Composer
Downloading...

Composer (version 2.1.5) successfully installed to: /home/kabuki/php/composer.phar
Use it: php composer.phar

$ php -r "unlink('composer-setup.php');"
$ ls
composer.phar

sudo mv composer.phar /usr/local/bin/composer

composerを実行して、正しくインストールされているか確認します。

$ composer
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.1.5 2021-07-23 10:35:47

Usage:
command [options] [arguments]
 :
 :

以下のコマンドを実行して、laravelをインストールします。

$ composer global require "laravel/installer=~1.1"
Changed current directory to /home/user1/.config/composer
./composer.json has been created
Running composer update laravel/installer
Loading composer repositories with package information
Updating dependencies
Lock file operations: 15 installs, 0 updates, 0 removals
- Locking guzzlehttp/guzzle (6.5.5)
- Locking guzzlehttp/promises (1.4.1)
 :
 :

Laravelプロジェクトを作成する

プロジェクト用のディレクトリを作成し、以下のコマンドを実行して、laravelプロジェクトの初期ファイルを生成します。

$ composer create-project laravel/laravel my-laravel-project --prefer-dist
Creating a "laravel/laravel" project at "./my-laravel-project"
Installing laravel/laravel (v7.30.1)
- Downloading laravel/laravel (v7.30.1)
 :
 :
Use the `composer fund` command to find out more!
> @php artisan key:generate --ansi
Application key set successfully.

以下のようなエラーメッセージが出た場合は、必要なphpモジュールがインストールされていません。sudo apt installで、php-mbstringと、php-xmlをインストールします。(OSがubuntuの場合)

Problem 1
- laravel/framework[v7.29.0, ..., 7.x-dev] require ext-mbstring * -> it is missing from your system. Install or enable PHP's mbstring extension.
- Root composer.json requires laravel/framework ^7.29 -> satisfiable by laravel/framework[v7.29.0, ..., 7.x-dev].

$ sudo apt install php-mbstring

Problem 1
- phpunit/phpunit[8.5.8, ..., 8.5.x-dev, 9.3.3, ..., 9.5.x-dev] require ext-dom * -> it is missing from your system. Install or enable PHP's dom extension.

$ sudo apt install php-xml

my-laravel-projectというディレクトリが作成されています。ディレクトリ内を確認すると、ファイルが生成されています。

$ ls
my-laravel-project
$ cd my-laravel-project/
$ ls
README.md composer.json package.json routes vendor
app composer.lock phpunit.xml server.php webpack.mix.js
artisan config public storage
bootstrap database resources tests

LaravelプロジェクトのファイルをGit管理下に設定する

これらのファイルをgit管理下に設定しましょう。まずは、GitHubにて、新しくリポジトリを作成します。以下を実行すると、空のリポジトリがローカル環境に作成されます。

$ git init
Initialized empty Git repository in /home/user1/php/my-laravel-project/.git/

git statusでローカルリポジトリの状態を確認します。

$ git status
ブランチ master

No commits yet

追跡されていないファイル:
(use "git add <file>..." to include in what will be committed)

.editorconfig
.env.example
.gitattributes
.gitignore
.styleci.yml
README.md

git remoteで、最初に作成したリポジトリを指定します。その後、git addで対象のファイルをすべてgit管理下に指定します。

$ git remote add origin https://github.com/***/my-laravel-project.git

git add *
The following paths are ignored by one of your .gitignore files:
vendor
Use -f if you really want to add them.

git commitで最初のコミットをおこない、mainブランチを作成、リモートリポジトリにプッシュします。

$ git commit -m 'first commit.'
[master (root-commit) 17265ee] first commit.
78 files changed, 10151 insertions(+)
create mode 100644 README.md
create mode 100644 app/Console/Kernel.php
 :
 :
$ git branch -M main

git pushで、ローカルのリポジトリをリモートにプッシュします。

$ git push -u origin main
Counting objects: 103, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (84/84), done.
Writing objects: 100% (103/103), 62.50 KiB | 2.72 MiB/s, done.
Total 103 (delta 6), reused 0 (delta 0)
remote: Resolving deltas: 100% (6/6), done.
To https://github.com/kabukinger/my-laravel-project.git
* [new branch] main -> main
Branch 'main' set up to track remote branch 'main' from 'origin'.

以上の手順で、Laravelプロジェクトのファイルが、GitHubの管理下になりました。

まとめ

ポテパンダの一言メモ
  • Laravelは、PHPのフレームワークの一種で、AWSのサービスやVue.jsと親和性が高い
  • Laravelのインストールやプロジェクト作成にはcomposerを使用する
  • LaravelをGithubで管理するには、空のリポジトリを作成してgit addで管理対象ファイルを追加する

 

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。