Git-сервер#
В этом разделе мы узнаем:
для чего нужен Git-сервер;
чем Git отличается от GitHub и GitLab;
в чем отличие между публичным и приватным хранилищем;
на какие сервера можно выкладывать свои проекты программ;
Фактически, хранилище – это каталог служебных файлов, обслуживаемый программными инструментами Git. Взаимодействие между каталогом и программой происходит на одном компьютере и поэтому не вызывает проблем. Но для командного взаимодействия хранилище должно быть доступно в сети. Поэтому его переносят на серверную машину. Чтобы данные хранилища стали доступны другим компьютерам, на серверной машине запускают Git-сервер, который обслуживает запросы, исходящих от Git-клиентов на других машинах.
Удаленное Git-хранилище – это место для хранения, накопления программного кода и обмена им с другими участниками проекта. Процессы разработки строятся вокруг хранилища, а иногда и управляются им. В список наиболее важных процессов входят:
отслеживание ошибок;
автоматическая сборка программы;
документирование проекта;
сопровождение сайта проекта;
автоматическая публикация программы.
Git-сервер с вышеперечисленными сервисами формирует платформу для хостинга и совместной разработки IT-проектов. К таким платформам относятся:
Разработчикам-одиночкам и небольшим командам выгодно использовать готовую платформу. При этом отпадает покупка или аренда физического сервера и его обслуживание. Платформа GitHub предлагает бесплатную услугу по размещению проектов под управлением Git. За дополнительную плату можно получить расширенные возможности ее сервисов. Подавляющее большинство программ с открытым исходным кодом размещаются на платформе GitHub.
Все проекты разработки открытого ПО относятся к публичным: любой желающий может загрузить на свой компьютер исходные коды программы. Частные и коммерческие проекты чаще всего являются приватными, т.е. закрытыми. Доступ к исходным кодам есть только у участников проекта. GitHub позволяет создавать приватные проекты, в которых доступ к хранилищу происходит по разрешению сопровождающего лица. Но сервисы GitHub являются закрытыми и работают только на серверах самой организации. Не все компании могут позволить себе перенести свои исходные коды на неконтролируемые ими сервера. Для таких случаев существует проект GitLab в рамках которого создается ПО для обслуживания процессов разработки программ.
Проект GitLab предлагает альтернативу GitHub. Это не только платформа для хостинга IT-проектов, но и программный сервер для запуска частной платформы.
Перечислим открытые проекты, размещенные на платформах GitHub и GitLab.
Проекты, размещенные на платформе GitHub:
Проекты, размещенные на платформе GitLab:
Проекты, размещенные на серверах разработчиков под управлением GitLab: