Проекты с автодеплоем в первую очередь означают следующее:
1) Любой коммит в ветку dev будет автоматически перекачан на нашу DEV-площадку.
2) Любой коммит в ветку master будет автоматически перекачан на боевую площадку.
Отсюда вытекают 2 золотых правила.
1) НИКОГДА не коммитить в master напрямую.
2) master обновляется ТОЛЬКО из dev . Подразумеваются периодические merge, которые должны проходить по стратегии Fast Forward
Подробности про реализацию автодеплоя.
Автодеплой настраивается через digital-spectr.beanstalkapp.com . Этот сервис выкатывает изменения по FTP/SFTP протоколу.
beanstalkapp.com видит, что в коммите пришли, например, 3 файла и просто выкачивает их на ФТП. Т.е. нужно четко понимать, что на боевых серверах не обязательно стоит ГИТ! И мы не сможем зайти туда по ФТП и сделать checkout. Поэтому критически важно не косячить в плане правил работы с репозиторием!
Итак, предлагаемый алгоритм работы:
1) встаем на dev , пулим dev
2) Ветвимся от dev, делаем свою задачу на своей ветке
3) Коммитим, пушим свою ветку в центральный репозиторий. Коммиты и пуши своей ветки следует делать как можно чаще. По итогам дня - обязательно. Желательно коммитить и пушить с соотв. сообщениями после реализации каждого куска функционала своей задачи (сверстал > натянул -> еще что-то сделал)
Перед сливанием своей ветки в dev:
-встаём на dev, пулим dev
- встаём на свою ветку, пулим dev (после этого пула убедиться, что ваши наработки по задаче не затерты и конфликтов нет)
- merge своей ветки в dev (это должно проходить без конфликтов, если вы сделали предыдущие пункты)
- пушим dev
После манипуляций со своим реозиторием и пуша в dev настоятельно рекомендуется проверить корректность отправленных коммитов через beanstalkapp : http://prntscr.com/fucvm4 - туда должны попадать файлы по вашей задаче.
Обязательно проверяем функционал на нашей dev площадке.
Если всё ок - можно выливать в master(только для старших разработчиков). Делать это следует через beanstalkapp . Заходим на страницу веток: http://prntscr.com/fucvsy . Нужно убедиться, что ветка master и dev не конфликтуют и после этого можно жать Merge. После этого dev замержится в master (это будет видно по истории коммитов).
====================
Пара слов про отладку деплоя.
Смотреть что и как выкатывается можно во вкладке Deployments (http://prntscr.com/fucwch). Там будут видны подключенные сервера для деплоя. При переходе в конкретный сервер можно увидеть историю ВСЕХ деплоев (т.е. подразумеваются деплои по ФТП, которые проводит beanstalkapp). В информации о конкретном деплое можно увидеть:отправленные коммиты, список отправленных файлов.
===============
P.S. все коммиты в dev в 99% случаев будут выкатываться на нашу площадку автоматически.
На отдельных проектах выкатка на боевой сервер происходит "По кнопке": http://prntscr.com/fucw5w . Сделано это специально, чтобы можно было контролировать процесс обновления боевой площадки. Актуально для проектов, где работа идёт большими блоками