Я пытаюсь решить, имеет ли смысл переход на VCS для меня. Я один веб-разработчик в небольшой организации (5 человек). Я думаю о VCS (Git) по следующим причинам: контроль версий, резервное копирование вне сайта, централизованное хранилище кода (можно получить доступ из дома).
На данный момент я работаю на живом сервере вообще. Я подключаюсь к FTP, делаю изменения и сохраняю их, затем загружаю и обновляю. Изменения обычно вносятся в файлы тем / плагинов для CMS (например, concrete5 или Wordpress). Это работает хорошо, но не обеспечивает резервного копирования и контроля версий.
Мне интересно, как лучше интегрировать VCS в эту процедуру. Я хотел бы предусмотреть настройку Git-сервера на веб-сервере компании, но я не понимаю, как отправить изменения в учетные записи клиентов (обычно это VPS на одном и том же сервере) - в данный момент я просто захожу в SFTP с их данными и делаю изменения напрямую.
Я также не уверен, что разумно будет представлять хранилище - получит ли сайт каждого клиента свой собственный?
Любые идеи или опыт будут действительно полезны. Я не думаю, что мне нужна вся мощь Git, но базовый контроль версий и доступ к облаку де-факто были бы действительно полезны.
РЕДАКТИРОВАТЬ: я сузил его до двух вариантов, которые кажутся наиболее разумными. Первый основан на ответе ZweiBlumen , согласно которому изменения вносятся на действующий сервер и передаются оттуда на (внешний) Git-сервер. Это дает преимущество в том, что мой рабочий процесс не сильно изменится (есть дополнительный этап создания коммитов, но в остальном он идентичен).
Второй вариант - работать локально с использованием XAMPP, а затем фиксировать изменения с локального компьютера. Только после запуска сайта я могу загрузить готовую статью на веб-сервер с локального компьютера (сразу после окончательной фиксации в Git). Теоретически это нормально, но если после этого сайт требует внесения поправок, и я делаю их на живом сервере (как я обычно делаю), тогда мне нужно будет вручную скопировать измененные файлы в моем локальном репо, а затем зафиксировать эти изменения в Git сервер. Это кажется чрезмерно сложным и, возможно, слишком большим отклонением от моего текущего рабочего процесса.
Я думаю, что в итоге я попробую вариант № 1 и посмотрю, как у меня получится.