Codenrock
УчастникСредний7 мин

GIT: Работа в репозитории

Как работать с GIT-задачами — репозиторий команды, клонирование, push и история

GIT: Работа в репозитории

GIT-задачи — это задачи, где каждая команда получает собственный Git-репозиторий для разработки проекта. Репозиторий создаётся автоматически как fork шаблона организатора.

Когда используется

  • Хакатоны с командной разработкой
  • Проектные соревнования
  • Задачи с автоматической проверкой через CI/CD
  • Задачи с code review

Поддерживаемые провайдеры

Репозитории могут размещаться на:

  • GitLab (включая self-hosted)
  • GitHub
  • SourceCraft

Провайдер выбирается организатором при настройке задачи.

Интерфейс GIT-задачи

На странице задачи отображается блок с состоянием репозитория.

Статусы репозитория

СтатусОписание
Не настроеноОрганизатор ещё не настроил Git-интеграцию
Не готовоИнтеграция настраивается
Нет командыВы не в команде — нужно вступить или создать
СоздаётсяРепозиторий создаётся, подождите
ОжиданиеРепозиторий в очереди на обработку
ГотовРепозиторий готов к работе
ОшибкаЧто-то пошло не так (обратитесь к организатору)
АрхивированКонкурс завершён, репозиторий заархивирован

Когда репозиторий готов

Вы видите:

  1. Ссылка на репозиторий — кликабельная ссылка, открывает веб-интерфейс репозитория в новой вкладке
  2. Clone URL — HTTPS-ссылка для клонирования с кнопкой копирования
  3. История push-ей — сворачиваемый список ваших коммитов

Примечание: При первом переходе по ссылке вы будете добавлены в репозиторий. Если у вас нет аккаунта на Git-провайдере, потребуется его создать.

Как работать с репозиторием

Шаг 1: Клонируйте репозиторий

Скопируйте Clone URL (кнопка копирования рядом) и выполните в терминале:

git clone <скопированный URL>
cd <название-репозитория>

Важно: Доступ по SSH не поддерживается — только HTTPS. При запросе пароля используйте Personal Access Token (PAT), а не пароль от аккаунта. Создать токен можно в настройках Git-провайдера (раздел Access Tokens).

Шаг 2: Разрабатывайте решение

Работайте как обычно — создавайте файлы, пишите код, коммитьте.

git add .
git commit -m "feat: add solution"

Шаг 3: Отправьте решение

git push origin main

После push на странице задачи в разделе «История push-ей» появится запись с:

  • Номером push-а
  • Именем автора
  • Веткой
  • Хешем коммита (ссылка на коммит)
  • Статусом CI/CD пайплайна (если настроен)

Привязка аккаунта Git-провайдера

В зависимости от провайдера может потребоваться привязка аккаунта:

OAuth (GitHub, SourceCraft)

  1. На странице задачи нажмите «Подключить аккаунт»
  2. Вы будете перенаправлены на страницу авторизации провайдера
  3. Подтвердите доступ
  4. Вернётесь на платформу с привязанным аккаунтом

SSO (GitLab self-hosted)

  1. Перейдите по ссылке на Git-провайдер
  2. Войдите через SSO
  3. Вернитесь на страницу задачи — доступ будет предоставлен автоматически

SourceCraft (инвайт)

Для SourceCraft может использоваться система инвайтов:

  1. На странице задачи появится кнопка «Принять приглашение»
  2. Нажмите — откроется страница SourceCraft
  3. Примите приглашение в организацию
  4. Вернитесь на платформу

CI/CD проверка

Если организатор настроил CI/CD пайплайн, ваш код проверяется автоматически при каждом push:

Статус пайплайнаЗначение
УспешноВсе проверки пройдены
ОшибкаПроверка не пройдена — смотрите логи в репозитории
ВыполняетсяПроверка в процессе

Результаты видны в истории push-ей и в самом репозитории.

Частые вопросы

В: Репозиторий не создаётся

О: Убедитесь, что вы в команде. GIT-задачи создают репозиторий для команды, не для отдельного участника.

В: Нет доступа к репозиторию

О: Перейдите по ссылке на репозиторий — при первом визите вы будете добавлены автоматически. Если не помогло — обратитесь к организатору.

В: Можно ли работать в ветке, а не в main?

О: Да, можно создавать ветки и использовать Merge Request/Pull Request. Но защита веток (какая ветка для push/merge) настраивается организатором.

В: Куда смотреть баллы?

О: Баллы за GIT-задачу выставляются организатором вручную или через CI/CD. Результат виден на странице трека.

В: Репозиторий заархивирован

О: Конкурс завершён. Архивированный репозиторий доступен для чтения, но push заблокирован.


Связанные статьи

Последнее обновление: 21.04.2026
К оглавлению