Geliştirme çalışmaları için git kontrolü altında bir Drupal sitesi kurdum.
Bir master, çıplak GIT repo'sunda parent ve çeşitli proje çalışmaları git klonlarımda değişiklikler yapıldıkça ve master'a geri itildikçe, bir güncelleme sonrası kancası değişiklikleri hemen tek bir canlı Evreleme web sitesine iter (http: / /staging.loc.). Özel bir şey yok, beklendiği gibi çalışıyor.
Ayrıca siteyi "@STAGING" olarak düzelttim. Belirli zamanlarda, Staging sitesinden bir üretim sunucusuna yaptığım değişiklikleri tanıtmak istiyorum.
İki nispeten basit yöntem akla geliyor:
(1) Evreleme alanının kararlı göründüğü bir noktada, Üretim sitesini ana depodan bir git ödemesi olarak oluşturun,
(2) evreleme sahasından üretim yerine drush rsync
+ kullanın drush sql-sync
.
Her ikisi de işe yarayabilir. (2) Doğa tarafından daha fazla Drupal merkezli / bilinçli göründüğü gerçeğinden başka - drush, her şeyden önce, Drupal'a özgü bir araç setidir - iki yaklaşımın göreceli değerleri nelerdir?
(1) 'i (2)' den fazla düşünmem gereken özel bir sebep var mı?
Her iki durumda da "Her şey" en az bir revizyon kontrolü örneğinde ...
"rsync' => array ('exclude-paths' => '.git:.DS_Store:.gitignore:.gitmodules:',"
.rc dosyasında neyi hariç tutacağımı belirtmem gerekiyor , ancak kaynak ve hedef diğer adlarının belirtimlerinde veya yalnızca bir veya diğerinde buna ihtiyacım olup olmadığından henüz emin değilim.