Git 用户提交计数

标签 git tfs

我们使用 TFS 2013,拥有大约 90 个单独的存储库,40 名开发人员定期进出这些存储库。

我想生成一些关于所有项目在给定时间范围内每位用户的提交次数的统计数据。是否有可能做到这一点?是否有任何开源项目可以做到这一点?使用一些 TFS 库怎么样?我肯定希望避免必须检查每个存储库才能获取信息。

最佳答案

如果您想直接从 TFS 服务器提取此信息,而不是一次提取一个存储库,您可以这样做。为此,您需要直接查询 TFS 数据库,并且可以轻松编写 SSRS 报告,使此信息易于使用。

这是一个您可以用来开始的查询。这将显示所有存储库中的所有提交。

use [Tfs_DefaultCollection]

select r.Name, u.FullName, m.CommitTime, m.Comment 
from dbo.tbl_GitCommitMetadata m
left join dbo.tbl_GitCommit c on c.InternalCommitId = m.InternalCommitId
left join dbo.tbl_GitRepository r on r.InternalRepositoryId = c.InternalRepositoryId
left join dbo.tbl_GitCommitUser u on u.InternalId = m.CommitterId and u.PartitionId = m.PartitionId
order by r.Name, u.FullName, m.CommitTime

作为引用,我有更多关于 how TFS stores git repositories 的信息在我的博客上。

关于Git 用户提交计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26932447/

相关文章:

tfs - 团队 build 和 Dotfuscator

tfs - 如何通过标签在 TFS 2010 中进行自动构建

Git Flow 发布完成 - 权限被拒绝

git - 如何更改我 fork 的 GitHub 项目?

git - 如何重写 Git 历史,使所有文件都在一个子目录中?

tfs - 防止在门控 checkin 版本上发布触发器

git - 将分支指向新提交

eclipse - 为什么 git diff 在两个日期之间不起作用?

visual-studio - Azure PaaS 和 ALM - 如何通过单击发布处理分支?

visual-studio - TFS 2010 - 在 checkin 更改之前删除 Visual Studio 解决方案中的文件夹