Repo Workflow для bootcamp
Универсальный flow для большинства задач bootcamp. Исключения: JS30 (общий курсовой репо) и HTML Builder (template-репо).
Стандартный flow
1. Создать публичный репозиторий
- Имя: как требует задача (например,
cssMemeSlider,shelter,podcast-player,not-fight-club,async-race) - ✅ Public
- ✅ Initialize with README (создаёт
mainветку)
2. Структура веток
main ← дефолтная, README + .gitignore
└── <task-name> ← рабочая ветка для разработки
└── gh-pages ← деплой-ветка
Пример для Shelter (3-частевой):
main
└── shelter ← Part 1
└── shelter-part2 ← Part 2 (создаётся от shelter)
└── shelter-part3 ← Part 3 (создаётся от shelter-part2)
После каждой части — мержишь обратно в shelter. Никогда не мержим в main.
3. Папка с задачей
В рабочей ветке создаёшь папку с именем задачи:
<repo-root>/
├── README.md
└── <task-folder>/
├── index.html
├── styles/
├── scripts/
└── assets/
4. Деплой на gh-pages
См. gh-pages деплой. URL формата:
https://<user>.github.io/<repo>/<task-folder>/index.html
5. Открыть PR
- Из рабочей ветки в
main - Имя PR = имя задачи
- Описание по PR Description Schema
- НЕ мержить! PR остаётся открытым для ревьюеров
6. Сабмит
- Ссылка на PR → rs app → Cross-Check: Submit
Особенности
JS30 (Week 5)
- Работаешь в общем курсовом репо, тебя добавляет куратор как collaborator
- Своя ветка вида
<github-login>/<task-slug>, напримерjohndoe/drum-kit - Папка
students/<github-login>/<task-slug>/ - PR в
mainкурсового репо, не мержить - Netlify Preview Bot делает preview URL автоматически
HTML Builder (Week 9-10)
- Создаёшь репо из template-репозитория через Use this template
- Имя:
HTML-builder, публичный npm install(ESLint, Prettier, Node typings — единственные допустимые dev-зависимости)- PR из рабочей ветки в
main, не мержить
Async Race (Week 11-14)
- Сервер-мок надо клонировать отдельно: https://github.com/mikhama/async-race-api
- Запуск сервера локально, фронт деплоить на gh-pages/Netlify
- На момент cross-check ревьюер сам поднимает сервер — твоя задача только фронт
Чек-лист перед сабмитом
- Репо публичный
- Деплой открывается в incognito
- Console без ошибок
- PR в
main, открытый - PR description по схеме
- Коммиты по convention с timestamp
- История коммитов отражает реальную работу (не один dump-коммит)
- Сабмит сделан в rs app