TFS annotate/blame summary report for a project

落爺英雄遲暮 提交于 2019-11-27 03:54:14

问题


In Team Foundation Server, I know that you can use the Annotate feature to see who last edited each line in a particular file (equivalent to "Blame" in CVS). What I'd like to do is akin to running Annotate on every file in a project, and get a summary report of all the developers who have edited a file in the project, and how many lines of code they currently "own" in that project.

Aside from systematically running Annotate of each file, I can't see a way to do this. Any ideas that would make this process faster?

PS - I'm doing to this to see how much of a consultant's code still remains in a particular (rather large) project, not to keep tabs on my developers, in case you're worried about my motivation :)


回答1:


It's easy enough to use the "tf.exe history" command recursively across a directory of files in TFS. This will tell you who changed what files.

However what you're after is a little bit more than this - you want to know if the latest versions of any files have lines written by a particular user.

The Team Foundation Power Tools ship with a command-line version of annotate called "tfpt.exe annotate". This has a /noprompt option to direct the output to the console, but it only outputs the changeset id - not the user name.

You could also use the TFS VersionControl object model to write a tool that does exactly what you need.




回答2:


If you install the TFS Power tools (at least for VS2005); it's called annotate.

It might be part of VS2008...




回答3:


You can use TFS Analysis Cube to see generate a code churn report, which I believe is something you would like.




回答4:


Annotate is now part of Visual Studio (I think it was introduced in VS 2010).

Docs




回答5:


I'm writing an answer to an 8 year old question :). Its not really a full answer, but a suggestion to look into excel reports for TFS.

TFS2013 / 2015 on prem has something has an excel report that can be used to visualize Code Churn.

In VS open team explorer then select "Documents" then explode "Excel Reports". I believe Code Churn report has something like discussed. The report is made by some default project template so I think tfs2013 on prem just creates it.

Code Churn Excel Report VS2015 https://msdn.microsoft.com/en-us/library/dd695782.aspx




回答6:


I had very similar requirement to get details of particular attribute in a file e.g. who added, when, related work items etc.; Following GitHub project is having implementation to get required details and required minimal changes to work with multiple files or project -

SonarQube SCM TFVC plugin

It requires analysis to be executed from Windows machines with the Team Foundation Server Object Model installed (download for TFS 2013).

This blog post is also having good explaination and sample application -

TFS SDK: Connecting to TFS 2010 & TFS 2012 Programmatically



来源:https://stackoverflow.com/questions/74526/tfs-annotate-blame-summary-report-for-a-project

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!