Как сделать GIT Push с использованием FTP? - PullRequest
12 голосов
/ 04 мая 2011

Я хочу загрузить (используя только ftp) на свой сервер только изменения.У меня есть рабочий репозиторий Git в моем местном.Но я не могу придумать какой-либо способ, чтобы использовать FTP.

Я могу использовать git push для отправки на другой хостинг, потому что он разрешает ssh, но этот хостинг позволяет только ftp.

Ответы [ 4 ]

9 голосов
/ 06 января 2013

Сценарий git-ftp делает именно это:

git-ftp от René Moser - простой сценарий оболочки для работы с FTP по Git. Используйте git-ftp.sh для загрузки на FTP-сервер только отслеживаемых файлов Git, которые изменились с момента последней загрузки. Это экономит время и пропускную способность. Даже если вы играете с разными ветками, git-ftp.sh знает, какие файлы разные. Ни один обычный FTP-клиент не может этого сделать.

6 голосов
/ 05 мая 2011

Вы должны быть в состоянии отправить в FTP-хранилище, используя

git push ftp://host.net/path/to/repo.git/
3 голосов
/ 17 декабря 2014

Я написал небольшой PHP-скрипт, который с этим справляется. Он называется PHPloy и тесно связан с Git, чтобы определить, какие файлы были отредактированы / добавлены / удалены, и загрузить их соответствующим образом. Вы помещаете свои данные FTP в файл deploy.ini и запускаете просто команду для развертывания:

phploy

Вы также можете развернуть на нескольких серверах одновременно. И если у вас настроено несколько серверов, вы можете выбрать развертывание на одном из них следующим образом:

phploy --server staging

Есть еще что-то, что можно сделать - проверьте это на Github: https://github.com/banago/PHPloy

0 голосов
/ 12 декабря 2017

вы можете проверить развертывание .В свитке есть следующие функции:

Атомное развертывание

Он загружает изменения вашего кода в отдельную папку, пока не завершит загрузку всех файлов.

releases\v1\ releases\v2\ releases\v3\ current -> release\v3\

Как только все файлы загружены.Это делает эту папку активной версией вашего сайта.Так что это очень прозрачно для пользователя, что никто не знал о каких-либо новых версиях / ревизиях.

Включенные батареи

Проверка версии:

Он проверяет, совпадает ли версия PHP на вашем хост-сервереваше требованиеЭто очень важно, потому что серверы хостинга не сообщают вам, когда они обновляют версии PHP на своих серверах.Возможно, вы забыли, чтобы ваши машины для разработки соответствовали версиям php.

Так почему мы должны проверять версию?

Каждая версия PHP включает в себя новые функции и не поддерживает множество функций и функций,Когда вы разработали веб-сайт с использованием PHP 5.3 и ваш хостинг-сервер имеет PHP 5.6.Есть вероятность, что следующие функции могут сломаться.

Вот список функций / функций, которые не поддерживаются в версиях, упомянутых ниже.

  1. Функции и функции устарели в PHP 5.5
  2. Функции и функции устарели в PHP 5.6
  3. Функции и функции устарели в PHP 7.0

Проверка расширений

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

Автоматическая установка зависимостей

Просто добавьте composer.json свиток автоматически установит все зависимости, указанные в composer.json

PHP Linting:

свиток делает автоматическое PHP Linting всей кодовой базы, ищет любые ошибки.Это остановит установку, если свиток обнаружит любую синтаксическую ошибку php.Это опять-таки помогает взломать код на хост-сервере.

Откат выполняется на расстоянии одного клика

После развертывания кода на хост-сервере.Если что-то пойдет не так, вы можете легко вернуться к предыдущей версии.Просто одним нажатием кнопки.

Кроме того, развертывание совершенно бесплатно для проектов с открытым исходным кодом или общедоступных репозиториев.

...