При создании или обновлении бота на Bothost можно выбрать, из какой ветки Git-репозитория брать код. По умолчанию используется ветка main, но вы можете указать любую другую — например master, dev или release.
Это удобно, когда рабочий (стабильный) код лежит в одной ветке, а эксперименты — в другой: вы деплоите именно ту ветку, которая нужна.
Где узнать имя ветки в репозитории
Имя ветки — это то, что написано в самом Git-хостинге (GitHub, GitLab, Bitbucket). Открыть его можно в переключателе веток вашего репозитория. На GitHub нажмите на кнопку с названием текущей ветки (слева над списком файлов) — откроется список Switch branches/tags. Ветка, помеченная какdefault, используется по умолчанию, если вы ничего не измените.
В примере выше единственная ветка называетсяКак быстро узнать ветку по умолчанию:mainи она же является веткой по умолчанию (default). Именно это имя нужно указать в Bothost.
- GitHub — Settings → Branches → «Default branch».
- GitLab — Settings → Repository → «Branch defaults».
- Через терминал в самом репозитории:
git branch --show-currentКак указать ветку в Bothost
- В личном кабинете откройте форму создания бота.
- Найдите блок «Репозиторий».
- В поле Git URL репозитория вставьте ссылку на репозиторий, например
https://github.com/username/bot.git. - В поле Ветка укажите нужную ветку. Если оставить поле пустым, будет использована ветка по умолчанию —
main.
После этого нажмите Создать бота — Bothost склонирует и задеплоит код именно из указанной ветки.
Уже созданный бот меняется отдельно: откройте его настройки, вкладку «Репозиторий», укажите URL и ветку и нажмите «Сохранить и пересобрать». Токен бота, переменные и папка data/ остаются. Перед сохранением Bothost проверяет, что репозиторий открывается и такая ветка есть.
Ошибка: указана несуществующая ветка
Если в поле Ветка указать имя, которого нет в репозитории, сборка упадёт на этапе клонирования. В логах вы увидите примерно такое:fatal: Remote branch main not found in upstream origin
ERROR: clone failed with code 128main — это то имя, которое вы вписали в поле «Ветка». Ошибка означает, что в репозитории нет ветки с таким именем. Как исправить:
- Откройте переключатель веток на GitHub/GitLab и посмотрите, как точно называется нужная ветка.
- Учтите регистр:
main≠Main≠MAIN. - Проверьте, что нет лишних пробелов в начале или конце имени.
- Если сомневаетесь — оставьте поле пустым, тогда будет использована ветка по умолчанию.
Частые вопросы
Что будет, если оставить поле «Ветка» пустым?
Bothost возьмёт ветку по умолчанию —main.
Можно ли поменять ветку или репозиторий у уже созданного бота?
Да. Откройте настройки бота → вкладка «Репозиторий». Поле Репозиторий — URL (GitHub, GitLab, GitFlic и другой Git по HTTPS). Поле Ветка — точное имя, регистр важен (main и Main — разные ветки). Пустая ветка сохраняется как main. Кнопка «Сохранить и пересобрать» сначала проверяет доступ, затем собирает бота из нового источника. ID бота, домен, токен, переменные и папка data/ не сбрасываются.
Если ветки нет, сохранение не начнётся: в сообщении будет список веток, которые в репозитории есть.