Bagaimana saya bisa memiliki Github di server saya sendiri?

98

Apakah ada sesuatu di luar sana seperti Github yang ditujukan untuk server lokal Anda sendiri? Saya ingin tahu apakah ada skrip PHP atau bahkan klien desktop yang meniru fungsi Github, saya suka Github tetapi akan menyenangkan untuk menghosting di server saya sendiri.

Mohon maaf jika ini tidak dianggap cukup "pemrograman" tetapi umumnya hanya programmer yang menggunakan GIT dan Github


Memperbarui

Pertama-tama terima kasih atas semua saran bagus, senang melihat ada opsi di luar sana. Dari apa yang diposting di sini dan dari googling saya, saya dapat mengatakan sepertinya solusi Github yang paling tampan / paling mirip dikodekan dalam Ruby, yang bagus untuk beberapa tetapi saya adalah tipe orang PHP (untuk saat ini).

Sebagian besar penampil PHP GIT adalah proyek yang sudah ketinggalan zaman dan ditinggalkan atau mereka hanya terlihat seperti omong kosong (saya sadar saya bisa memperbaikinya agar lebih seperti Github) tetapi saya menemukan sesuatu dalam PHP yang terlihat menjanjikan sejauh ini. Ini disebut Glip, itu ada di Github di sini https://github.com/patrikf/glip dan bagi saya itu adalah solusi paling menarik dan mudah digunakan yang saya temukan untuk PHP sejauh ini. Untuk pengguna Git tingkat lanjut, ini mungkin tidak cukup tetapi bagi saya, saya hanya ingin dapat melihat repo git dan menyediakan fungsionalitas itu.

Sekarang pencarian saya masih berlanjut untuk solusi yang tepat, akankah saya menemukannya? Saya harap begitu tetapi, untuk saat ini, ini yang kita dapatkan. Saya sedang mempertimbangkan untuk menulis milik saya sendiri, yang menarik seperti Github dan memiliki fitur lain seperti Issue tracker untuk bug dan permintaan fitur. Semua yang saya lihat sejauh ini tidak begitu bagus

JasonDavis
sumber
1
Mengapa Anda ingin menyimpannya di server Anda sendiri? Server Github sangat cepat dan andal.
maček
54
Mungkin karena dia tidak ingin menggunakan layanan pihak ketiga. Ada sesuatu yang bisa dikatakan untuk menyimpan data Anda sendiri.
Noufal Ibrahim
1
terutama agar saya dapat menjalankannya dari server dev saya
JasonDavis
Anda tidak dapat memiliki github, tetapi Anda dapat menggunakan skrip hosting git seperti gitolite, gitosis, atau gitorious.
CodesInChaos
7
Atau mungkin karena Microsoft membeli Github.
keji

Jawaban:

74

Ada GitHub Enterprise untuk memenuhi kebutuhan Anda. Dan ada "klon" open source dari Github Enterprise.

PS: Sekarang Github menyediakan repositori pribadi tanpa batas, bitbucket melakukan hal yang sama. Anda bisa mencoba keduanya. Ada beberapa solusi lain juga.

manojlds
sumber
1
Baru menyadari itu adalah Ruby, itu sangat bagus
JasonDavis
11
Anda dapat menjalankan GitLab secara gratis di server Anda sendiri. GitHub Enterprise menghabiskan banyak uang.
Pekerjaan
Gitea dan Gogs terlihat seperti GitHub. Jawaban Anda dari tahun 2011 dan tampaknya sudah usang
SomethingSomething
30

Saya cukup terkejut tidak ada yang menyebutkan proyek sumber terbuka gogs (http://gogs.io) atau garpu turunannya yang disebut gitea (http://gitea.io) yang pada dasarnya menawarkan hal yang sama seperti yang dilakukan gitlab, tetapi dengan sumber daya sistem minimal (footprint rendah), sempurna untuk dijalankan di Raspberry Pi misalnya. Pemasangan dan pemeliharaan juga jauh lebih sederhana.

marc
sumber
10

Ada beberapa alternatif sumber terbuka:

RyanWilcox
sumber
1
RhodeCode saat ini sebagian besar tidak berbasis mercurial, fungsionalitas git vs mercurial sekarang 1: 1
marcinkuzminski
2
Rhodecode sebenarnya bukan open source. GitLab adalah MIT.
Pekerjaan
9

Anda memiliki banyak opsi untuk menjalankan server git Anda sendiri,

  1. Server Bitbucket

    Server Bitbucket tidak gratis, tetapi tidak mahal. Harganya hanya satu kali ($ 10 seperti sekarang). Bitbucket adalah pilihan yang bagus jika Anda menginginkan solusi yang tahan lama.

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

    Gitea adalah proyek sumber terbuka. Ini lintas platform dan ringan. Anda dapat menggunakannya tanpa biaya apapun. awalnya bercabang dari Gogs ( http://gogs.io ). Ini adalah solusi hosting kode ringan yang ditulis dalam Golang dan dirilis di bawah lisensi MIT. Ini berfungsi di Windows, macOS, Linux, ARM, dan lainnya.

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

    Gogs adalah proyek yang dihosting sendiri dan bersumber terbuka yang memiliki sekitar 32k bintang di github. Anda dapat menyiapkan Gogs tanpa biaya.

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

    GitLab adalah perangkat lunak pengelola Git-repositori gratis, sumber terbuka, dan berbasis web. Ini memiliki wiki, pelacakan masalah, dan fitur lainnya. Kode aslinya ditulis di Ruby, dengan beberapa bagian kemudian ditulis ulang di Golang. GitLab Community Edition (CE) adalah platform pengembangan perangkat lunak ujung ke ujung sumber terbuka dengan kontrol versi bawaan, pelacakan masalah, tinjauan kode, CI / CD, dan banyak lagi. Self-host GitLab CE di server Anda sendiri, di container, atau di penyedia cloud.

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

    GNU Savannah adalah perangkat lunak gratis dan bersumber terbuka dari Free Software Foundation. Saat ini menawarkan layanan CVS, GNU arch, Subversion, Git, Mercurial, Bazaar, milis, hosting web, hosting file, dan pelacakan bug. Namun, perangkat lunak ini bukan untuk pengguna baru. Butuh sedikit waktu untuk menyiapkan dan menguasai segala hal tentangnya.

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

    GitPrep adalah tiruan Github. Anda dapat menginstal sistem GitHub portabel ke UNIX / Linux. Anda dapat membuat pengguna dan repositori tanpa batasan. Ini adalah perangkat lunak gratis.

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

    Kallithea, proyek anggota Software Freedom Conservancy, adalah GPLv3, sistem manajemen kode sumber Perangkat Lunak Gratis yang mendukung dua sistem kontrol versi terkemuka, Mercurial dan Git, dan memiliki antarmuka web yang mudah digunakan untuk pengguna dan admin. Anda dapat menginstal Kallithea di server Anda sendiri dan repositori host untuk sistem kontrol versi pilihan Anda.

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

    Tuleap adalah pengembangan perangkat lunak & manajemen tangkas All-in-one, 100% Open Source. Anda dapat menginstalnya di docker atau server CentOS.

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

    Phabricator adalah open source dan Anda dapat mengunduh dan menginstalnya secara lokal di perangkat keras Anda sendiri secara gratis. Penginstalan open source adalah penginstalan lengkap dengan kumpulan fitur lengkap.

Kiran Maniya
sumber
6

Anda harus melihat yang ini: http://gitlist.org/ .

Itu ditulis dalam PHP seperti yang Anda inginkan.

Daniel M. Melo
sumber
4

Saya mencari implementasi git PHP juga, tetapi tidak ada hasil. Satu-satunya cara untuk membuat ulang situs yang mirip dengan GitHub adalah dengan menyiapkan server git "asli" di server Anda sendiri dan kemudian menggunakan klien web PHP git seperti http://www.xiphux.com/programming/gitphp/ .

Sayangnya, Anda bisa lupa melakukan ini dengan solusi hosting. Anda memerlukan server virtual nyata tempat Anda dapat menginstal semua yang Anda inginkan.

Namun, jika Anda membutuhkan tempat untuk menyimpan beberapa kode pribadi, non-publik, tidak dapat diakses oleh semua orang untuk suatu proyek, Anda dapat mencoba BitBucket. Ini menawarkan repo git pribadi dan pribadi-bersama secara gratis.

lorenzo-s
sumber
untuk saat ini saya menginginkan sebagian besar untuk server dev saya jadi ini mungkin bagus
JasonDavis
4

Stash Atlassian (Sekarang disebut BitBucket Server) menjadi alternatif Github Enterprise yang baik. Saya sedikit pelacur JIRA jadi saya suka integrasi yang Anda miliki dengan itu.

grumpasaurus
sumber
9
Anda seorang JIRA apa?
Ruby Racer
@RubyRacer Saya rasa itu seharusnya siapa :)
Alex Ivasyuv
//, Kecuali bahwa Anda tidak dapat memisahkan PR. Yang bisa Anda lakukan, di GH. Berkat Stash, saya secara berkala akan kehilangan sekitar 8 jam hidup saya karena kontrak dengan produsen kendaraan besar berteknologi tinggi.
Nathan Basanese
3

Ya, ada GitHub Enterprise :)

https://enterprise.github.com

Satu-satunya masalah adalah itu agak mahal :(

Stuart Golodetz
sumber
1
pembaruan 2020 - Anda sekarang memiliki kolaborator tak terbatas di repositori pribadi sebagai bagian dari paket Gratis GitHub Anda. Harga bulanan untuk paket Pro kami telah dikurangi dari $ 7 / bulan menjadi $ 4 / bulan. Harga bulanan untuk paket Tim berbayar kami telah dikurangi dari $ 9 / pengguna menjadi $ 4 / pengguna.
warfish
3

Saya mencoba gitosis yang merupakan baris perintah sepenuhnya. Dan saya memilih yang ini.

Menjadi seorang pria Java, saya juga tertarik pada Gitblit .

Luigi R. Viggiano
sumber
2

Fitur apa di github yang Anda cari?

Jika Anda tidak ingin kolaborasi, menarik permintaan, dll. Tetapi hanya ingin repositori Anda sendiri dapat dilihat, git instawebakan menciptakan sesuatu untuk Anda.

Noufal Ibrahim
sumber
Ya, saya hanya ingin dapat menelusuri kode sumber dengan mudah
JasonDavis
Git instaweb seharusnya lebih dari cukup. Anda mendapatkan lebih banyak detail daripada tampilan default github tetapi lebih sedikit "web 2.0".
Noufal Ibrahim
1

Anda dapat menjalankan Git (bukan seluruh Github) melalui Apache HTTP Server, sehingga Anda menghosting repo Git di sistem file server Anda dan memaparkannya melalui HTTP. Anda mendapatkan semua fungsi Git, tetapi jelas Anda tidak akan bisapull-request atau melacak masalah. Alat apa pun yang terpasang ke repo Git yang dihosting sendiri dapat menerapkan fitur lainnya.

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

usr-local-ΕΨΗΕΛΩΝ
sumber
Jika bisa, saya sangat merekomendasikan rute ini. Dengan menghosting layanan sendiri, Anda tidak bergantung pada pihak ketiga.
Phil
0

Anda juga dapat menginstal Trac . Ini lebih dari sekedar server Git, ia memiliki fitur lain seperti manajemen tiket dan manajemen proyek. Juga memiliki kemungkinan untuk memperluasnya melalui plugin.

Werner Faruk
sumber