5 лучших альтернатив Github для своего хостинга

GitHub вероятно самый популярный хостинг программного кода для тех кто использует систему Git, который является распределенной системой контроля версий для отслеживания изменений в исходном коде при разработке программного обеспечения, созданный Линусом Торвальдсом в 2005 году, но не хлебом единым, как говорится.

С момента когда Microsoft приобрел GitHub в октябре 2018 года за 7.5 миллионов долларов, наблюдается рост спроса на альтернативы GitHub на собственном хостинге. К счастью, существует довольно много проектов с открытым исходным кодом, которые позволяют разработчикам легко отслеживать изменения кода и координировать разработку проектов как больших, так и малых.

В этой статье, рассмотрим 5 лучших альтернатив GitHub которые можно развернуть у себя на сервере и которые помогут вам восстановить контроль над собственным кодом и, возможно, получить доступ к полезным функциям, о которых вы даже не подозревали. В конце концов, с какой стати вы доверяете кому-то свой код, если можете сами его размещать?

1. GitLab

Даже до того как Microsoft купил GitHub за $7.5 миллионов, GitLab уже был популярной альтернативой GitHub поскольку это первое приложение для всего жизненного цикла DevOps, охватывающее все этапы от планирования и до мониторинга. Первоначально написанный полностью на Ruby, многие части GitLab были затем переписаны на Go, чтобы улучшить производительность.

Все основные функции GitLab выпущены под лицензией MIT, и доступны бесплатно. Ну а те, кто хотел бы воспользоваться преимуществами поддержки клиентов, множественными утверждениями ревью кода, многопроектными конвейерными графами, развертываниями по времени и по команде, предупреждениями о производительности приложений, динамическим тестированием безопасности приложений и многими другими полезными функциями — могут выбирать между тремя разными платными версиями, причем самая доступная стоит всего 4 доллара на пользователя в месяц.

Недостатком GitLab является то, что привыкание может занять довольно много времени просто потому, что в нем много функций. Для крупных проектов усилия определенно того стоят, но отдельные разработчики могут глянуть более простую альтернативу GitHub, например Gogs.

2. Gogs

Gogs часто рекомендуют как фанттастическую замену GitHub на своём сервере. Это неплохая альтернатива для маленьких команд и индивидуальных разработчиков с умеренными требованиями. так же как и другие альтернативы GitHub описываемые в статье, Gogs бесплатен, с открытыми исходниками, и может быть запущен на большинстве операционных систем, таких как Windows, macOS, и конечно же Linux. По факту, Gogs запускается везде где можжно запустить компилятор Go, а это значит что вы можете запустить его даже на вашем Raspberry Pi.

Для установки Gogs, всё что потребуется это запустить исполняемый для вашей платформы и завершить простой процесс конфигурации. Несмотря на свою легкость, Gogs обладает всеми функциями, к которым привыкли пользователи GitHub, включая отслеживание ошибок, вики и, конечно же, контроль версий. Его пользовательский интерфейс по сути является зеркальной копией GitHub, поэтому к нему не нужно привыкать.

Если Gogs вызвал у вас интерес, но еще не убедил вас, рекомендую попробовать его в онлайн, чтобы сразу пощупать что он может предложить. Есть много известных организаций и предприятий, которые выбрали Gogs в качестве альтернативы GitHub, например, University of Mississippi или Sunnyvale, и ничто не мешает вам присоединиться к ним.

3. Gitea

Если вам покажется что Gitea как две капли похожа на Gogs, то это потому, что это форк сделанный сообществом, в то время как Gogs — разрабатывается одним человеком. Являясь проектом сообщества Gitea разрабатывается более активно чем Gogs и это дает несколько дополнительных преимуществ.

Gitea отличается свежим внешним видом и отзывчивым пользовательским интерфейсом, и некоторые разработчики наверняка оценят, что он не похож на GitHub почти так как Gogs. В то время как Gogs имеет ряд вспомогательных файлов, необходимых для запуска, Gitea объединяет все в одном двоичном файле, что делает его более удобным для установки, хотя и менее удобным для изменений.

Как и Gogs, Gitea работает везде, где может компилироваться Go, и его требования настолько низки, что он хорошо работает даже на недорогой Raspberry Pi. Поскольку и Gogs, и Gitea позволяют вам импортировать существующие репозитории, нет никаких причин не попробовать каждый из них, чтобы вы сами могли решить, какой больше подходит.

4. Phabricator

Этот набор инструментов для совместной работы по разработке программного обеспечения. Изначально он разрабатывался как внутренний инструмент Facebook, но теперь он используется разработчиками по всему миру как мощная, быстрая, масштабируемая и полностью открытая альтернатива GitHub.

Phabricator доступен как в виде инстанса с автоматическими обновлениями, обслуживанием и доступом к поддержке, так и в виде самостоятельного решения, которое можно легко установить локально на собственном оборудовании бесплатно. Если вы решите пойти по самодостаточному маршруту, вы можете приобрести Support Pact для доступа к upstream.

В дополнение к Git, Phabricator также поддерживает репозитории Mercurial и Subversion с Diffusion, что дает вам максимальную гибкость, когда дело доходит до контроля версий. Непосредственно в Phabricator встроена доска для проектов, похожая на Trello, с которой чрезвычайно легко управлять проектами, а также имеется функция чата для расширенного взаимодействия в команде.

5. GitBucket

GitBucket — это веб-платформа Git, написанная на Scala, которая предлагает простую установку, интуитивно понятный пользовательский интерфейс, хорошую расширяемость с помощью плагинов и совместимость API с GitHub. Его функции включают в себя поддержку как общедоступных, так и частных репозиториев Git, просмотрщик репозитория с онлайн-редактором файлов, встроенную вики, график активности с уведомлениями по электронной почте и многое другое, от чего зависит большинство пользователей GitHub каждый день.

Чтобы установить GitBucket, вам понадобится Java 8, а также несколько других предварительных условий, но сама установка совсем не сложная. Установка плагинов GitBucket также проста, и то же самое можно сказать об использовании GitBucket. Пока вы не ожидаете слишком многого, GitBucket может служить вам отличной и удобной альтернативой GitHub.

Заключение

Как видите, GitHub — далеко не единственный вариант размещения кода, доступный сегодня. Если вы не согласны с публикацией кода в службе, принадлежащей Microsoft, или если вы просто хотите получить доступ к определенным функциям, которых нет в GitHub, в этой статье представлены 5 лучших альтернатив GitHub, которые вы можете установить на свой сервер без много усилий.

Автор: Mirivlad

Скромный труженик консоли и окошек.