Założyłem witrynę Drupal pod kontrolą git do prac programistycznych.
Jest nadrzędny w nadrzędnym, czystym repozytorium GIT, a ponieważ zmiany są wprowadzane w moich różnych klonach git do pracy nad projektami i wypychane z powrotem do elementu nadrzędnego, hak po aktualizacji natychmiast wypycha zmiany do pojedynczej strony internetowej na żywo (http: / /staging.loc.). Nic specjalnego, działa zgodnie z oczekiwaniami.
Drash-aliasy strony „@STAGING”. Czasami chcę promować moje zmiany z witryny przejściowej na serwer produkcyjny.
Przychodzą mi na myśl dwie stosunkowo proste metody:
(1) W momencie, gdy witryna przejściowa wydaje się stabilna, utwórz witrynę produkcyjną jako kasę git z głównego repozytorium,
(2) użyj drush rsync
+ drush sql-sync
z miejsca postoju do miejsca produkcji.
Oba można sprawić, by działały. Poza tym, że (2) z natury wydaje się bardziej skoncentrowany na Drupalu / świadomy - drush jest w końcu zestawem narzędzi charakterystycznych dla Drupala - jakie są względne zalety obu podejść?
Czy jest jakiś konkretny powód, dla którego powinienem rozważyć (1) ponad (2)?
W obu przypadkach „Wszystko” podlega przynajmniej jednej kontroli wersji ...
"rsync' => array ('exclude-paths' => '.git:.DS_Store:.gitignore:.gitmodules:',"
w pliku .rc, chociaż nie jestem jeszcze pewien, czy potrzebuję tego zarówno w specyfikacji aliasu źródłowego i docelowego, czy tylko w jednym lub drugim.