Один из наших основных проектов — миграция из Starteam в SVN. Подпроекты в основном проекте совместно используют несколько заголовочных и исходных файлов. Поскольку Starteam поддерживает ссылки, нам было легко изменить общий заголовочный файл / исходный файл и зарегистрировать его. Starteam обычно обновлял его во всех подпроектах. Затем мы использовали для создания всех подпроектов, которые зависят от общего файла. Раньше это был наш обычный процесс обновления общих файлов в случае Starteam.
Поскольку мы переходим на SVN, он не поддерживает ссылки, и обновление любого общего файла в одном из проектов не обновляется во всех других папках проекта. Чтобы решить эту проблему, мы разделили общие файлы и разместили их в общем месте и изменили настройки Visual Studio, чтобы все проекты имели доступ к общему файлу из одного места. Все прошло хорошо с этим планом для некоторых подпроектов. Но столкнулся с проблемой одного из подпроектов. Проблема заключается в следующем:
Для нашего примера я возьму 3 подпроекта, которые совместно используют «a.h», «b.h», «a.cpp» и «b.cpp». «a.cpp» включает «a.h», а «b.cpp» включает «b.h». Проект 1 и 2 совместно используют все эти файлы, поэтому нет проблем, но проект 3 совместно использует только «a.cpp», «b.h» и «b.cpp». «a.h» является локальным для проекта 3. Когда я включаю каталог «b.h» в проект 3, Visual Studio включает общий «a.h» в «a.cpp» вместо локального файла проекта 3 «a.h». Я искал в интернете вариант в visual studio, где вместо всего каталога мог быть включен только один заголовок, но я не смог его получить.
Прошу вас всех предложить мне лучшее решение для этой миграции или какой-нибудь вариант Visual Studio, включающий один заголовочный файл вместо всего каталога.
Заранее спасибо.
Поскольку мы переходим на SVN, он не поддерживает ссылки, и обновление любого общего файла в одном из проектов не обновляется во всех других папках проекта.
RLLY ?! Вы должны:
и вы сможете использовать его без каких-либо специфических для VS трюков, на чистых функциях Subversion
Других решений пока нет …