Мы разрабатываем с Visual Studio 2010 (на C #) и недавно перешли с SVN на GIT.Теперь мы пытаемся разделить наш репозиторий (который довольно большой - ~ 30 000 файлов) на множество репозиториев git - по одному для каждого решения.Решения используют некоторые проекты, в основном библиотеки, которые мы разрабатываем собственными силами и которые хотели бы добавить из всех решений.
Новые репозитории имеют плоскую планировку.Один подкаталог для каждого проекта (общие проекты - это подмодули).В большом старом репо проекты находятся в древовидной структуре.
Проблема возникает с внешними ссылками в подмодулях.В новых репозиториях путь к ссылочному проекту может быть "...... libs \ someproject", тогда как в новом макете правильный путь будет ".. \ someproject".
Мы ужеУ меня было несколько войн редактирования, связанных с этим, и они не заинтересованы в большем.
Полуфабрикаты Решения, о которых я мог подумать:
использовать "ссылочные пути" в ... csproj.user и исключить этот файл из системы контроля версий (необходимо переделывать для каждого разработчика и после каждой очистки репозитория)
использовать ветки для каждой ситуации и пытаться научить всех, где "настоящие" коммитыдолжен идти и куда должны идти коммиты "изменение среды" (подмодули уже не самая простая концепция ...)
вставлять двоичные файлы вместо подмодулей (но как насчет разработки измененийсубмодули? как насчет различных версий log4net?)
Кто-нибудь знает о здравом подходе?