Kendi sunucumda Github'a nasıl sahip olabilirim?


99

Kendi yerel sunucunuz için Github gibi bir şey var mı? Bir PHP betiği veya hatta Github'un işlevselliğini taklit eden bir masaüstü istemcisi olup olmadığını merak ediyorum, Github'ı seviyorum ama kendi sunucumda barındırmak güzel olurdu.

Bu yeterince "programlama" olarak görülmüyorsa, ancak genellikle yalnızca programcılar GIT ve Github kullanıyorsa özür dileriz


Güncelleme

Öncelikle tüm harika öneriler için teşekkürler, orada seçeneklerin olduğunu görmek harika. Burada yayınlananlardan ve google araştırmamdan en iyi görünen / en çok benzeyen Github çözümlerinin Ruby'de kodlandığını söyleyebilirim, bu bazıları için harika ama ben PHP türü bir adamım (şimdilik).

PHP GIT izleyicilerinin çoğu ya modası geçmiş ve terk edilmiş projeler ya da bok gibi görünüyorlar (onları daha çok Github gibi düzeltebileceğimi fark ettim) ancak PHP'de şimdiye kadar umut verici görünen bir şeyle karşılaştım. Glip olarak adlandırılıyor, burada Github'da https://github.com/patrikf/glip ve bana göre PHP için şimdiye kadar bulduğum en çekici ve kullanımı kolay çözüm. Gelişmiş Git kullanıcısı için yeterli olmayabilir ama benim için sadece bir git deposunu görüntüleyebilmek istedim ve bu da bu işlevi sağlıyor.

Şimdi de mükemmel çözüm arayışım hala devam ediyor, onu bulabilecek miyim? Umarım öyledir ama şimdilik bu elimizde. Github gibi çekici ve hata ve özellik istekleri için Sorun izleyici gibi başka özelliklere sahip kendi yazımı yazmayı düşünüyorum. Şimdiye kadar gördüklerim pek iyi değil


1
Neden kendi sunucunuzda barındırmak istiyorsunuz? Github sunucuları çok hızlı ve güvenilirdir.
maček

59
Muhtemelen üçüncü taraf bir hizmeti kullanmak istemediği için. Verilerinizi kendinizde saklamanız için söylenecek bir şey var.
Noufal İbrahim

1
çoğunlukla geliştirici
sunucumdan

Github'a sahip olamazsınız, ancak gitolite, gitosis veya gitorious gibi git barındırma betiklerini kullanabilirsiniz.
CodesInChaos

8
Veya muhtemelen Microsoft, Github'ı satın aldığı için.
keji

Yanıtlar:


75

Orada GitHub Kurumsal ihtiyaçlarını karşılamak için. Ve Github Enterprise'ın açık kaynaklı bir "klonu" var .

Not: Artık Github sınırsız özel depolar sağlıyor, bitbucket de aynı şeyi yapıyor. ikisini de deneyebilirsiniz. Birkaç başka çözüm de var.


1
Ruby olduğunu yeni fark ettim, gerçekten güzel
JasonDavis

11
GitLab'ı kendi sunucunuzda ücretsiz olarak çalıştırabilirsiniz. GitHub Enterprise çok paraya mal olur.

Gitea ve Gogs tıpkı GitHub'a benziyor. Cevabınız 2011 yılına ait ve güncel değil gibi görünüyor
SomethingSomething

31

Hiç kimsenin açık kaynaklı proje gogs'tan (http://gogs.io) veya gitlab'ın yaptığı ile aynı şeyi sunan gitea (http://gitea.io) adlı türetilmiş bir çatalından bahsetmediğine şaşırdım. örneğin bir Raspberry Pi'de çalıştırmak için mükemmel olan minimum sistem kaynakları (düşük ayak izi). Kurulum ve bakım da çok daha basittir.



12

Kendi git sunucunuzu çalıştırmak için birçok seçeneğiniz var,

  1. Bitbucket Sunucusu

    Bitbucket Sunucusu ücretsiz değildir, ancak maliyetli değildir. Size sadece bir defaya mal oluyor (şu an itibariyle 10 $). Uzun ömürlü bir çözüm istiyorsanız Bitbucket güzel bir seçenektir.

  2. Gitea ( https://gitea.io/en-us/ )

    Gitea, açık kaynaklı bir proje. Çapraz platform ve hafiftir. Herhangi bir ücret ödemeden kullanabilirsiniz. orijinal olarak Gogs'tan ( http://gogs.io ) çatallanmıştır . Golang'da yazılmış ve MIT lisansı altında yayınlanan hafif bir kod barındırma çözümüdür. Windows, macOS, Linux, ARM ve daha fazlasında çalışır.

  3. Gogs ( http://gogs.io )

    Gogs, kendi kendine barındırılan ve github'da yaklaşık 32 bin yıldız bulunan açık kaynaklı bir projedir. Gog'ları ücretsiz olarak kurabilirsiniz.

  4. GitLab ( https://gitlab.com/ )

    GitLab ücretsiz, açık kaynaklı ve web tabanlı bir Git deposu yöneticisi yazılımıdır. Bir wiki, sorun izleme ve diğer özelliklere sahiptir. Kod orijinal olarak Ruby'de yazılmıştır, bazı kısımları daha sonra Golang'da yeniden yazılmıştır. GitLab Community Edition (CE), yerleşik sürüm denetimi, sorun izleme, kod inceleme, CI / CD ve daha fazlasını içeren açık kaynaklı bir uçtan uca yazılım geliştirme platformudur. GitLab CE'yi kendi sunucularınızda, bir kapsayıcıda veya bir bulut sağlayıcısında kendiniz barındırın.

  5. GNU Savannah ( https://savannah.gnu.org/ )

    GNU Savannah, Özgür Yazılım Vakfı tarafından sağlanan ücretsiz ve açık kaynaklı bir yazılımdır. Şu anda CVS, GNU arch, Subversion, Git, Mercurial, Bazaar, posta listesi, web barındırma, dosya barındırma ve hata izleme hizmetleri sunmaktadır. Ancak bu yazılım yeni kullanıcılar için değildir. Bununla ilgili her şeyi kurmak ve ustalaşmak biraz zaman alır.

  6. GitPrep ( http://gitprep.yukikimoto.com/ )

    GitPrep, Github klonudur. taşınabilir GitHub sistemini UNIX / Linux'a kurabilirsiniz. Sınırlama olmaksızın kullanıcılar ve depolar oluşturabilirsiniz. Bu ücretsiz bir yazılımdır.

  7. Kallithes ( https://kallithea-scm.org/ )

    Software Freedom Conservancy'nin bir üye projesi olan Kallithea, Mercurial ve Git olmak üzere iki önde gelen sürüm kontrol sistemini destekleyen ve kullanıcılar ve yöneticiler için kullanımı kolay bir web arayüzüne sahip bir GPLv3'd, Ücretsiz Yazılım kaynak kodu yönetim sistemidir. Kallithea'yı kendi sunucunuza ve seçtiğiniz sürüm kontrol sistemi için ana havuzlara kurabilirsiniz.

  8. Tuleap ( https://www.tuleap.org/ )

    Tuleap, bir Yazılım geliştirme ve çevik yönetim Hepsi Bir Arada,% 100 Açık Kaynaktır. Docker veya CentOS sunucusuna kurabilirsiniz.

  9. Phacility ( https://www.phacility.com/ )

    Phabricator açık kaynak kodludur ve yerel olarak kendi donanımınıza ücretsiz olarak indirebilir ve kurabilirsiniz. Açık kaynaklı kurulum, tüm özelliklerle eksiksiz bir kurulumdur.





4

Git PHP uygulamalarını da aradım, ancak sonuç yok. GitHub'a benzer bir siteyi yeniden oluşturmanın tek yolu, kendi sunucunuzda "gerçek" bir git sunucusu kurmak ve ardından http://www.xiphux.com/programming/gitphp/ gibi bir PHP git web istemcisi kullanmaktır .

Ne yazık ki, bunu bir barındırma çözümü ile yapmayı unutabilirsiniz. İstediğiniz her şeyi kurabileceğiniz gerçek bir sanal sunucuya ihtiyacınız var.

Bununla birlikte, bir proje için bazı kişisel, halka açık olmayan, herkesin erişemeyeceği kodların saklandığı bir yere ihtiyacınız varsa, BitBucket'i deneyebilirsiniz. Ücretsiz olarak özel ve özel paylaşılan git depoları sunar.



4

Atlassian'ın Stash'i (Şimdi BitBucket Sunucusu olarak adlandırılır) , iyi bir Github Enterprise alternatifi olma yolunda ilerliyor . Ben biraz JIRA fahişesiyim, bu yüzden onunla olan bütünleşmeleri seviyorum.


9
Sen bir JIRA'sın ne?
Ruby Racer

@RubyRacer Sanırım bu kim olmalı :)
Alex Ivasyuv

//, PR'leri ayrıştıramamanız dışında. GH cinsinden yapabilirsiniz. Stash sayesinde, büyük bir yüksek teknoloji araç üreticisiyle yaptığım bir sözleşmede hayatımın yaklaşık 8 saatini periyodik olarak kaybediyordum.
Nathan Basanese

3

Evet, GitHub Enterprise var :)

https://enterprise.github.com

Tek sorun, biraz pahalı olması :(


1
2020 güncellemesi - GitHub Free planınızın bir parçası olarak artık özel havuzlarda sınırsız ortak çalışanınız var. Pro planımızın aylık fiyatı 7 $ / ay'dan 4 $ / ay'a düşürüldü. Ücretli Takım planımızın aylık fiyatı kullanıcı başına 9 ABD dolarından kullanıcı başına 4 ABD dolarına düşürülmüştür.
savaş balığı


2

Github'da hangi özellikleri arıyorsunuz?

İşbirliği, çekme talepleri vb. İstemiyor, ancak sadece kendi depolarınızın görüntülenebilir olmasını istiyorsanız, sizin git instawebiçin bir şeyler yaratacaktır.


Evet, kaynak koduna kolayca göz atabilmeyi seviyorum
JasonDavis

Git instaweb o zaman fazlasıyla yeterli olmalı. Github varsayılan görünümünden çok daha fazla ayrıntı elde edersiniz, ancak "web 2.0" daha azdır.
Noufal Ibrahim



1

Git'i (Github'ın tamamını değil) Apache HTTP Sunucusu aracılığıyla çalıştırabilirsiniz, böylece Git deposunu sunucunuzun dosya sisteminde barındırır ve HTTP aracılığıyla açığa çıkarırsınız. Tüm Git işlevlerini elde edersiniz, ancak belli ki pull-requestsorunları izleyemeyecek veya izleyemeyeceksiniz. Kendi kendine barındırılan Git deponuza eklenen herhangi bir araç, özelliklerin geri kalanını uygulayabilir.

Referans: http://git-scm.com/docs/git-http-backend


Mümkünse bu rotayı şiddetle tavsiye ederim. Hizmeti kendiniz barındırmakla 3. şahıslara bağımlı değilsiniz.
Phil

0

Ayrıca Trac'i kurabilirsiniz . Bir Git sunucusundan daha fazlasıdır, bilet yönetimi ve proje yönetimi gibi başka özelliklere sahiptir. Ayrıca eklentiler aracılığıyla genişletme imkanına sahiptir.

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.