2016-01-07 2 views
0

Мы недавно перешли на TFS2015 и в процессе оценки с использованием git over TFVC. Одна вещь, которую мы быстро поняли, заключалась в том, что подход «один большой репо» вообще не будет работать с непрерывной интеграцией, поскольку TFS в настоящее время не поддерживает определения построения CI, контролируя подкаталог в репозитории git.Team Foundation Server 2015 - клонирование подмодулей Git в Visual Studio 2015

Итак, мы пытаемся использовать несколько репозиториев, по одному на решение, и использовать подмодули для обработки зависимостей. Общий макет:

CommonLibraryRepo 
Component1Repo 
----Submodule pointing to CommonLibraryRepo 

и так далее. Repo на компонент и подмодуль для каждого ссылочного компонента внутри.

Сборка может извлекать «Component1Repo» вместе с подмодулем «CommonLibraryRepo» просто отлично. Проблема возникает, когда мы хотим клонировать из TFS в Visual Studio. Мы нажимаем «Connect», выбираем репо, затем клонируем его локально, но папка подмодуля просто пуста. Я только что обновился до версии VS2015 Enterprise 1, но проблема, похоже, не решена.

особенность, кажется, было предложено здесь:

https://visualstudio.uservoice.com/forums/330519-team-services/suggestions/3606383-add-submodule-support-in-visual-studio-git-extensi

и на основе замечаний, там, казалось бы, он на самом деле был реализован (см комментарии «Daniel» и «ммммм».) Однако у меня разные результаты.

Мои конкретные вопросы:

  • Можно ли сделать рекурсивный клон, извлекая подмодулях, внутри Visual Studio (без мерзавца кли)?
  • Есть ли лучшая структура репо (использующая подмодули или нет) для поддержки нескольких решений, со ссылками между ними, хотя они все еще могут использовать текущие ограничения TI TFS2015?
+0

Visual Studio 2015 Update 2 имеет поддержку подмодулей. –

ответ

2

У меня такая же проблема. Visual Studio 2015.1 в настоящее время не в состоянии проверить submodules, ни на клоне, ни при переключении ветвей. Обходной путь для меня был switch branches с SmartGit или с использованием простой git commands.

+0

Это правильно – jessehouwing

+0

Это ответ пока. CLI была для нас решением, мы просто надеялись на что-то более простое. Я попытаюсь вернуться и обновить после добавления функции в VS (если это когда-либо :)) – Sean

Смежные вопросы