Страницы

Поиск по вопросам

суббота, 14 декабря 2019 г.

Принцип работы GitHub и ему подобных

#git #github


Стало интересно, каким образом хранятся проекты на серверах и как происходит с ними
работа.
Тут описано как настроить свой сервер для хранения git проектов. Может ли быть, что
по подобной схеме устроены сервисы на подобии GitHub?

Надеюсь у кого то есть информация или ссылки по этому вопросу.
    


Ответы

Ответ 1



По ссылке на сайт гита приведено достаточно информации. Подобные сайты обычно: хранят bare версии репозитория (то есть, без рабочего каталога, только содержимое .git каталога. git поддерживает это "из коробки"). Хранят обычно прямо в файловой системе. предоставляют интерфейс пользователя, что бы просматривать репозиторий, проводить действия с ним. Для этого используется: либо библиотека libgit2 (у нее есть обвязки к разным языкам) либо консольные команды (у гита даже есть специальный ключ у многих команд --porcelain, который делает вывод простым и предсказуемым для парсинга, с версионированем) либо прямой доступ к файлам гита (они просты, так что в большинстве случаев все легко, но возможны подводные камни) или комбинируют указанные способы дают различные "фишки": просмотр diff мердж статистика CI решают проблему разделения прав управления ключами и пользователями обработка запросов от гита на проверку ключа (на самом деле не гита, а ssh клиента, настроенного специальным образом или http)

Комментариев нет:

Отправить комментарий