Если у Вас есть доступ SSH, Вы могли бы сделать:
экспорт svn [URL к repo] [веб-каталог]
Экспорт будет означать, что Вы не получаете .svn багаж, который идет с рабочей копией.
просто - входят к Вашей машине сервера и контролю в содержание репозитория. Это должно быть сделано только однажды.
$ svn checkout [http|svn|whatever_you_got_there]://{your_svn_repo} {checkout_directory}
Каждый раз необходимо обновить рабочую копию с новейшей, выполнить update
:
$ cd {checkout_directory}
$ svn update
Если Ваша хостинговая компания не предоставила Вам доступ или к cron(1)
или к оболочка, это будет трудно, поскольку svn, централизованный VCS, не имеет способа продвинуть вещи к рабочему каталогу, Вы предполагаетесь к svn update
.
Несколько способов сделать то, что Вы хотите, в зависимости от вышеупомянутых доступных ресурсов:
crontab(5)
запись, которая делает cd $WEBSITE && svn update
ssh
может быть автоматизирован crontab
запись на Вашей стороне. cron
на Вашей стороне), который делает ту же команду. Лучший способ ко мне будет все еще перемещаться в децентрализованный VCS (как Подвижный или мерзавец), но это - намного больший проект.
Управление версиями
можно создать задание/пакет, которое экспортирует svn в локальную папку. после экспорта можно загрузить его с rsync.
задание может автоматически выполниться рычагами svn.
можно также использовать mtod пути, но иметь в виду: использование контроля на сервере является угрозой безопасности, если кто-то может получить доступ к .svn папкам! они могут получить доступ к коду php и видеть пароли или ошибки.
Вы попытались использовать наш FTP, развертываются на Бобовом стебле? Мы также имеем веб-рычаги в наличии, что означает, что можно проверить с помощью ping-запросов URL на каждом, передают для кодирования собственного материала.
http://help.beanstalkapp.com/articles/17-deployment-and-releases
У меня было несколько подобное вопрос некоторое время назад, однако у меня не было доступа SSH в мой сервер, таким образом, я был вполне ограничен в моих опциях.
В зависимости от размера Вашего проекта Вы могли бы рассмотреть не выполнение экспорта. В моем случае проект был по концерту данных! Не практичный, потому что с экспортом необходимо экспортировать все файлы много раз. Если Вы только помогаете полные файлов, это могло бы отличаться. Кроме того, выполнение экспорта на Вашей локальной машине означает, что экспорт должен загрузить файл сначала и затем загрузить его на Ваш хостинг, который похож на трату пропускной способности.
Также имеют в виду, что выполнение экспорта SVN не делает никаких обновлений базы данных. Например, при разработке сайта база данных, вероятно, изменится, может времена. С просто SVN экспортируют Вас, все еще должен вручную повторно импортировать базу данных по серверу.
то, Что я предлагаю, - то, что Вы пишете сценарий, который Вы помещаете в сервер. Можно сделать этот сценарий столь тщательно продуманным, как Вы хотите, конечно, но пустой сценарий кости сделал бы 'обновление' на проверенной версии Вашего сайта, делает экспорт Вашей базы данных во временной папке (Ваша база данных, конечно, также помещается при управлении версиями), и повторно импортирует базу данных (или объединяет его, независимо от того, что это должно сделать). С одной единственной командой можно затем развернуть сайт. Много раз и снова.
существуют инструменты, которые могут помочь Вам с этим видом автоматизации, как CruiseControl и Capistrano.