Yalnız ve küçük projelerle çalışırken bir tür sürüm kontrolü mü kullanıyorsunuz?


30

Çok sık kendim için küçük projeler üzerinde çalışıyorum. Bir makinede çalışıyorum, ancak son zamanlarda yine de bir çeşit sürüm kontrolü kullanmayı düşündüm. Bunun örneğin bazı faydaları olacaktır:

  • Yerel yedekleme için artık ilgilenmek zorunda değilim
  • Hatalar kolayca geri alınabilir
  • Tarih korunabilir

Ancak öte yandan, örneğin:

  • Ek kaynaklar gerekli
  • Kurulum zamanı, buna alışma, vb.

Deneyiminize göre, yalnız çalışırken revizyon kontrolünü kullanmak iyi bir şey midir?


İki kuruşum: Mercurial ve NetBeans kullanıyorum ve kullandığım VCS'nin en değerli kısmı (Mercurial) değişiklik yapabilme, değişiklikleri gözden geçirme ve bunları temizleme (işleme koyma) (bir anda veya tüm proje) boş zamanlarımda. (NetBeans'ın Mercurial ile çalışan grafiksel bir farkı vardır) Yaptığım şeyi idare etmeme yardımcı oluyor. Şirketimizin farklı bir geçmişi ve yedekleme sistemi var, bu yüzden genellikle bu amaçla kullanmıyorum.
Bryan Field

Yanıtlar:


46

Evet.

Tek gereken bir hata ve bunun için kendini tekmeleyeceksin. Ayrıca hangi sürüm kontrol sisteminin (VCS) kullanılacağını seçme pozisyonundasınız . Gelecekte bir geliştirme ekibinde çalışacak herhangi bir olasılık varsa, VCS ile kendinize uygulamalı bir deneyim yaşatmak için harika bir zaman. SVN ve Git (veya Mercurial) harika bir başlangıç ​​noktası olacak ve her VCS'deki temel komutları kavramak sadece birkaç saat sürecek.

Şimdi olumsuz noktaların nelerden kaynaklandığını ...

1) Ek kaynaklar gerekli

Gerekli olan tek kaynak disk alanıdır. Bu, toplam kodunuzun küçük bir yüzdesi ( Git'te X'ten küçük ) olduğundan , bunun bir sorun olacağını sanmıyorum. Herhangi bir paraya da mal olmaz.

2) Kurulum zamanı, buna alışmak, vb.

Bunu öğrenmek için zamana ihtiyaç olacak, ancak bunların her biri için sadece birkaç saat var (yukarıda belirtildiği gibi). Uzun vadede, size sonsuz miktarda zaman kazandırabilir (ve çok daha fazlası). Bir VCS'nin temellerine hakim olduktan sonra, aklınızdaki yerel yedeklemeyi yapmaktan çok daha az titiz olacaktır.


5
+1: Çok iyi puan. Ancak, svn'yi tavsiye etmem: İnternet'e bağlı olmadığında bazen güçlü bir kısıtlama olabilecek değişiklikler yapmasına izin vermez. Git'i (uzman kullanıcılar için) veya Mercurial'ı (daha basit bir sistem için) öneririm.
Eric O Lebigot

7
Mercurial için başka bir oy.
Chris Holmes

4
@ EOL, SubVersion bu durumda uygulanabilir. Depo yerelse, taahhütte bulunmak için internet bağlantısı gerekmez. (Her ne kadar havuzun en azından geliştirme sürücüsünden ayrı bir sürücüde olması gerektiğini öne sürmeme rağmen).
Ken Henderson

1
@EOL: Ah evet, Mercurial'ı eklemeyi unuttum çünkü daha önce kullanmadım; şimdi düzenleyeceğim. Git kullandıktan sonra SVN 'e dokunmam gerekmediyse SVN hala yaygın olarak kullanılıyor.
Jonathan Khoo

1
dropbox yerel bir repo @ken svn tek bir kullanıcı için idealdir
Martin Beckett

13

Evet. Her şey için kullanın. Word'de yazdığınız her belge için kullanın. Yazdığınız tüm kodlar için kullanın. Oluşturduğunuz her görüntü için kullanın.

Ayrıca, nasıl kullanılacağını öğrendikten sonra, bir ekip ortamında çalışırken daha iyi olursunuz.


4
Word ile ilgili tek sorun ikili formatta olmasıdır, bu yüzden yapamazsınız diff; LaTeX kullanmak için başka bir neden.
gablin

Görüntülerle kullanmanın amacı ne olurdu?
Rook

örneğin WinMerge Word ve Excel belgelerini
Simon

2
@Rook: görüntülerle kullanmanın amacı, bir görüntüyü düzenlerseniz, gerekirse eski sürüme geri dönebilmenizdir.
Alex D

9

Yalnız çalışırken Git'i kullanmayı seviyorum. Örneğin, PHP'de çalışırken, yerel dizinimde Apache'nin sunduğu bir Git deposunu hazırlıyorum. Yeni bir özellik üzerinde (dalda) kolayca çalışmaya başlayabilir ve yerel makinemde test edebilirim. Öyleyse, bir şey olursa ve "acil durum düzeltmesi" yapmam gerekiyorsa, bu kadar basit:

git checkout master

İşte bu kadar! Çalışma dizinim şubemden önceki durumuna geri döndü. Hızlı düzeltmeyi yapabilirim. İşim bittiğinde, şubeye geri dönüp gelişmeye devam edebilirim.

Öğrenme eğrisi çok dik değildir ve başlamanıza yardımcı olacak birçok bilgi vardır. İçine kaz. Buna değer.


Git, GitHub veya Gist ile birlikte solo projeler için harcanan çabaya değer. Sizi kendinizden korurlar ve başkalarının katılımı için hazır olduğunuzda yardım almanızı gerçekten kolaylaştırır.
Rob Allen,

5

Değişiklikler, kaynağınızı karıştırmadan değişikliklerinizi belgelemek için iyi bir yer sağlar.


2

SourceRepo gibi barındırılan bir şey için gidin. Çok pahalı değil, ancak kaynak kontrolünü kullanmak hataları geri almak ve kodu geri almak çok daha kolay.

Ve ihtiyacınız olursa, istediğiniz yere erişebilirsiniz.


4
şirket mülkünüzü harici sunuculara yükleme konusunda dikkatli olmak isteyebilirsiniz. Bazı şirketlerde sorun olabilir, ancak bazıları üzerinde kaşlarını çatabilir.
davidhaskins

1
Dikkatli olmak için iyi bir nokta. Submitter kendisi için projeler söyledi, bu yüzden kişisel kullanım için olduğunu varsaydım, ancak kesinlikle hat yöneticilerinin gitmeye karar verdiğiniz sistemin farkında olmalarını sağlayın (özellikle Cloud-fobic ise).
James Love

2

Gelişim için her zaman git'i kullandım, başka şeyler için de kullanabileceğimi fark edene kadar. Öyleyse git git, bir sunucuya ve sürekli bir bağlantıya ihtiyaç duymadan size gerçek bir depo sunar (bu benim için büyük bir artı); projenizin alt dizinlerini gizli dosya ve klasörlerle yaymaz, bunun yerine projenin üstünde sadece bir klasör bulunur; herşeyi atabilir ve istediğiniz herhangi bir şeyi klonlayabilir ve yeniden çalışmasını sağlayabilirsiniz.


2

Ücretsiz arıyorsanız ve kapalı kaynak desteği için Visual Studio Online’a iyi bakarım. 5 deve kadar ücretsiz ve tek başına olmak ... peki ... evet. Bu 4 yıl sonra bir yazıdır, bu nedenle durumunuz muhtemelen değişmiştir, ancak kaynak kodumu göstermek istemiyorsam VSO kolay kaynak kontrolü arayan diğer kişisel aygıtlar için en sevdiğim seçeneklerden biridir. IIRC Github sadece açık kaynaklı ürünler için ücretsizdir, ancak fiyatları çok ucuzdur. Hem VSO hem de Github, Visual Studio ile çok iyi bütünleşir, eğer bu sizin IDE tercihiniz olursa.


Ve VSO şimdi Git'i destekliyor! Hoşçakal topaklı yaşlı TFVC!
RubberDuck

1

Her zaman kendi projelerim için kaynak kontrolünü, sürekli bir entegrasyon ortamının yanı sıra, her giriş yaptığımda birim test / çalıştır entegrasyon kontrolleri oluşturmak / çalıştırmak için bir kontrol ortamı oluşturdum. yanı sıra. Kendimi bu yöntemi kullanarak hata ayıklamak ve dağıtmak için sayısız saatten kurtardım ve başlangıçta ayarlamaya kıyasla hiçbir şeyim yok.


1

Depolarla ilgili gerçekten harika bir özellik, başka bir dalda gerçekten riskli deneyler / özellikler yapabilmenizdir. Eğer işe yaramazsa, ana kodunuzun bir parçası olarak birleştirebilirsiniz. Olmazsa veya zamanınız tükenirse, o zaman bırakabilirsiniz (kaydedilmiş) ve daha sonra ana kod tabanınızı karıştırmadan geri dönmek seçeneği ile ana kodunuza geri dönebilirsiniz.

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.