Как правильно организовать деплой репозитория на сервер?
1. Имеется Gogs, гит сервис, в нём есть репозиторий.
2. На этом же сервере есть тестовый домен, куда должны выливаться файлы из dev ветки, после пуша изменений.
3. На другом сервере, есть продакшн домен, куда должны выливаться файлы из master ветки.
Собственно, я так понимаю, всё это реализуется через хуки?
Может есть "сборник" хуков?)
На обычный деплой пробовал такой:
#!/bin/sh
git --work-tree=/var/www/site.ru/data --git-dir=/var/www/gogs.ru/gogs-repositories/vlad/site.git checkout -f
Но я так понял, здесь не будут файлы удаляться. Как сюда ветку добавить? Чтобы смотрел только в dev ветку.
И не совсем понятно, как организовать ftp деплой на продакшн.