我正在尝试通过Visual Studio团队资源管理器中的TFS查询编辑器获取所有签到的列表(按日期限制/排序)。
我可以创建一个列出所有错误,sprint backlog项目或产品backlog项目的查询,但我找不到实际的签到。是否可以或应该直接在数据库上进行(SQL)查询。
想法?
答案 0 :(得分:24)
只需打开Team Explorer窗口,展开TFS项目,然后双击那里的Source Control节点。
然后,您只需右键单击TFS源代码管理中的项目或目录,然后选择“查看历史记录”,即可获得所有提交。
答案 1 :(得分:24)
tf
command-line utility(通过VS2010命令提示符提供)提供了一种检索指定文件或文件夹的所有签入历史记录的方法。
具体来说,tf history
command允许按日期范围进行过滤。例如,要获取6月当前月份的所有签到(即6/1/11 - 6/30/11),请使用\version
参数和日期选项(D"[start date]"~"[end date]"
) :
tf history c:\MyProject /recursive /version:D"06/1/11"~D"06/30/11"
这将启动一个交互式GUI窗口,显示这些日期之间发生的所有签入。 GUI窗口等效于Visual Studio中显示的历史窗口。因此,您可以深入查看变更集详细信息,与先前版本的文件进行比较等。
如果您只想查看没有GUI窗口的历史记录列表,请添加参数/noprompt
:
tf history c:\MyProject /recursive /version:D"06/1/11"~D"06/30/11" /noprompt
这会将结果输出到命令提示符控制台窗口。
答案 2 :(得分:11)
USE TfsVersionControl
select distinct top 100 c.CreationDate,c.Comment,u.DisplayName, v.Fullpath
from tbl_changeset as c
join tbl_identity as u on u.Identityid = c.OwnerId
join dbo.tbl_Version as v on v.Versionfrom = c.ChangeSetId
Order by c.CreationDate desc
这是我查看最近更改的SQL报告。
答案 3 :(得分:9)
这是我们使用的
USE [Tfs_DefaultCollection]
SELECT distinct cs.CreationDate, cs.[ChangeSetId], c.DisplayPart, cs.[Comment]
from [tbl_ChangeSet] AS cs
left outer JOIN [tbl_Identity] AS i ON cs.[OwnerId] = i.[IdentityId]
left outer JOIN [Constants] AS c ON i.[TeamFoundationId] = c.[TeamFoundationId]
left outer join dbo.tbl_Version as v on v.Versionfrom = cs.ChangeSetId
WHERE creationdate > '04/12/2012'
and (v.fullpath like '%\Web%'
or v.FullPath like '%\Databases%')
ORDER BY cs.[CreationDate] desc
答案 4 :(得分:6)
结帐TFS Sidekick from Attrice。这是我经常使用的一个非常好的免费工具。它有一个历史记录搭档,允许您在用户界面的左侧选择的源树节点上按用户查询变更集。您可以按日期对结果进行排序。您还可以右键单击变更集以查看文件和工作项等详细信息。
答案 5 :(得分:2)
您可以通过右键单击解决方案资源管理器或源代码管理资源管理器窗口中的文件/文件夹来查看文件或文件夹的历史记录,然后根据需要复制/粘贴历史记录的内容。
更有趣的是,在您似乎正在讨论的用例中,您实际上可以从TFS数据仓库中提取所有此类信息,并在Excel中对其进行自己的报告。请查看我在此主题上发表的以下博文,了解更多信息: