Я хотел бы знать, есть ли простой способ запустить репозиторий GIT в производство (на FTP-сервере)? Спасибо
130
Некоторые инструменты, недавно добавленные в вики Git :
git-ftp от Рене Мозера - это простой сценарий оболочки для работы с FTP в стиле Git. Используйте git-ftp.sh для загрузки на FTP-сервер только файлов, отслеживаемых Git, которые изменились с момента последней загрузки. Это экономит время и пропускную способность. Даже если вы играете с разными ветками, git-ftp.sh знает, какие файлы разные. Ни один обычный FTP-клиент не может этого сделать.
git-ftp от Эдварда З. Янга - это простой скрипт, написанный на python для загрузки файлов в репозиторий Git через FTP, только для передачи новых файлов и удаления старых файлов.
Если вы предпочитаете графический интерфейс, используйте SourceTree, вы можете легко настроить настраиваемое действие, которое использует git-ftp, упомянутый выше. Краткое описание установки (для Mac) на странице «Отправка репозитория Git на FTP».
источник
Я нашел PHPloy отличным инструментом для отправки ваших коммитов Git на удаленные серверы через FTP. Он работает из командной строки и написан на PHP (и даже обнаруживает изменения в подмодулях).
https://github.com/banago/PHPloy
Готово!
(Отказ от ответственности: после некоторого использования я внес несколько исправлений и улучшений кода, сделав его совместимым с Windows.)
источник
Если вы используете Mac и у вас есть Transmit, я бы порекомендовал следующий скрипт git-tranmit ( https://gist.github.com/379750 ). Он использует DockSend для отправки только последних обновленных файлов. Если вы не знакомы с DockSend, посетите http://www.panic.com/blog/2010/11/15-secrets-of-transmit/ .
Настроить:
источник
Строго говоря, git не для этого. Однако, если ваш источник - это то, что не требует компиляции или обработки, скажем, веб-сайт, полностью состоящий из файлов html и javascript и т.п., вы можете иметь клон репо на своем веб-сервере и использовать его
git pull
с сервера, чтобы поддерживать его. -назначить свидание. Обратите внимание, я бы настроил ваш веб-сервер, чтобы скрыть каталог git и тому подобное. И это только начало проблем безопасности.Если у вас есть какая-либо компиляция или обработка, вам следует начать смотреть на Ant , Maven , BuildR , SBT и т. Д.
источник
Вы можете использовать Deployhq.com, он работает как шарм, единственное, что вам нужно сделать, это настроить свой репозиторий и учетную запись FTP.
На данный момент это следующие системы контроля версий:
Git, Subversion, Mercurial.
С размещенным репозиторием
источник
Это сценарий на PHP для почти автоматической загрузки git-diff на FTP-сервер:
http://code.google.com/p/upload-git-diff-with-ftp/
источник
https://www.deployhq.com/
Бесплатно для одного проекта и работает очень хорошо.
источник
Здесь есть сценарий Ruby - Ruby git-deploy через FTP или SSH, который загружает только измененные файлы в репозиторий git через FTP или SSH.
Как упоминалось в другом ответе, вот сценарий Python git-ftp.py, который делает то же самое.
А вот версия сценария оболочки git-ftp .
Существует также проект драгоценного камня Ruby под названием git-deploy, который позволяет настраивать настраиваемое развертывание через пульт git с помощью
git push
команды, так же, как службы Heroku и Azure. Для этого вам может потребоваться написать собственные методы для развертывания через FTP, и я думаю, что он предполагает, что у вас есть SSH-доступ к вашему производственному серверу.источник
Если вы вводите код в производство, я рекомендую использовать «установщик», например пакет RPM, для установки вашего кода. Таким образом, в нем будет указана версия, и вы сможете использовать пакет установщика для поддержки обновлений производственного кода. Git на самом деле не предназначен для поддержки производственных установок, он предназначен для отслеживания изменений самого кода.
В любом случае, со встроенным .RPM (или EXE или чем-то еще) вы можете просто отправить его по FTP в производственную систему и установить, как любой другой пакет.
источник
Добавьте его как удаленный, затем вы можете нажать на него, однако простого нажатия кода недостаточно, его необходимо объединить с рабочим деревом. Самый простой способ - пойти другим путем, создать на сервере рабочее дерево, получить его и слить с ним.
источник
Вы всегда можете попробовать смонтировать ftp в локальный каталог, используя http://linuxconfig.org/mount-remote-ftp-directory-host-locally-into-linux-filesystem .
Затем вы можете использовать его так же, как это .
источник
Я очень старался понять это. Я нашел простой способ сделать это из различных источников ( git-ftpINSTALL , git-ftpUPLOAD , git-ftpIssue , git-ftpPUSH ). Вы можете прочитать для справки, но в этом нет необходимости, потому что я упомянул пошаговый процесс ниже.
Перво-наперво: установите git и curl с помощью brew в MAC OS
Запустите следующие команды:
Обновление с помощью git
Настроить
Загрузить все файлы
Или если файлы уже есть
Работа и развертывание
Если есть ошибка: pathspec 'index.txt' не соответствует ни одному файлу (файлам), известным git . Это означает, что файл еще не был подготовлен, поэтому добавьте файл и попробуйте зафиксировать.
Надеюсь это поможет.
источник
Вы можете попробовать FTPloy ...
https://ftploy.com
У вас есть один бесплатный проект, над которым вы можете попробовать. В настоящее время я использую для небольшого веб-сайта php, и он работает довольно хорошо. На сайте есть несколько ошибок, но это активный проект, так что, по крайней мере, они над ним работают.
источник
Посетите https://gitftp-deploy.com/, если вы используете MacOS и вам нравятся графические интерфейсы.
Это симпатичное маленькое приложение, которое использует Git для отслеживания изменений и загрузки только измененных файлов через FTP.
Особенно удобно, если вам не нравится платить ежемесячную плату за десятки небольших проектов с небольшими командами.
источник