Web.config в репозитории с открытым исходным кодом - PullRequest
7 голосов
/ 22 мая 2011

Я создаю веб-приложение на C # с использованием ASP.NET MVC и использую сервер MSSQL, установленный на моей машине.

Также я хотел опубликовать приложение как проект с открытым исходным кодом и запустить его на производственном сервере.Должен ли я добавить файл web.config в репозиторий исходного кода?Если я должен, как я должен отслеживать «версию с открытым исходным кодом» (указывающую на MsSQL, установленную на localhost) и производственную версию (указывающую на мой хостинг web.config (я использую Mercurial).

Ответы [ 2 ]

3 голосов
/ 22 мая 2011

Рекомендуемый способ сделать это следующим образом:

  1. Создать копию общедоступной версии файла, которую вы хотите, чтобы люди использовали в качестве отправной точки ,и назовите его чем-то другим, а не используемым файлом.В вашем случае это может быть web.config.template.Убедитесь, что файл будет пригоден для использования, если вы только что переименовали его.
  2. Проинструктируйте Mercurial игнорировать реальный файл, т.е.web.config
  3. Если возможно, определите процесс сборки, присутствует ли фактический файл, а если нет, скопируйте его из файла шаблона в фактический файл
  4. Если шаг 3невозможно, командный файл для создания фактического файла - это следующая лучшая вещь, или простые инструкции о том, как его создать.

Это гарантирует, что:

  1. Существуетпростой способ получения фактического файла конфигурации
  2. Вы можете редактировать свой локальный файл фактической конфигурации, не беспокоясь о его фиксации (он игнорируется)
  3. Если шаг 3 был возможен, это в значительной степени прозрачно, если тольковам нужно внести изменения в файл

Шаг 3 можно обработать с помощью события перед сборкой для вашего проекта, например:

if not exist web.config copy web.config.template web.config
2 голосов
/ 22 мая 2011

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

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