Среда разработки Sitefinity и контроль исходного кода

Есть некоторые вопросы, по которым нам необходимо решить, прежде чем мы приобретем лицензию sitefinity 5.0. Я был бы очень признателен, если бы смог получить ответы на эти

  1. Каковы рекомендации по настройке проекта sitefinity в системе управления версиями? Если над проектом работают от 4 до 5 разработчиков, что должно быть отправной точкой при настройке исходной кодовой базы? Должен ли каждый разработчик создавать сайт и БД sitefinity на своих dev-боксах?
  2. Рекомендуется ли настроить общую базу данных для веб-сайта sitefinity, к которой будет подключаться вся машина разработки для разработки, если не какой альтернативный подход?
  3. Доступна ли какая-либо онлайн-документация, связанная с созданием и выпуском веб-приложений sitefinity, кроме публикации из Visual Studio?

Спасибо Gaurav


person Gaurav    schedule 11.05.2012    source источник


Ответы (2)


Мы разрабатываем с помощью Sitefinity, начиная с версии 2, с несколькими разработчиками.

Чтобы конкретно ответить на ваши вопросы:

  1. Попросите одного разработчика (в идеале, вашего ведущего разработчика) создать чистое решение для визуальной студии sitefinity на своем локальном компьютере. Зарегистрируйте его в своем репозитории системы контроля версий и попросите каждого дополнительного разработчика вытащить оттуда копию. Теперь вы все синхронизированы.

  2. Что касается местоположения базы данных, работают два подхода: либо каждый человек запускает локальную базу данных, либо в web.config задает расположение строки подключения как . (т.е. локальное). Таким образом, никому не нужно проверять файл web.config для его запуска. В противном случае используйте общий сервер разработки / тестирования для базы данных. Мы обнаружили, что самый простой способ - создать у каждого из них локальную БД, если только несколько разработчиков не работают вместе над очень конкретными задачами одновременно.

  3. Я не видел никакой онлайн-документации, связанной со сборкой за пределами Visual Studio. Если у вас есть TFS или сервер сборки MS, он также должен работать нормально.

В общем, в архитектуре Sitefinity нет ничего «особенного», что отделяло бы его от любого другого решения .NET / MSSQL. Передовой опыт, относящийся к этим технологиям, по-прежнему применяется.

person KP.    schedule 17.05.2012
comment
Для пункта 2: я думаю, что в Sitefinity нам нужно изменить строку подключения с DataConfig.config, а не с web.config - person Binh LE; 04.02.2016

Мой опыт работы с системой контроля версий был одним из двух. Если вы используете базы данных пользовательских экземпляров SQLExpress (то есть mdf в папке App_Data), я обнаружил, что поддерживает все версии, кроме этого файла базы данных, а файл dataconfig.config в папке конфигураций позволит каждому разработчику запускать свою собственную копию веб-сайта. .

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

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

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

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

Лично я предпочитаю вариант 1, потому что он позволяет каждому разработчику полностью контролировать свою среду. затем источник может быть объединен и дублирован на промежуточный сервер, так что на основное содержимое сайта влияет только этот один экземпляр.

Надеюсь, это поможет!

person SelAromDotNet    schedule 12.05.2012