8

Codeigniter を使用することもありますが、ローカル サイトでの開発が完了したら、ファイルをサーバーに移行する必要があります。フォルダー内のすべてのファイルは/config/、サーバーの設定に合わせて変更する必要があります。これらの変更を完全にコミットするのは正しくありません。Git にこれらのファイルを完全に無視させるだけですか、それともこれらの変更を追跡して適切なタイミングで Git に適用する方法はありますか?

4

3 に答える 3

8

バージョン管理を維持できます:

  • 各環境に適切な値を持つ 2 つの「値構成ファイル」
  • 値のプレースホルダーを含むテンプレート構成ファイル (たとえば、@@PORT_NUMBER@@)
  • 現在の環境に応じて実際の構成ファイルを生成できるスクリプト
  • チェックアウト時に、適切な構成ファイルを生成するためにスクリプトをトリガーするコンテンツ フィルター ドライバー。

コンテンツ フィルター ドライバー

注: これは、テンプレート構成ファイルに認識可能なコンテンツがあることを前提としています (フィルターにはファイルの名前やパスがありません)。git コンテンツ フィルター ドライバーの制限の詳細については、「Subversion の$URL$キーワード展開に相当する Git 」を参照してください)。

于 2012-05-13T12:08:27.847 に答える
1

それはあなたのニーズに依存します。私の会社では、他のアプローチを使用しています。いくつかの環境を作成しました (アスタリスクは内部プロジェクト名です)。

  • devel - サイトはドメイン **.local.com* で実行されます
  • test - ドメインtest.*.company.comで実行されるサイト
  • ベータ - beta.*.company.com
  • production - 他のすべてのドメイン。

ドメイン名に基づいて、構成を自動的に切り替えます。基本的に設定ファイルは次のようになります。

<?php
return array(
  '_env' => array(
    'devel' => array(
      // config for devel
    ),
    'production' => array(
      // config for production
    )
  )
);
?>

一部のフレームワーク (AFAIR Zend) は、仮想ホスト構成 (または .htaccess) で環境名を設定します。あなたが見るべきです:zendフレームワーク自動スイッチ本番ステージングテスト..など

CI ドキュメントを見ましたか? それについてのセクションがあります。

于 2012-05-13T22:14:25.647 に答える