Лучшая практика: среда для совместной работы, Bin Directory, SVN

Каковы лучшие методы проверки каталогов BIN в среде совместной разработки с использованием SVN? Должны ли ссылки на уровне проекта быть исключены из регистрации? Легче ли просто добавить все каталоги bin?

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

Конечная цель (конечно) состоит в том, чтобы новый разработчик извлек ствол из SVN, восстановил базу данных DNN и все это просто «работало» ...

1.08.2008 23:29:32
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 ссылаются на сборки в корневой / References папке относительно. Эти .dll проверены в подрывной деятельности.

Кроме того, * / bin * / bin / * obj должен быть в вашем глобальном пути игнорирования.

При такой настройке все ссылки на сборки либо через GAC (так должно работать на всех компьютерах), либо относительно каждого проекта в вашем решении.

19
1.08.2008 23:40:28

Это конкретный вопрос .Net?

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

Если binкаталог, на который вы ссылаетесь, содержит сторонние двоичные файлы, а не сборку вашего проекта, игнорируйте (downvote?) Этот совет.

4
1.08.2008 23:44:05

Tree Surgeon - отличный инструмент, который создает пустое дерево разработки .NET. Он был изменен за многие годы использования и реализует множество лучших практик.

4
11.09.2008 13:03:13

Maven очень помогает с этой проблемой, когда я пишу Java. Мы передаем файл pom.xml в scs, а репозиторий maven содержит все наши зависимости. Для меня это кажется хорошим способом сделать это.

2
2.08.2008 18:30:34

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

1
13.08.2008 22:25:16