IT関連

Git .gitignoreが利かないというかおかしい件

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

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

環境は、
開発環境は自席PC(ローカル) Windows10PC XAMPP7.2 SourceTree Laravel5.6.29 Composer
リモート先は本番環境(サーバ) LAMPP CentOS7 Laravel5.6.29 Git Fork
データベースはローカル・リモート共に、別サーバのDB2へアクセスしています。
です。

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

 

本題は.gitignoreが利かないという話。ド素人なもので.gitignoreなんて何に使うのかよく解らなかったけど、少なくともローカル・リモートそれぞれのデータベースの接続情報は違うわけなので、そこはgitで関与してもらっては困るということで、使おうと思った。

 

要するにLaravelだとconfig/database.phpにデータベース接続情報を設定するのだが、これをリモート側にプッシュすると、リモート側のアプリをブラウザで見に行ったときに怒られてしまう。そりゃそうだ。データベース接続情報が異なるんだから。

 

ま、そういう用途に使うんだろうな。あとログ関係とか。

 

で、書き方だけど、私の場合だとconfig/database.phpをgitの監視下から外したい。その場合はconfig/配下に.gitignoreというファイルを作成し、その中に1行だけdatabase.phpと書けばいいらしい。

 

windowsだと、最初にドットが付いたファイル名は普通では作れないので、.gitignore.というふうに、両脇にドットを付けてあげるといいそうだ。

 

で、もちろんこの.gitignoreファイルはgitの監視下に置かれるので、これはコミットする。

 

するとリモート側も.gitignoreファイルが作成されて、config/配下のdatabase.phpが監視外となる。

 

そういう予定だがうまくいかない。.gitignoreとdatabase.phpの綴りもあってるし、もしかして文字コードや改行コードがダメなのか?.gitignoreで改行しなければいけないのか?など色々試してもうまくいきません。

 

結論は、SourceTreeでターミナルを開き、今回のディレクトリが表示されていることを確認して、cd configでconfig配下に移動し、git rm –cached database.phpとした。

 

すると、なぜかSourceTreeのステージングエリアに赤の-でdatabase.phpが表示された。

 

もしかしてgit rm –cached database.phpをしたことにより、database.php自体が消えたのでは?と思い、ローカルのソースを見てみると何ともない。これは何ぞや。

 

よく解らないけど、このままコミットして、プッシュしてみた。

 

リモート側のdatabase.phpも確認してみたが、消えてないようだ。

 

それから、database.phpの中身を触ってみたが、見事にSourceTreeに反映しない。やった!やりました!

 

結論を繰り返すと、git rm –cached ファイル名をするとうまくいくようだ。

 

ちなみに、git rm –cached .として、全部をクリアしたらうまくいかなかった。行った場所は、/var/www/〇〇〇配下で行った。たしかにドラララって感じで何かがクリアされたようだったし、SourceTreeにもたんまりファイルが出てきた。でも、なぜだかそれらのファイル群はF5で更新しているとSourceTreeに認識しなくなった。なんだったんだろう。ま、いいか。

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

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

関連記事

AS400/IBMi サブファイルで入力後にカーソルを下に移動させる SFLCSRPRG

例えばサブファイルの入出力項目が5列あったとして、ユーザがタンタンとエンターキーでカーソルを飛ばして入力していくと、通常は次のカーソルは右に移動する。   これを下に移動させるには、DDSで …

ExcelVBA ProgressBarを自作

これは自分の備忘録であり、私が思い出すための記事なのでご了承のほど。   5分くらい時間がかかるマクロがあり、固まっていないか心配になると上司から指摘があり、進捗バーを作ろうとする。 &nb …

Windows アンインストールの形跡調査

Windowsはある程度のログを残しているので、イベントや警告やインストールやアンインストールの情報など取ることができる。   やり方は 「Winキー」+「Rキー」を押し 小窓に「perfm …

Windows 右クリックからの送るに起動したいプログラムを登録する

やり方 ファイル名を指定して実行を開き(Winキー+R)、 shell:sendto と入力してエンターキーを押す。フォルダが開くのでその中にプログラムのショートカットを入れる。   使い道 …

AS400/IBMi Laravel Ajax通信 エラー419 CSRFトークンの設置 JavaScript

基本私の記事はIBMi/AS400をベースにやっています。ご了承のほど。   LaravalではPOST通信時にCSRFトークンを送らないといけないのはすでに知っている。   なの …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に