【问题标题】:How to silo git repos for teams in VSTS如何在 VSTS 中为团队存储 git repos
【发布时间】:2023-03-07 21:18:02
【问题描述】:

我目前正在为我们的团队建立一个 VSTS 项目,并希望遵循 MS 批准的“一个项目多领域”的方法。我想在每个团队的基础上隔离 git 存储库(类似于工作项的工作方式),但是团队都有相同的成员。这可能吗?这是一个例子......

我在 VSTS 中创建了一个项目,我们称之为 MainProject。我还有一个由 4 名开发人员组成的团队,他们都是 VSTS 中名为 MyDevGroup 的组的成员。

MainProject下,我设置了两个团队,两个区域,我们分别称他们为MainProject/Team1MainProject/Team2。我将组 MyDevGroup 分别添加到这两个团队的安全性中。在这个阶段,如果其中一个团队通过 VS 访问它,他们可以看到这两个团队,如果他们要添加一个新的工作项,根据他们当前选择的团队,它会将其分配到正确的区域。这很棒。

我还创建了两个 git repos,我们称它们为 MainProject / Repo1MainProject / Repo2,并在贡献者级别将 Team1 分配给Repo1,以及 Team2Repo2。但是,在 VS 中,如果用户当前正在查看 MainProject / Project1 团队,他们仍然可以克隆任一 repo - 他们看到两者。

这是有问题的,因为您可以想象这样一个场景:用户可能在 VS 中选择了 Team1 团队,但不小心签出了 Repo2 并着手处理。

那么,有没有办法将 repo 限制为一个团队?

编辑:除此之外,我意识到一旦您在特定回购中打开解决方案,关闭 VS 然后重新打开它,它将引用正确的回购。但是,它不会保留对正确团队的引用。它使最后一个团队保持打开状态,而不是我为解决方案选择的团队。有没有办法让 VS 保留我在关闭解决方案时选择的团队?

编辑 2: 重复 - VSTS/TFS GUI: Auto-switch repository per team view?

【问题讨论】:

  • 托管在 VSTS 团队项目中的存储库可供所有团队使用。对于您的情况,由于不同的团队(Team1 和 Team2)拥有相同的成员,为什么您需要开发人员同时为 Team1 和 Team2 工作?
  • 就像我说的,我不希望团队在 Visual Studio 中选择“Team1”时意外地在 Repo2 上工作。 Team1 将用于一个 Web 应用程序,而 Team2 将用于另一个 Web 应用程序。
  • 正如您在链接中找到的(您展示的),直接答案是否定的。如果 Repo1 和 Repo2 中的代码完全不同,另一个解决方法是在不同的团队项目中托管 git repos。
  • 是的 - 这种方法的问题是我们有多个项目共享基础架构 (IIS),跨项目使用部署组会很好,但我们不能这样做。

标签: visual-studio tfs azure-devops


【解决方案1】:

根据this link,这在 VSTS 的当前功能下是不可能的。希望这在未来成为可能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-22
    • 2013-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多