私はCodeigniterで作業することがあり、ローカルサイトでの開発が終わったら、ファイルをサーバーに移行する必要があります。 /config/
フォルダー内のすべてのファイルをサーバーの設定に合わせて変更する必要があります。これらの変更を完全にコミットするのは妥当ではありません。単にこれらのファイルを無視するようにしてもいいですか?あるいは、これらの変更を追跡し、適切なタイミングでGitに適用する方法がありますか?"サーバーのバージョン"を維持する正しい方法は何ですか?Gitでは設定ファイルだけが変更されていますか?
答えて
は、あなたはバージョン管理保つことができる:
- 2「の値の設定ファイル」を、それぞれの環境
- テンプレート設定ファイルのための右の値で、値のプレースホルダとそれに(例えば、
@@[email protected]@
) - スクリプトはに生成現在の環境に応じて実際の設定ファイル
- content filter driverこれは、チェックアウト時にリグを生成するためht設定ファイル。
注:お使いのテンプレート設定ファイルを想定し、認識コンテンツを(フィルタは、ファイルの名前やパスを持っていない)があります。 gitコンテンツフィルタドライバの制限については、 "Git equivalent of subversion's $URL$
keyword expansion"を参照してください。
あなたのニーズによって異なります。私の会社では、他のアプローチを使用しています。 我々が作成したいくつかの環境(アスタリスクがある内部プロジェクト名):。。
- のdevel - サイトは、ドメイン上で動作します** local.com *
- テスト - ドメイン上のサイトの実行テスト*。 company.com
- ベータ - 。。ベータ* company.com
- 生産 - 他のすべてのドメイン。
ドメイン名に基づいて、自動的に設定が切り替わります。 Basiclyの設定ファイルは、次のようになります。
<?php
return array(
'_env' => array(
'devel' => array(
// config for devel
),
'production' => array(
// config for production
)
)
);
?>
いくつかのフレームワーク(AFAIR Zendのは)仮想ホストの設定(または.htaccessファイル)で環境名を設定します。あなたは見てください:zend framework auto switch production staging test .. etc
あなたはCIのドキュメントを見ましたか?約sectionがあります。
config
フォルダに2つのフォルダを作成します。 1つはdevelopment
、もう1つはproduction
です。これらのフォルダのそれぞれにconfig.php、database.phpなどをコピーします。これでプロダクションサーバーにいるとき、CodeIgniterは最初にファイルのproduction
フォルダをチェックします。存在しない場合は、config
フォルダー内のデフォルトファイルを使用します。開発環境にいる場合、CodeIgniterはまずdevelopment
フォルダをチェックします。
設定ファイルを本番環境および開発環境と同じにしたい場合は、config
フォルダに保存してください。
あなたは、環境を設定したい場合は、.htaccessファイルに次のコードを追加に:
#This code for Development Environment
SetEnv CI_ENV development
と
#This code for Production Environment
SetEnv CI_ENV production
- 1. Gitサブツリーはマージされますが、ローカル変更は維持されますか?
- 2. gitの変更をコミットする正しい方法は何ですか
- 3. Sunspot Solrのインデックスを維持する正しい方法は何ですか?
- 4. .NETプロジェクトで参照されているCOM DLLの正しいバージョンを維持してください
- 5. キャッシュコントロールヘッダーを設定してテストする正しい方法は何ですか?
- 6. IMAPはサーバー上で「既読」を維持していますか?
- 7. ロジックが変更されたときにユニットテストを更新する正しい方法は何ですか?
- 8. 正しいバージョンを維持する以外は、移行で何も起こらないでしょうか?
- 9. プラグインでWordPressのクエリを変更する正しい方法は何ですか?
- 10. IOSクライアントとサーバ間のオフラインの変更を維持し、アップデートする最も良い方法は何ですか?
- 11. Guiceでプロパティを設定する正しい方法は何ですか?
- 12. CSSでビヘイビアプロパティを設定解除する*正しい*方法は何ですか?
- 13. `git diff`が変更を示すときにブランチをマージする正しい方法は何ですか?` git merge`は何もしません。
- 14. EclipseにJVMのparamを設定する正しい方法は何ですか
- 15. ユーザーが新しいバージョンに更新したときにアプリケーションの設定を維持する方法
- 16. DropDownListの選択を変更する正しい方法は何ですか?
- 17. iOS - データモデルの変更を処理する正しい方法は何ですか?
- 18. ListActivityのマネージドカーソルを変更する正しい方法は何ですか
- 19. herokuアプリの名前を変更する正しい方法は何ですか?
- 20. MapViewのLat/Lonウィンドウが変更されたときを判断する正しい方法は何ですか?
- 21. Git:ファイルは「変更されましたが更新されていません」
- 22. git noob:更新されたファイルだけをターゲットディレクトリにコピーする方法は?
- 23. スレッドでサーバーへの接続を維持していますか?
- 24. TFSで異なる設定ファイルを維持する方法
- 25. ng-initの値が設定されるのを待つ正しい方法は何ですか?
- 26. API Blueprintを使用してAPI変更ログを維持する最善の方法は何ですか?
- 27. Python:リスト要素を変更する正しい方法は何ですか?
- 28. デフォルトのgit設定ファイルには何が必要ですか?
- 29. 何が良いですか? INotifyPropertyChangedまたは別々に*変更されたイベントを持っていますか?
- 30. gitは同じプロジェクトの2つのバージョンをそれぞれ別のユーザーで維持しています
あなたはおそらくそれを行うだろうGitのafter_deployフックを書くことができますか? – lenswipe