これは、データベース構成ファイルとは異なる方法で処理する必要はありません。
まず、作成しますapplication/config/paypal.php
:
// Change this information to match your settings
//$config['paypal_seekrit'] = '';
// whatever else
最初はスタブとして追跡するので、そのように作成することに注意してください。追加してコミットします。
git add application/config/paypal.php
git commit
次に、に追加して、.gitignore
ローカルで追跡されないようにします。追加してコミットし.gitignore
ます。次に、コードで次のようなことを行って、人々が物事を適切に設定することを忘れないようにする必要があります。
$this->load->config('paypal');
$seekrit = $this->config->item('paypal_seekrit');
if ($seekrit === FALSE) {
// config->item returns FALSE by default if item doesn't exist
log_message('error', 'You need to configure config/paypal.php!');
// bail out, if appropriate
show_error('Paypal keys have not been configured');
}
この時点でプッシュできます。これで、誰もがファイルのスタブを手に入れました。誰もが自分の側で何もしないと、押し戻される危険があります。欠点は、オプションを追加または削除するためにデフォルトのスタブを変更する必要がある場合、あなた(および他のすべての人)がマージする必要があることです。しかし、それはとても些細なファイルなので、私はそれを問題とは考えていません。
次に、誤ってコミットしてプッシュすることを心配せずに、秘密鍵をファイルに追加します。ライブラリで使用する場合は、最初に呼び出しget_instance()
てフレームワークのスーパーオブジェクト(シングルトン)を取得する必要があることに注意してください。例:
$CI = get_instance();
$CI->load->config('paypal');
$seekrit = $CI->config->item('paypal_seekrit');
...
新しいCIプロジェクトで最初に行うことの1つは、コミットapplication/
してから、内の特定のファイルの追跡を停止することですapplication/config
。
以前にロードされたすべての構成をオーバーライドするサイト固有の設定のcatchall構成ファイルを作成し、そこに貼り付けることもできます(のようなものconfig/appname.php
)。config / loaderクラスが、誰かが期待するように機能するようにしてください。