Laravel開発でGit/GitHubを使う方法|初心者向けにリポジトリ作成からブランチ管理まで解説
Laravelでアプリケーションを作り始めると、少しずつコードが増えていきます。
最初のうちは「ファイルを修正して、保存して、動作確認する」という流れでも問題ありません。
ところが、開発が進んでくると、こんな瞬間がやってきます。
- さっきまで動いていたのに、突然エラーが出た
- どこを変更したのか分からなくなった
- 新機能を追加したら既存の機能まで壊れてしまった
- 一つ前の状態に戻したい
- 別の機能を試したいけれど、現在のコードを壊したくない
こうした場面で頼りになるのがGitです。
そして、Gitで管理しているコードをオンライン上に保存・共有する場所として活躍するのがGitHubです。
今回のLaravel開発では、これからコードを書き進めていく前にGitとGitHubを設定しておくことにしました。
必須の作業というわけではありません。ただ、開発実務を考えると、早い段階からバージョン管理を始めておくメリットはかなり大きいです。
GitとGitHubをLaravel開発で使う理由
まず整理しておきたいのが、GitとGitHubは同じものではないということです。
Gitは、ソースコードの変更履歴を管理するためのバージョン管理システムです。
一方、GitHubはGitで管理しているリポジトリをオンライン上に保存したり、他の開発者と共有したりできるサービスです。
イメージとしては、旅行中に写真を撮ることに似ています。
スマートフォンの中に写真を保存しておくのがローカル環境だとすれば、GitHubはクラウド上に写真をバックアップしておくような場所です。
さらにGitには「いつ、どんな変更をしたのか」という履歴を残す仕組みがあります。
つまり、単純なバックアップだけではなく、開発の途中経過を記録しておけるわけです。
Gitでコードの変更履歴を残す
Gitの大きなメリットは、コードの状態を履歴として残せることです。
例えばLaravelでログイン機能を追加したとします。
その後、デザインを変更したところ、なぜかログイン処理まで動かなくなってしまった。
こんなときにGitで適切にコミットしていれば、変更前の状態を確認したり、必要に応じて以前の状態へ戻したりできます。
「とりあえずコードをコピーしてbackup_01、backup_02、backup_final……」といった管理をしなくてもよくなります。
GitHubにコードを保存する
Gitで管理しているコードをGitHubへpushしておけば、オンライン上にもプロジェクトの履歴を保存できます。
GitHub公式ドキュメントでも、ローカルブランチのコミットをリモートリポジトリへ送る操作としてgit pushが説明されています。一般的にはgit push origin mainのように実行します。 ([GitHub Docs](https://docs.github.com/ja/get-started/using-git/pushing-commits-to-a-remote-repository?utm_source=chatgpt.com))
これによって、パソコンの中だけで管理するよりも安心して開発を進めやすくなります。
LaravelプロジェクトをGitで管理する準備
今回の作業では、すでに作成しているLaravelアプリケーションをGitで管理していきます。
まず確認したいのが、現在いるディレクトリです。
Laravelプロジェクトのディレクトリに移動した状態でGitの設定を始めます。
cd アプリケーションのディレクトリ
ここで重要なのは、LaravelプロジェクトそのものをGitの管理対象にするということです。
間違ったディレクトリでGitを初期化すると、意図しないファイルまで管理対象になる可能性があるので、最初に現在位置を確認しておくと安心です。
Gitリポジトリを作成する|git init
Laravelプロジェクトのディレクトリに移動したら、Gitリポジトリを初期化します。
git init
このコマンドを実行すると、そのディレクトリがGitで管理できる状態になります。
ここで「GitHubにアップロードされたのかな?」と思うかもしれませんが、まだGitHubには何も送られていません。
この段階では、あくまでローカル環境にGitの管理場所を作っただけです。
Gitの基本的な流れは、ざっくり次のように覚えておくと分かりやすいです。
- git init:Git管理を開始する
- git add:変更をコミットする準備をする
- git commit:変更履歴を保存する
- git push:GitHubへ変更を送る
この流れを覚えておくだけでも、Git初心者にとってかなり理解しやすくなります。
GitHubで新しいリポジトリを作成する
次はGitHub側の設定です。
GitHubにログインした状態で、画面右上にある「+」ボタンから新しいリポジトリを作成します。
「New repository」を選択して、Laravelプロジェクト用のリポジトリを作成していきます。
ここで設定するリポジトリ名は、Laravelプロジェクトの名前と合わせておくと分かりやすいでしょう。
今回の作業では、まずPrivate(非公開)に設定して進めます。
個人開発中のコードや学習中のプロジェクトであれば、最初から公開する必要はありません。
GitHubでは後から公開設定を変更することもできるため、まずは安全側に倒しておくという考え方です。
GitHubリポジトリ作成時に確認したいポイント
- リポジトリ名が分かりやすいか
- Ownerが自分のGitHubアカウントになっているか
- 公開範囲がPrivateになっているか
- Laravelプロジェクト用のリポジトリになっているか
設定できたら、画面下部にある「Create repository」をクリックします。
これでGitHub側のリモートリポジトリが作成されました。
GitHubのリポジトリとLaravelプロジェクトを接続する
ここからがGitとGitHubをつなぐ作業です。
GitHubでリポジトリを作成すると、GitHub側にいくつかのコマンドが表示されます。
このコマンドを利用して、ローカルにあるLaravelプロジェクトとGitHubのリポジトリを接続していきます。
一般的には、リモートリポジトリをoriginという名前で登録します。
git remote add origin https://github.com/ユーザー名/リポジトリ名.git
ここで登場するoriginは、GitHub上のリポジトリを指すための名前です。
「origin」という言葉そのものに特別な意味があるというより、Gitでリモートリポジトリを扱う際によく使われる慣習的な名前だと考えると分かりやすいです。
git addでLaravelのファイルを登録する
次に、Gitで変更したファイルをコミットの対象として登録します。
git add .
「.」は現在のディレクトリ以下を意味します。
つまり、プロジェクト内の変更されたファイルをまとめてステージングエリアへ追加するイメージです。
ここはGit初心者が少し戸惑いやすいところです。
ファイルを変更しただけでは、まだコミットされません。
まずgit addで「この変更を次のコミットに含めます」とGitに伝えます。
git commitで変更履歴を保存する
次に変更をコミットします。
git commit -m "Initial commit"
コミットは、Gitにおけるセーブポイントのようなものです。
ゲームでボス戦の前にセーブしておけば、失敗してもその地点からやり直せますよね。
Gitのコミットも、それに近い感覚で考えると理解しやすいです。
例えば、Laravelの基本設定が終わった段階でコミットしておけば、その後に大きな変更を加えて問題が発生した場合でも、過去の状態を確認しやすくなります。
そのため、コミットメッセージは「何を変更したのか」が分かる内容にしておくのがおすすめです。
Initial commit:初期状態を登録Add login feature:ログイン機能を追加Fix validation error:バリデーションエラーを修正Update user page:ユーザーページを更新
後から履歴を見返したときに「何をやったんだっけ?」となりにくくなります。
mainブランチを作成してGitHubへpushする
次に、メインとなるブランチを設定します。
git branch -M main
現在の開発では、GitHubの新しいリポジトリでmainという名前のデフォルトブランチが一般的に使われています。GitHub公式のチュートリアルでも、mainブランチから別のブランチを作成して作業する流れが紹介されています。
続いて、GitHubへコードをpushします。
git push -u origin main
ここまで実行すると、ローカル環境で管理していたLaravelプロジェクトがGitHub上のリポジトリへアップロードされます。
GitHubの画面を更新して、Laravelのファイルが表示されていれば成功です。
この瞬間は、ちょっと気持ちいいです。
さっきまで自分のパソコンの中にしかなかったLaravelプロジェクトが、GitHubの画面にずらっと表示されます。
「ちゃんとGitHubまで届いた!」という実感が湧いてきます。
Laravel開発ではブランチを分けて作業する
ここから先の開発では、単純にmainブランチへコードを書き続けるのではなく、ブランチを分けて作業することが重要になってきます。
GitHub公式ドキュメントでも、ブランチはmainのコードを直接変更せず、新しい機能を試したり編集したりするために利用できる仕組みとして説明されています。 ([GitHub Docs](https://docs.github.com/ja/get-started/using-github/hello-world?ref=wf-expert&utm_source=chatgpt.com))
例えば、これからLaravelに新しい機能を追加するとします。
いきなりmainブランチで作業してしまうと、途中でエラーが発生した場合に「どこまでが正常だったのか」が分かりにくくなります。
そこで、作業用のブランチを作ります。
git switch -c feature/new-function
これで新しい作業ブランチを作成して、そのブランチへ移動できます。
名前はプロジェクトのルールに合わせればOKですが、例えば次のような名前にすると内容が分かりやすくなります。
feature/loginfeature/user-profilefeature/weather-apifix/login-errorfix/validation
「このブランチでは何をするのか」が名前から分かるようにしておくのがポイントです。
ブランチを分けるメリット
ブランチを分ける最大のメリットは、mainの状態を守りながら開発できることです。
例えば旅行に例えるなら、mainブランチが「帰りの航空券も確保してある本番ルート」だとします。
一方、作業ブランチは「ちょっと気になる場所へ寄り道してみるルート」です。
寄り道が最高だったら本線へ取り込めばいい。
もし道に迷っても、本線には大きな影響がありません。
この感覚で考えると、ブランチの役割がかなり分かりやすくなります。
GitHubにpushしたらコードを確認する
作業ブランチで変更した場合も、コミットした後にGitHubへpushできます。
git add .
git commit -m "Add new feature"
git push origin feature/new-function
GitHub公式ドキュメントでも、ローカルブランチのコミットをリモートへ送る基本操作としてgit pushが案内されています。 ([GitHub Docs](https://docs.github.com/ja/get-started/using-git/pushing-commits-to-a-remote-repository?utm_source=chatgpt.com))
GitHubの画面でブランチを確認すると、mainとは別に作業用ブランチが存在していることを確認できます。
これで、コードを安全に分けて開発する準備が整いました。
GitとGitHubの基本操作を一度整理してみる
ここまでの作業を一度整理してみましょう。
# Gitリポジトリを初期化
git init
# ファイルをステージング
git add .
# コミット
git commit -m "Initial commit"
# mainブランチへ変更
git branch -M main
# GitHubリポジトリを登録
git remote add origin https://github.com/ユーザー名/リポジトリ名.git
# GitHubへpush
git push -u origin main
まずはこの流れを覚えておけば、LaravelプロジェクトをGitHubで管理する基本は押さえられます。
Git初心者が最初に覚えたいgit add・commit・push
Gitのコマンドは非常にたくさんあります。
最初からすべて覚えようとすると、逆に難しく感じてしまいます。
まずは次の3つを重点的に覚えておけば十分です。
- git add:コミットする変更を選ぶ
- git commit:変更履歴を保存する
- git push:GitHubへ送る
この3ステップを繰り返すことで、Gitの基本的な操作に慣れていきます。
Gitの基本サイクル
コードを書く
↓
git add .
↓
git commit -m "変更内容"
↓
git push
↓
GitHubで確認
このサイクルを開発の習慣にしてしまうと、Gitはそれほど難しいものではありません。
GitHubでLaravelプロジェクトを管理すると安心感が違う
今回、Laravelのコードを書き始める前にGitとGitHubを設定したのは、開発を安全に進めるためです。
プログラムは、少し修正しただけなのに別の場所が動かなくなることがあります。
特にLaravelのように、ルーティング、Controller、Model、View、データベースなど複数の要素が絡んでくると、変更による影響範囲も大きくなっていきます。
だからこそ、早い段階でGitを導入しておく価値があります。
「何かあってからGitを入れる」のではなく、何か起きる前にGitを入れておく。
これが個人開発でもかなり大切だと感じました。
今回のGit/GitHub設定で分かったこと
今回の作業を通して、改めて感じたのはGitHubは単なる「コード置き場」ではないということです。
Gitで変更履歴を残し、GitHubへpushする。
さらにブランチを分ければ、mainを守りながら新しい機能を試せます。
最初はコマンドが多くて少し取っつきにくく感じます。
でも、一度流れを理解してしまえば、やっていることは意外とシンプルです。
- Gitでローカルのコードを管理する
- コミットで変更を記録する
- GitHubへpushしてオンラインに保存する
- ブランチを作って安全に新機能を開発する
- 必要に応じて以前の状態を確認する
これからLaravelのコードを本格的に書き進めていくので、まずはこの土台を作っておきます。
ここから新しい機能を追加していくわけですが、もし途中でコードを壊してしまっても、Gitの履歴があれば「戻れる」という安心感があります。
この安心感があるだけでも、かなり大胆にコードを書けるようになります。
まとめ|Laravel開発を始めるならGitHubを早めに設定しよう
今回は、LaravelプロジェクトをGitとGitHubで管理するための初期設定を行いました。
Gitは最初からすべてを理解する必要はありません。
まずは「add → commit → push」という基本の流れを体験するところから始めれば大丈夫です。
そして、開発が進んできたらブランチを使って、mainとは分けて機能開発を行っていきます。
今回のポイントを最後にまとめます。
- Gitはソースコードの変更履歴を管理するツール
- GitHubはGitリポジトリをオンラインで管理できるサービス
git initでLaravelプロジェクトをGit管理するgit addで変更をコミット対象にするgit commitで変更履歴を保存するgit pushでGitHubへコードを送る- mainブランチは安定したコードを置く場所として利用する
- 新機能の開発では作業ブランチを作る
これでLaravel開発を進めるための「戻れる環境」ができました。
これからコードを書いていく中で、エラーが出たり、思ったように動かなかったりすることもあるでしょう。
でも、Gitがあれば大丈夫。
失敗しても履歴を確認できます。
そう考えると、コードを書くときの気持ちも少しラクになります。
次はいよいよ、この環境を使ってLaravelの機能を実際に作り込んでいきます。
旅もプログラミングも、最初に帰り道を確保しておくと安心です。
今回のGit/GitHub設定は、まさにその「帰り道」を作る作業でした。
参考:GitHub公式ドキュメントでは、リポジトリ、ブランチ、コミット、Pull RequestなどGitHubの基本的なワークフローが解説されています。また、GitHubへのpushについても公式ドキュメントで確認できます。 ([GitHub Docs](https://docs.github.com/ja/get-started/using-git/pushing-commits-to-a-remote-repository?utm_source=chatgpt.com))







0 件のコメント:
コメントを投稿