マルチ認証の実現に向けて,まず,ユーザ認証の機能を実装の作業を完了させて下さい.具体的には Laravel によるユーザ認証の プロジェクトの作成と初期設定 から アカウントの削除 までの作業です.
もしも Git によってバージョン管理ができており,前のページの作業までできているのであれば,新たなブランチを作成して,ユーザ認証が完成した時点までリセットすると良いでしょう.
今回は,ユーザ認証の作成が完了した時点のコミットが master ブランチにあり,コメント掲示板作成は新たなブランチ comment で作業していたとします.このような場合は,master ブランチに戻って,新たなブランチを作成します.Git のブランチ操作についてはここを参照して下さい.
ブランチの一覧を確認すると,comments と master ブランチが存在し,今 (HEAD) は comments ブランチにいることがわかります.また,コミットログを確認します.すると,master ブランチはユーザ認証が完了した時点の状態であることがわかります.
vagrant@ubuntu2204 laravelAuth $ git branch ⏎ * comments master vagrant@ubuntu2204 laravelAuth $ git log --oneline ⏎ 8eda07f (HEAD -> comments) navibar 82f7ef1 delete 593bc9d edit b1e630c store 94b3cd7 memo 24c580e ページネーション 267443c show 52af255 tailwind 096ffc1 navigation d8b4ed8 comment index view 197eeff route 2246b1f php artisan make:model Comment -c ddf6396 seeder a596174 migration 3bd796b php artisan make:migration create_comments_table 84378dd (master) login_id でログイン cc95dfb login_idでログイン 3bfba89 student_id be15b7c seed 75efb3e php artisan make:seeder UsersTableSeeder c89654d breeze 9d2eca9 config efcb3f3 .env e6f9d50 initial commit vagrant@ubuntu2204 laravelAuth $
ブランチを移動する前にデータベースのテーブルを全てロールバックしておきます.
vagrant@ubuntu2204 laravelAuth $ php artisan migrate:rollback ⏎
master ブランチに移動して,コミットログを確認します.すると,ユーザ認証の実装が完了した状態に戻りました.
vagrant@ubuntu2204 laravelAuth $ git switch master ⏎ Switched to branch 'master' vagrant@ubuntu2204 laravelAuth $ git log --oneline ⏎ 84378dd (HEAD -> master) login_id でログイン cc95dfb login_idでログイン 3bfba89 student_id be15b7c seed 75efb3e php artisan make:seeder UsersTableSeeder c89654d breeze 9d2eca9 config efcb3f3 .env e6f9d50 initial commit vagrant@ubuntu2204 laravelAuth $
新たな multi_auth ブランチを作成してそのブランチに移動します.
vagrant@ubuntu2204 laravelAuth $ git switch -c multi_auth ⏎ Switched to a new branch 'multi_auth' vagrant@ubuntu2204 laravelAuth $ git branch ⏎ comments master * multi_auth vagrant@ubuntu2204 laravelAuth $ git log --oneline ⏎ 84378dd (HEAD -> multi_auth, master) login_id でログイン cc95dfb login_idでログイン 3bfba89 student_id be15b7c seed 75efb3e php artisan make:seeder UsersTableSeeder c89654d breeze 9d2eca9 config efcb3f3 .env e6f9d50 initial commit vagrant@ubuntu2204 laravelAuth $
ブランチを移動するとリモートサーバのファイルが変更されます.開発環境によりますが,例えば Visual Studio Code の SFTP を使ってファイルを編集しているならば,ローカルにリモートサーバのファイルを同期する必要があります.ショートカットキー Ctrl + Shift + P (mac は⌘ + shift + P)でコマンドパレットを起動します.「SFTP」と入力して検索して(あるいは,最近使用した一覧から探して),「SFTP: Sync Remote -> Local」を選んで同期します.
データベースのテーブルが全てロールバックされているはずなので,テーブルを作成してテストデータを投入します.
vagrant@ubuntu2204 laravelAuth $ php artisan migrate ⏎ Creating migration table ................................ 16ms DONE INFO Running migrations. 2014_10_12_000000_create_users_table .................... 10ms DONE 2014_10_12_100000_create_password_reset_tokens_table ..... 5ms DONE 2019_08_19_000000_create_failed_jobs_table .............. 11ms DONE 2019_12_14_000001_create_personal_access_tokens_table ... 15ms DONE 2023_11_03_101930_add_login_id_to_users_table ........... 16ms DONE vagrant@ubuntu2204 laravelAuth $ php artisan db:seed ⏎ INFO Seeding database. Database\Seeders\UsersTableSeeder ......................... RUNNING Database\Seeders\UsersTableSeeder .................. 665.27 ms DONE vagrant@ubuntu2204 laravelAuth $
もしもロールバックやマイグレーションに失敗するなら,データベースのファイルを一旦削除しても構いません.その後,上のコマンドを再度実行して下さい.
vagrant@ubuntu2204 laravelAuth $ rm database/database.sqlite ⏎ vagrant@ubuntu2204 laravelAuth $ touch database/database.sqlite ⏎ vagrant@ubuntu2204 laravelAuth $
これでユーザ認証ができる状態になっているはずなので,ログイン,ログアウト,ユーザの登録などが正しく動作することを確認して次のステップに進んでください.