4

有没有办法让git show命令在查看提交时显示文件的全部内容?例如:如果它当前显示类似

foo.cpp

+++ int main() {
+++    std::cout << "HELLO" << std::endl;
+++ }

我希望输出说:

foo.cpp

#include <stdio> //assuming this was from an earlier commit

+++ int main() {
+++    std::cout << "HELLO" << std::endl;
+++ }

有没有一种简单的方法可以做到这一点?

4

2 回答 2

9

这是一种 hack,但git show(如git diff)具有-U允许您指定要显示多少行上下文的选项。如果您使用的数字大于差异与文件开头或结尾之间的区域,那么它将显示整个文件。因此,如果您使用一个非常大的数字,它会以您想要的方式(希望)在您尝试的任何文件上工作:

git show -U99999
于 2014-12-01T22:19:24.773 回答
1

此命令显示整个文件:

git show HEAD:./<path_to_file>

它也适用于任何修订:

git show <rev-id>:./<path_to_file>
于 2018-07-13T08:36:04.930 回答