Назад | Перейти на главную страницу

Простой способ развертывания сайтов PHP из git

Я ищу рекомендации, как автоматизировать / упростить развертывание из репозитория git (github) в службу хостинга. Хостинг поддерживает доступ по FTP (уф) / SSH / SFTP.

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

Если вы не хотите устанавливать git на удаленном (хостинговом) сервере, есть несколько неплохих вариантов:

CodeBase

Бобовый стебель

Я предпочитаю второй вариант, потому что он совмещает функции отслеживания версий и развертывания.

Я также видел, как люди, у которых на удаленном сервере установлен git, использовали задание cron для запуска git pull каждые несколько часов. Это лучше всего работает, если у вас есть ветка для живого завершенного кода и ветка для новых функций и т. Д.

Обновить:

На самом деле это приложение под названием Deploy, с которым интегрируется CodeBase (оба созданы одной командой).

www.deployhq.com

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

Я бы попробовал создать репозиторий git в такой структуре каталогов, как:

~/website/
 .git/
 public_html/
 public_html2/

Затем просто потяните нужным образом разные ревизии. Этот метод также защищает вашу папку .git от того, что посетители могут искать. Я не могу сказать больше, не зная подробностей.

Посмотри на Webistrano, который представляет собой веб-интерфейс для управления Capistrano развертывания. Он позволяет управлять проектами и их этапами, такими как тестирование, производство и подготовка, с различными настройками. Затем эти этапы можно развернуть с помощью Capistrano через Webistrano.

Мы используем его в течение нескольких лет, развертывая его из репозитория Subversion, но он также поддерживает Git. Поддерживаются откаты, развертывание на нескольких серверах и т. Д.

Если вы все еще ищете решение для автоматизации развертывания, проверьте Deployplace. Он похож на DeployHQ, но намного более мощный и поддерживает развертывание сложных приложений.

Deployplace все еще находится в стадии бета-тестирования, но вы можете запросить ранний доступ.

Надеюсь это поможет,