В моей компании у нас есть несколько различных веб-приложений, в которых есть общие библиотеки. Настройка Visual Studio выглядит следующим образом.
Website 1 Solution Website 1 Shared Library 1 Project Shared Library 2 Project Website 2 Solution Website 2 Shared Library 1 Project Shared Library 2 Project Windows Service Solution Windows Service Project Shared Library 1 Project Shared Library 2 Project Shared Library Solution Shared Library 1 Project Shared Library 2 Project All Projects Solution Website 1 Website 2 Windows Service Project Shared Library 1 Project Shared Library 2 Project
Мы хотим начать использовать Mercurial для управления версиями, но я все еще не уверен, что это лучший способ сделать это.
Из того, что я прочитал, вы должны использовать отдельный репозиторий для каждого проекта. Там нет проблем, но где идут файлы решений Visual Studio (.sln)? Должен ли быть отдельный репозиторий с только .sln файлом?
В идеале проекты, использующие разделяемые библиотеки, должны использовать одну и ту же версию, а решение "All Projects Solution" должно строиться без ошибок, но иногда нам нужно разветвлять разделяемые библиотеки. Каков наилучший способ сделать это и как будут устанавливаться репозитории?
Как получить рабочую копию определенного ветки/тега решения для сайта 1, когда каждый проект находится в отдельном репозитории. Должен ли я каждый раз тянуть каждый отдельно или писать script, чтобы сделать все сразу? Может ли черепаха hg сделать это для меня?
Любые другие советы, чтобы облегчить этот процесс?