Какой порядок действий в git актуализации данных сервера?

Рейтинг: 0Ответов: 1Опубликовано: 01.06.2023

Есть два сайта одинаковых (битрикс проект), но чуть-чуть отличающихся по содержанию. Один адрес, допустим, условно https://site1.ru боевой сервер и дев-сервер https://site1.dev.studio.ru. У меня есть данные доступа боевого сервера SSH/SFTP: ssh root@191.200.50.31 пароль: xFPy11F1 и данные доступа дев-сервера: 150.250.15.168, ssh auto@150.250.15.168 логин: auto пароль: Dljzz455fjR8679e. Есть репозиторий также на гитлабе, с данными с боевого сервера.

  1. Как мне перенести данные с помощью git (пушнуть) с боевого сервера на дев-сервер и тем самым синхронизировать контент сайтов?

  2. Вопрос второй. Мне нужно выполнять команды git в локальной командой строке (windows cms) или нужна специальная программа для передачи команд (ssh-клиент)?

  3. Мне нужно копировать на локальный компьютер копию боевого сервера для переноса данных или можно просто напрямую, через репозиторий синхронизировать данные?

  4. Как потом добавлять изменения и сохранять данные в файлах на серверах боевом и дев? Php-Storm подойдет для таких целей, как удаленное изменение файлов на серверах? Какой-то терминал использовать для ввода git-команд?

Расскажите все на пальцах, чтобы я понял, как действовать. Спасибо за ответы. Гит знаю в общих чертах, но такие вопросы никогда не решал.

Ответы

▲ 1Принят

Обычно люди просто копируют файлы с сервера на сервер с помощью какого-нибудь WinSCP, но если вам хочется добавить немного извращений в свою жизнь, то почему бы и не использовать гит?

Чтобы перенести код с боевого на дев:

  1. коннектитесь на боевой сервер (ssh или что там у вас для этого стоит)
  2. в командной строке боевого сервера выполняете
    cd git_repo && git add . && git commit -m'bla-bla' && git push
  3. на дев сервере выполняете git pull

Ну, и чтобы всё это работало, нужно предварительно создать пустой репозиторий на gitlab, и на обоих серверах (боевом и дев) выполнить git clone https://путь_к_гитлаб_репо, оно создаcт папку и инициализирует локальную репу, которую уже после это нужно наполнить вашими файлами

В принципе, какая-то польза от гита тут есть: он экономит трафик при копировании репы (т.е., пересылает только разницу содержимого файлов, а WinSCP перешлёт весь файл)
Но думаю, размер исходников сайта у вас сравнительно мал, и экономить трафик необходимости нет