Bunu yaptığımız ve temelde yaptığımız şey:
- Modül için Git deposu kurun.
- Bu modülü üretim sahasının kod tabanına yerleştirin ve aşağıdakileri içeren her şeyi yapın:
- modman tarafından oluşturulan yumuşak bağlantılar
- klonlanmış modül deposunu barındıran .modman dizini
- Devman ve test için diğer sürümlere ve / veya dev ortamına "dağıtmak" için modman kullanın.
Bu şekilde yapmak size modül geliştirme için ihtiyaç duyduğunuz esnekliği sağlar, tek sitedeki kodu da sürümlendirir ve tek sitedeki kod tabanında modülde değişiklik yaparsanız, bunları doğrudan modül havuzuna geri alabilirsiniz. repo .modman dizininde var.
GÜNCELLEME:
Bunu ilk yazdığımda, cevabımdaki Git'in (alt) modüllerin bir depoya taahhüt edilmesine izin vermediğini hesaba katmadım, bu durumda “her şeyi taahhüt etmek” biraz daha fazla ayrıntıya ihtiyaç duyuyor!
Bu arada, bunun nedeni, Git reposunda yer alan modülleri SVN tarafından barındırılan bir üretim kod tabanına yerleştirmek için modman kullanarak daha sık yaptığımdır. Subversion, tüm Git ağacını VCS'ye vermesini önleyen hiçbir zorluk içermez.
Yani işte gidiyor…
Üretim sahasının kodunu oluşturmak için SVN kullanıyorsanız, Subversion'un (pratik olarak) hiçbir alt modül kavramı olmadığı için hiçbir problem yaşamayacaksınız. Aldırmaz.
Git, üretim sitesinin kodu için kullanıyorsanız, sitenin kod deposuna "her şeyi yapmak" için alt modülleri kullanmanız gerekir. Bu gibi bir şey klonlamak için modman kullandıktan sonra:
modman clone ssh://git@bitbucket.org/<user>/<repo>.git
Ayrıca bunun gibi bir alt modül olarak eklemek isteyeceksiniz:
git submodule add ssh://git@bitbucket.org/<user>/<repo>.git .modman/<repo>
Bunu yaptıktan sonra, .modman dizini ve .gitmodules dosyasını dizine ekleyebilmeli ve onaylayabilmelisiniz.
Modman aracılığıyla kurulan bu modülleri kullanan depoyu klonladıktan sonra, sadece alt modülleri yerleştirip güncelleyin:
git submodule init
git submodule update
PS Şimdi tüm yeni projelerde Git'i tam zamanlı olarak kullanıyorum, bu yüzden umarım bu gözetim bir daha gerçekleşmeyecek. Üzgünüm beyler. ;)