Создание хранилища Subversion для сайта - PullRequest
3 голосов
/ 24 сентября 2010

Какова лучшая практика для создания хранилища сайта? Является ли хранилище активным и не требует перемещения файлов из хранилища? Или вам нужно переместить файлы из хранилища сервера на веб-сервер?

Ответы [ 4 ]

5 голосов
/ 24 сентября 2010

Никогда, никогда не работают с действующими файлами сервера.

Всегда проверяйте вход и выход из системы управления исходным кодом из локальной копии и готовьте пакет развертывания для загрузки на ваш сервер.

1 голос
/ 24 сентября 2010

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

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

У вас есть веб-сервер для обслуживания вашего контента.

И у вас есть развертываниепроцесс, который представляет собой процесс получения контента из системы контроля версий, установленной на веб-сервере.В идеале это не ручной процесс.В идеале, здесь вам нужно, чтобы при развертывании на веб-сервере вы набирали пару слов в командной строке и

1) Контент извлекался из системы контроля версий

.2) Проверено, что все содержимое там и будет делать то, что вы ожидаете,

3) Содержимое перемещается на веб-сервер, и все, что необходимо перезапустить, перезапускается

4) Выполнен тест, чтобы убедиться, что веб-сервер работает и что контент, который он обслуживает, является тем, который вы ожидаете, что он будет обслуживать.

Автоматизация - замечательная вещь.

0 голосов
/ 24 сентября 2010

Ваш веб-сервер может обслуживать страницы, извлеченные из проверки Subversion, в основном используя svn в качестве инструмента развертывания.

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

Затем на веб-сервере проверьте копию соответствующей версии. Например, cd /path/to/web/root/folder && svn co path_to_repository/tags/1.0 .

Допустим, вы обновили свой сайт и отметили изменения. Когда обновление будет готово к запуску, еще раз создайте для него тег. На веб-сервере перейдите на новую версию, например, выполнив cd /path/to/web/root/folder && svn sw path_to_repository/tags/1.1

Обратите внимание, что это, конечно, засоряет ваш веб-корень каталогами .svn. Это может или не может быть проблемой, в зависимости от того, что вы развертываете. Для моих сайтов это никогда не проблема (я гарантирую, что они защищены через .htaccess).

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

0 голосов
/ 24 сентября 2010
  1. «импортировать» ваш веб-корень в svn
  2. удалите свой корень
  3. «извлеките» svn в ваш webroot.

После этого вы можете просто «зафиксировать», находясь в webroot, чтобы зафиксировать ваши изменения.

http://aymanh.com/subversion-a-quick-tutorial

http://www.abbeyworkshop.com/howto/misc/svn01/

...