SVN stil dışı mı? [kapalı]


9

Visual Source Safe'den SVN'ye geçmemden sadece birkaç yıl geçti. Ve benim için SVN hala "WOW! Çok fazla şey yapabilirim! SVN çok havalı!"

Ama etrafımdaki birçok insan "SVN? Gerçekten mi? Meh ..."

Ve endişelendiğim birçoğu var. Ekibimi Git / Mercurial'a veya başka süslü bir şeye taşımalıyım? Kulağa saçma geldiğimi biliyorum ve bariz cevap "SİZİN için uygun olanlarla kalmak" olacaktır. SVN benim için çalışıyor ... Ama depomda yeni bir proje yarattığımda kendime sormaya devam ediyorum - taşınmanın zamanı gelmiş olabilir mi?

Öyleyse ... SVN gerçekten bu kadar kötü mü? Buna bağlı kalarak büyük bir fırsatı kaçırıyor muyum?



Bağımsız bir geliştirici misiniz?
TeaDrinkingGeek

6
Her zaman GIT kullandım. Şimdi SVN'yi iş yerinde kullanmalıyım .... ... ... ... ... ... ... RAGE.
Ivo Wetzel

@TeaDrinkingGeek: OP, "Ekibimi taşımalıyım ..." diyor, bu yüzden sadece OP'den daha fazlası olduğunu tahmin ediyorum (bir takımdan oluşan bir takımı saymazsanız - ancak genellikle "ekibim" olarak adlandırılmaz) ).
SinirliWithFormsDesigner

lol üzgünüm dostum, gözler dizüstü bilgisayarda 12 saat sonra biraz bulanık. :)
TeaDrinkingGeek

Yanıtlar:


8

Tamamen kullanıma bağlıdır.

Bir odada bir takım ekibiniz varsa ve işlerinin çoğunu orada yapıyorlarsa, zaten sevdiğiniz bir oluşturma ve dağıtma süreciniz varsa ve kodunuzu geniş çapta insanlarla paylaşmak istemiyorsanız ( açık kaynak projesi), o zaman terlememelisiniz.

Belki bir yıl önce Subversion'dan git'e geçtim. Git, çoğunlukla yerel kullanım durumu için de yeterli, ancak gerçekten parladığı yerde dağıtılmış geliştirme. Yerel olarak kullanıldığında, uzaktan yedekleme ve koda hoş bir web arayüzü olarak github'a sahip olmak güzel ve yüklenicilerin katılmasına izin vermemi kolaylaştırıyor. Ama Subversion'dan elde edemediğim için bundan çok fazla çıkmıyorum.


8

Sürekli hipes akışında süpürülmeyin. Çalışan bir şey var, başka bir şeyle daha iyi karşılanan bir iş gereksinimi olana kadar kullanmaya devam edin (hayır, her yeni ayda bir parlak yeni kaynak kontrol sistemi veya programlama dili, "yeni ve geliştirilmiş" bir şey hiperlendiğinde, gitmiyor iş gereksinimlerinizi şu anda kullandığınızdan daha iyi karşılamak için).

SVN kuruluşunuz için çalışıyorsa, başka bir şeye geçmek için gereken parayı / zamanı / çabayı yatırmak için hiçbir neden yoktur, ancak bazı insanlar yeni ve parlak olduğu için isterler.

Ve hayır, bu (JBK'nın düşündüğü gibi) “takıma” kadar olması gereken bir karar değil, tüm ilgili taraflarla (en azından sistem yöneticilerinizi de içeren) danıştıktan sonra yönetime bağlı bir karardır. Teknik bir karar değil, teknoloji yığınınızı değiştirmek için para harcamak bir iş kararıdır.


Mümkünse seni milyonlarca kez vurabilirdim.
HLGEM

5

Asla cehaletten karar vermemesi gerektiğine inanıyorum. Neyi kaçırdığınızı bilmiyorsanız, gidene kadar dışarı çıkmayı denemelisiniz, o zaman bilinçli bir karar verebilirsiniz. Dağıtılmış kontrole atlamak, denemeden ve bunu yaparken bazı eski alışkanlıkları bırakmadan gerçekten anlaşılamaz. DVCS'nin gücünün çoğu, herhangi bir nedenle, istediğiniz kadar dal oluşturabilmenizdir. Bir ay boyunca denerseniz ve en az 5 şube oluşturmadıysanız, kendi şartlarına göre test etmediniz. Git gitmeyenlerin çoğunun hatası budur. Bundan sonra, svn'ye geri dönerseniz, en azından kendinizin nedenlerini bileceksiniz.


5
Göreceli cehaletten çoğu karar almayı şiddetle tavsiye ediyorum. Git'i denemesinin bir ay sürmesini öneriyorsun. Bu gerçek iş. Bunu sadece durumunun daha iyi hale getireceğine inanmak için bir neden varsa yapmalıdır. Aksi takdirde, muhtemelen onun deney ayını geçirmesi gereken başka bir şey daha var. Örneğin, redis veya mongo veya raylar veya node.js veya BDD, aynı derecede sıcak yeni şeylerden herhangi birini.
William Pietri

Ama Git olan yeni sıcak bir şey. Birçok Git kullanıcısının deneyimi, durumunun çok daha iyi hale geleceğini gösteriyor .
Kyralessa

3

Git'i kullanmadım, ama Mercurial'ı kullandım ve gerçekten büyük anlaşmanın ne olduğunu göremiyorum. Check-in ve check-out gibi temel şeylerin daha karmaşık olması dışında (SVN gibi) çok fazla hissettirir (bir yerine iki adım gerektirir). Buna karşılık, aslında çok daha basit yapmak için hiç ihtiyaç duymadığım çok daha gelişmiş şeyler yapmak gerekiyordu. DVCS'nin bir şekilde doğal olarak üstün olduğu iddialarına tepkim temel olarak "Tamam, elbette, sözünü alacağım" ve sonra benim için iyi çalışan SVN ile devam ediyorum.


DVCS ile ilgili büyük anlaşma, tüm işlerinizi "çevrimdışı" yapabilmenizdir. Bu özellik, DVCS'nin yeniden basma ve dallanma ile başa çıkabilen güçlü bir birleştirme mekanizmasına sahip olma zorunluluğunu getirir; merkezi bir VCS ile mümkün olmayan görevler. İnsanların iddia ettiği üstünlük, teknik üstünlükten ziyade etkin iş akışlarından gelir . Bu tür bir iş akışını kullanmıyorsanız veya buna ihtiyacınız yoksa, bu da iyidir.
Şubat

1
Bu çünkü DVCS'de check-out ve checkout mevcut değil. Hg'yi, kullanılması gerektiği şekilde hg kullanmak yerine SVN'nin yerine kullanıyorsunuz. Aynısı herhangi bir DVCS için de geçerlidir.
alternatif

@Mathepic: İsterseniz adı değiştirebilirsiniz, ancak yerel çalışma kopyası ile resmi depo arasında veri aktarmanın temel konsepti herhangi bir kaynak kontrol sisteminde bulunur.
Mason Wheeler

1
hayır değil. Bir DVCS'de böyle bir işlem yoktur.
alternatif

3
evet var - 'ana' versiyonu itmek için merkezi bir repo noktası, yedekleme, yapı sunucusu, sürüm yönetimi veya takımlar arasında daha iyi koordine etmenin çok geçerli bir kullanım şeklidir.
gbjbaanb

-2

Buradaki açık cevap, ekibin, herkes için en iyi seçeneğin ne olduğuna dair karar vermesine ve tartışmasına izin vermek, böylece çekimleri boşlukta çağıran biri değil. Ele alınması gereken çeşitli görüşler ve endişeler olabilir, ancak ne kullanılacağı konusunda diktatör olmaya çalışmak yerine fikir birliği cevabını tercih etmeyi tercih ederim.


3
Yeni bir sistemde yeni birisi mevcut kodu dönüştürürken bir hata yaparsa, bir kaynak kontrol sisteminden diğerine geçiş yapma maliyetinin maliyeti hakkında bir fikriniz var mı? Bu bir ekip kararı DEĞİLDİR, bu bir ticari karardır ve yalnızca mevcut sisteminizin karşılayamayacağı gerçek ihtiyaçlarınız varsa üstlenilmelidir.
HLGEM
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.