Team Foundation Server 2015 - Git Visual Studio 2015 中的子模块克隆
Team Foundation Server 2015 - Git Submodule Cloning in Visual Studio 2015
我们最近已迁移到 TFS2015,并且正在评估使用 git 而不是 TFVC。我们很快意识到的一件事是 'one big repo' 方法在持续集成中根本不起作用,因为 TFS 当前不支持 CI 构建定义监控 git 存储库中的子目录。
所以我们正在尝试使用多个存储库,每个解决方案一个,并使用子模块来处理依赖项。通用布局:
CommonLibraryRepo
Component1Repo
----Submodule pointing to CommonLibraryRepo
等等。每个组件的回购,以及其中每个引用组件的子模块。
构建能够检索 'Component1Repo' 以及 'CommonLibraryRepo' 子模块就好了。当我们想从 Visual Studio 内的 TFS 克隆时,问题就出现了。我们按 'Connect',选择 repo,然后在本地克隆它,但是子模块文件夹是空的。我刚更新到VS2015 Enterprise update 1,但是问题好像没有解决。
似乎已在此处请求该功能:
并且根据那里的评论,它似乎已经实际实施(参见 'Daniel' 和 'MMmmm' 的评论。)不过我得到了不同的结果。
我的具体问题:
- 是否可以从 Visual Studio(没有 git cli)中进行递归克隆,检索子模块?
- 是否有更好的回购结构(使用或不使用子模块)来支持多个解决方案,在它们之间进行引用,同时仍然能够利用当前的 TFS2015 CI 限制?
我也遇到了同样的问题。 Visual Studio 2015.1
当前无法签出 submodules
,无论是在克隆上还是在切换分支时。我的解决方法是 switch branches
和 SmartGit
或使用普通的 git commands
.
我们最近已迁移到 TFS2015,并且正在评估使用 git 而不是 TFVC。我们很快意识到的一件事是 'one big repo' 方法在持续集成中根本不起作用,因为 TFS 当前不支持 CI 构建定义监控 git 存储库中的子目录。
所以我们正在尝试使用多个存储库,每个解决方案一个,并使用子模块来处理依赖项。通用布局:
CommonLibraryRepo
Component1Repo
----Submodule pointing to CommonLibraryRepo
等等。每个组件的回购,以及其中每个引用组件的子模块。
构建能够检索 'Component1Repo' 以及 'CommonLibraryRepo' 子模块就好了。当我们想从 Visual Studio 内的 TFS 克隆时,问题就出现了。我们按 'Connect',选择 repo,然后在本地克隆它,但是子模块文件夹是空的。我刚更新到VS2015 Enterprise update 1,但是问题好像没有解决。
似乎已在此处请求该功能:
并且根据那里的评论,它似乎已经实际实施(参见 'Daniel' 和 'MMmmm' 的评论。)不过我得到了不同的结果。
我的具体问题:
- 是否可以从 Visual Studio(没有 git cli)中进行递归克隆,检索子模块?
- 是否有更好的回购结构(使用或不使用子模块)来支持多个解决方案,在它们之间进行引用,同时仍然能够利用当前的 TFS2015 CI 限制?
我也遇到了同样的问题。 Visual Studio 2015.1
当前无法签出 submodules
,无论是在克隆上还是在切换分支时。我的解决方法是 switch branches
和 SmartGit
或使用普通的 git commands
.