2

我的 Git 存储库中有一个非常非常旧的文件,其中有很多提交。偶然地,我想将它与以前的版本进行比较,但我发现它git diff 5.0 Data/schema.sql根本没有返回任何输出。

我知道这是错误的,所以我跑了git log Data/schema.sql。再次:没有输出!

我认为这可能是一个 gitignore 问题,所以我完全删除了我的.gitignore文件 - 没有改变。我什至尝试过git config --global --get-all core.excludesfile-git config --system --get-all core.excludesfile都没有返回任何输出。

我尝试手动添加它git add。没有错误消息,但根本没有提到该文件git status- git 的行为就像我告诉它忽略该文件一样,最重要的是,它似乎使其历史无法访问。

到底会发生什么?这让我很紧张——这个文件的历史本身并不是什么大问题,但我担心我的整个回购可能有问题/损坏。

什么可能导致这种行为,我该如何解决?我在 Mac OS X(通过 Homebrew 安装)上运行最新的 git(1.8.3.1)。目录中的其他文件Data按预期工作,并且 repo 中的其他文件没有表现出这种行为。

4

1 回答 1

0

从您的评论看来,这可能是大写/小写的问题。设置ignorecase为 false 并手动修复名称或重置 repo git reset --hard(仅当您没有未提交的更改时)。

于 2013-07-09T19:29:25.350 回答