Как работать с проектом на git в phpStorm на тестовом сервере?
Имеется боевой сайт и его копия где веду разработку. На обоих подключен гит.
Сейчас работа выглядит так. Через php storm подключаюсь по sftp, выполняю работу. Через ssh веду работы с гитом, пушу изменения, а на боевом сайте забираю эти изменения.
Работать с гитом через ssh не очень удобно особенно когда возинкают конфлиты при мержах на тестовой среде(приходится ручками искать елочки и оставлять нужное). Поэтому хотелось бы работать с проектом локально но каким-то образом синхронизировать файлы с тестовой средой.
Пробовал настраивать синхронизацию файлов по фтп, но при переключении веток у себя локально в шторме на фтп не летят изменения (хотя если начать править файлы локально то они синхронизируются с фтп).
Подскажите какие варианты есть правильной работы в связке git+phpStorm+тестовая среда.
P.S. Вариант с ведением разработки на локальном сервере не рассматриваю.
Добрый вечер.
Дополню ответ Генри.
Пишите тесты, unit, functional, делайте push мелкими коммитами, не создавайте долгоживущих веток.
Настроить ci/cd можно и на git и на bitbucket и при помощи jenkins.
Есть серия скринкастов у Елисеева, где он подробно, с рабочими примерами показывает как это делать.
Основы ci/cd в бесплатных видео, ну а подробные, к сожалению, за небольшую денежку.
Попробуй посмотреть в сторону CI/CD подхода.
Условно, это когда некий скрипт мониторит изменения, которые ты запушил в репу. И автоматически (или по кнопке) запускает процесс заливки на нужный сервер (тестовый и/или прод). Туда же можно добавить прогон тестов и сборку.
Тоесть процесс будет например такой: локальные правки -> пуш в ветку разработки репозитория -> синк с тестовой средой -> если всё ок - пуш в мастер -> синк с продом.