Git и GitHub на сервере
Git и GitHub на вашем DSH
У вас агент работает на сервере: файлы и git — в /root/projects/.... Это не «git на ноутбуке через Cursor».
Как устроен доступ к GitHub
| Способ | Статус у вас |
|---|---|
Токен GITHUB_TOKEN в /etc/dsh.env |
Основной |
MCP GitHub (remote Copilot MCP в cordis.patch.yml) |
Подключён |
OAuth-кнопка dsh-github-connect с ПК |
Не ваш путь (глава про это — «позже») |
| PAT в чат агенту | Запрещено |
Для push нужен PAT с правом repo. Remote в проектах обычно чистый https://github.com/org/repo.git; на сервере может быть insteadOf с токеном (см. playbook в репо dsh).
Типовые промпты
Только статус (Ask):
Покажи
git status, текущую ветку и последние 3 коммита. Ничего не меняй.
План ветки (Plan):
Нужно [фича]. Предложи имя
feature/...и список файлов. Пока не коммить.
Сделать и запушить (Agent) — только когда готовы:
Создай ветку
feature/[имя]. Внеси минимальные правки под [цель].
Закоммить понятным сообщением. Запушь на origin.
Вmainне пушь. Секреты не трогай. В конце: status, log -1, URL для проверки если есть.
Приёмка после git
- [ ] Ветка
feature/…, не случайный commit вmain - [ ]
git statusчистый или понятный - [ ] Push прошёл (или агент показал ошибку авторизации — чинить токен на сервере, не в чате)
- [ ] Diff без
.envи ключей
Деплой на другой VPS (где крутится сайт, например /opt/...) этим DSH сам по себе не делает, пока вы явно не настроите доступ. Часто агент только пушит в GitHub, а выкат — отдельным ритуалом на целевом сервере.
Если push не работает
- Токен read-only или просрочен → новый PAT с
repo, обновить/etc/dsh.env,systemctl restart dsh. - Нет сети / GitHub 2FA / SSO authorize для токена.
- MCP упал при старте — смотреть
/root/dsh.log(глава диагностики).
Не вставляйте новый токен в диалог с моделью — только в env на сервере.
Квиз по главе
Ответьте на все вопросы и сдайте квиз — сразу будет оценка и отсылки к тексту, где доучить ошибки.