Среда разработки - VCS от разработки до подготовки сервера к производству - PullRequest
4 голосов
/ 14 декабря 2009

Я прочитал несколько тем на том же уровне, что и этот, но, честно говоря, я до сих пор не совсем уверен в наилучшем подходе (в качестве отправной точки). Я являюсь сольным разработчиком в небольшом офисе, и у меня есть около 30 веб-сайтов, которые размещены на Linux VPS. Я хочу начать использовать контроль версий (возможно, SVN), а также настроить промежуточный сервер. В данный момент я занимаюсь разработкой либо локально на своем компьютере, прежде чем использовать FTP для загрузки на работающий сервер, или иногда для небольших изменений я редактирую удаленные файлы напрямую, что не является идеальным подходом.

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

Надеюсь, это имеет смысл!

Ответы [ 3 ]

1 голос
/ 14 декабря 2009

Вот что мы делаем на работе:

У нас есть промежуточный сервер под управлением Apache и сервер Subversion. У нас есть ловушка post commit, которая обновляет рабочую копию в каталоге htdocs, поэтому, когда разработчик фиксирует что-либо, он автоматически обновляется на промежуточном сервере, так что каждый может увидеть последний код.

На производственных серверах клиента (тех, которыми мы можем управлять) у нас установлен клиент Subversion, а веб-сайт является рабочей копией. Когда нам нужно обновить работающий сайт, мы заходим в оболочку и запускаем svn up. Если вы делаете что-то подобное, убедитесь, что вы ограничили доступ к каталогам .svn, либо с помощью файлов .htaccess, либо из основной конфигурации Apache.

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

Мы никогда, никогда , не редактируем файлы через FTP на реальном сайте. В общем, мы использовали эту настройку почти 2 года, и, за исключением случайного конфликта на промежуточном сервере, у нас никогда не было проблем.

0 голосов
/ 14 декабря 2009

@ Майкл, я не согласен - я бы сказал, что лучше установить Linux VPS, особенно если вы уже платите за хостинг. Я считаю очень полезным иметь возможность просматривать и загружать материалы из моего репозитория SVN, где бы я ни находился, с любого компьютера, на котором я работаю.

@ nicky, я начал с svn (и контроля версий) несколько лет назад и предпринял шаги, которые облегчили задачу.

Если бы мне пришлось сделать это снова, я бы прочитал svn book для начала. Книга очень хорошо продумана и не заняла больше 1-2 дней, чтобы вспахать ее.

Пока вы читаете, установите SVN на Linux-VPS с Apache-интерфейсом .

Как только вы это сделаете, выберите один из ваших сайтов и импортируйте его в SVN. Вот как я структурирую свое SVN-репо. Например, скажем, мой репо размещен на http://mysvn.mydomain.com/svn/:

  mywebsite1
     - trunk
     - tags
     - branches 
  mywebsite2
     - trunk
     - tags
     - branches 

Не беспокойтесь о создании идеальной структуры. Это довольно легко реорганизовать, особенно когда вы начинаете. После того, как вы импортируете несколько проектов в svn, вы начнете понимать, какие проекты должны иметь свою собственную структуру dir "trunk / tags / branch" и какие можно комбинировать.

Для создания тестовых сред я делаю именно то, что вы описываете. Я использую сценарии сборки для извлечения из SVN и загрузки файлов в каталоги, которые сопоставлены с поддоменами, такими как «test.clientsite.com» (я работаю в основном в Java и использую Ant и Maven, но я думаю, что вы можете использовать любой язык сценариев, который вы знакомы с).

Как только вы привыкнете к управлению версиями, вы никогда не вернетесь, удачи!

0 голосов
/ 14 декабря 2009

На самом деле вы можете установить сервер SVN на свой локальный компьютер, который я бы рекомендовал вместо его установки на веб-сервере (при условии, что вы делаете резервные копии). Самый простой способ сделать это, поскольку вы используете его только один, - это использовать протокол file://, но использование svnserve немного более надежно и предпочтительнее, если вы хотите потратить время на это.

...