Subversion и использование IIS для разработки ASP.NET - PullRequest
1 голос
/ 09 декабря 2008

Я новичок в SVN и не смог найти ответ для следующей ситуации.

У меня есть веб-приложение ASP .NET 2.0, которое я разрабатываю. Я использую свой локальный IIS в качестве веб-сервера разработки (т.е. не сервер веб-разработки Visual Studio). Моя среда разработки - VS2005, Vista, IIS7, TortoiseSVN / AnkhSVN. VisualSVN установлен на сервере.

Мои файлы .sln, библиотеки классов и т. Д. Находятся в папке ** C: \ Localsource \ Projects \ ProjectName **, а мои файлы .aspx находятся в моей папке ** C: \ inetpub \ wwwroot \ ProjectName * * папка.

Я могу настроить репозиторий для ** C: \ Localsource \ Projects \ ProjectName **, но не могу придумать, как настроить его для папки IIS в том же репозитории.

Как лучше всего работать с этой средой разработки в SVN?

Большое спасибо,

Муравей

Ответы [ 7 ]

4 голосов
/ 09 декабря 2008

В решении в Visual Studio вы можете создать проект библиотеки классов, который обычно находится в каталоге под файлом .sln.

В этом случае у него также есть веб-проект в решении, но НЕ под файлом .sln в структуре файлового каталога.

Он будет подключаться к этому проекту через HTTP, а не через локальный путь к файлу.

IIS будет управлять этим как http://localhost/webapp и по умолчанию поместит его в c: \ inetpub \ wwwroot \ webapp. Файлы в папке webapp не будут находиться в репозитории, так как они не находятся в иерархии решения и библиотеки классов. Это его вопрос, как с этим разобраться.

Мой ответ - переместить http://localhost/webapp, чтобы указать на папку, которая находится под файлом .sln и находится рядом с каталогом библиотеки классов, после чего все это может пойти в репозиторий.

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

2 голосов
/ 09 декабря 2008

Не можете ли вы просто указать IIS на C: \ Localsource \ Projects \ ProjectName и установить разрешения?

0 голосов
/ 10 декабря 2008

Rob

Почему вы считаете файл .aspx выводом базы кода?

Это часть базы кода. Например, это не вывод после компиляции.

Просто задумался?

0 голосов
/ 09 декабря 2008

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

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

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

Во-вторых, что касается разработки компонентов, которые используются на сайте, им нужны свои собственные проекты разработки, так как это результат, который идет на сайт разработки, а не весь исходный код, библиотеки и т. Д. Компонент построен с. Таким образом, они будут иметь свое собственное дерево разработки проекта (представьте, что вы создаете библиотеку, которая будет использоваться другими проектами разработки, хотя в этом случае другие проекты являются веб-страницами). Таким образом, единственное, что должно отображаться в IIS, - это «развернутый» компонент на сайте разработки.

Кажется, для вас есть три критических вопроса:

  1. Как ведется разработка тестов, которые должны выполняться на веб-сайте, и где это контролируется версиями (при условии, что они не принадлежат самому веб-сайту)

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

  3. Простое извлечение разработанных компонентов из проектов, производящих их, на сайт разработки и возможность их проверки там.

Мое решение (2) и контроля версий на веб-сайте разработки заключается в использовании интеграции Visual Source Safe с расширениями IIS и FrontPage, которая ставит сайт под контроль версий. Компоненты, созданные из других проектов разработки, сопоставляются с проектом сервера с помощью общего доступа VSS.

Что касается SVN, я предполагаю, что (1) вы хотите увидеть, есть ли SVN-адаптер, который IIS распознает как внешнюю систему контроля источника, и, в любом случае, (2) иметь дисциплину, которая принимает поставки компонентов от их строительные проекты в общий проект веб-сайта.

0 голосов
/ 09 декабря 2008

Папка IIS не является выводом базы кода, она является частью приложения. Это не вывод CGI или что-то еще, а сценарии запуска приложения!

Это страницы .aspx, которые будут иметь пользовательские элементы управления и HTML для фактического запуска приложения. Это часть приложения, но отделена от решения VS Studio.

Самый простой способ - найти решение, а затем C: \ Localsource \ Projects \ ProjectName \ WEBSITE.

Также укажите IIS на эту папку.

0 голосов
/ 09 декабря 2008

ОК, я могу быть здесь идиотом, но ... Зачем вам нужно добавлять папку IIS (т.е. вывод базы кода) в ваш репозиторий?

Обновление

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

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

Развертывание решений в этой структуре также будет намного проще ..

0 голосов
/ 09 декабря 2008

Хммм - Хороший вопрос. Когда я сюда попал, все было настроено так, и Visual Studio всегда создает веб-сайты в папке wwwroot, поэтому я предположил, что именно там wwwroot и должен был идти.

Может быть, мне придется подумать о небольшой перестановке ...

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...