Для системы управления версиями я разрабатываю модули в собственном проекте. Он содержит код модуля, тестовый код, код поставщика данных (если применимо) и все остальное. Это проверяется в системе управления версиями, как и любой другой проект. Обратите внимание, что проект модуля не содержит ссылок на конкретный веб-сайт DNN, а ссылки DNN делаются в проекте на общий каталог «bin», который ссылается на вашу целевую сборку. Например, в папке с проектами у меня есть \ bin460, \ bin480, \ bin510, \ bin520 и т. Д. Каждая из этих папок содержит набор двоичных файлов для определенной версии DNN. Таким образом, вы можете строить с использованием конкретной версии, но тестировать с любой версией, которая вам нравится.
Проблема с контролем исходного кода модуля при установке dnn заключается в том, что иногда не весь код модуля легко изолировать в единственном родительском каталоге - не подходит для подхода с использованием модуля PA - нелегко перенести проект на другая версия DNN для разработки или тестирования - легко непреднамеренно создать элементы управления исходным кодом решения DNN, особенно с интегрированными решениями управления исходным кодом VS.
Этот подход быстро компилируется, потому что вы не пытаетесь скомпилировать весь проект. Для тестового развертывания у меня есть сценарий сборки, который копирует различные части модуля на целевой веб-сайт. Это можно сделать с помощью компиляции (свяжите скрипт сборки) или просто запустить после успешной компиляции в окне cmd. В моем сценарии сборки есть переключатель среды «target», поэтому я могу сказать «dnn520», чтобы развернуть сборку для моей тестовой установки dnn520. Обратите внимание, что вам необходимо вручную создать конфигурацию модуля, прежде чем это сработает, но это единовременное усилие, и вы можете использовать функцию экспорта для создания манифеста модуля .dnn.
Чтобы собрать пакет модуля, потратьте время на исчерпывающий сценарий, который возьмет различные части из исходного каталога и заархивирует их в установочный пакет. Сохраните все части в папке управления версиями и скопируйте их во временный каталог, затем запустите утилиту zip из командной строки (я использую старую версию pkzip), чтобы упаковать ее в устанавливаемый файл.
Преимущества этого подхода: - отделение кода модуля от установленного кода - простой способ сохранить только код модуля в системе контроля версий (не нужно исключать весь код веб-сайта) - возможность быстро тестировать модули в разных версиях dnn. - сценарий упаковки позволяет быстро и легко собрать новую версию модуля для установки, тестирования / развертывания
Недостатки: нельзя использовать волшебную зеленую кнопку «перейти» в VS (необходимо вручную подключить отладчик) - больше времени на настройку, чем при разработке на месте.
person
Bruce Chapman
schedule
05.01.2010