【问题标题】:TFS "Assign To" is showing too many usersTFS“分配给”显示用户过多
【发布时间】:2012-07-31 01:04:21
【问题描述】:

我连接到 TFS 服务器,当我创建工作项(错误、任务等)时,“分配给”显示用户太多。我找不到限制显示的用户的方法,这会影响连接到服务器的任何其他人。

例如,我在“分配给”下拉列表下:

Administrator
LOCALE SERVICE
User 1
User 2
User 3
User 4
User 5

我希望“分配给”下拉菜单只显示:

User 1
User 3
User 5

我将如何做到这一点,以便它在服务器上发生变化,如果有人新连接到服务器,他们只能在“分配给”下拉列表中看到三个用户?

【问题讨论】:

  • 这应该在programmers.stackexchange.com 结束。好问题,但不是编程解决方案类型的交易——更多关于工具的信息。

标签: tfs


【解决方案1】:

这是你应该做的:

  1. 打开 Visual Studio 命令提示符。这将为您提供一个命令行窗口,其中 PATH 设置为运行 VS / TFS 工具
  2. 下载您要修改的工作项类型定义(例如,Bug、Task):

    • witadmin exportwitd /collection:collectionurl /p:project /n:typename [/f:filename]

    这将为您提供 WIT 的 XML 格式定义。

  3. 打开 XML 文件。您将为 Assigned To 字段编辑规则。查找术语“System.AssignedTo”
  4. Allowed Values 规则元素中,修改(如果不存在,则添加)您的 List Item 元素以将值限制为一个(或多个)TFS / Active Directory 组。 您的字段定义应如下所示:

<FIELD name="Assigned To" refname="System.AssignedTo" type="String" syncnamechanges="true" reportable="dimension">
<HELPTEXT>The person currently working on this bug</HELPTEXT>
<ALLOWEXISTINGVALUE />
<ALLOWEDVALUES expanditems="true" filteritems="excludegroups">
<!-- Below is a TFS group. Note you actually type "[project]" verbatim -->
<LISTITEM value="[project]\Contributors" />
<!-- Below is an AD group. The name and group are examples only -->
<LISTITEM value="MYDOMAIN\Developers" /> </ALLOWEDVALUES>
</FIELD>

导入您的更改:

  1. 保存您的文件。
  2. 在命令行窗口中键入以下内容:
    witadmin importwitd /collection:collectionurl /p:project /f:filename

就是这样。您的工作项类型现在仅限于您想要的人。

【讨论】:

  • 您可以通过visual studio获取文件并使用visual studio上传文件。可能想要更新您的答案以反映您可以在 Visual Studio 中执行其中的一些操作。
  • 您需要安装团队基础电动工具才能做到这一点。
  • 我没有,除非它带有终极版
  • 有人做过... VS 2010 没有提供用于处理 TFS 工作项的 GUI 扩展。如果您在谈论菜单选项工具 > 流程编辑器 > 导入/导出 WIT,那绝对是 TFPT。
  • 好的,我必须更仔细地阅读.. [项目] 逐字逐句应该是一个足够好的解释。所以它必须是 [project] 而不是 [MyMainProject] 或类似的 - 所有不同的项目名称都相同,并且始终引用当前项目。
【解决方案2】:

在此处查看我对 2012 年的回答,可能类似:Visual Studio - Don't display all domain users in "Assign To" field

问题在于 [TEAM FOUNDATION]\Valid Users 包括 [TEAM FOUNDATION]\Team Foundation Administrators,其中包括 [BUILT IN]\Administrators

TFS 服务器管理控制台中,我选择了 Application Tier 并点击Group Membership。然后我双击 [TEAM FOUNDATION]\Team Foundation Administrators 并删除了[BUILT IN]\Administrators

现在我只看到我的团队,而不是所有的 SQL 管理员和工程师 是服务器上的本地管理员。全部没有任何命令行或 插件。

【讨论】:

  • 不错的斯科特。我几乎得到了这个解决方案,在你发布之前,我试图弄清楚从集合组成员身份中的 [Collection]\Project Collection Administrators 组中删除 [BUILTIN]\Administrators 组。只是警告我需要停止/启动 DefaultCollection 以使更改生效。这很奇怪,因为除了 DefaultCollection 之外我还有另一个收集,我不需要停止/开始查看更改。
  • 在 TFS 2013 中也为我工作
【解决方案3】:

你可以:

1) 到这里https://teamprojectmanager.codeplex.com/releases 下载最新的团队项目经理;

2) 启动它(存档中的 *.exe 文件);

3) 将其连接到您的项目;

4) 进入右侧的“工作项配置”;

5) 然后转到“工作项类型”;

6) 选择您的项目类型(例如 Product Backlog Item),点击“编辑”;

7) 执行 Assaf Stone 上面的建议,在我的情况下它只是替换

<VALIDUSER />

<ALLOWEDVALUES expanditems="true" filteritems="excludegroups">
    <LISTITEM value="[project]\Contributors" />
</ALLOWEDVALUES>

8) 保存您的更改;

就是这样!顺便说一句,该工具还可以用于其他一些自定义。

【讨论】:

    【解决方案4】:

    为 Visual Studio 安装 TFS 电动工具后。

    1. 从菜单中打开Tools --> Process Editor --> Work Item Types --> Open WIT (WorkItem) Type from Server
    2. 选择您需要更改的集合、项目和工作项。
    3. 打开Assigned To 字段并单击Rules Tab
    4. 编辑有效用户并添加您要显示的“组名”。

    然后在 Visual Studio 中通过选择保存来保存工作项。

    希望这行得通。

    【讨论】:

      【解决方案5】:

      在集合下创建一个单独的组并添加用户。 打开流程模板添加规则以分配给字段分配给“有效用户”并选择您创建的组。

      【讨论】:

      • 你能说得更具体点吗?我什至不知道 Process 模板在服务器上的位置。你能给我一个链接或一步一步的说明如何做到这一点吗?
      • 值得注意的是,您必须为服务器上的每个工作项类型执行此操作。默认行为是包含每个有效的 TFS 用户。
      【解决方案6】:

      所以在查看了一些来自 hems 的关键字后,我得到了一些不错的谷歌搜索结果。

      您需要做的第一件事是进入 Visual Studio,选择团队菜单,然后从那里转到收藏设置。您将看到流程模板,您可以从那里下载您拥有的模板。

      下载后,您可以修改所需的任何设置。完成后,转到相同的菜单,这次点击上传。

      仅此而已,但请注意,您只能在创建项目时选择这个新的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-03-10
        • 2021-07-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-10
        • 2014-11-29
        相关资源
        最近更新 更多