Як я можу мати Github на своєму власному сервері?


98

Чи є щось подібне до Github, яке призначене для вашого власного локального сервера? Мені цікаво, чи є такий PHP-скрипт чи навіть настільний клієнт, що імітує функціональність Github, я люблю Github, але було б непогано розмістити на своєму власному сервері.

Перепрошую, якщо це недостатньо вважається "програмуванням", але загалом лише програмісти використовують GIT та Github


Оновлення

Перш за все дякую за всі чудові пропозиції, чудово бачити, що там є варіанти. З того, що розміщено тут, і з мого гуглінгу я можу сказати, що, схоже, найкращі / найбільш схожі на рішення Github закодовані в Ruby, що чудово для деяких, але я - тип PHP (на даний момент).

Більшість глядачів PHP GIT або застарілі, і покинуті проекти, або вони просто схожі на лайно (я розумію, що міг би виправити їх, щоб вони були більше схожими на Github), але я натрапив на щось у PHP, яке досі виглядає багатообіцяючим. Його називають Glip, він знаходиться на Github тут https://github.com/patrikf/glip, і для мене це найбільш привабливе та просте у використанні рішення, яке я знайшов для PHP на сьогодні. Для досвідченого користувача Git цього може бути недостатньо, але для мене я просто хотів мати можливість переглядати репозиторій git і це забезпечує цю функціональність.

Зараз мій пошук все ще триває для ідеального рішення, чи знайду я його коли-небудь? Я сподіваюся, що це так, але наразі це ми вже отримали. Я розглядаю можливість написання власного, такого, що є привабливим, як Github, і має інші функції, такі як трекер випусків для запитів на помилки та функції. Всі, які я бачив до цього часу, не такі вже й добрі


1
Чому ви хочете розмістити його на своєму власному сервері? Сервери Github дуже швидкі та надійні.
maček

54
Можливо, тому, що він не хоче користуватися сторонніми послугами. Є щось сказати, щоб зберегти свої дані при собі.
Noufal Ibrahim

1
головним чином, щоб я міг запустити його зі свого розробницького сервера
JasonDavis

Ви не можете мати github, але ви можете використовувати скрипти для хостингу git, такі як gitolite, gitosis або gitorious.
CodesInChaos

7
Або, можливо, тому, що Microsoft придбала Github.
keji

Відповіді:


74

Для задоволення ваших потреб існує GitHub Enterprise . І є «клон» з відкритим кодом Github Enterprise.

PS: Тепер Github надає необмежену кількість приватних сховищ, bitbucket робить те саме. ви можете спробувати обох. Є також кілька інших рішень.


1
Щойно зрозумів, що це Рубі, це дійсно приємно
JasonDavis

11
Ви можете безкоштовно запустити GitLab на своєму власному сервері. GitHub Enterprise коштує великих грошей.
Робота

Gitea та Gogs схожі на GitHub. Ваша відповідь з 2011 року і, схоже, застаріла
SomethingSomething

30

Я дуже здивований, що ніхто не згадував проект gogs з відкритим кодом (http://gogs.io) або його похідну вилку під назвою gitea (http://gitea.io), яка в основному пропонує те саме, що робить gitlab, але з мінімальні системні ресурси (низький розмір), що ідеально підходить для роботи в Raspberry Pi, наприклад. Встановлення та обслуговування також простіші.



10

Є кілька альтернатив з відкритим кодом:


1
Наразі RhodeCode не здебільшого заснований на ртуті, функціональність git проти
ртутності

2
Rhodecode насправді не є відкритим кодом. GitLab - це MIT.
Робота

9

У вас є багато варіантів для запуску власного git-сервера,

  1. Сервер Bitbucket

    Сервер Bitbucket не безкоштовний, але не дорогий. Це коштує вам лише одного разу (на сьогодні 10 доларів). Bitbucket - приємний варіант, якщо ви хочете довготермінове рішення.

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

    Gitea - це проект з відкритим кодом. Це крос-платформенний і легкий. Ви можете використовувати його без будь-яких витрат. спочатку роздвоєний від Gogs ( http://gogs.io ). Це легке рішення для хостингу коду, написане на Golang і випущене за ліцензією MIT. Він працює на Windows, macOS, Linux, ARM тощо.

  3. Гоги ( http://gogs.io )

    Gogs - це власний проект із відкритим кодом, що має близько 32 тис. Зірок на github. Ви можете безкоштовно налаштувати Gogs.

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

    GitLab - це безкоштовне програмне забезпечення для управління Git-сховищами з відкритим вихідним кодом та Інтернетом. Він має вікі, відстеження проблем та інші функції. Код був спочатку написаний на Ruby, а деякі частини згодом переписані на Golang. GitLab Community Edition (CE) - це наскрізна платформа для розробки програмного забезпечення з відкритим кодом із вбудованим контролем версій, відстеженням випусків, переглядом коду, CI / CD тощо. Самостійно розмістіть GitLab CE на своїх власних серверах, у контейнері або у хмарного провайдера.

  5. Саванна GNU ( https://savannah.gnu.org/ )

    GNU Savannah - це безкоштовне програмне забезпечення з відкритим кодом від Фонду вільного програмного забезпечення. На даний момент він пропонує послуги CVS, GNU arch, Subversion, Git, Mercurial, Bazaar, список розсилки, веб-хостинг, хостинг файлів та послуги відстеження помилок. Однак це програмне забезпечення не для нових користувачів. Налаштування займає трохи часу та освоює все, що стосується цього.

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

    GitPrep - це клон Github. Ви можете встановити портативну систему GitHub в UNIX / Linux. Ви можете створювати користувачів та сховища без обмежень. Це безкоштовне програмне забезпечення.

  7. Каллітес ( https://kallithea-scm.org/ )

    Kallithea, член проекту Software Freedom Conservancy, - це система управління вихідним кодом GPLv3'd, безкоштовна програма, що підтримує дві провідні системи контролю версій, Mercurial та Git, та має веб-інтерфейс, простий у користуванні для користувачів та адміністраторів. Ви можете встановити Kallithea на свій власний сервер і сховища хостів для обраної вами системи контролю версій.

  8. Тулеап ( https://www.tuleap.org/ )

    Tuleap - це розробка програмного забезпечення та гнучке управління Все-в-одному, на 100% з відкритим кодом. Ви можете встановити його на докер або сервер CentOS.

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

    Phabricator є відкритим кодом, і ви можете завантажити та встановити його локально на власному обладнанні безкоштовно. Встановлення з відкритим кодом - це повна установка з повним набором функцій.



5

Якщо у вас повинен бути GitHub, існує корпоративна версія, як уже згадувалося.

Якщо ви хочете шукати альтернативи для роботи центрального git-сервера для вашої компанії, ви можете спробувати Gitolite.

https://github.com/sitaramc/gitolite
https://github.com/sitaramc/gitolite/wiki/


Дякую, мені просто подобається зовнішній вигляд Github, не потрібно бути github
JasonDavis

4

Я також шукав реалізації git PHP, але без результатів. Єдиний спосіб повторно створити сайт, подібний до GitHub, - це встановити "справжній" git-сервер на своєму власному сервері, а потім використовувати веб-клієнт PHP git, такий як http://www.xiphux.com/programming/gitphp/ .

На жаль, ви можете забути зробити це за допомогою хостингового рішення. Вам потрібен справжній віртуальний сервер, де ви зможете встановити все, що завгодно.

Однак якщо вам потрібно місце, де зберігатиметься якийсь особистий, загальнодоступний, недоступний для всіх код проекту, ви можете спробувати BitBucket. Він пропонує приватні та приватні спільні git-репозиторії безкоштовно.


на даний момент я хочу переважно для свого сервера розробників, тому це може бути добре
JasonDavis

4

Stash Atlassian (тепер його називають BitBucket Server) стає гарною альтернативою Github Enterprise. Я трохи повія JIRA, тому мені подобається інтеграція з цим.


9
Ви JIRA що?
Ruby Racer

@RubyRacer Думаю, це має бути хто? :)
Алекс Івасюв

//, за винятком того, що ви не можете роз’єднати PR. Що ви можете, в GH. Завдяки Шташу я періодично втрачав близько 8 годин свого життя за контрактом з великим виробником високотехнологічних автомобілів.
Натан Басанес

3

Так, є GitHub Enterprise :)

https://enterprise.github.com

Єдина проблема - це трохи дорого :(


1
оновлення 2020 року - тепер у вас є необмежена кількість співавторів у приватних сховищах як частина вашого плану GitHub Free. Щомісячна ціна на наш план Pro зменшена з 7 доларів на місяць до 4 доларів на місяць. Щомісячна ціна на наш платний тарифний план знижена з 9 доларів США за користувача до 4 доларів США за користувача.
warfish


2

Які функції github ви шукаєте?

Якщо ви не хочете співпраці, тягніть запити тощо, а просто хочете, щоб ваші власні сховища були доступними для перегляду, git instawebстворить щось для вас.


Так, мені майже так само подобається можливість легко переглядати вихідний код
JasonDavis

Тоді Git instaweb має бути більш ніж достатнім. Ви отримуєте набагато більше деталей, ніж подання github за замовчуванням, але це менше "web 2.0".
Noufal Ibrahim


2

Видання Community не має багатьох функцій імпорту, таких як гачки. Я рекомендую геррит . Це легковажний і відкритий код.


3
Видання Community містить веб-гачки, системні та спеціальні гачки doc.gitlab.com/ce/web_hooks/web_hooks.html doc.gitlab.com/ce/api/system_hooks.html doc.gitlab.com/ce/hooks/custom_hooks. html
Sytse Sijbrandij

1

Ви можете запустити Git (а не весь Github) через сервер Apache HTTP, щоб ви розмістили репозиторій Git у файловій системі вашого сервера та виставили його через HTTP. Ви отримуєте всі функціональні можливості Git, але, очевидно, ви не зможете pull-requestвідстежувати проблеми. Будь-який інструмент, приєднаний до вашого власного репозиторію Git, може реалізувати решту функцій.

Довідково: http://git-scm.com/docs/git-http-backend


Якщо можете, я настійно рекомендую цей маршрут. Розміщуючи послугу самостійно, ви не залежні від третіх осіб.
Філ

0

Також ви можете встановити Trac . Це більше, ніж сервер Git, він має таку особливість, як управління квитками та управління проектами. Крім того, він має можливість розширити його за допомогою плагінів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.