Как правильно деплоить проект на тестовый сервер+git из phpstorm+git?
С GIT`ом плотно никогда не работал, обычно он был локальный только. Да и проекты, с отдельным тестовым сервером, продакшеном и гитом, не приходилось настраивать.
Сейчас делаю такую связку
1. Продакшн-сервер и GIT на нем
2. Тестовый сервер и GIT на нем
3. Разработка через PhpStrom. Все файлы правятся локально и выгружаются по FTP на тестовый сервер.
Локального сервера нет. У всех один удаленный репозиторий. Как заливать рабочий код из репозитория на продакшн я понимаю.
Вопрос в следующем:
Как мне правильно настроить работу PhpStrom и тестовый сервер?
Самым простым вариантом мне казалось, что держать GIT только на тестовом сервере. Заливать файлы на него и уже по SSH делать комиты. Но тогда в случае смены ветки на тестовом сервере PhpStorm начнет заново скачивать все файлы, что кажется не очень удобно.
Тоже самое если держать GIT только локально у себя вместе с PhpStorm. Если я буду комитить у себя и заливать по фтп на тестовый сервер, то все будет хорошо. Но так же при смене ветки придется заливать все нвоые файлы на тестовый сервер.
Держать GIT и там и там, будут конфликты как я понимаю.
Читал про автоматический деплой через GIT, когда я в PhpStrom делаю пуш, на тестовом сервер из репозитория тянется это изменения и накатывается. Но кажется это каким то костылем, нет?
В итоге я не смог или правильно сформулировать вопрос или найти ответ.
Какой вариант оптимальный?
Завести локальный сервер есть возможность, но хотелось бы обойтись без этого.
Спасибо!
Руслан Аксянов, тогда проблемы нет. git репозиторий необязательно располагать на тестовом или прод сервере. Вопрос деплоя решать другими инструментами, более подходящими для этого
Для себя решил отказаться от GIT на тестовом сервере. В итоге GIT у меня локально и на продакшене. Сделал изменения в коде, сохранил, по FTP залилось на тестовый. Если все хорошо, сделал комит локально, сделал push и на продакшене сделал pull.
Посчитал это более правильным и простым решением, чем везде держать GIT.