開発作業のために、gitの管理下にあるDrupalサイトをセットアップしました。
これは、マスターのベアGITリポジトリを親とし、変更がさまざまなプロジェクト作業gitクローンで行われ、マスターにプッシュバックされると、更新後のフックがすぐに単一のライブステージングWebサイトに変更をプッシュします(http:/ /staging.loc。)。特別なことは何もない、期待どおりに動作します。
また、サイト "@STAGING"をドラッシュエイリアスしました。場合によっては、変更をステージングサイトから運用サーバーに昇格させたいと思います。
2つの比較的簡単な方法が思い浮かびます:
(1)ステージングサイトが安定しているように見える時点で、マスターリポジトリからのgitチェックアウトとして本番サイトを作成します。
(2)ステージングサイトから本番サイトにdrush rsync
+ drush sql-sync
を使用します。
どちらも機能させることができます。(2)本質的にDrupal中心/認識であるという事実以外に、drushは、結局のところ、Drupal固有のツールのセットです-2つのアプローチの相対的なメリットは何ですか?
(2)よりも(1)を考慮する必要がある特別な理由はありますか?
どちらの場合も、「すべて」はリビジョン管理の少なくとも1つのインスタンスの下にあります...
"rsync' => array ('exclude-paths' => '.git:.DS_Store:.gitignore:.gitmodules:',"
.rcファイルで何を除外するかを指定する必要がありますが、ソースとターゲットの両方のエイリアスの指定で必要か、どちらか一方だけで必要かどうかはまだわかりません。