В этой статье я хочу разобрать, какая разница между GitHub и GitLab, и что лучше выбрать для хранения и работы с вашими проектами.
Также посмотрите статью «Что такое отладка программы в разработке»
Что такое GitHub и GitLab:
Для начала расскажу для чего эти сервисы нужны, и вообще что это такое.
Это просто по сути сервисы для хранения исходного кода программ, больше в них не чего такое интересного нет, ну кроме удобных фишек для разработчиков.
Различия между GitHub и GitLab:
Я не буду рассказывать о схожастях между GitHub и GitLab, вместо этого хочу рассказать именно об отличиях, на мой взгляд это важнее.
- Встроенная непрерывная интеграция — GitLab известен своей бесплатной встроенной непрерывной интеграцией, которую GitHub не предлагает. Вместо этого GitHub предлагает сторонние интеграции, которые обеспечивают непрерывную интеграцию.
- Аутентификация — В GitLab разрешение предоставляется на основе ролей людей, в то время как в GitHub разработчики могут предоставлять доступ на чтение или запись к определенным репозиториям.
- Импорт/экспорт данных — GitLab предлагает гораздо более подробную документацию о том, как импортировать/экспортировать данные от внешних поставщиков, в то время как документация второго не такая подробная. GitLab способен импортировать проекты и проблемы из большего количества источников, чем GitHub. При этом GitHub предлагает инструмент под названием GitHub Importer для ввода данных. Что касается экспорта, GitLab предлагает комплексное решение для экспорта вики, репозиториев проектов, загрузки проектов, веб-хуков и сервисов, а также проблем. С другой стороны, GitHub немного более ограничен с точки зрения возможностей экспорта.
- Платформа развертывания — GitHub не поставляется со встроенной платформой развертывания и требует сторонней интеграции с внешним приложением для развертывания приложений. С другой стороны, GitLab использует Kubernetes для беспроблемного развертывания.
- Частные репозитории — GitLab предлагает бесплатные частные репозитории для проектов с открытым исходным кодом, а GitHub — нет.
- Отслеживание комментариев — GitHub способен предоставить полную историю обновлений комментариев — GitLab не поддерживает это.
- Экспорт файла CSV — GitLab способен экспортировать файлы CSV с проблемами на адреса электронной почты уведомлений по умолчанию в виде вложений.
- Конфиденциальные вопросы — Модуль GitLab Confidential Issues создает конфиденциальные проблемы, которые видны только участникам проекта с уровнем доступа Reporter или выше.
- Графики выгрузки — В отличие от GitHub, второй предлагает Burndown Charts как часть этапов, которые позволяют разработчикам отслеживать прогресс во время спринтов или при работе над новыми версиями программного обеспечения.
- Циклическая аналитика — GitLab предоставляет панель мониторинга для анализа времени, планирования и мониторинга.
- Ежемесячные новые функции — GitLab известен своими ежемесячными обновлениями новых функций и улучшений, которые неукоснительно делаются 22-го числа каждого месяца.
Это были все основные различия.
Что касается схожести, то они оба предлагают систему меток или можно написать документацию документацию.
Вывод:
Как видите, разница между Github и Hitlab есть, но из-за возможности сделать свой частный репозиторий и ежемесячных новых функции, я выбираю второе, но из-за того, что GitHub более популярен, приходится пользоваться им.