Мы команда из 4 разработчиков, работающих над одним проектом. Мы используем Entity Framework для доступа к нашей базе данных SQL. Строку подключения мы сохраняем в web.config.
Каждый разработчик тестирует свой код для своей собственной локальной базы данных SQL-сервера. Это означает, что у каждого разработчика есть собственная строка подключения к SQL Server в web.config. У меня обычно есть несколько разных копий базы данных на моем компьютере с данными из разных сценариев, между которыми я переключаюсь, редактируя строку подключения. Одна база данных может быть пустой, другая может содержать огромное количество тестовых данных и так далее.
Проблема, с которой мы сталкиваемся, заключается в том, что мы случайно проверяем web.config в системе управления версиями, что означает, что, когда один из других разработчиков в команде извлекает последний код из системы управления версиями, его локальный файл web.config - с его строкой подключения - будет заменен тем, что принадлежит другому разработчику. (Кстати, мы используем AccuRev, в котором нет хорошего способа игнорировать определенные файлы).
Я придумал пару разных хакерских решений:
- Создайте новый файл конфигурации, в котором мы храним конфигурации для конкретного компьютера. Мы не проверяем этот файл в системе контроля версий. Или мы проверяем его под другим именем.
- Переименуйте web.config в web.config.default (или что-то еще) в системе управления версиями. После проверки из системы управления версиями разработчик должен переименовать web.config.default в web.config, прежде чем он сможет запустить.
Неужто должен быть какой-то стандартный способ справиться с этим?