Github Pages это хостинг статических стайтов. И у него есть два режима работы:
1. Хостинг из указанной ветки
Можно руками закоммитить содержимое папки
build в какую-то ветку, и выбрать эту ветку в качестве источника в настройках репозитория в разделе Pages.
Это можно частично автоматизировать с помощью, например,
этого инструмента.
Вот пример команды для развертывания проекта на основе CRA (Create React App)
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"deploy": "npm run build && gh-pages -d dist"
}
2. Хостинг артефактов
Можно полностью автоматизировать сборку и развертывание при коммите в репозиторий, написав сценарий с помощью Github Actions. В этом случае нужно выбрать Github Actions в качестве источника в настройках репозитория в разделе Pages.
Вот пример автоматизации развертывания проекта на основе CRA
Вот пример автоматизации развертывания проекта на основе NextJS
В этих примерах сценарии максимально упрощены. В реальных проектах сценарии сборки и развертывания чуть сложнее. Но эти сценарии вполне можно использовать как есть для работы над небольшими пет-проектами.
В обоих случаях в репозитории лежит
исходный код. Но в первом случае
собранный код лежит в отдельный ветке, а во втором случае
собранный код лежит где-то во внутреннем хранилище Гитхаба.
Я рекомендую автоматизировать развертывание. Happy hacking!