Скажем, у меня есть макет хранилища, подобный следующему:
|Root
|->CommonLib
|->ProjectA.PartA
|->trunk
|->lib
|->src
//etc
|->ProjectA.PartB
|->trunk
|->lib
|->src
//About four more projects.
Теперь я разделил их так, чтобы я мог работать с каждым отдельным разделом и разветвлять их, если мне нужно.
ProjectA.PartA использует ProjectA.PartB в качестве ссылки.
До того, как я структурировал это таким образом, у меня были все стволы проектов в одной папке src, и я просто перетащил эту папку вниз, а затем добавил проекты в решение и просто добавил ссылки на проекты между ними.
Это работало нормально, когда все они находились в одной папке, но я чувствую, что это, вероятно, не очень хорошая практика, и это заставляет вас иметь одинаковую структуру извлечения папок или разрыв зависимостей.
Мои мысли о том, как создать каждый проект и сохранить двоичные файлы в папке CommonLib в корневом каталоге, а затем просто использовать svn: externals для каждого проекта, чтобы вывести его зависимости из папки CommonLib в его папку lib и добавить ссылку, которая скорее тогда сам проект.
Будет ли вышеуказанное решение лучше, чем добавление ссылок на проекты?
Какова общая практика при наличии внутренних ссылок на проект?
Если они все являются частью одной и той же "цели", следует ли мне просто устанавливать внешние параметры для всех папок проекта, чтобы вывести зависимости как источник?
Спасибо.