正確にはSOタイプの質問ではありません。Magento EE にはステージングが組み込まれており、データをマージすることもできます。dev から live へのデータの同期は、すべての行と列の状態を追跡し、新しいデータと古いデータを認識し、同期の競合を解決する本格的な同期フレームワークなしでは簡単にできないことを理解する必要があります。
CE を使用しており、データ移行ツールがバンドルされていないという前提に基づくフローを次に示します。
- ライブデータベースをセットアップし、データ移行がないため、データがライブから開発にのみ移動し、開発からライブに移動しないことを数えます。データベースレベルで作成および保存する必要があるすべての構成は、ライブデータベースで実行します(開発環境でテストしてからライブで作成します)
- シェルスクリプト、ファブリックスクリプトを作成して、ライブdbダンプをエクスポートし、開発データベースが存在する場合は削除し、新しいデータベースを作成してライブデータベースをインポートし、変更/削除する事前または事後SQLスクリプトを実行します環境に依存する構成値 (base_url、secure_base_url など)
- 二重のデータ入力を避けるために、magento セットアップ スクリプトで保持する必要があるすべての属性と設定値を常に作成してください。
コードについても同じことが言えます。これは、ライブ、ステージ、および開発環境での一般的なセットアップ シナリオです。
- クリーンな Magento バージョン ツリーに基づく 1 つのマスター バージョン管理 (できれば誰かがそこでファイルを変更することを避けるために裸であることが望ましい) リポジトリ
- 各環境 (ライブ、ステージ、dev(n)) の個別のブランチと、dev (開発し、コードベースの状態が壊れている可能性がある場所) からステージ (リリース候補が存在し、テストの準備ができており、変更されていない場所) への検証済みコード フロー。ステージからライブまで (ライブ コードが安定した状態にある場所)
- すべての開発者は、dev ブランチからのチェックアウトに取り組み、独自の dev ブランチにコミットしてから、変更を dev にプッシュします。そこで、変更を評価し、変更がステージングに十分成熟しているかどうかを判断できます。
- ステージは、リリース候補が存在し、クライアントがテスト (または自動化されたテスト) を行い、リリースに十分な準備ができているかどうかを診断できる場所です。誰もここでコードを変更することはなく、コードは開発ブランチから取得されます。
- live は、誰もコードを直接変更しないライブで実行中のバージョンです。テストに合格した場合、コードはステージからのみここに来ることができます
視覚化するには、コードベースが git にあると想像してください。
myproject_magento_se (your project git repository on bitbucket.org or in github or wherever you can host)
--> master (branch with all clean magento versions from your current to latest)
--> dev (git checkout -b master (or by specific version from master)
--> stage (while on dev: git checkout -b stage)
--> live (while on stage: git checkout -b live)
ホストのセットアップを次のように想像してください。
www.mylivesite.com = git clone yourgitrepo; git checkout live;
stage.mylivesite.com = git clone yourgitrepo; git checkout stage;
dev.mylivesite.com = git clone yourgitrepo; git checkout dev;
これらすべてのために、ボタンを押すだけで環境間の切り替えとコードとデータベースのリフトを行う展開スクリプトを用意することをお勧めします。
以下は、すべてのソフトウェア プロジェクトで毎日実行する必要がある一般的なアクションです。
- ライブからステージへのデータの移動/リセット (クライアント関連データのスクランブルまたは変更が必要な場合は、難読化呼び出しを行います)
- コードを開発からステージに移動する
- コードをステージからライブに移動
- ライブ状態の開発をリセット/作成します (データとコード)
楽しんでください:)そして、このスレッドも読んでください https://superuser.com/questions/90301/sync-two-mysql-databasesおよび同様の問題でSOで検索できる他のすべてのもの。