奇怪的情况在这里。我修改了几个文件,为了便于讨论,SearchG2Helper.cs和SearchG2Helper.Custom.cs肯定不同,但git status没有显示差异。我还检查了git check-ignore -v SearchG2Helper.Custom.cs
,但没有回复任何内容。
请参阅下面的git internals命令输出:
$ git cat-file -p 9b02b119
...snip...
100644 blob 231f4f6eebcb377fbb318845b8a2b17a7eb7732e SearchG2Helper.Custom.cs
100644 blob 56dc73150a5c73ccba0d4d41c205caa8379c9314 SearchG2Helper.cs
100644 blob 6922412c3a1954367f89b873188aa38a1a5ac4d5 _AssetExtensions.cs
100644 blob dbe562aede1287a2a42824a2c29fc15579df4b98 _CPContrib.AspxHelper,0.1.0,AspxHelper.cs
100644 blob c68060a2e13842a8fe3e1f559f484a0f53c5ca1e _CPContrib.Core,0.2.0,Core.cs
$ git hash-object SearchG2Helper.cs
8bdd145719c3a8a6dd8cccf2185d3826d159b28e
$ git hash-object SearchG2Helper.Custom.cs
9f071c622d7896026c556cf2574b94778f58cec6
请注意,树对象中的哈希与git hash-object
给出的哈希完全不同,但git status
并未显示任何更改
使用Git for Windows 2.15.2.1
注意,使用从此网址中了解的git内部信息:https://git-scm.com/book/en/v2/Git-Internals-Git-Objects
更新:新克隆到新目录似乎解决了这个问题。我只是想知道这个git数据库是如何被破坏的?以及要寻找什么?