Başkalarının aşağıdaki sorunu çözdüğü etkili yolları toplamaya çalışıyorum. İş yerinde, yalnızca belirli bir müşterinin görmesini istediğimiz bir yazılım yamasını (son kullanıcı sistemlerine yüklenecek) yayınlamak zorunda kaldık. Özel kod kendi kaynak denetim dalındadır. Sorun, senkronize olmasını sağlamak için iki paralel kod satırımız (ve komut dosyaları oluşturmamız) ve orijinal kodu her eklediğimizde müşteriye özel kodu yamalamamız ve test etmemiz gerekiyor.
Merak ediyorum, diğer kuruluşlar bu senaryoyu nasıl ele alıyor? Biz sadece teknik (kaynak kontrolü ile ilgili) çözümlere değil, iş çözümlerine de açığız . Örneğin, müşteriye o dalda güncelleme alamayacaklarını söylemekten bahsettik.
Dallanma stratejimiz şu şekildedir (bunun için Subversion'ı kullanmamıza rağmen , Visual Studio TFS Dallanma Kılavuzu'na dayanmaktadır )
svn
normal iş akışınızı karıştırmayacakları araçların dışında tutmalıdır. Düzeltme Eki Kuyrukları yararlı olabilecek gibi görünüyorsa, git-svn kullanarak deneyebilirsiniz veya hgsubversion deneyebilirsiniz . Zor bir iş akışını düzeltmek için bir DVCS ön ucu kullanmak svn
, insanları diğer tüm avantajları elde etmek için bir DVCS toptan satışına geçmeyi düşünmeye bile teşvik edebilir.
hg
yagit
da Patch Queues ( Mercurial Queues Extension veya Stacked Git ) kullanmaya bakmanızı önerebilirim ama TFS'nin benzer bir şeyi olup olmadığını bilmiyorum.