15

问题

我正在尝试查看位于分支中的文件的内容,wip如下所示:

git show wip:local-config.php

但是,我收到以下错误:

fatal: Path 'local-config.php' exists on disk, but not in 'wip'.

我试过的

我尝试更正路径但失败了:

git show wip:./local-config.php

我没有使用另一个分支,而是尝试引用来自同一分支的先前提交,如下所示:

git show cd14704:local-config.php

这给出了这个错误:

fatal: Path 'local-config.php' exists on disk, but not in 'cd14704'.

最后,当我尝试显示电流时,local-config.php我根本没有输出:

git show local-config.php

文档

根据手册,这是可能的:https ://www.kernel.org/pub/software/scm/git/docs/git-show.html 。我究竟做错了什么?

4

4 回答 4

5

听起来您正在搜索的文件在wip. git show只会在您提供的 refspec 中显示具有某些历史记录的跟踪对象(在本例中为wip,或cd14704)。要获得预期的行为,您需要提交带有该文件的提交。

于 2013-09-12T05:41:40.807 回答
5

仅供参考,当我不小心使用文件的完整路径时,我遇到了同样的错误:

git show rev:/path/to/repo-root/folder/my-file

但是您需要使用来自 repo 根目录的相对路径:

git show rev:folder/my-file
于 2021-01-19T00:26:46.867 回答
2

我经历了完全相同的事情。问题是我在文件路径中使用了反斜杠。所以我用常规的斜线替换了它们,它开始工作得很好。非常混乱。

于 2020-08-31T15:50:34.700 回答
2

至少在 Windows 上,如果您键入的文件路径不完全正确(字母大小写),您会收到此消息。

因此,如果文件名是FileName并且您说git show wip:filename,您将看到这条消息,因为文件名与底层文件系统 (NTFS) 的比较术语匹配(不区分大小写,除非已在 NTFS 选项中显式启用区分大小写),但不是 Git 的术语,因为 Git 区分大小写。

于 2020-07-20T09:31:12.987 回答