【问题标题】:Team Foundation Server 2015 - Git Submodule Cloning in Visual Studio 2015Team Foundation Server 2015 - Visual Studio 2015 中的 Git 子模块克隆
【发布时间】:2016-01-07 23:50:20
【问题描述】:

我们最近转移到了 TFS2015,并且正在评估使用 git over TFVC。我们很快意识到,“一个大仓库”方法在持续集成中根本不起作用,因为 TFS 目前不支持 CI 构建定义监控 git 仓库中的子目录。

所以我们尝试使用多个 repos,每个解决方案一个,并使用子模块来处理依赖关系。通用布局:

CommonLibraryRepo
Component1Repo
----Submodule pointing to CommonLibraryRepo

等等。每个组件的 repo,以及其中每个引用组件的子模块。

构建能够很好地检索“Component1Repo”以及“CommonLibraryRepo”子模块。当我们想在 Visual Studio 中从 TFS 克隆时,就会出现问题。我们按“连接”,选择存储库,然后在本地克隆它,但子模块文件夹只是空的。我刚刚更新到VS2015 Enterprise update 1,但问题似乎没有解决。

这里似乎已经请求了该功能:

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

根据那里的 cmets,它似乎已经实际实施(参见 'Daniel' 和 'MMmmm' 的 cmets。)不过,我得到了不同的结果。

我的具体问题:

  • 是否可以在 Visual Studio 中进行递归克隆、检索子模块(不使用 git cli)?
  • 是否有更好的 repo 结构(使用子模块或不使用子模块)来支持多个解决方案,它们之间有引用,同时仍然能够利用当前的 TFS2015 CI 限制?

【问题讨论】:

  • Visual Studio 2015 Update 2 支持子模块。

标签: git visual-studio-2015 tfs-2015


【解决方案1】:

我也有同样的问题。 Visual Studio 2015.1 当前无法签出submodules,无论是在克隆上还是在切换分支时。我的解决方法是 switch branchesSmartGit 或使用普通的 git commands

【讨论】:

  • 这就是现在的答案。 CLI 是我们的解决方案,我们只是希望有更简单的东西。一旦功能被添加到 VS,我会尝试回来更新(如果它曾经是 :))
猜你喜欢
  • 2016-04-09
  • 2016-02-13
  • 2017-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-17
  • 2016-04-12
  • 2016-03-09
相关资源
最近更新 更多