Git版本:2.14.2.2
每当我git diff在存储库上运行时,我都会收到响应No tags file.我已经尝试在多个存储库,多个控制台(Cmd,PowerShell,MINGW64,Visual Studio命令提示符)上运行该命令,并且所有控制台都具有相同的响应.
奇怪的是,git log命令也失败了.许多其他命令的工作,然而,如git status,git pull等这似乎是唯一的log和diff.
我完全卸载了Git并重新安装.重启我的系统.尝试git.exe直接引用(产生完全相同的响应).没有什么工作,我没有在其他地方看到这个错误.我将用户配置与同事的配置进行了比较,它们完全相同.
命令的某些部分正确执行,因为如果我提供两个提交哈希,并且我故意破坏一个,我收到的响应是:
似乎另一个程序可能正在劫持git diff命令.我相信这是因为我不确定"没有标签文件"甚至是可能的Git响应.不确定它会是什么.
为了让事情变得更加混乱 - 我的最终目标是git diff在一个环境中运行msbuild并且它执行得非常正确.现在,我对此感到满意,但我需要diff稍微修改命令,每次运行完整的构建都没有效率,也不容易排除故障.构建脚本中有一个运行Exec命令的任务,它没有执行任何问题diff.我也能够Diff Against Current在SourceTree中执行,据我所知,它git diff在幕后运行.
任何帮助将非常感谢.
::编辑::
各种命令:
git diff HEAD~1 HEAD
git diff master~1 master
git diff <commit-hash-1> <commit-hash-2>
git log HEAD~1..HEAD
git log master~1..master
git log <commit-hash-1>..<commit-hash-2>
Run Code Online (Sandbox Code Playgroud)
输出: …