IT関連

gitでプッシュしたのに効かない件

投稿日:2018年8月7日 更新日:

ブログなので皆さまのお役にたてば幸いですが、あくまで自分の忘備録なので、昔話も含めて書いております。ご了承ください。

環境は、
開発環境は自席PC(ローカル) Windows10PC XAMPP7.2 SourceTree Laravel5.6.29 Composer
リモート先は本番環境(サーバ) LAMPP CentOS7 Laravel5.6.29 Git Fork
です。

自席PCのXAMPPで開発して、Git Pushで本番機と同期する感じです。
ドキュメントルートは/var/www/配下に置き、/opt配下にベアリポジトリとして、Hookのスクリプトを置いています。
ローカルPCのSourceTreeからベアリポジトリにプッシュし、それと同時にHookが利き、ドキュメントルートにcdして、pullする仕組みです。

 

 

いままで快適にプッシュできていたのに、ある日突然プッシュしても本番機側のソースが更新されないので、調べてみました。繰り返しますが、昨日というか先週まではなんともありませんでした。

 

週明けの今日、composerでLaravel-excelをインストールして、動作テストを行い、それをSourceTreeでプッシュしました。

 

さすがにcomposerで大量のファイルをインストールしたので、SourceTreeの動作は超重たかったです。でも問題なく終わりました。

 

ブラウザから表示を確認したところ、反映されていなかったので、とりあえずスーパーリロードを行い、それでもダメだったので、Teratermで本番機のソースを覗いてみたところ、反映すらされていませんでした。

 

再度SourceTreeを見ても、コミット対象が選択されていません(working tree clean)の文字。

 

おそらくローカルと前述したベアリポジトリとは同期が取れているのだと思われる。

 

とりあえず、本番機の/var/www/配下から、git –git-dir=.git pullでベアリポジトリからデータを引っ張ってこようとする。

 

したら、下記のエラー。わからん。コミットしろよと言ってるみたい。

error: Your local changes to the following files would be overwritten by merge:
vendor/composer/autoload_classmap.php
vendor/composer/autoload_static.php
Please, commit your changes or stash them before you can merge.
Aborting

 

 

git statusは、こんな感じ。これもコミットしろよと言ってるみたい。

# On branch master
# Your branch is behind ‘origin/master’ by 2 commits, and can be fast-forwarded.
# (use “git pull” to update your local branch)
#
# Changes not staged for commit:
# (use “git add <file>…” to update what will be committed)
# (use “git checkout — <file>…” to discard changes in working directory)
#
# modified: config/database.php
# modified: vendor/composer/autoload_classmap.php
# modified: vendor/composer/autoload_static.php
#
no changes added to commit (use “git add” and/or “git commit -a”)

 

この現象は、本番機側のコードが何かの拍子に変わってしまっており、それを放っておいて、ローカル側のプッシュは受け入れられないということらしい。

 

だからコミットしろと言ってるみたい。でも、本番機側でコミットしたらローカル側のコードとどうやって整合性が取れるのか心配。

 

で、いろいろ調べてみたところ、Laravelなどのフレームワークの場合は特に、本番機側のコードが勝手に変わってしまうことがあるみたい。

 

そんなの.gitignoreで無視するように設定しとけよって話なのかもしれないが、とりあえず今のところよく解りません。

 

そのときは、cd /var/www/配下(私の環境の場合)で、git checkout . とすると変更を元に戻してくれるみたい。

 

元々checkoutは元に戻すって話らしいからね。

 

そして改めて、git –git-dir=.git pullをすると、ブワーって感じでcomposerでインストールしたファイル群を取り入れ始めた。

 

その後は無事動くようになった。めでたしめでたし。

 

あ、ちょっと記憶にないけど、もしかしたらリモート側で、php artisan cache:clearと、php artisan config:cacheをしてから正常動作するようになったかもしれない。

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

AS400/IBMi 無料でWeb化 GUI化 オープン化 Linuxサーバ構築編 2/3

1/3でグダグダと説明してまいりましたが、構築作業の事前準備として2/3を設けました。   さっそく初めて行きます。   準備するもの Linux用Access_Client_So …

AS400/IBMi PHPで配列の文字コードを一気に変換する

AS400からODBCでデータを取得して表示したら、私の環境ではSJISのためそのまま画面に表示すると文字化けする。   ソースコードなどはUTF8で統一しているため、SJIS統一はしない方 …

AS400/IBMi CLでファイルを読む

RPGじゃなくてCLでファイルを読む方法。 ファイルを読んでその値を使ってCLコマンドを動かして、ループしてまたファイルを読んでを繰り返す。 SNDBRKMSGを使って、全端末にアラートを送るなど使え …

AS400/IBMi に対してPCからFTPで通信する

接続 Windowsコマンドプロンプトを開く C:\User\User> ftp ftp> open IPアドレス ユーザーIDを入力する パスワードを入力する   使えるコマン …

AS400/IBMi View(ビュー)を作成したり削除したり一覧表示する

素人の備忘録なので、あまりよく解っていませんが、ビューの作り方です。 なんでViewを作る必要があるのかすら不明です。知ってる人は逆にコメント欲しいです。   思っていることは、論理ファイル …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に