git-ftp Настройка -- Как загружать изменения на хостинг через FTP (GitFTP) - Windows
Primary tabs
git ftp -s test push
Что происходит
В данной заметке рассматривается использование скриптов git-ftp для загрузки изменений из локального git-репозитория на FTP-хостинг.
Программные средства
Для заливки же кода через FTP, будем использовать набор скриптов git-ftp (https://github.com/git-ftp/git-ftp) - за который спасибо программисту René Moser-у.
Данную штуковину можно считать элементарным средством для деплоя на удалённый сервер.
Установка
Рассмотри уcтановку:
Настройка параметров FTP-сервера
Переходим в папку репозитория (теперь уже вашего проекта, изменения в котором будем загружать на удаленный сервер с помощью git ftp), и открываем папку .git, в которой есть файл config:
.git/config
-- открываем его редактором и добавляем туда реквизиты доступа к вашему FTP-серверу, например такие:
[git-ftp "test"] user = df836as url = "92.51.92.51/spec/public_html" password = dfgd34rg34g
После чего файл будет выглядеть как-то так:
[core] bare = false repositoryformatversion = 0 filemode = false symlinks = false ignorecase = true logallrefupdates = true [git-ftp "test"] user = df836as url = "92.51.92.51/spec/public_html" password = dfgd34rg34g
Что есть что:
- test - условное название нашего ftp сервера,
- далее указано имя пользователя FTP
- затем указывается путь к директории проекта (в ней не обязательно должна быть папка .git - более того на сервер её лучше не закидывать , работать можно с обычным набором файлов, но .git обязательно должна быть в наборе файлов на машине с которой вы будете заливать изменения на FTP сервер), который начинается с доменного имени или ip-адреса сервера, а дальше всё зависит от того к какой именно директории дан доступ пользователю (в данном случае df836as имеет доступ к корню в котором есть папка spec, а уже в ней папка public_html, куда и подразумевается заливать проект и/или изменения).
- 92.51.92.51/spec/public_html -- в вашем случае этот путь может быть иным (зависит от того в какую именно директорию логинится ftp-пользователь - -именно от неё надо писать доп. путь после ip или имени домена.)
- Последний параметр - пароль для пользователя, указанного выше (у нас - для df836as).
Далее, после того как мы настроили параметры сервера переходим в папку с локальным репозиторием (в том же Git Bash в windows или в терминале в Linux), например:
cd /D/www/spec.local
Ну и начинаем работать уже с git-ftp.
Работа с git-ftp
Тут возможны варианты, в зависимости от состояния проекта
- Чтобы загрузить весь проект на хостинг (первый раз) выполните:
git ftp -s test init
- Если же проект уже загружен (актуальные версии файлов уже на сайте), то выполните:
git ftp -s test catchup
- Узнать какой коммит был загружен последним на данный момент:
git ftp -s test show
- После загрузки всего репозитория или отметки о том, что он уже в актуальном состоянии (catchup), выгружаться будут только новые изменения, что (после выполнения коммита) можно сделать командой:
git ftp -s test push
А если подробно (с коммитом из командной строки - 3 команды):
$ git add . $ git commit -m "Commit name" $ git ftp -s test push
- Если что-то не получается, то чтобы узнать причину ошибки используйте флаг -v, например:
git ftp -s test catchup -v
Выгружаем первый раз
Если проект уже был загружен
ПРИМЕЧАНИЕ: на старых версиях возможна такая проблема, лучше сразу обновить Git for Windows.
Несколько серверов
Можно указать и несколько FTP серверов для git-ftp, например (пример содержимого .git/config):
[core] bare = false repositoryformatversion = 0 filemode = false symlinks = false ignorecase = true logallrefupdates = true [git-ftp "test"] user = df836as url = "92.51.92.51/spec/public_html" password = dfgd34rg34g [git-ftp "prod"] user = b4407539_qwe url = "free.get.com/" password = df333Grg34g
Тогда для загрузки на указанный сервер prod новых изменений, соответственно, выполняем:
git ftp -s prod push
Вот и всё) Удачи в использовании)
Источники:
- Git FTP на примере в Windows: https://m.habrahabr.ru/post/178067/
- и хотя это копия, но оформление было приятным (читал именно в этой версии): http://security-corp.org/os/windows/1182...
- Log in to post comments
- 17645 reads