如何知道谁代表其他用户签入(使用 /author)

Jon*_*han 5 version-control tfs

在 TFS2010 中,可以代表另一用户签入(假设他有权这样做):

> tf.exe checkin (...) /author:OtherUser
Run Code Online (Sandbox Code Playgroud)

签入历史记录显示 OtherUser 作为签入的用户:

> tf history (...) /noprompt
Changeset User              Date       Comment
--------- ----------------- ---------- -----------
1234      OtherUser         (...)
Run Code Online (Sandbox Code Playgroud)

我发现一篇博文说“你的用户名和OtherUser都记录在变更集数据中,这样你就可以随时确定谁签入了变更”。我认为它记录在Changeset .Commiter 与 ChangeSet.Owner 中,但tf historytf changeset不显示。

是否有一些 UI/工具可以显示此信息?

[编辑] 注意:Commiter 似乎有两种不同的含义:

  1. 代表其他用户签入的用户,使用tf checkin /author.
  2. 运行门控签入的用户(计算机帐户或构建用户)。

如果有人进入tf checkin /author门控签到,则意味着 1 胜。

Gra*_*day 3

你是对的,涉及两个不同的用户。

  1. Changeset.Committer- 实际执行签入的用户(即通过服务器身份验证的用户)
  2. Changeset.Owner- 代表执行签到的用户(即指定为/author:OtherUser

Visual Studio UI 不会向您显示所涉及的两个不同用户。它只会向您显示所有者/作者。(这是有道理的,因为提交者很少会有所不同)

如果您想查看这两个用户,可以使用以下命令行,并使用 /noprompt 开关强制将输出输出到控制台:

C:\code>tf changeset 1234 /noprompt
Changeset: 1234
User: ChangesetOwnerOrAuthorUser
Checked in by: ChangesetCommitterUser
Date: Friday, 1 February 2013 12:00:00 PM

Comment:

Items:
  edit $/project/test/test.txt
Run Code Online (Sandbox Code Playgroud)