Лучшие альтернативы GitHub: 5 хостинг сервисов для Open Source проектов
Сегодня существует множество сервисов для размещения Git-репозиториев. Хотя наличие такого разнообразия, безусловно, хорошая вещь, но также затрудняет поиск подходящего для конкретных потребностей. Лидерство среди них долгое время занимает GitHub ( более 70 миллионов проектов). После покупки GitHub Microsoft, многие пользователи стали задумываться о смене сервиса. Поэтому, цель этой статьи - предоставление списка из топ 5 сервисов в качестве отправной точки для выбора репозитория, которые составляют конкуренцию GitHub.
1. Bitbucket
BitBucket размещается на Atlassian, который известен своими продуктами для совместной разработки, JIRA и Confluence. Поддерживает Git и Mercurial VCS (но не SVN). Написан на Python и использует веб-фреймворк Django.Доступен для Mac, Windows и Android через приложение. Bitbucket поставляется с соответствием безопасности SOC 2 Type II.
Из особенностей BitBucket имеет:
- встроенные обсуждения;
- pull-запросы;
- wiki;
- сравнение веток и история коммитов.
Плюсы использования Bitbucket
1) Cтоимость. Bitbucket предоставляет неограниченное количество частных репозиториев ( до 5 соавторов);
Тарифы Bitbucket ( Cloud ):
2) Гибкость. BitBucket может импортировать из Git, CodePlex, Google Code, HG, SourceForge и SVN. В то же время как GitHub ограничен Git, SVN, HG и TFS;
3) Умный семантический поиск. Мелочи могут иметь все значение. Поиск BitBucket сканирует синтаксис, чтобы найти определения, которые соответствуют запросу, а не только имена переменных;
4) Интерации. BitBucket имеет интеграци с HipChat, Trello, Bamboo, JIRA, Slack, Zapier, Bitium, Flowdock.
Из минусов можно выделить:
- не интуитивно понятный интерфейс ( например, в сравнении с GitHub).
 
В целом: Bitbucket отличный инструмент для контроля версий и обработки ошибок, позволяющий интегрировать различные инструменты и сотрудничать с командами, отличная альтернатива, которую стоит попробовать.
Используется такими компаниями, как BBC Worldwide, Alibaba, AVG, Avast, Blackberry, и др.
2. Gitlab
 Git
Плюсы использования GitLab
- балансировка нагрузки базы данных;
 - механизм отслеживания ошибок;
 - мониторинг сервера GitLab;
 - редактирование файлов в веб-интерфейсе;
 - встроенная возможность непрерывной интеграции и развертывания (CI/CD);
 - импорт, экспорт проектов;
 - учет рабочего времени;
 - авто DevOps;
 - доска тикетов.
 
Если говорить о стоимости, все зависит от того какие функции и возможности необходим для репозитория, GitLab имеет следующие тарифы:
Также в GitLab присутствуют self-managed тарифы:
Основные минусы касаются бесплатной версии:
- нет строки поиска;
 - нет гарантии производительности, часто снижается производительность;
 - ограничение пространства (10 ГБ);
 - нет защиты от DDoS и DNS атак;
 - обновления (и соответствующие простои) выполняются автоматически, и пользователи не могут планировать свое развертывание в более удобное время или избегать обновления.
 
Эти минусы устранены в любой платной версии GitLab.
GitLab используется такими компаниями, как IBM, Sony, NASA, Bayer, SIEMENS, и др.
3. WS Elastic Beanstalk
WS Elastic Beanstalk - это простая в использовании платформа для развертывания и предоставления облака, созданная Amazon. Решение предназначено для упрощения и ускорения процесса настройки приложений на веб-службах Amazon (AWS). Он поддерживает множество различных языков программирования, включая, помимо прочего, Python, .NET, Java, Ruby и PHP. Платформа построена на открытой архитектуре, поэтому пользователи могут развертывать приложения, не предназначенные специально для Интернета, в среде Elastic Beanstalk.
Плюсы использования Beanstalk
- инструменты проверки кода;
 - интегрируется с другими инструментами, такими как Zendesk, JIRA, FogBugz, Basecamp или Lighthouse;
 - Email & chat поддержка;
 - история изменений и журнал логов;
 - ночные резервные копии на AWS S3 аккаунт;
 - развертывание на нескольких серверах одновременно.
 
Минусы в работе Beanstalk
отсутствие бесплатного использование на длительное время;
- AWS Elastic Beanstalk поставляется с новым обновлением стека, но не сообщает о том, что нового.
 - иногда развертывание происходит медленно.
 
В Beanstalk бесплатная версия только на первые 2 недели, выбор платных тарифов зависит от количества пользователей, количества репозиториев, выделенного объема памяти для хранилища и предоставленного функционала.
Тарифы Beanstalk:
Beanstalk помогает легко управлять инфраструктурой AWS. EBS предлагает точный контроль, который помогает выбирать между различными технологиями, которые наиболее полезны для пользователя. Elastic BeanStalk - хороший выбор, как для личного использования, так и для бизнеса.
Beanstalk используется такими компаниями, как PHILIPS, Intel, Citrix, и др.
4. RhodeCode
RhodeCode - это платформа управления исходным кодом предприятия для репозиториев Mercurial, Git и SVN. Он также предоставляет веб-интерфейс и API-интерфейсы для управления доступом к исходному коду, управления пользователями и проверки кода.RhodeCode написан на Python с использованием Pylons Framework. Он запускается как отдельное размещенное приложение на выделенном сервере (или в частном облаке) для управления несколькими хранилищами.
Плюсы использования RhodeCode
- инструменты для расширенного обзора кода;
 - масштабируемый поиск кода по всем репозиториям;
 - поддержка Mercurial, Git и Subversion;
 - pull-запросы;
 - единая корпоративная аутентификация: LDAP + Groups, AD, CAS, Google, Oauth, 2-FA;
 - визуальный журнал изменений и графлог;
 - имеет много интеграций с разными инструментами, например, JIRA, Redmine, Trello, Jenkins, Bamboo, Confluence ( wiki ), Slack, HipChat, и др.
 
RhodeCode можно использовать бесплатно, но в платной версии представлено больше возможностей.
Тарифы RhodeCode
Из минусов можно выделить:
- есть трудности в поддержке и обновлении;
 - не очень понятна документация, в случае неполадки, ее трудно устранить;
 - недоступно для macOS;
 - сложная структура кода.
 
Функции RhodeCode очень похожи на GitHub и BitBucket. Это не означает, что RhodeCode не может работать как отдельное приложение на своем сервере. Платформа постоянно улучшается, добавляя все больше и больше индивидуальных инструментов для самостоятельного администрирования. Если вы ищете удобную утилиту для переключения между разными платформами, то это он.
RhodeCode используется такими компаниями, как SAMSUNG, HITACHI, LEGO и др.
5. Gogs
Gogs (Go Git Service) - это сервис Self Hosted Git, создан китайскими разработчиками, написанный на языке программирования Go.Gogs имеет минимальные требования к системе и может работать на недорогой Raspberry Pi. Некоторые пользователи даже запускают Gogs на своих устройствах NAS. Интерфейс Gogs похожий на интерфейс GitHub, если ранее использовали GitHub, будет комфортно перейти и работать с Gogs.
Плюсы использования Gogs
- легкий в установке и настройке;
 - хронология деятельности;
 - протокол SSH / HTTP (S);
 - распространяется по лицензии MIT;
 - поддержка аутентификации SMTP / LDAP;
 - имеет отличную производительность даже при небольших ресурсах (например, оперативной памяти);.
 - трекер отслеживания проблем и webhooks;
 - вход в учетную запись (GitHub, Google, QQ, Weibo).
 
Gogs является полностью бесплатным клиентом для управления репозиториями.
Минусы при работе с Gogs
- отсутствие встроенного инструмента проверки кода;
 - Gogs поддерживает только систему управления Git;
 - проект управляется только одним человеком. Разработка остановится, если он по какой-то причине перестанет поддерживать проект.
 
Gogs используется такими компаниями, как Sapian, Codemen, Fabric8, и др.
По возможностям Gogs уступает своим собратьям, но если вас не интересует конкретный функционал или привлекает легкость использования и безоплатное пользование, тогда Gogs идеальный вариант.
Git-репозиториев существует много, но какой выбрать вам зависит от конкретных пожеланий до системы, приоритетов в использование, задач, которые вы хотите исполнять на сервисе. Команда ГиперХост использует Bitbucket ( не в целях рекламы) за его надежность, стабильность и ценовую политику. На нашем хостинге вы можете развернуть любой Git-репозиторий в панели Сpanel.