/Bağımsız geliştiriciler için sürüm kontrolü?
Bağımsız geliştiriciler için sürüm kontrolü?
Bağımsız bir geliştiriciyseniz sürüm kontrolünü kullanmaya değer mi ve neden öyleyse, neden? Depoyu kendi bilgisayarınızda mı yoksa yedek olarak kullanılabileceği başka bir yerde mi tutuyorsunuz?
16 Ara 2010 vedosity
Merkezi olmayan kaynak kontrolü kullanırsanız (Mercurial veya Git veya Bazaar ya da her neyse), bir indy olmanız durumunda kullanımı kolay, kullanışlı ve güçlü kılan SVN/CVS'ye göre avantajlar elde edersiniz:
Yerel olarak taahhüt ediyorsunuz: proje direktifiniz TAM geçmişe sahip repo. Böylece bir sunucunuz olması gerekmez, doğrudan depoya bağlı kalırsınız ve aynı bilgisayarda birkaç depoya sahip olabilirsiniz. Eşyalarınız üzerinde çalışmaya devam etmek için bazen açtığınız bir dizüstü bilgisayar mı kullanıyorsunuz? Harika! Bir sunucu kurmak zorunda değilsiniz ve daha sonra bir sunucuya ihtiyacınız varsa, kolay ve sadece depolar arasında değişiklikleri "itin" ve "çekin".
Deneyi kolaylaştırmak için yapılmıştır: genellikle kodu kirletmeden bir özellik hakkında fikir sahibi olmanız gerekir. SVN ve CVS ile zaten bir dallanma sistemi kullanabilir ve özellik olmasını istediğiniz kadar iyi değilse dalını fırlatabilirsiniz. Ancak özelliği gövde sürümü ile birleştirmek istiyorsanız, sürprizleri düzeltmek için çok zor olacaksınız. Git, Mercurial ve Bazaar (en azından) birleşmeleri ve şubeleri gerçekten kolaylaştırır. Hatta bir repoyu çoğaltabilir, bir süre üzerinde çalışabilir, yine de taahhüt edip öldürebilir veya isterseniz ana repodaki değişikliklerinizi itebilirsiniz.
Organizasyonun esnekliği: daha önce belirtildiği gibi, ihtiyacınız olduğu gibi düzenlediğiniz depolarınız olduğu için, tek başınıza başlamak ve kuruluşunuzu değiştirerek diğer kişilerin sizinle birlikte çalışmasına izin vermek kolaydır. Hiçbir organizasyon dayatılmadığından, onu kurmanız ve voilà yapmanız yeterlidir. Sık sık kendi bilgisayarlarım (dizüstü bilgisayar/masaüstü/sunucu) arasındaki değişiklikleri iter/çekerim ve geliştiricilerimde hala yalnızım. Mercurial kullanıyorum ve işimi çoğaltmama yardımcı oluyor, ancak dizüstü bilgisayarımda dışarıda düşündüğüm özellikler üzerinde çalışıyorum, ardından masaüstümdeki diğer özellikler üzerinde çalışmaya devam ediyorum, ardından dizüstü bilgisayarımdaki değişiklikleri masaüstümde veya sunucumda itin ve tüm masaüstünü birleştirin + dizüstü bilgisayar ve sunucuma koymak (yedekleme ve gelecekteki ekip çalışması repo olarak).
Yedeklemelerin ayarlanmasına yardımcı olur: merkezi bir repo oluşturursanız (halka açıksa GitHub'da veya BitBucket'teki özel bir repoda), bilgisayar her başlatıldığında yürütülecek bir komut dosyasını kolayca yazabilirsiniz ve daha sonra söz konusu komut dosyasını arkadaşlarınıza iletin, böylece çalışmanızın düzenli olarak otomatik olarak yedeklenmesini sağlar. Şimdi yaptığım şey işimi kaybetmenin kolay olmayacağından eminim.
Aslında, şu anda, herhangi bir proje için kontrol kaynağı aracı kullanmamak için hiçbir mazeretiniz yok. Çünkü eskisinden daha güçlü ve esnektirler ve ihtiyaçlarınıza göre ölçeklendirilirler.
16 Ara 2010 Klaim
kaynak kodu kontrolü bağımsız geliştiriciler için tamamen işe yaramaz, çünkü hepimizin bildiği gibi:
bağımsız geliştiriciler asla hata yapmaz
bağımsız geliştiriciler asla işe yaramayan revizyonlara devam etmez
bağımsız geliştiricilerin hiçbir zaman birden fazla sürümü yoktur, bu nedenle şubeler için hiçbir faydaları yoktur
bağımsız geliştiriciler dün veya geçen hafta neleri değiştirdiklerini hiç umursamıyorlar
bağımsız geliştiriciler asla, hiç yedeklemeye ihtiyaç duymaz
Bana "bağımlı geliştirici" deyin: Mercurial depoları masaüstüm, dizüstü bilgisayarlarım, USB yedekleme sürücülerim ve bitbucket.org arasında kolayca klonlanıyor. Bağımlı oldum ve bu şekilde beğendim!
17 Ara 2010 Steven A. Lowe
Yalnız bir geliştiriciyim ve kişisel projelerim için BitBucket ve Mercurial kullanıyorum. Kodunuzu geri alma ve çatallama yeteneğine sahip olmak, geçmek için çok iyi.
16 Ara 2010 Terence Ponce
Ben şahsen değer buluyorum. Projelerimin tümü git depolarına (bir donanım arızası durumunda birden fazla makinede sakladığım) kontrol edilir. En yararlı özellikler dallanmadır (böylece kod tabanımın yarısıyla karışan bir deney yapabilir ve kalıcı olarak bir şeyleri havaya uçurmaktan endişe etmeyeceğim) ve geri dönüyoruz (temelde sadece steroidleri geri alıyorum; düzenli geri alma aralığının dışında bir hata).
16 Ara 2010 Inaimathi
Evet. Çok faydalıdır. Arkadaşım Matt Gallagher yayınladı bu mükemmel makale birkaç gün önce bu konuda "Aşkla Kakao" iOS/MacOS geliştirme blog.
Makale Mac & Git merkezli ama temelleri kapsıyor.
Ayrıca aşağıdaki StackExchange Soruları (ve cevapları) ile de ilgilenebilirsiniz.
Yalnız bir geliştirici için bir dvcs kullanmanın avantajları var mı?
Yalnız bir geliştiriciye hangi araç teknikleri fayda sağlayabilir?
Yalnız bir geliştirici için Git.
16 Ara 2010 orj
Değer ?? Zorunlu! Kaynak Kontrolü'nü kullanmazsanız, kaynakları kontrol etmezsiniz ve bu kötüdür. Fark edemezsiniz, geri dönemezsiniz, değişiklikleri izleyemezsiniz - az önce girdiğiniz kukla hatayı bulmak için saatler harcarsınız. Yedeklenmiş bir sunucuda olması daha iyidir, ancak bilgisayarınızı da kullanabilir ve uygun bulduğunuz herhangi bir yedekleme yöntemini kullanabilirsiniz.
17 Ara 2010 Assimiz
Kesinlikle kaynak kontrolünü kullanın. Ardından bir yapı sunucusu kurun ve oluşturma ve test işlemlerinizi otomatikleştirin. Tetikleyici, merkezi deponuzun kaynak taahhütlerinden oluşur. Üç yıldır kendi kendime bu şekilde çalışıyorum ve bu harika.
17 Ara 2010 Dave Neeley
Tek bir geliştiricinin bile bazen kodlarının durumunu geçmiş bir revizyondan görmesi gerekir. Önemli olan her şeyi yedeklemek her zaman iyi bir fikirdir ve bu tüm insanlar için geçerlidir.
16 Ara 2010 whatsisname
Dallamayı solo bir geliştirici olarak kullanmanın avantajları nelerdir?
Git'i yalnızca yerel makinemde kullanmak makul mü?
Git ile sayısal bir sürüm şemasını nasıl elde edersiniz?
Nuget PACKAGE klasörünü sürüm kontrolüne dahil etmeli miyiz?
Küçük bir şirketin (15 geliştirici) yönetilen kaynak / sürüm kontrolünü kullanmaması olağandışı mıdır?
Git dokümantasyon ve proje yönetimi için kullanılmalı mı? Kod ayrı bir depoda olmalı mı?
kişisel (tek kişilik) projeler için git. Aşırı yükleme?
Sürüm yönetimi için github, şubeler ve otomatik sürümler nasıl kullanılır?
Taahhüt tarihi, kritik bilgileri geliştiricilere iletmek için kullanılmalı mıdır?
Kapalı kaynaklı projeler için sourceforge, github veya bitbucket gibi siteleri barındırmak ne kadar güvenli ve güvenilir?
Maven için bir Git havuzu yapılandırmanın en iyi yolu
En sevdiğiniz sürüm kontrol sistemleri hangileridir?
Neden herkes Git'i merkezi bir şekilde kullanıyor?
"Sık sık" birleştirmek veya yalnızca tamamlandıktan sonra büyük bir özellik dalını birleştirmek daha mı iyidir?
Git deposunda tek veya birden çok proje arasında seçim yapmak mı?
SVN, Git'ten daha iyi ne yapar?
Git dallanma ve etiketleme en iyi uygulamaları