Когда вы используете Git в разработке, загружать новую версию сайта на хостинг всё равно приходится вручную. Нужно каждый раз подключаться к FTP-серверу, переходить в нужную папку, перетаскивать в неё файлы. Но если подключить Git к хостингу, обновлять сайт можно будет одной кнопкой в cPanel или командой в консоли. Как это сделать — расскажем в статье.

 

Создаём репозиторий в cPanel

Зайдите в cPanel и нажмите ярлык «Git™ Version Control» в разделе «Файлы»:

Раздел Git Version Control в cPanel

Пока что тут пусто. Чтобы создать первый репозиторий, нажмите кнопку «Создать» в правой части экрана.

В новом окне заполните поля данными, которые указывают на ваш репозиторий:

Добавление нового репозитория в cPanel

Clone URL — ссылка на репозиторий с вашим проектом с любого сервиса по работе с git-репозиториями, например, github.com, gitlab.com, bitbucket.org.

Repository Path — путь к репозиторию в cPanel. Сюда будут загружаться файлы с сайтом. Здесь можно указать корневую папку домена или любую другую.  Главное, чтобы папка была пустой, иначе назначить её репозиторием не получится. 

Repository Name — имя репозитория. Оно будет отображаться в общем списке репозиториев. Сюда можно вписать что угодно, например, домен, для которого вы разрабатываете сайт.

В конце нажмите кнопку «Создать». Репозиторий появится в общей таблице:

Список репозиториев в cPanel

 

Загружаем изменения из удалённого репозитория на хостинг

Когда понадобится обновить файлы с сайтом на хостинге, нажмите кнопку «Управлять» напротив нужного репозитория и на следующей странице нажмите «Обновление»:

Информация о репозитории в cPanel

После этого файлы из репозитория на сайте системы контроля версий загрузятся в репозиторий в cPanel.

На этой же странице вы найдёте информацию о последней активности в репозитории:

Информация о последнем коммите в Git репозитории в cPanel

Currently Checked-Out Branch — ветка, из которой в последний раз копировали изменения.

HEAD Commit — информация о последнем коммите: хэш позиции, автор и дата.

Remote URL — ссылка на репозиторий на сайте системы контроля версий.

Clone URL — ссылка для скачивания репозитория по SSH.

 

Настраиваем автоматическое обновление сайта из репозитория

Если вы создали репозиторий не в корневой папке домена, а в каталоге, после загрузки в него новых файлов сайт не обновится. Придётся дополнительно перетаскивать файлы в корневую папку.

Чтобы автоматизировать этот процесс, создайте  в корне репозитория  на стороне cPanel файл с названием .cpanel.yml и добавьте в него такой текст:


---
deployment:
tasks:
- export DEPLOYPATH=/home/ваш_юзернейм_в_cPanel/путь_к_репозиторию
- /bin/cp -R имя_папки_в_репозитории $DEPLOYPATH
- /bin/cp имя_файла_в_репозитории $DEPLOYPATH

 
Не забудьте прописать правильный путь в строке «export DEPLOYPATH».

Если хотите указать несколько папок или файлов, пропишите из отдельными строками. После этого cPanel будет автоматически копировать файлы из репозитория в папку с сайтом.

 

Управляем репозиторием в консоли

Чтобы не заходить каждый раз в cPanel ради изменений, подключитесь к серверу по SSH и управляйте репозиторием в cPanel через консоль. Вам пригодятся такие команды:

git checkout название_ветки Переключиться на другую ветку из удалённого репозитория. По умолчанию cPanel будет знать только о ветке master, даже если на стороне системы контроля версий их несколько.
git pull Загрузить изменения из ветки, в которой вы находитесь. Команда работает так же, как и кнопка «Обновление» в cPanel.
git log --all --decorate --oneline --graph Посмотреть историю всех коммитов в удобном формате.
git revert идентификатор_коммита Откатить репозиторий на стороне cPanel до конкретного коммита.
git clone ssh://ссылка Загрузить текущую версию кода на компьютер. Ссылку можно найти в меню «Git™ Version Control» – «Управлять».

 

Документация на русском языке

Больше информации по использованию системы контроля версий — в русскоязычном учебнике на сайте Git.

Оцените, пожалуйста, статью:
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...