Развертывание патчей и новых версий - PullRequest
0 голосов
/ 26 мая 2010

Я разрабатываю большой проект, у меня есть папка dev (подключенная к определенному поддомену), а затем "настоящая" папка, живая. Когда я буду готов к установке патчей или совершенно новых версий, я сейчас копирую файлы по отдельности, есть ли программа, которая может помочь мне выполнить эту задачу?

Имейте в виду, что некоторые файлы (config и htacess) и папки (dev) не нужно копировать в реальной версии.

Спасибо

Ответы [ 2 ]

3 голосов
/ 26 мая 2010

Да: Subversion (или любая другая система контроля версий) позволит вам безболезненно проталкивать изменения.

Упрощенным решением было бы иметь одну проверку, в которой вы разрабатываете и принимаете на себя обязательства, и другую проверку, которая представляет собой развертывание. Когда вы будете готовы, вы идете в каталог развертывания и делаете svn up, чтобы синхронизировать его. Он не будет перезаписывать измененные или исключенные файлы.

0 голосов
/ 26 мая 2010

Существуют пакеты сборки, такие как Capistrano и Phing , которые могут помочь в более сложных развертываниях. Capistrano основан на Ruby, так что это более естественный выбор для приложений RoR, а Phing (основанный на PHP) может быть немного более удобным для проектов на основе PHP. По моему опыту, Phing кажется менее зрелым, чем Capistrano, но немного более гибким, поскольку не предполагает, что вы работаете с проектом Ruby, как Capistrano. Это полностью мнение, конечно.

Оба стремятся к более тщательному конфигурированию, но как только вы спроектировали сценарий развертывания, вы можете запустить одну команду, и все будет происходить за вас, пока вы смотрите. Оба инструмента могут интегрироваться с системой контроля версий, такой как SVN, и доставлять копии вашего проекта из хранилища для вас. Вы также можете разбить ваше развертывание на части, как традиционный Makefile , который помогает с тестированием и повторным использованием. Если вы хотите, чтобы процесс, который вы проходите, чтобы ваши выпуски были пуленепробиваемыми и согласованными, вам нужно использовать инструмент, который будет управлять всеми необходимыми для вас шагами, чтобы вы удалили компонент, связанный с ошибками.

...