Neden kodu böyle bir yerde barındırıyorum?
Açık kaynak yazılım geliştirmenin kilit noktası kaynak kodunu paylaşmaktır. Bir web veya ftp sunucusuna tar / zip dosyaları koymak gibi bunu yapmanın birkaç yolu vardır. Google kodu (veya sourceforge.net, gitorious.org, bitbucket.org ve diğerleri) gibi hizmetler, bu amaçla kendi sunucularınızı çalıştırma ihtiyacını ortadan kaldırır.
Bu, sitemi mevcut barındırma durumumdan çıkarmak zorunda olduğum anlamına mı geliyor yoksa bu tamamen farklı bir hosting türü mi?
Bu hizmetler genel amaçlı web barındırıcıları değildir, ancak çok özel hizmetler çalıştırır. Bunlar bir ürünün ana sayfası değil, daha çok bir geliştirici gösterge panosu olmalıdır.
Google kodu ile
- bir wiki
- bir böcek avcısı
- düzenli dosya indirme alanı
- bir sürüm kontrol sunucusu
Tabii ki bu yazılımı normal bir web sunucusunda kurabilirsiniz (sürüm kontrolü işleri zor olabilir, ancak bu ayrıntılara çok bağlıdır), ancak bir geliştirme barındırıcısı kullanmanın ana yararı, dikkat etmeniz gerekmemesidir. bu sistemlerin sizin için. Ana dezavantajı, sunucuda hangi yazılımın kullanıldığı konusunda hiçbir kontrole sahip olmamanız, o ana bilgisayarda mevcut olanlarla yaşamak zorunda olmanızdır. Ayrıca hizmet işten çıkarsa ne olacağını da düşünmelisiniz (tamam, google asla başarısız olmaz) ve verileri mevcut ana bilgisayardan başka bir sunucuya veya kendi sunucunuza götürebiliyorsanız (yedeklemeleri düşünün).
Sitemi açık kaynak haline getirdiğimde ne olur, hangi haklara sahibim,
Yaşadığınız ülkenin yasalarına bağlı olduğu için bu zor bir sorudur.
hangi hakları vereceğim.
Bu, ürüne verdiğiniz lisansa bağlıdır. Kullanıcının kodla hiçbir şey yapamayacağı özel açık kaynaklı (PGP'yi düşünün), ölçeğin diğer ucunda herkesin istediği her şeyi yapabileceği kamu malı olabilir.
Nasıl çalışır, insanlar gelip bana ücretsiz kod atıyorlar mı?
Bunun olması pek olası değildir, çünkü ürününüzün diğer geliştiricileri çekmek için yeterli popülerliğe ihtiyacı vardır.
[...] ve şimdi bana projenin Git, Mercurial veya Subversion kodunu barındırmasını isteyip istemediğimi soruyor.
Bunlar, Subversion'un merkezi bir sistem olduğu üç farklı versiyon kontrol sistemidir, Git ve Mercurial dağıtılır.
Hangisinin kullanılacağı konusunda dini savaşlar var, ama asıl mesele birini kullanmak. Daha fazla bilgi için http://martinfowler.com/bliki/VersionControlTools.html adresine bakın.
Subversion ne zaman seçilir:
- Kolayca birleştirilemeyen ikili dosyalarınız var ve yıkımın desteklediği kilit-> değiştir-> taahhüt-> kilit açma iş akışına ihtiyacınız var¹
- Dizin yapısının yalnızca bir bölümüne göz atmanız gerekir.
C Merkür için bir kilit uzantısı var, ancak onunla ilgili hiçbir deneyimim yok ve kullanılabilir olup olmadığını söyleyemem.
Önceki özelliklere ihtiyacınız olmadığında Mercurial veya Git kullanmak daha iyidir. Her ikisi de Subversion'a göre aşağıdaki avantajlara sahiptir: