SourceSafe gerçekten güvenli midir?


27

Tüm sabahı bir şeyi kontrol etmeye çalışarak geçirdim. Artık birkaç günlük işimi kaybettiğimin farkındayım.

Daha önce de oldu - ve görünüşe göre SourceSafe ile sıkça karşılaşılıyor. SourceSafe sorunsuz, sorunsuz bir şekilde kullanılabilir mi, öyleyse nasıl?


40
Ah sevgili tanrım HAYIR ... bir daha asla!
Tim Post

27
SourceSafe'i şirketimden çıkarmak için çok uzun süredir mücadele ettim. Sonunda kazandı ve herkes bunun için daha mutlu.
Kevin D

13
VSS kullanan herhangi bir kuruluş kötü bir "org kokusu"
JoelFan

8
"Erken ve sık sık check-in" ifadesi. bu tür durumları önlemektir. Asla birkaç saatlik bir işten daha fazla kaybetmemelisin. Ancak, Iron Maiden VSS hakkında en iyisini söyledi: "Tepelere koş! Yaşamın için koş!"
Ryan Hayes,

3
Microsoft kullanmıyor. Neden yapmalıyız?
greyfade

Yanıtlar:


45

Benim düşüncem basittir, en kısa sürede başka bir şeye geçiş. Uzun sürmeyecek (1-2 hafta WAG) ve göç ne kadar sürerse sürsün, maliyetini yönetime haklı çıkarmak kolay. Geçmek için biraz zaman sağlam kaynak kontrolü ve çok az kaynak kodu kaybı şansına eşittir. Patronunuz şüpheci ise "kaynak güvenli korku hikayeleri" veya benzeri bir hızlı google arama yapın.


Doğru, ancak bazen teknik olmayan bir kişinin kaynak kontrolünü geçmesi için 1-2 hafta geçirmesi gerekmiyor.
t3mujin

2
@ t3mujin, "teknik borç" konulu tartışma konusuna bakın programmers.stackexchange.com/questions/18059/…
Nemi

SourceSafe kısa ve uzun vadeli üretkenliğiniz için aktif ve devam eden bir sorumluluktur. Herhangi bir sayıda modern, güvenli ve dağıtılmış versiyon kontrol sistemi ile kolayca değiştirilebilir. SourceSafe korku hikayeleri ve profesyonel rehberlik hakkında Google ile biraz araştırma yapın. SENİN DURUMUNA GÜÇLÜ OLUN. Ne gerekiyorsa yap.
Adam Crossland

3
@ t3mujin: proje bazında geçirir. Çalıştığım yerde, SourceSafe kullanıyorduk, şimdi TFS kullanıyoruz. Her şeyi (yüzlerce projeyi) geçirmek acı olurdu, bu nedenle, hala SourceSafe'de eski bir projede yapılacak işler için önce küçük bir zaman harcar, sonra çalışmaya başlarız.
Carson63000

@ Carson63000 Mevcut projelerin çoğu için TFS kullanıyoruz, ancak VSS üzerinde, hiç kimsenin TFS'ye geçişi ödemeyi istemediği çok az sayıda ancak güncellemeleri olan büyük bir kaynak tabanı var. Daha sık kullanan takımda değilim, bu yüzden arada bir kaç satır kod
koyabiliyorum

33

En kötü. SCM. Hiç.

SCM'de yanlış olan her şey VSS'de düzenlenmiştir. StarTeam bile Source Safe'ten daha iyidir. Source Safe, sürüm kontrol dünyasının Internet Explorer 1'idir: tamamen başka bir uygulama tarafından üstlenilmiştir.

Nasıl kullandım?

İşleri halletmek için tipik iş akışım

  1. Projeye göz atın
  2. Tüm dosyaları kilitle (Cehennemin kutsal kapılarını açan, kimseyle birleşmekten kaçınmak için)
  3. İşimi yaptım
  4. Her gün değişikliklerimi kontrol etti
  5. Hepsini tekrar kontrol edip entegrasyonla ilgili tüm sorunları düzelttim
  6. Tekrar kontrol ettim

Subversion ile karşılaştırıldığında, yukarıdakiler gülünçtür (yapıyı kırmadığınızı kontrol etmenin dışında).

Ekibimin programlama uygulamaları ile ilgili kısıtlamalar

Bunlar bizim için çalışmasını sağlamak için ekibin altında çalışması gereken kurallar. Kilometreniz değişebilir.

  1. Bir kişi yalnızca bir dosyayı düzenleyebilir (tatile giderse cennet size yardımcı olur)
  2. Dallanma, yönetilmesi çok zor
  3. Asla bir önceki revizyona geri dönme girişiminde bulunma

Ne yapılabilir?

Polarion, açık kaynak versiyon kontrolü için çoğu kurumda mevcut fiili standart olan Source Safe türlerinden Subversion'a (SVN) geçmek için iyi bir araç setine sahiptir . Subversion, bir sunucunun checkin'lere izin vermek için hazır olmasını zorunlu kılıyor (dağıtılmış çevrimdışı ekipler için tasarlanmış GIT veya Mercurial'ın aksine).


@David bana dosya revizyon tarihçeleri veya dallanma denemeye başlamamı sağladı (Yazarken ağlıyorum - hayatımın çok fazla boşa harcanan saati ...)
Gary Rowe

2
evet, şube ve birleşme iyi bir SCM'de pek eğlenceli değil. Kongre'nin insanları kaynakları güvenli bir şekilde yapmanıza izin vereceğini sanmıyorum.
BlackICE

2
Asla önceki bir sürüme geri dönme? Neden olmasın? Öyleyse, bir SCM aracını kullanmanın amacı nedir?
JoelFan

Eskiden VSS kullanan bir dükkandayken, eski bir sürüme dönmekte hiç sorun yaşamadık. Bu biraz aşırı görünüyor. Yine de dallanma konusunda seninleyim.
JohnFx

@JohnFx @SpashHit Ekibimiz ağrıya karşı çok düşük bir tolerans gösterdiği için belki de biraz tepesindeyim. Subversion ortaya çıktığında, güçlü bir ağırlık kaldırılmış gibiydi.
Gary Rowe,


11

Bir yıl kadar önce operasyondan çıkardık.

Birkaç kez oldu, önceki akşam kontrol ettiğim şey ertesi sabah orada değildi. Bunu eğlenceli bulmamıştım, çünkü işimi bitirmediğim gibi şüpheli görünüyordu. Şirkette yeni olduğum için benim için tehlikeli olabilirdi.

Biz TFS'ye geçtik ve o zamandan beri sorunsuz çalışıyor.


1
İşlemi kaldırmak için +1. Sen doğru olanı yaptın.
Gary Rowe

1
TFS güzel, güzel bir şey. Ödeecek param varsa, budur.
Adam Crossland

2
@Adam Crossland: Büyük bir pırlanta gibi güzel ve aynı fiyatla.
Orbling

1
@Orbling: iyi dedi.
Adam Crossland,

1
Kısaltmayı tanımayanlar için, TFS, Microsoft'un Team Foundation Server'ıdır .
Keith Thompson

9

Benim görüşüm?

Kullanımı daha kolay, kullanımı daha güvenli ve tamamen ücretsiz olanları var. Neden hiç kullanmıyorsun?

Bu, çok fazla seçeneğimiz olan bir gelişme alanıdır; çoğu veya tümü, VSS'den daha iyidir.


"çoğu" biraz rahatsız edicidir ... ya da başka bir deyişle: VSS'den daha kötü olan ne ?
Jürgen A. Erhard

@jae: Sadece hepsini kullanmadığımı belirten bir niteleyici olmalı ve bu nedenle VSS ile ilgili kalitelerini doğrulayamıyor; bu nedenle "ya da tümü"
Steven Evers

9

SourceSafe'i ticari bir operasyonda kullanmak, binayı parayı yakmakla ısıtmak gibidir.

2000 yılında, sekiz geliştirici şirketim VSS veritabanlarının günde ortalama iki kez bozulmasından dolayı verimliliğinin% 5-10'unu kaybetti. Sadece bu kadar düşüktü çünkü saatlik yedeklemeye gittik.

VSS'den Performance, svn ve git'e taşındığından beri hiçbir SCM veri tabanım bozulmadı.


7

Bu konuda cehenneme oy verebilirim, ama ..

alt metin

VSS etkili bir şekilde sizi uyuşturucuyla ilişkilendirir, şu anki işlenen deponuzun sizin suçunuz olmadığını anlamak için gereken herhangi bir gerçekliği uzlaştıramazsınız.

Lütfen, hiç kullanma.


Aşağı oy kullanma olasılığın yok. Tek eleştirim, siyanürün alışılmış VSS kullanıcıları için tercih edilen ilaç olduğu açık.
Orbling

7

yıllarca kullanıldı - zaten olduğu gibi varsayılan çözümdü. Beni birkaç kez ısırdıysa da, ataletin üstesinden gelmek zor

Daha sonra uzaktan VPN üzerinden kullanmak zorunda kaldım ve küçük check-in'ler bile bir iğne deliğinden tuğla doldurmak gibiydi . Değişen dosyaları manuel olarak bulmak, onları sıkıştırmak, e-postayla göndermek, kaynak kasası makinesine uzaktan kumanda etmek, açmak ve kaynak kasası makinesinden kodunu kontrol etmek daha hızlıydı.

Mercurial'a geçti. Tüm kaynak kod tabanını VPN'de bir dakikadan az bir sürede klonlayabilirim. Ve artık dallanmaktan korkmuyorum.

Asla geri dönmem.


Source Offsite bunun içindi. Bunu da iyi hatırlıyorum. Aslında kendi kaynak dışımdaki kopyasını kendim aldım, bu yüzden VPN üzerinden VSS yapmak zorunda kalmamıştım
BlackICE 19

Artık dallanmaktan korkmuyorum "için +1: olgun bir SCM'nin işareti
Gary Rowe

5

Bu bir berbatlık. Ama yine de hiç yoktan iyidir.


12
Tüm alternatiflerde, kullanımı haklı çıkarmak zordur, çünkü güneye gittiğinde, sahip olacağınız şey budur: Hiçbir şey.
DevSolo

13
İşini kaybetmene neden olursa, hiç yoktan daha iyi nasıl olabilir?
billy.bob

4
Hiçbir şey yapmadan işinizi de kaybedebilirsiniz, sourcesafe en azından bazen sizi kurtarabilir .
BlackICE,

4
@David - bu yüzden potansiyel olarak 'tehlikeli' bir şey yapmadan önce mantıklı yedeklemeler yapabilir. VSS'yi başarısızlıkla karşılaştıran tek şey MS BOB. VSS o kadar berbat ki, insanları tedavi etmeleri için onları tedavi etmek için bir hayır kurumu oluşturulmalı.
Tim Post

9
Hayır, hiç yoktan kötü. Çünkü eğer
ALSO'nuzun

5

Uzun zamandır (neredeyse 10 yıl), kişisel olarak herhangi bir sorun yaşamadan (kodumdaki çatışmalar ve benzeri şeylerden kaçınmak için oldukça iyi bir şekilde bölünmüş olma eğiliminde olmasına rağmen çalıştığım ekipler dahil) kullanılmadan kullandım.

Ancak, iyi, güvenilir açık kaynaklı alternatifler olduğunda onu kullanmaya devam edecek çok fazla veri kaybı öyküsü var.

Düzenleme: Yorumlardan mesajın karmaşık bir şeyden kaçınmadığı görülüyor (dallanma, birleşme, çatışmalar) ve muhtemelen sorun değilsiniz. Başka bir şey varsa ve riskli bölgeye giriyorsunuz.


Bir takımın içinde mi yoksa genel bir kod temeli içinde solo projelerde mi çalışıyordunuz?
Gary Rowe

Bir takım içerisinde, kod üssü, kimin üzerinde çalıştığı ve dolayısıyla nadiren çatışmalar olacak olan açısından oldukça iyi bir şekilde bölünmüş olmasına rağmen.
Jon Hopkins,

@Jon Bu sorunsuz çalışmayı açıklamak için uzun bir yol gidiyor.
Gary Rowe

1
Şimdiki tecrübelerim Jon'unkilerle aynı. 7 yıl, 8 kişilik ekip, VSS kullanırken sorun yok. Görünüşe göre (şanslı) azınlıktayız. Tüm hikayelere dayanarak bir daha kullanmayacağım (şimdi SVN kullanarak).
Steve Fallows,

1
Dallanma, birleşme ve uyuşmazlık çözümü karmaşık işlemler olarak kabul edilirse, muhtemelen yanlış sürüm kontrol sistemini kullanıyorsunuzdur ...
James

5

MS bile TFS lehine itiraz ediyor.

Visual Studio 6'da çalışan bir solo veya çok küçük bir dükkan veya daha eski bir şey için, hiçbir şey yapmadan fena ve daha iyidir. Bunun ne kadar kötü olduğu konusunda çok fazla abartı olduğunu düşünüyorum, ancak o zaman (bir nedenden ötürü) sizi bir ürüne vermek için değerli işlerinizi kaybetmenin sadece bir örneği gerekir. VSS'nin yerini aldı ve en azından SCM aracı kullanmayan pek çok geliştiriciyi alışkanlık haline getirmek için teşvik ediyorum, ancak pek çok teknoloji gibi, artık oldukça eski.


İnsanları SCM kullanmaya başlamaları iyi, tartışma yok. Ama ... VSS? Kötü deneyimler bir ürüne kötü bir isim veremez, bütün kategoriye kötü bir isim verebilir Veya: Kaç tane aygıt devri SCM'ye VSS ile başlıyor ve sonra VSS battığında "Vay be, bu SCM olayı beklediğim kadar kötü" diye düşündü? SCM'nin son derece kritik bir altyapı parçası olduğundan bahsetmiyorum , anlamı: böceklere izin verilmiyor (evet, biliyorum ...)
Jürgen A. Erhard

@jae bu benim deneyimim değildi. VSS, SCM'ye ilk maruz kalmamdı ve bir daha arkama bakmadım. Kullanırken YILLAR için herhangi bir veri kaybı, yolsuzluk veya herhangi bir sorun yaşamadım. Sonunda devam ettim, ancak önceden Visual Studio'yla önceden kurulmamış olsaydı, bir aracın entegrasyonunun daha uzun süreceğini düşünüyorum.
JohnFx

3

3 yıl kullandıktan sonra, oradaki daha gelişmiş / rasyonel alternatifler nedeniyle menajerime şikayette bulunup şikayette bulundum, VSS ile hiçbir zaman bir sorunum olmadı, ancak hiçbir zaman bir seçeneğim olmadı.

Benim görüşüme göre hem berbat hem de darbeler.

Bu konuda en sinir bozucu kısım, korkunç versiyonlama ve kafa karıştırıcı yetenek kabiliyeti değil, ancak dosya menüsündeki liste kutusu genişletmek için sağ ok tuşuna basmanıza izin vermiyor.

Gerçekten acı verici.


3

VSS hakkındaki görüşlerim? "VSS yeterliliği" talep ettikleri için birkaç iş teklifini reddettim (çok iyi ücretli). Ve burada aynı şeyi yapan birkaç kişi olduğundan eminim.


1
+1, bir iş ilanına "VSS yeterliliği" koymak, yalnızca şirketin VSS kullandığını değil, aynı zamanda VSS'nin çalışmasını sağlamak için orijinal VSS deneyimini gerektirecek kadar bozuk ve sorunlu olduğu bir düzene sahip olduklarının kesin bir işaretidir . tüm .
Carson63000 1010'da

1

Sadece kaynağın potansiyel yolsuzluk probleminden muzdarip değilsiniz (ki bunun yerine yönetim için yeterli bir argüman olması gerekir), aynı zamanda garip bir yedekleme ve farklı iş akışlarında bir ekip olarak etkili bir şekilde çalışamama konusunda da yaşamanız gerekir.

Başka bir SCM (başka bir tane) bulun ve dallanmanın ve birleşmenin ne kadar kolay olabileceğine bakın. 'Üretim' kodundaki bir hatayı düzeltmek için geri döndüğünüzde VSS çözümünüzden dosyaları kopyalamak ve bunları başka bir yerde tutmak zorunda kaldığınız zamanları düşünün.

Başlangıçlar için GIT'i kurun - VSS dosyalarınıza gelin ve GASP iki programcının aynı dosyanın farklı bölümlerinde çalışmasının AYNI ZAMANINDA ne kadar kolay olduğunu görün ve ardından yazılımın değişikliklerinizi akıllıca birleştirmesini sağlayın ... SCM araçlar kaynak yedeklemeden daha fazlası olmalıdır.


0

VSS hakkındaki görüşlerim? Düzenli olarak uzun süre kullandı (hala eski bileşenler için zaman zaman kullanılıyor) ancak ekibimiz için çok XX yüzyıldı:

  • Çok güvenilmez
  • Kullanılamaz dallar
  • Çok zayıf sürüm desteği, etiketleriniz var (ancak şubeler gibi) gerçekten kullanılamıyor

Yukarıdakilerin hepsine sahibim: waaaaay'in daha iyi açık kaynaklı alternatiflerinden birini (eski CVS'yi bile) seçin veya şirketinizde bir tür MSDN aboneliği varsa, TFS .


0
  • varsayılan kilitleme, geliştiricileri yavaşlatıyordu ve hiç kimse kurulumuyla uğraşmak istemiyordu.
  • örneğin bir proje yönetimi web uygulaması gibi diğer servislerle çok iyi bütünleşmiyor
  • planlı CI sunucumuz ile iyi çalışmayacaktı

Yeni 2010 Team Foundation malzemesinin çok yardımcı olması ve VSS'nin kötü kısımlarından uzak durmaya çalışması gerekiyordu. Fakat özünde hala VSS'ye dayanıyor , bu yüzden SVN'ye geçtik.

düzenleme - TFS'nin tamamen yeni olduğunu biliyorum, ancak test ederken sorduğum çok sayıda geliştiricinin buna benzer hisleri vardı. “Özünde” dememin sebebi, çözümümde yapılan ve VSS gibi görünen dosyalara baktığımı hatırlamamdı. Bu, geliştirici bakış açısından, belki de VSS, TFS veya başka bir SCM'nin arkasındaki teknolojiyi bile bilmiyordur. Herhangi bir karışıklık için özür dilerim.


Ne!?!? TFS,
VSS'ye

TFS sıfırdan yeniden yazıldı ... hiçbir şekilde VSS'ye güvenmiyor.
LeWoody

2
Visual Studio, TFS ve VSS için aynı SCC eklenti API'sini kullanır. Bu API için VSS değiştirdiğinizde VSS destekler ve buna bir VSS havası vardır herhangi başka kaynak kontrol sunucusunun, bu VSS hayalet hala yokmuş gibi hissedeceksiniz.
MatthewMartin

1
@LWoodyiii: Öyleyse bu kadar buharlı bir çöp yığınını iki kez kodlamayı nasıl başardılar? En azından VSS kaynak kodundaki yorumları okumuş olmalılar.
Robert S Ciaccio,

1
@CraigTP: çoğu geliştiricinin TFS'deki öğelere kesinlikle ihtiyacı yoktur. Sadece işlerini zorlaştıran gürültü. PM'ler ve liderler tüm bu işlevleri istiyorsa, geliştiricinin üretken olmak için kullanması gereken yazılımdan ayrılmalıdır.
Robert S Ciaccio,

0

O gün, XENIX'in altında SCCS'ye üzülmüştüm. VSS, Visual Studio 6'da, tüm başarısızlıkların ve sorunların kendine özgü avantajları vardı. Hala küçük projeler için kullanıyorum ve artık SCCS'yi herhangi bir sürümde kullanmıyorum.


0

Neden herkesin VSS'yi badmouth yapmak istediğini anlayamıyorum. VSS dağıtılmaz ve dağıtılmış sürüm kontrolü

  1. daha iyi
  2. Uygulamada dağıtık olmayan sürüm kontrolü sağlar

Lütfen okuyun bu .

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.