LINUX.ORG.RU

Беглый обзор двух сервисов хранения git-репозиториев: GitFlic и GitVerse

 , ,


0

2

GitFflic

Облачный сервис хранения репозиториев исходного кода Gitflic в данный момент является частью инфраструктуры «Группы Астра». Он предлагает конечному пользователю для работы в качестве решения «Облачную инфраструктуру» (SaaS) и вариант для развёртывания «Собственного сервера» (Self-hosted) - оба варианта доступны в том числе и для бесплатного использования, с некоторыми ограничениями возможностей по сравнению с платной версией. При использовании облачного сервиса в бесплатном тарифе размер репозитория ограничен 4 Гб, с размером коммита не превышающим 100 Мб и количеством участников приватного проекта до 5 пользователей, в публичном разрешено безлимитное количество участников.

На главной странице сервиса заявлены следующие возможности (версия 3.2.1):

  • Настройка и запуск автоматического тестирования исходного кода;
  • Статический анализатор;
  • Автоматизация процесса сборки, подготовки релизов, дальнейшего развёртывания и интеграции;
  • Сбор статистики и багтрекер;
  • Реестр контейнеров и пакетов для совместного использования в качестве зависимостей.

В документации поддерживаемые сервисом возможности описаны подробнее.

Зарегистрироваться (и авторизоваться) в сервисе можно как традиционным способом, указав почту и задав пароль, так и используя «Яндекс ID» или «VK ID». Выбор последних двух не удивителен, учитывая, что на сегодняшний день это одни из крупнейших IT компаний на территории РФ, предоставляющих множество собственных сервисов различной направленности.

Сразу после регистрации с помощью e-mail и пароля доступно создание «Приватного проекта» или импорт внешних репозиториев в качестве приватного проекта. Для создания публичных проектов необходимо авторизоваться с помощью OAuth2 (ВК/Яндекс) в настройках личного кабинета - в разделе «Подтверждение аккаунта». Имеется поддержка двухфакторной авторизации с помощью «Authy», «Яндекс ключ», «Google Authenticator», «Microsoft Authenticator».

При этом в настройках двухфакторной аутентификации отмечают, что при включённой двухфакторной авторизации становится невозможными действия с репозиторием по HTTPS протоколу. Для взаимодействия необходимо использовать SSH протокол.

При создании нового проекта предлагают выбрать владельца; ввести название проекта; выбрать «язык программирования»; задать URL проекта; задать описание; отметить нужно ли инициализировать проект с добавлением файла README.md, добавить .gitignore шаблон, добавить конфигурацию CI/CD контейнеров.

При импорте внешнего репозитория предлагается указать ссылку на git репозиторий; если нужно указать логин и токен; выбрать владельца; ввести название проекта; выбрать «язык программирования»; задать URL проекта; задать описание.

После создания или импорта внешнего репозитория в настройках «Опасной зоны» можно изменить видимость репозитория (сделать его публичным или снова приватным); отключить запрет force-push; передать репозиторий другому пользователю, команде или компании; сделать репозиторий PUSH зеркалом; удалить репозиторий.

В настройках аккаунта можно добавить SSH-ключ для доступа к репозиторию (на странице настройки заявлено: На данный момент тип шифрования RSA не поддерживается!) и GPG-ключ для подписи коммитов. После добавления GPG ключа, коммиты в репозитории отображаются как «Верифицированные». Замечу, что для push в итоге я использовал именно RSA-ключ, либо я что-то не так понял при просмотре его свойств.

Также в настройках можно будет включить интеграцию репозитория с Telegram и Jira.

Клонирование, например, зеркала portage дерева Gentoo заняло примерно 4 минуты. Закончилось оно почему-то сообщением, о какой-то ошибке заполнения форм, но репозиторий был склонирован успешно. Открытие списка истории коммитов этого репозитория отображается у меня секунд через 20 (в репозитории больше 870 тыс. коммитов). Если кому-то время импорта показалось долгим, то тот же репозиторий в Gitlab импортировался ~4.5 минуты. Bitbucket справился за ~2.5 минуты

Gitverse

GitVerse — платформа для работы с исходным кодом, Git-репозиторий - платформа, разработанная компанией «СберТех» (дочерней структурой «Сбер»).

На заглавной странице пользователю представляют поддержку следующих возможностей платформы:

  • Gigacode - AI-ассистент для помощи в разработке;
  • GigaIDE - IDE на базе JB Idea/Pycharm Community, с дополнительными инструментами разработки, тестирования, администрирования + AI-ассистент Gigacode;
  • GigaIDE Cloud - облачный вариант IDE;
  • CI/CD-платформа с поддержкой AI;
  • Трекер GitVerse для управления процессами и задачами;
  • Вики - инструмент для создания статей и инструкций;
  • Хранение артефактов (внешних пакетов зависимостей и контейнеров);
  • Образовательная экосистема SmartClass.

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

В наличии имеется страница «Зеркала репозиториев» некоторых проектов, размещённых на Github, для возможности синхронизации вместо исходного сервера.

Документация предлагает ответы на основные вопросы по работе на платформе.

Регистрация на текущий момент возможна с помощью «Сбер ID», что ожидаемо, или с помощью создания аккаунта (e-mail/пароль) на платформе-партнёра Cloud.ru - телефонный номер для подтверждения всё равно запросит. На странице дорожной карты пишут, что планируется добавить способы авторизации через популярные ID-сервисы и добавить поддержку 2FA.

В настройках аккаунта можно задать пароль, который можно будет использовать для работы с git репозиторием по HTTPS и для удаления аккаунта. Авторизоваться в сервисе с помощью этого пароля, по крайней мере при регистрации с помощью «Сбер ID», нельзя.

В настройках аккаунта можно добавить SSH-ключ для доступа к репозиторию. Добавление GPG-ключей для подписи коммитов пока не предусмотрено. Можно добавить токены для доступа к API GitVerse.

После регистрации доступно создание публичных и приватных репозиториев. Какие на них существуют ограничения по объёму я не нашёл, возможно, что их и нет, но на импортируемые репозитории с других сервисов заявлено ограничение 16 Гб.

При создании нового репозитория предлагают выбрать владельца; ввести название репозитория; задать описание; отметить сделать ли репозиторий шаблоном, отметить нужно ли инициализировать проект с добавлением файла README.md, добавить .gitignore.

При импорте внешнего репозитория предлагают выбрать сервис с которого будет производиться импорт: Gitgub, Gitlab, Github, «другой Git сервис», выбрать владельца нового репозитория, ввести название репозитория; задать описание; указать токен для получения данных приватного репозитория (если нужно).

СберТех располагает достаточно обширными мощностями и возможностями масштабирования платформы, поэтому импорт занял около 3 минут и список коммитов отображается у меня меньше чем через 3-4 секунды - примерно так же на зеркале Github. Bitbucket чуть шустрее (где в Bitbucket добавить GPG-ключ, я не нашёл).

На странице репозитория рядом с кнопкой действия в раскрывающемся меню есть дополнительные пункты «Открыть в VSCode», «Открыть в VSCodium», «Открыть в IntelliJ IDEA» - что при этом происходит не проверял.


P.S.
Как клонировать приватные репы через SSH с нуля? Например, через git clone git@github.com:user_name/provate_repo_name.git не получилось, хотя для этого же репозитория в соседнем внешнем каталоге по SSH успешно происходит push.

★★★★★
Ответ на: комментарий от Eulenspiegel

А как быть с регистрацией?

Регистрация там не сложнее аналогичных сервисов.

Ты соглашения читал, чтобы код выкладывать?

Читал, ничего необычного там нет.

grem ★★★★★
() автор топика

Самое главное не написал: как называется главная ветка по умолчанию - master или main?

Beewek ★★★
()
Ответ на: комментарий от Beewek

Не проверял :( Я импортировал уже существующую репу (форк репы), там master был.

В документации обоих сервисов примеры команд с названием ветки master приводятся.

grem ★★★★★
() автор топика
Ответ на: комментарий от grem

Да это я так, шучу. Спасибо за обзор, полезно. Огорчает, что везде нужен либо телефон либо oauth2. Пока повременю с переходом.

Beewek ★★★
()
Ответ на: комментарий от Beewek

по умолчанию - master или main

Предпочитаю trunk. :)

dataman ★★★★★
()
Ответ на: комментарий от Beewek

У меня своих реп и проектов нет, поэтому я просто глянул, перехода у меня не было. Так то у меня и на gitlab, sourceforge, bitbucket аккаунты есть - на первых двух больше для писанины в багтрекер пары проектов, если возникает необходимость.

Забавно, что на gitverse, среди прочих github-зеркал, есть зеркало дерева portage от gentoo.

На gitflic я регистрировался давно и телефон не помню нужен ли был, но без него (т.е. без ID его подразумевающих), получается, можно только приватные репозитории создавать.

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

grem ★★★★★
() автор топика
31 декабря 2024 г.

А что на счет «безопасности» в gitflic и gitverse ? «Чужой» пользователь может нагадить в моем репозитории?

megavoltt2024
()

Для создания публичных проектов необходимо авторизоваться с помощью OAuth2 (ВК/Яндекс) в настройках личного кабинета

Регистрация на текущий момент возможна с помощью «Сбер ID»

Ясно.

MagicMirror ★★
()
Ответ на: комментарий от serg002

Ты имел в виду «все скрепно-защемлённые»? Одна из причин почему они не нужны, при наличии нормальных аналогов.

MagicMirror ★★
()
Ответ на: комментарий от MagicMirror

Эти сервисы были созданы, чтобы при отключении рубильника юзверь не остался у разбитого корыта. А вообще у некоторых людей всегда модно отечественное хаить, а забугорное боготворить. Только забугорное цифровое используется как один из инструментов в войне и забугорное всегда при моменте Х готово кинуть нас и будь оно в стотыщ мильёнов лучше, есть варианты, что оно превратится в тыкву

serg002 ★★★
()
Последнее исправление: serg002 (всего исправлений: 1)

на странице настройки заявлено: На данный момент тип шифрования RSA не поддерживается!

based

Lrrr ★★★★★
()
Ответ на: комментарий от Lrrr

Ну, гитлаб, так-то, тоже перестал поддержвивать, правда, не так радикально, а лишь с маленькой битностью.

Но, прозреваю я, в оригинальной новости акцент не туда, а в сторону openssl_gost какого-нбудь. Не проверял.

// Troll-mode: on
а где вход через госуслуги?! неужели, не реализовано?!
// Troll-mode: off

aol ★★★★★
()
Ответ на: комментарий от aol

Доступные типы шифрования

RSA_SHA512

SSH_ED25519

ECDSA-SHA2-nistp256

причем RSA-ключи успешно добавляются в веб-интерфейсе, но потом при коннекте

$ ssh -i ./test -T git@gitflic.ru
GitFlic не поддерживает данный вид ssh взаимодействия с сервером

прямо по-русски фигачат в консоль))

фигасе, у них там еще есть какой-то реестр deb-пакетов. Можно собирать свои пакеты (подписанные твоим ключом) и хостить репу чтоли? А вот это неиронично очень полезная вещь, у всяких гитлабов я про такое не слышал.

Lrrr ★★★★★
()
Последнее исправление: Lrrr (всего исправлений: 1)
Ответ на: комментарий от Lrrr

В гитлабе тоже есть только до сих пор за флагом прячется.

Я лет десять назад для этого aptly освоил, но там одна беда - автор (москвич, вроде даже) слился, а к власти пришли какие-то мутные люди из швейцарского велобизнеса.

Вощем, форкнуть пришлось, в итоге.. 🤣

aol ★★★★★
()

На GH есть удобная «фича» - при просмотре кода, при клике по функции, сразу происходит поиск по репе, и показывает места, где эта функция опрелена и используется, тут есть что-то аналогичное?

xterro ★★★★★
()
Ответ на: комментарий от xterro

Замечание-комментарий: оно вроде и удобно, но из-за таких удобств браузер и превращается в жрущую как не в себя виртуальную машину на минималках.

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

Не особо, поиск идет по текущему файлу, для поиска по проекту в целом, там есть кнопочка «Search for this symbol» под текущими результатами. Вот этот поиск идет на серверах GH, открывается в отдельном окошке и особо не заметно, чтобы он превращал браузер в «жрущую виртуальную машину». Просто удобно было бы иметь аналогичный функционал на наших площадках.

xterro ★★★★★
()
Последнее исправление: xterro (всего исправлений: 2)
Ответ на: комментарий от xterro

Не особо,

Потом вы ещё чего-нибудь захотите и сами не заметите, как github превратился в IDE в браузере. Тем более, там и компилировать, и тесты гонять можно не отходя от кассы через github actions.

поиск идет по текущему файлу,

Для этого нужно текущий файл разобрать. А для контекстно-зависимой грамматики это может быть непросто.

ugoday ★★★★★
()

Облачный сервис хранения репозиториев исходного кода Gitflic в данный момент является частью инфраструктуры «Группы Астра».

Вон оно чо, Михалычь (с)

Продолжаем наблюдение.

x22 ★★
()
Ответ на: комментарий от x22

Были сами по себе, это их потом купили, вернее сказать продали.

LINUX-ORG-RU ★★★★★
()

Второй день играюсь на локалхосте с Self-hosted GitFlic.

Вопрос: если я декомпилирую (vineflower) их gitflic.jar обратно в исходники, чтобы посмотреть как там оно внутри - я же ничего не нарушаю?

В мире Java так вообще бывает - взять jar, развернуть в код, внести изменения, собрать обратно?

Toxo2 ★★★★
()
Ответ на: комментарий от Toxo2

ГК РФ Статья 1280. Право пользователя программы для ЭВМ и базы данных

Но насколько это актуально надо уточнять. Я не особо в курсе.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от Toxo2

я же ничего не нарушаю?

На СВОЕЙ машине можно ковыряться, как хочешь: никому дела вообще нет. Как только исходники начнут появляться в публичном пространстве или ты начнёшь распространять модифицированные версии, которые без декомпиляции невозможны - это уже наказуемо (для этого, собственно, эти пункты в лицензиях везде и написаны).

SkyMaverick ★★★★★
()
Ответ на: комментарий от SkyMaverick

Понятно.

Т.е. получается если, допустим, смотреть в сторону «установлю в контору и допилю под конторские нужды своих плюшек», то GitLab со своей MIT гуманнее.

Toxo2 ★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.