Kaynak kontrolü projeme katkıda bulunan modüller olmalı mı?


7

Ben geliştirirken ben sites/kod deposu (örn. SVN) altında her şeyi kontrol kaynak gerektiğini söylendi .

Kullandığım katkı modüllerinden hiçbirine ( vb.) Asla dokunmayacağımı ctools, viewsancak yalnızca kendi temamı oluşturacağımı varsayarsak , yine de yapmalı mıyım?

Yoksa sadece altındaki her şeyi kontrol etmeli miyim sites/all/themes/?

Teşekkürler

Yanıtlar:


10

Ekibimde sadece mevcut projemize özgü olan kaynaklara geçtik. Biz örneğin Görüntüleme kullanıyorsanız bunu ilgili bizim için giriş eklemek drush yapmak -File ve versiyon olduğunu , ancak modül kendisi.

Bu, bizi mevcut siteye, mevcut temaya ve özelliklerin dışa aktarımına özgü herhangi bir özel modülden oluşan çok küçük bir havuzla bırakıyor.

Kesinlikle drush ve drush make kullanamazsanız, neden başka bir yerde iyi sürümlendirilmiş sürüm kontrol kodu gerekir görmüyorum. Ve modüllerden birini hacklemek istiyorsanız, bunu bir alt modül olarak eklemelisiniz , kodu kendi repolarınızda versiyonlamak yerine tekrar eklemelisiniz . (Buna SVN'de bir satıcı şubesi denildiğine inanıyorum ).

Düzenleme: Daha fazla ayrıntı ve daha gelişmiş bir kurulum için, şu depoya göz atabilirsiniz: git@github.com: letharion / Drupal-build-scripts.git Komut dosyaları bir bina içeren takımlarımın iş akışını desteklemek için bash ile yazılmıştır bir temel yükleme profili ( NodeStream ), daha sonra siteye özgü profilimiz, her profil için bir make dosyası, yamaları uygulamak veya bireysel oluşturma adımlarında başka değişiklikler yapmak için kancalar vb. Umarım yeniden zaman ayıracağım. -yakın gelecekte bir drush uzantısı olarak yaz.


Ayrıntılı açıklamanız için teşekkürler. Evet, drush kullanıyorum ve mümkün olduğunca otomatikleştirmeyi planlıyorum. Ve çekirdek veya katkıda bulunan modüller herhangi bir kod değiştirmeyi planlamıyorum.
cherouvim

Make dosyasını + 1'lemek harika bir fikir, bunu gelecekte yapacağımı düşünüyorum;)
Clive

1
@Letharion Aynı siteyi aynı anda çeşitli geliştiricilerle geliştirirken nasıl çalıştığını tam olarak anlamıyorum? AFAIK drush her zaman tüm bağımlılıkları indirir ve bu modüller zaten D / L'd olsa bile sitelerin / varsayılanların üzerine yazmaya çalışır veya sadece güncellenmiş / yeni modülleri indirmek için belgesiz bir seçenek var mı? Başka bir deyişle: Drush make'i yeniden yüklemek için kullanmanın faydasını anlıyorum, ancak modül bağımlılıklarını dağıtılmış bir ekipte senkronize etmek için nasıl kullanıyorsunuz?
Creynders

Bu yaklaşımı bir yılı aşkın bir süredir kullanıyorum, ancak şimdi her gün platformu yeniden inşa etmeyebilecek diğer geliştiricilerle çalışırken sadece bir repoda her şeye sahip olmanın gerçekten daha iyi olup olmadığını sorguluyorum. Ayrıca, bu yaklaşım Acquia'nın bulut barındırma için depolarını yapılandırma biçimiyle gerçekten uyumlu değildir.
David Meister

6

@ Letharion'ın cevabına bir karşı olarak, SVN'ye her şeyi koymak bazı kuruluşlar için mantıklıdır ve gerçekten sunumlarınızı nasıl yaptığınıza bağlıdır. SVN'ye katkıda bulunan modüller ve temalar koymak, "zamanda geriye" gitmeniz ve bir sitenin eski bir sürümüne bakmanız gerektiğinde mantıklı olabilir.

Katkıda bulunan bir modüldeki bir hatadan şüpheleniyorsanız veya farklı davranışlar gördüğünüzde bunun bir örneği kullanışlıdır. Geçmişten tam bir sürümü geri yükleyebilmek yardımcı olabilir.

Ayrıca, bir istemcinin bir siteye ne yaptığını anlamaya ihtiyaç duyduğumda SVN'de tam bir site anlık görüntüsüne sahip olmayı kullanışlı buldum. Sürümlerinin tam bir anlık görüntüsünü alabilir ve bir şube olarak SVN'ye yapıştırabilir ve karşılaştırabilirim.


"Zamanda geri" gitmek için de karşılık gelen tam veritabanı yedekleme de gerekir. Çünkü bazı ayarlar ve yapılandırmalar DB'de bulunmaktadır. Bu doğru mu?
cherouvim

Evet. Backup and Migrate modülü ve / veya drush archive-backup burada arkadaşınız.
mpdonadio

1
Bu yöntemi kullanmak, canlı bir sitenin geliştirilmesi veya hata ayıklanması için çok yararlı olabilecek tüm bir kontrolü sürüm kontrolünden ve bir yedeklemeden klonlamanıza olanak tanır.
keithm
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.