2010-01-21 26 views
7

WordPress tabanlı web sitesi geliştirmeme - git kullanarak - revizyon kontrolünü uygulamak istiyorum.Git ve WordPress (+ yönetme eklentileri ve medya)

Aşağıdaki kaygılarıma dayanarak nasıl giderim?

Endişe 1: Pushing "granül değişiklikleri" Bu özel durumda
, yerel olarak web sunucusu ortamı taklit etmek zordur. Bu nedenle, değişiklikleri sıklıkla zorlamak istiyorum. "Alakasız" işlemlerden kaçınmak için değişiklikleri web sunucusuna bir "alt taahhüt düzeyinde" geçirebilir miyim? (Ve ben hiç benim uzak web sunucusunda bir git repo kurmak gerekiyor?)

Endişe 2: Eklenti ve medya Daha önce
taşıma, ben ve arkadaşlarım dan eklentileri ve yüklenen medya updateing/yükleme edilmiştir WordPress 'yönetici arayüzü. Medya ve eklentileri senkronize etmek istersek, bu nasıl elde edilir?

Tüm dosyalarımı (WordPress + eklentileri, medya, temalar vb.) Yerel olarak tutmamı sağlayan bir iş akışının nasıl ayarlanacağını açıklayan tüm kaynaklara değer verirken, aynı zamanda "parçalı değişiklikleri" itmeme izin verir. web sunucusuna ve Github'a "gerçek taahhütler" e.

+0

Eklenti ve medya kullanımı ile ne yaptınız? Şu an iş akışımın aynı kısmını bulmaya çalışıyorum. –

+0

Merhaba @JosiahSprague, tüm devleri yapıyorum. yerel olarak (eklenti yüklemeleri dahil) ve çekirdek WP'yi değişikliklerden ayırmak için WordPress iskeletini https://github.com/markjaquith/WordPress-Skeleton kullanın. İskelet aynı zamanda iyi bir uygulama olan medyayı da başka bir konumdan sunmak isteyebileceğiniz şekilde ayırır. – dani

+0

Serin. Son projemde neye benzediğime benzer, ancak içerik dizininin WordPress dizininin dışında nasıl bir şey olduğunu sevmiyorum, çünkü bazı kötü yazılmış eklentiler bu kurulumla uyumlu değil. –

cevap

3

Concern1 ile ilgili olarak, bu mikro değişiklikleri bir dalda ayırabilirsiniz.

Temelde, yerel repo iki şubesi: GitHub'dan için

sizin taneli adanmış
  • bir
  • biri (ana) taahhüt
Sen her şeyi itebilir

:

  • Web sitenizi, çıplak bir repo üzerinde, daha sonra klonlayın ve "granüler" dalını kontrol edin.
  • GitHub, "gerçek" işlemlerle güncellenen ana uygulamayla.

geçmişinizi temizlemek ve gerçek hareketin kurmak için, interaktif bir şekilde ustanın üstüne granül şube rebase edebilirsiniz:

git checkout master 
git rebase -i granular 

sen seç edildi Yani, kabak veya düzenleme tane halinde yapılan taahhüt eder master'da daha temiz bir dizi işlemin yeniden oynatılması.
Bu, parçalı geçmişi yeniden yazar, ancak kimse doğrudan bu şubeden çekilmezse bu çok da kötü değildir.
Tane geçmişini korumak isterseniz, yalnızca merge veya cherry-pick bazılarının granular'dan master'a kadar.

Son bağlantı, WordPress yükseltme işlemi hakkında en ayrıntılı olanıdır ve değişikliklerinizi yeniden düzenlemeyle sona erer;

İlgili konular