为什么" git show --name-only --pretty = format:"只能显示受影响文件的名称

时间:2018-03-12 17:56:22

标签: git

从git文档中,git show --name-only仅显示已更改文件的名称。但是使用命令git show --name-only,它会输出其他信息,如提交ID和作者以及提交消息等。

我也知道--pretty=format:<format>可以格式化输出,但为什么给定空<format>,输出会在仅使用git show --name-only时过滤掉其他信息?

编辑:

使用精确命令git show --name-only --pretty=format:(冒号后没有任何内容),输出正好是已更改文件的行。我的问题更多的是为什么没有格式输出这样的结果?

2 个答案:

答案 0 :(得分:2)

执行git show --help后从“DESCRIPTION”部分:     “对于提交,它显示日志消息和文本差异......”

--name-only标志告诉它不要包含已更改文件的文本差异。

这里的文档可能会更加清晰。

答案 1 :(得分:0)

执行git show --help

后从OPTIONS部分
  

- 漂亮[=]   --format =以给定格式打印提交日志的内容,......

     

有关每种格式的更多详细信息,请参阅“PRETTY FORMATS”部分   格式。 ...

因此,--pretty会影响提交消息的格式,并且只影响提交消息。并从PRETTY FORMATS部分:

  

格式:

       The format:<string> format allows you to specify which information you want to show. It works a little bit like printf
     

...格式

       E.g, format:"The author of %h was %an, %ar%nThe title was >>%s<<%n" would show something like this:

           The author of fe6e0ee was Junio C Hamano, 23 hours ago
           The title was >>t4119: test autocomputing -p<n> for traditional diff input.<<

format选项允许完全控制显示方式和内容,代替提交消息。在你的情况下,你告诉它你不想显示任何东西。

祝你好运。