2

ローカルで取り組んでいるgitプロジェクトがあります。これは、MySQLデータベース接続情報を格納する構成ファイルを含むPHPプロジェクトです。私のローカルMySQL設定はリモート設定とは異なります。

私のリモコンには、サーバー上のフォルダーにファイルをチェックアウトする受信後フックがあります。

#!/bin/sh
GIT_WORK_TREE="../demo" git checkout -f
chmod +x hooks/post-receive

このチェックアウトにインクルードしないように指示するにはどうすればよいですか(構成ファイルを上書きします)。これにより、リモート構成ファイルがローカルファイルに置き換えられます。ローカル構成ファイルを.gitignoreに追加しようとしましたが、うまくいかなかったようです。

チェックアウトから設定ファイルを除外する方法はありますか?

4

2 に答える 2

2

適切な解決策は、あなたconfig.php(またはその名前が何であれ)をコミットするのではなく、代わりにそれをに入れて.gitignoreコミットconfig.php.exampleすることです。

したがって、リポジトリから構成ファイルを削除し、リモートマシンで名前を変更し、プルして最新のコミット(ファイルを削除する)を取得してから、元に戻します。

于 2012-04-26T06:17:02.053 に答える
0

あなたはこれを試すことができます

コマンドの実行:

git rm -r --cached .

これにより、インデックスからすべてが削除され、次のコマンドが実行されます。

git add .

コミットする:

git commit -m ".gitignore is now working"
于 2012-04-26T06:20:04.750 に答える