学習

【yps1】#task3 GitHubの連携にひっかかる

こんにちは、mihoka(@mihoka_work)です。

yps1 の #task3 の学習メモです。
手順というよりは、わたしが調べたことや参考URLを中心に書きます。

手順

今回は、SQLにデータを入れる、 laravel で表示、GitHubの設定です。

  • DB接続確認batch作成
  • SQLテーブル作成(復習)
  • Laravelでバッチ作成(復習)
  • php.ini設定
  • Git/GitHub設定
  • GitHubにファイルをアップロード

詳細な手順はこちらです。

今回調べたところ

.env ファイル

laravelの設定ファイルとのこと。
laravel インストールディレクトリ直下にできます。
データベース名などの設定をこのファイルに記載します。

データベースの指定は以下。
DB_DATABASE=dbname

このファイルを変更した場合は、反映のために下記コマンドを実行

$ php artisan config:clear

はじめての GitHub 連携でエラー

GitHub と連携設定して git push すると下記エラーになりました。

$ git push origin master
Enter passphrase for key '/home/centos/.ssh/id_rsa':
To git@github.com:XXXX/myapp.git
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'git@github.com:XXXX/myapp.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first merge the remote changes (e.g.,
hint: 'git pull') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

原因

意味としては、
GitHub側(リモートリポジトリ)で更新されているファイルがあるので
ローカル側に反映させてから push してください、
とのこと。

今回は、GitHub を設定した時に README.md に記載したことが原因。
ローカル側に README.md がなかったのでエラーになりました。

対処

以下のコマンドを実行しました。

$ git merge –allow-unrelated-histories origin/master

–allow-unrelated-histories は共通ではない(共通だと認識していない)ブランチを
マージすることを許可する、というオプションとのこと。

(2020/09/13 変更)
再度上記をやったらエラーになってしまった。

以下を実行しました。

$ git pull
$ git fetch
$ git add .
$ git commit -am "initial"

git pull してから git fetch して、addしてみました。

この辺はコマンドいっぱい実行したので間違っているかも。

再度検証します。

その後、git push でGitHubに反映できました。

$ git push origin master

今回は develop リポジトリを作成するので以下を実行。

$ git branch develop
$ git branch
$ git checkout develop

あとは、develop リポジトリに pushしました。

感想

・laravel の部分はよくわかっていないので、勉強する。

・GitHubは便利そう。本を1冊買って勉強したい。

・yps 毎回何かしらでひっかかっている。