Files
tgit/docs/dev/WORKFLOW.md
T

2.4 KiB
Raw Blame History

Регламент работы

Откуда задачи

  • Только из Gitea Issues. Нет issue → завести → потом код. API: GITEA_API.md.
  • Зависимости между issue — через API Gitea, не текстом в теле.
  • Атрибуты issue: исполнитель, метка зоны (bot / ci / infra / llm / docs), тип (feature / fix / refactor / docs), размер (size/0.5 ≈ 2ч · size/1 ≈ 4ч · size/2 ≈ 1д).
  • Тело — по ISSUE_TEMPLATE.md.

Жизненный цикл задачи

1. Взял issue
2. git fetch origin && git switch -c <type>/<issue#>-<slug> origin/dev
3. Код по модулям; коммиты с Refs #N
4. git rebase origin/dev
5. lint + тесты
6. Лог в issue: ### YYYY-MM-DD
7. PR в dev с Closes #N
8. Мерж → ветку удалить

Репозитории

Gitea HSE/tgit (origin)  ──push-mirror (на каждый push)──►  SourceCraft rogachevegorushka/tgit
  код · issues · PR · ревью                                   CI/CD (.sourcecraft/ci.yaml)
  • Работаем только с origin (Gitea). Remote sourcecraft — для чтения/сверки.
  • ⛔ В SourceCraft не пушим, не мержим, PR не открываем: зеркало перезаписывает его целиком.
  • CI SourceCraft запускается пушем зеркала; результат смотрим там же (ссылка — в PR вручную или через бота, когда будет).

Ветки

main   (сдаваемая версия)   ←── мержит только человек
dev    (интеграция)          ←── сюда все PR
<type>/<issue#>-<slug>       ←── от dev

Коммиты — Conventional Commits

feat(bot): принимать .py-файлы и коммитить в репозиторий загрузок

Refs #12

Шаблон PR

## Что меняется
1–3 предложения.

Closes #<N>

## Как проверить
шаги/команды

## Чек-лист
- [ ] rebase на origin/dev
- [ ] lint + тесты зелёные
- [ ] секретов в диффе нет
- [ ] лог в issue дописан