GitHub vs Bitbucket: Geliştirme Ekibiniz için Hangisi Doğru?
Yayınlanan: 2019-04-10Ekibiniz için doğru kaynak kontrol platformunu seçmek, vereceğiniz en önemli kararlardan biridir. Sürüm kontrol yazılımının (VCS) kendisi için Git'i seçme şansınız yüksektir, ancak kodun bulunduğu platform da aynı derecede önemlidir. Çoğu zaman, Bitbucket ve GitHub'a gelir. Yıllar geçtikçe ikisi güçlü topluluklar ve kullanıcı tabanları geliştirdi. Bu yazıda, geliştirme ekibinizin ihtiyaçlarına hangisinin daha iyi hizmet edeceğini görmek için her iki platforma da bakmak istiyoruz.
GitHub ve Bitbucket: Temel Bilgiler
Git, GitHub ve Bitbucket'te tamamen yeniyseniz, Git'e yeni başlayanlar için kılavuzumuza bir göz atmak isteyebilirsiniz. Temel bilgilerde size yol gösterecek ve bu makalede neler olup bittiğini anlamanız için sizi hazırlayacaktır.
Bunu GitHub ve Bitbucket arasındaki en temel ve temel farka indirgerseniz, şudur: GitHub genel koda odaklanır ve Bitbucket özel içindir. Temel olarak, GitHub büyük bir açık kaynak topluluğuna sahiptir ve Bitbucket çoğunlukla kurumsal ve ticari kullanıcılara sahip olma eğilimindedir.
Bu, GitHub'da özel bir deponuz olamayacağı anlamına gelmez (olabilir). Veya kodunuzu Bitbucket'te herkese açık olarak yayınlayamazsınız (yine yapabilirsiniz). Ancak, kullanıcıların çoğu bunu yapmıyor. Ayrıca, varsayılanlar da bu şekilde ayarlanır: sırasıyla genel ve özel depolar.
Bu farkın dışında, iki platform çok benzer şekilde çalışır. Web sitesi veya komut satırı aracılığıyla depolar oluşturabilir ve yönetebilir, iki faktörlü kimlik doğrulama (2FA) ile oturum açabilir, ortak çalışanları davet edebilir, sorunları ve tartışmaları açabilir, çekme istekleri oluşturabilir/birleştirebilir ve genellikle ihtiyacınız olan tüm temel şeyleri halledebilirsiniz. internet sitesi. Bu şekilde çok benzerler. Bununla birlikte, mümkün olan en bilinçli kararı verebilmeniz için her platformun özelliklerini inceleyelim.
bitbucket

Bitbucket bir Atlassian ürünü olduğu için (Trello ve diğer uygulamaların yapımcıları), giriş yaptığınız andan itibaren şık ve temiz bir arayüze sahip olursunuz. yazılım geliştirme. Nasıl olduğunu görelim.
1. Sadece Git Değil

GitHub, açıkçası, git sürüm kontrolü için bir merkezdir. BitBucket ise git'ten fazlasını destekler. Depolarınızı başka bir popüler sürüm kontrol yönetim sistemi olan Mercurial'da da takip edebilirsiniz. Başka bir büyük sistem olan SVN'yi desteklemiyor, ancak en azından Bitbucket ile bir seçeneğiniz var.
2. Arayüz

Bitbucket'in web sitesini kullanmak sadece harika. Kolay ve basittir ve her zaman neler olduğunu bilirsiniz. GitHub'ın web sitesi çalışıyor, ancak belirli şeyleri başarmak için ne yapmanız gerektiği her zaman net değil. Bu, Bitbucket ile nadiren olur. Bir kenar çubuğu size nerede olduğunuzu ve neler yapabileceğinizi açıkça söyler. Bu, web sitesinin yalnızca grafik tarafıdır - komut satırı üzerinden eriştiğinizde her ikisi de aynı git komutlarını kullanır.
4. Masaüstü İstemcisi

Atlassian'ın Bitbucket'inde şaşırtıcı bir şekilde bulunmayan bir alan bir masaüstü istemcisidir (GitHub yine de bir tane yapar). Birçok kullanıcı varsayılan olarak komut satırı arayüzünü ve yazılım sürümünüz üzerinde sağladığı ince kontrolü tercih ederken, bir git uygulamasının hissini ve etkileşimini gerçekten seven birçok kişi var. Bitbucket ile giderseniz, birinci taraf değil, Sourcetree adlı açık kaynaklı bir program alırsınız.
Sourcetree iyi bir şey. Çalışıyor, sorunsuz ve ücretsiz. Atlassian başaramamış olabilir, ama bunun bir önemi yok. Ne olursa olsun, ne GitHub'ın istemcisi ne de Sourcetree, ondan geliyorsanız CLI kadar sağlam hissetmez. Bununla birlikte, yeni insanları git ile tanıştırmak ve onları biraz daha az korkutmak için iyi bir yoldur.
5. Wikiler ve Panolar
Bir proje wikisine sahip olmak delicesine faydalıdır. Ekibiniz bunu yalnızca geliştirme sırasında dahili notlar için kullanmakla kalmaz, aynı zamanda yayın sonrası dokümantasyon kaynağı olarak halka da açılabilir. Bitbucket ile her deponun bir wiki'si olabilir. Tek yapmanız gereken onu etkinleştirmek ve tıpkı deponun geri kalanını yaptığınız gibi kontrol edebilirsiniz.

Ek olarak, birçok geliştirme ekibi proje yönetimi için Kanban panolarını kullanır. GitHub, varsayılan olarak bir Panolar sekmesi sunar ve Bitbucket yoktur. Bununla birlikte, yaptıkları şey, Trello hesabınızı bir havuza bağlamanıza izin vermektir, böylece bu hizmeti web sitesi panosunda kullanabilirsiniz. Halihazırda sahip olduğunuz Trello panosunu gömer veya yeni bir tane oluşturabilirsiniz.

Atlassian ayrıca projeniz için çeşitli entegrasyonlar kurmak için arayabileceğiniz sağlam bir uygulama pazarına sahiptir. Bu tür bir şeye ihtiyacınız olabilir veya olmayabilir, ancak orada olduğunu bilmek güzel.
6. Şube İzinleri
Ve son olarak, şube izinleri. Bitbucket ile herhangi bir dalda kimin çalışabileceğini seçebilirsiniz. Karen'a depoya erişim izni vermek yerine, onun yalnızca tek bir şubeye erişmesine izin verebilirsiniz. Bu şekilde, yanlışlıkla bir ana itme korkusu ortadan kalkar. Bu özellik çok büyük ve ücretsiz planlarında bile Bitbucket'te standart. Büyük bir ekibiniz varsa ve özellikleri, hata düzeltmelerini, sürümleri, betaları ve projenin farklı yönlerini hassas bir şekilde yönetmeniz gerekiyorsa.
GitHub

GitHub'a geçerken, muhtemelen GitHub'ın açık ara en büyük pazar payına sahip hizmet olduğunu belirtmeliyiz. Aslında, geçen yıl Microsoft tarafından satın alındı, bu da insanların platformdan – esas olarak Bitbucket'e – göç etmesine neden oldu. Ancak bu süre zarfında Microsoft, ister özel, ister dahili kod veya açık kaynaklı çalışma olsun, çoğu geliştiricinin günlük çalışmalarını etkilemedi.

1. Arayüz

Bitbucket'in arayüzü ile başladığımıza göre, aynı yerden GitHub ile başlayalım. İşlevsel ve işe yarıyor. Başka ne söylenmesi gerekiyor? Mutlaka güzel değil, ama stil olarak eksik olan şeyi saf kullanışlılıkla telafi ediyor. GitHub kullanıcılarının çoğunluğu komut satırı üzerinden çalışırken, web sitesinin estetiği gerçekten deneme aşamasında değil. Ama bazı şeyler için oldukça düzenli kullanıyorsunuz ve işe yarıyor ve asla kafa karıştırıcı değil, ama her zaman tam olarak basit de değil.
2. Masaüstü İstemcisi

GitHub kendi masaüstü istemcisini sunuyor. Estetik ve kullanım kolaylığı açısından, istemci Bitbucket'in web arayüzünün neye benzediğine çok daha uygundur. Sourcetree'de olduğu gibi, GitHub istemcisi, komut satırını sevmeyen, ancak ileri düzey bir kullanıcıysanız veya ana komutlardan biri olmayan çok özel bir komuta ihtiyacınız varsa (çek, it, ekle) insanları git'e alıştırmak için harikadır. , taahhüt, ödeme, vb.), her iki istemcinin de eksik olduğunu bulma ihtimaliniz yüksektir. Bununla birlikte, GitHub istemcisi hafiftir ve yapması gerekeni yapar.
3. Ücretsiz Özel Depolar
Eskiden Bitbucket'in en güçlü satış noktası olan GitHub artık sınırsız ücretsiz özel depo sunuyor. Önceden, yalnızca genel depolar ücretsiz olarak oluşturulabiliyordu ve özel depolar yalnızca ücretli üyeler içindi. Ancak şimdi, tamamen ücretsiz olarak istediğiniz kadar oluşturabilirsiniz. Bununla birlikte, yakalama, depoya yalnızca 3 katılımcıya sahip olmanızdır (kendinizi saymazsınız). Yani büyük bir takımdaysanız, ne olursa olsun ödeme yapacaksınız.
Ancak hobiler, kodlarını birisiyle paylaşması gereken ancak herkese açık olamayan insanlar ve daha küçük projeler için sınırsız ücretsiz repo, bu dahil edilmeden önce çok acı verici bir yokluk olan GitHub'a inanılmaz bir ektir.
4. Wikiler ve Panolar

Yukarıda bahsedildiği gibi, Atlassian'ın Trello'ya sahip olması onlara doğrudan Bitbucket ile entegre olabilmeleri nedeniyle küçük bir avantaj sağlıyor. Ancak GitHub, Projeler sekmesinde yerleşik bir Kanban çözümüne sahiptir. Oluşturduğunuz her Proje kendi panosudur ve GitHub'ın uzun vadede Trello kadar zengin özelliklere sahip olmamasına rağmen, her kartta ihtiyacınız olan her şeyi biçimlendirmek için işaretlemeyi kullanabileceğiniz için burada birçok planlama ve belgeleme yapılabilir.

GitHub'ın Bitbucket için sahip olduğu bir zayıflık, özel depoların bir wiki'ye sahip olamamasıdır. Pekala, bunu yeniden ifade edelim: ücretsiz, özel depoların wiki'si olamaz . Ücretsiz, herkese açık bir deponuz varsa, bir wiki'niz olabilir. Ödeme yapan bir üyeyseniz, özel depolarınız wiki erişimine sahip olabilir. Bu, birçok insan için bir anlaşma kırıcı olmasa da, BeniOku, Proje panoları ve Sorunların belge işlevi görmesi için bazı hileli adımlardan geçmeniz gerektiğinde biraz can sıkıcı olabilir.
5. Yüksek Depolama Sınırı
Önce şunu söyleyelim: git bir yedekleme aracı değildir . Git'i çevrimiçi depolama veya yedekleme için kullanmazsınız. Bunun için verimsizdir ve sunucuları ve bilgisayarlarınızı tıkar. Bununla birlikte, çok sayıda taahhüt, itme ve dallanma aldığınızda, deponuz ciddi bir yığın toplamaya başlayabilir.
GitHub'ın bir avantajı, bu depolama alanı için ücret almamanızdır. Ücretsiz bir planda bile. GitHub depolarında 100 gigabaytlık sabit bir sınır vardır, ancak 1 gb'nin altında olmasını önermelerine rağmen (ki çoğu öyle olacaktır). Dosya yüklemeleri, komut satırı için 100mb ve web yüklemeleri için 25mb ile sınırlıdır.
Bitbucket, yine de, yalnızca ücretsiz kullanıcılara toplam 1 gb izin verir. 1 gb'ın altında tutmanızı istemek ve 75'e ulaştığınızda (ki bu çok geniş bir aralık ve garip bir seçimdir) size e-posta göndermek yerine, Atlassian sizi 1 + gb'de ücretli planlara itiyor.
Şimdi, bu repo başına 1 gb'dir , böylece ücretsiz olarak birden fazla repoya sahip olabilirsiniz. Ancak GitHub ile bunun için endişelenmenize gerek yok. Her ikisi de büyük dosya çözümleri sunar (Bitbucket burada ve GitHub burada).
GitHub vs Bitbucket: Kazanan mı?
Bir tane olduğunu düşünmüyorum. Hizmetler kesinlikle onlara farklı bir his veriyor ve kesinlikle farklı demografikleri hedefliyor olsa da, Bitbucket ve GitHub'a gitseniz de iyi hizmet alacak ve işinizi yapacaksınız.
Sonunda, seçiminizde yanlış gitmeyeceksiniz. Küçük bir geliştirme ekibiyseniz, ikisi de sizin için neredeyse aynı şekilde çalışacaktır. Ancak git konusunda yeniyseniz, Bitbucket biraz daha bağışlayıcıdır ve iş akışını öğrenirken kullanımı kolaydır. Açık kaynak geliştirme ile ilgileniyorsanız, GitHub bunun için ana merkezdir.
İş çözümleri açısından… bu bir savurganlık. Ücretli planlar oldukça benzer. Bu konuda herhangi bir tavsiyede bulunmak zor. Bitbucket, ticari müşterilerde uzmanlaşmıştır ve Atlassian'ın genel paketi aracılığıyla hepsi bir arada bir çözüm sunar, ancak GitHub açık kaynak kodlu ve genel kodda ana platformdur, şirketiniz buna dahilse, gitmenin yolu olabilir. .
Gerçekte, size ve kaynak kontrol ihtiyaçlarınıza hizmet etmek için de kötü bir seçim değildir. Dürüst olmak gerekirse, ikisiyle de yanlış gidemezsin.
Siz ve ekibiniz hangi sürüm kontrol yazılımını ve platformunu tercih ediyorsunuz? Yorumlarda nedenini bize bildirin!
Makale, Teguh Jati Prasetyo / Shutterstock.com tarafından hazırlanan görseli içeriyor
