如何查看TFS 2017执行的Git命令?分支对比场景示例
查看TFS 2017执行的Git命令及分支对比细节
好问题!关于TFS 2017如何查看后台执行的Git命令,以及分支对比时的具体命令,我来给你详细说明:
一、如何查看TFS 2017执行的Git命令?
有两种可靠的方式可以捕获TFS后台调用的Git指令:
- 启用TFS诊断日志:在TFS应用服务器上,找到对应的配置文件(比如Web层的
web.config或者Git服务的配置文件),开启针对Git操作的详细日志记录。这些日志会完整记录TFS触发的所有git.exe命令,包括具体的参数和执行场景,你可以在日志文件里直接搜索相关操作对应的命令。 - 进程监控跟踪客户端操作:如果你是通过本地TFS客户端触发的Git相关操作,可以用Windows的Process Monitor这类工具,过滤
git.exe进程的启动事件,就能看到TFS调用Git时传递的完整命令行参数。
二、分支对比时TFS执行的Git命令
当你在TFS 2017的界面中进行分支对比操作时,默认执行的是git diff branch_1...branch_2。
为什么是这个命令?因为git diff A...B会计算两个分支最近共同祖先到B的差异,同时展示最近共同祖先到A的差异,正好对应TFS分支对比想要呈现的“两个分支各自独立新增的更改”——这是团队进行分支对比时最常用的场景。而git diff A..B本质上是git diff A B,展示的是从A到B的所有变更(相当于把A的历史变更也包含进去),不符合分支对比的常规需求。
当然,如果在TFS对比界面中手动指定了特定的提交范围(比如选择某两个具体提交进行对比),TFS会调整Git命令的参数,改用具体的提交哈希来执行差异对比,比如git diff <commit-hash-1> <commit-hash-2>。
内容的提问来源于stack exchange,提问作者Nuwan Dammika
相关产品推荐
相关产品推荐

