我有一个奇怪的用例,我正试图找到答案。我们使用直接TFS作为源代码控制,特别是TFS 2015.所有项目都已转换为Git存储库,但它们仍然存储在TFS中的单独Collection中。我要做的是查看所有项目中用户的签入历史记录。我已经找到了this question,但所有答案似乎都不适用于Git。即使在Visual Studio 2017中,这对Git更友好。
以Team Foundation Sidekicks为例。如果我将它指向我们的归档TFS集合,它将会看到那里的所有项目。但是,如果我看看Git Collection,它会显示为空。
知道Git是如何工作的我强烈怀疑此时TFS仅被用作存储机制。当您只查看一个项目时,它可以查找每个项目的签入历史记录,但它是通过执行git.exe或执行类似操作来完成的。所以它真的不知道每个项目中发生了什么。但想想无论如何我会问,如果我错了,或者有人对如何做到这一点有另一个想法。
答案 0 :(得分:1)
要查看某个用户提交的提交历史记录,您可以使用以下任何选项。
在您的TFS网页的代码中心打开Git仓库 - >历史标签 - >选择一个分支 - >高级搜索 - >选择用户 - >查找。
然后,您将获得用户在某个分支上创建的提交历史记录。
注意:网页中某个用户的过滤器提交历史记录是分支分支的。所以你需要分别选择每个分支。如果要显示某个用户在分支上显示的所有提交历史记录,可以使用列出的选项2的方式。
如果您尚未在本地克隆TFS git repo,则可以先git clone <repo URL>
克隆。
然后在本地git repo中,您可以通过以下任何命令获取用户从所有分支进行的所有提交:
git log --all --author="username" #Show commits made by the user for all branches
git log --all --oneline --author="username" #Show each commit for one line
git log --oneline --decorate --graph --all --author="username" #Keep branch structure