и понятный.
Каждый разработчик по идее должен работать в своём окружении - реализаций масса - от всяких OpenServer под Win до различных вариаций с нативными установками и docker. Что есть "локальные файлы" - в каждом случае отдельная тема.
Удалённый сервер - это недостаточно точное определение. Это что - test-сервер разраба? Группы разрабов? Публичный test-сервер? Production?
В общем случае (ну, с моей точки зрения, не утверждаю, что правильной) "главное хранилище" - это как раз репо. Куда и как синкаются файлы с репо - это отдельная история.
Сама схема синхронизации может иметь массу вариантов: хоть deploy/sync средствами IDE, хоть скрипты, хоть различные вариации rsync и иже с ними.
Мне наиболее разумной (но это опять же лишь моя точка зрения) кажется такая схема:
1. у каждого разраба своё виртуальное окружение (docker/vargant/openserver), берущее файлы напрямки из проекта.
2. У группы разрабов (или даже каждого индивидуально) есть test-сервер с точной копией ожидаемого prod-окружения. В случае работы с test-сервер более 1 человека - должен быть конкретный ответственный за деплой туда. Схема деплоя может быть любая: синхронизация ветки через git, прямой деплой через FTP, синхронизация с локального test-окружения.
3. Препрод или публичный тест по идее синхронизируется с test-сервером опять же любым методом.
4. На продакшн вываливается тимлидом или типа того протестированная версия. Источником по идее должна быть ветка git для исключения паразитных правок на test-серверах.
спасибо за столь подробный ответ. в моем случае есть win + виртуальная машина с веб сервером, раньше я просто держал проект на диске винды, а в виртуалке просто примаунчивал определенную папку, но недавно столкнулся с определенными проблемами с правами на файлы (nodejs), что и повлекло пересмотреть такую схему работы. подумал - буду держать файлы проекта на вирт. машине а с ними работать через sftp но теперь с git не понятно как взаимодействовать. все файлы проекта на виртуалке, ide выкачивает локально необходимые файлы и при измении загружает их по sftp. git может быть инициализирован с локальными файлами или теми что на виртуалке? хочется юзать плюшки ide git для удобного merge
Обсуждают сегодня