Çok küçük boyutlu (2-5 diyelim) yeni bir takımı önyükliyoruz, sorum şu: merkezi veya dağıtılmış bu tür ekipler için hangi tür sürüm kontrolünün en iyi sonucu verdiğini.
Çok küçük boyutlu (2-5 diyelim) yeni bir takımı önyükliyoruz, sorum şu: merkezi veya dağıtılmış bu tür ekipler için hangi tür sürüm kontrolünün en iyi sonucu verdiğini.
Yanıtlar:
Tamamen dağıtıldığında, IMHO'nun merkezileştirilmesinin gerçekten bir anlamı yok, özellikle ekip gelişimi hakkında konuşuyorsanız.
Mercurial için başka bir oy, pencereler altında kurulum zorluğu yok ve bitbucket.org sınırsız alana sahip ücretsiz depolara (özel olabilir) sahiptir.
Açık kaynaklı bir proje üzerinde çalışmayı planlıyorsanız, git ve Github daha yeterli / popüler görünüyor. Ancak, DVCS'lere girmediyseniz, Mercurial ve bu harika kılavuzla başlamanızı tavsiye ederim .
hepinizin tutarlı bir şekilde kullanacağınız
[şahsen Mercurial'ı seviyorum]
Muhtemelen en iyi cevap "ne olursa olsun rahattır". Kişisel eşyalarda çalışırken bile Git'i kullanıyorum. Hem yukarı hem de aşağı ölçeklendirme konusunda oldukça iyi bir iş çıkarmış gibi görünüyor ve Mercurial ile olan sınırlı deneyimim hemen hemen aynı.
Bence rahat ettiğiniz her şeyi seçmelisiniz. Küçük bir ekipte, farklı kod ağaçlarına (Linux çekirdeği gibi) sahip olmayacaksınız, bu nedenle merkezi bir depo tamam. Ancak bu kurulumu dağıtılmış VCS ile de yapabilirsiniz. Bu yüzden popülerlik ve kişisel deneyim ile giderdim. Popüler olanlar SVN, git ve Mercurial'dır. Hangisinin ekibinizle en iyi kullanılacağına karar vermelisiniz (seçtiğiniz IDE'deki deneyim, araç desteği vb.).
Gerçekten, geliştiricilerinizin çok fazla kod geliştirip geliştirmeyeceklerine bağlı değil, ancak yalnızca dağıtılmış veya merkezi bir havuz arasında seçim yapacaksınız, çünkü bu karar vermeniz gereken ilk şey. Ardından, merkezi bir yaklaşımın SVN'den daha iyi çalıştığına karar verirseniz, ihtiyacınız olan tek şey budur. Diğer taraftan git için gitmekten daha dağıtılmış bir yaklaşıma giderseniz, pencerelerde bile artık kaplumbağa git'e (svn için de aynı arabirim) sahip olduğunuzdan yeterince iyi. Ayrıca, IDE desteğine çok fazla güvenmeyin, çünkü bunu kullanırsanız kötü bir sürpriz yaşayabilirsiniz ve taahhüt edilmemesi gereken dosyaların sizin adınıza IDE tarafından işlendiğini görebilirsiniz.
Ekibinize sorun, eğer birileri bununla ilgilenmek istiyorsa. Hiçbiri umursamadığında iyi bir sistemden daha istikrarlı bir sisteme ve sorumlu kişiye sahip olmak ve onu yedeklemeden geri yükleyememek çok daha iyidir.
Böyle bir kişi varsa - ne kullanacağını zaten bilecek, bu yüzden kararını kabul et. Değilse - barındırılan bir çözüm alın. Tüm geliştiriciler Shell / Linux'a hiç dokunmadıysa, GIT'i (en iyilerden biri) deneyin çok aptalca olurdu.
Ayrıca, okuma / katkıda bulunma ihtiyacı olan "teknik olmayan" kişilerin sayısına da bağlıdır. Sadece kullanabileceklerinden ve mevcut araçlar olduğundan emin olun.
SVN, araçlarda yaygın olarak desteklenmektedir. Takım anahtardır; farklı insanların farklı beceri setleri olacak. Bazıları komut satırını, bazıları IDE tabanlı araçları, bazıları ise grafiksel araçları tercih eder. Şu anda SVN en çok desteklenen araç olarak görünmektedir.
Mercurial veya Git dışında.
Bence küçük şirketlerde bazı şeylerin merkezileştirildiği iddiası var. (Örneğin, tesis dışı yedekleme düşünün. Bir proje üzerinde yalnızca 2 kişi çalışıyor ve aynı binada konut barındırıyorsa ve bir yangın olduğunda, iki bilgisayarın hepsine dağıtılmış yeterli olmayabilir.)
Ancak: kısmen merkezi bir çözüme sahip olmak sizi merkezi bir sistemle sınırlamaz. Sadece git veya mercurial gibi bir dış sunucuya itebilirsiniz.