Лучшая практика: среда для совместной работы, каталог Bin, SVN
Каковы лучшие практики для проверки каталогов BIN в среде совместной разработки с использованием SVN? Следует ли исключить ссылки на уровне проекта из проверки? Проще просто добавить все каталоги bin?
Я разрабатываю множество сайтов DotNetNuke, и мне кажется, что в среде с несколькими разработчиками правильно настроить среду - это огромная задача.
Конечная цель (конечно) - заставить нового разработчика проверить транк из SVN, восстановить базу данных DNN и заставить все это просто «работать» ...
Ответов (5)5
Любые собрания, которые, как ожидается, будут в GAC, должны оставаться в GAC. Это включает System.web.dll или любую другую стороннюю dll, которую вы развернете в GAC в процессе производства. Это означает, что эти сборки придется устанавливать новому разработчику.
Все остальные сторонние сборки должны быть ссылками через относительный путь. Моя типичная структура:
-Project
--Project.sln
--References
---StructureMap.dll
---NUnit.dll
---System.Web.Mvc.dll
--Project.Web
---Project.Web.Proj
---Project.Web.Proj files
--Project
---Project.Proj
---Project.Proj files
Project.Web и Project ссылаются на сборки в папке root / References относительно. Эти .dll проверяются на подрывную деятельность.
Помимо этого, * / bin * / bin / * obj должен быть в вашем глобальном пути игнорирования.
При такой настройке все ссылки на сборки либо через GAC (поэтому должны работать на всех компьютерах), либо относительно каждого проекта в вашем решении.
Tree Surgeon - отличный инструмент, который создает пустое дерево разработки .NET. За годы использования он был изменен, и в нем реализовано множество передовых практик.
Это конкретный вопрос .Net?
Как правило, лучше всего не проверять что-либо, что создается автоматически из файлов, которые уже находятся в SCM. Все это в идеале создается как часть вашего автоматического процесса сборки.
Если bin
каталог, о котором вы говорите, содержит сторонние двоичные файлы, а не сборку вашего проекта, проигнорируйте (отрицательный?) Этот совет.