Вопрос

Я нахожусь в процессе настройки полноценной среды веб-разработки.На данный момент есть два разработчика, один из которых занимается серверным программированием (C #, .NET), а другой - разработкой внешнего интерфейса (HTML, CSS, XSLT).

У каждого из них установлена MS Visual Studio 2008 и общий исходный код через Visual Source Safe 2005.Они оба извлекают файлы и разрабатываются локально.

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

Каждая из трех установок использует одни и те же базы данных.

Я думаю, что эту настройку следует немного масштабировать, поскольку я готовлюсь к появлению большего числа разработчиков, но у нас довольно много проблем с синхронизацией файлов и легким доступом для быстрых изменений.Часто нам нужно довольно быстро изменить некоторые макеты и дизайны и в конечном итоге скопировать файлы на тестовый сервер вручную (я не хочу никаких файлов с кодом .NET / C # на веб-сервере), и сайт завершается сбоем:-(

Мы используем стандартную CMS для построения всей нашей интерфейсной работы, и это действительно замедляет работу, если это включено в source-safe.

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

Например.мы хотели бы внести несколько изменений в дизайн и быстро внедрить его в нашу производственную среду, не задумываясь о .СЕТЕВОЙ код.

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

С нетерпением жду некоторой помощи / опыта :-)

/Томас

Это было полезно?

Решение

Вероятно, вам следует поискать более эффективную систему контроля версий.SVN обладает отличной инструментальной поддержкой (включая Анксвн и VisualSVN ( Визуальный код ) для интеграции с VS2008), а распределенные системы контроля версий, такие как Mercurial, Git или Bazaar, предоставят вам еще больше возможностей и значительно снизят стоимость поддержки базового инструмента.

Вам может понадобиться простое ветвление, и управление соответствующими ресурсами с помощью системы контроля версий становится намного проще, если вы можете легко развернуть их в рабочей среде (т.е.запустите "svn up").

Другие советы

Я не могу помочь вам информацией о том, как обрабатывать контент CMS, но я настроил или использовал пару серверов сборки.

Поработав с Visual Source Safe во многих проектах и Team Foundation Server в некоторых, я стараюсь держаться от него подальше, если могу.

Наш недавний buildserver состоит из скриптов Nant, которые извлекают исходный код из репозитория Subversion.Сама сборка выполняется MSBuild.Затем результат сборки копируется в x для stage and production.

Должен существовать простой способ перенести изменения базы данных из стадии разработки на стадию производства.У нас есть инструмент (http://www.codeplex.com/ScriptDB), который создает скрипты для dev-базы данных.Результат проверяется в Subversion.Легко увидеть, что изменилось в журнале Subversion.

Каждая из трех установок использует одни и те же базы данных.

Это кажется плохим решением.Если dev1, dev2 и test используют одну и ту же базу данных, то как dev1 может экспериментировать с изменением схемы, не вмешиваясь в dev2 и test (предполагая, что код для работы с экспериментальной схемой еще не проверен).

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top