回答

收藏

如何列出提交中的所有文件?

技术问答 技术问答 346 人阅读 | 0 人回复 | 2023-09-11

我正在寻找一个简单的 Git 命令提供了哈希  (SHA-1) 提交的部分没有多余的信息。; v; f0 s1 B9 x3 b# @. T) @* K
我努力了:4 K! m- E+ D3 ?
git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d虽然列出了文件,但它还包含了每个文件不必要的差异信息。! u! F' k% h+ d; q1 K6 b! E% ~
还有别的吗?git命令只提供我想要的列表,这样我就可以避免git show输出分析它?
! [/ h6 y$ h5 F2 K4 Z  Y1 o                                                               
( K; p  f8 T$ z8 {/ x0 X    解决方案:                                                                2 y* F. T0 \( E  z7 Y/ r
                                                                首选方式(因为是一个管道命令;意味着程序化):" u3 n3 b( @+ c! ^! Y
$ git diff-tree --no-commit-id --name-only -r bd61ad98index.htmljavascript/application.jsjavascript/ie6.js另一种方式(我不太喜欢脚本,因为它是一个瓷器命令;面向用户)! V, f& p7 L1 q7 p
$ git show --pretty="" --name-only bd61ad98    index.htmljavascript/application.jsjavascript/ie6.js--no-commit-id抑制提交 ID 输出。+ ]5 ^' o& Z/ s8 }3 B7 T& J6 d* ~
该--pretty参数指定空格式字符串,避免开头杂乱无章。
  P  j5 Z' a: ~该--name-only参数仅显示受影响的文件名(谢谢 Hank)。--name-status如果您想查看每个文件发生了什么,请更改它(删除修改添加
& O4 a4 B; E* J5 x/ p-r参数是递归到子树
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则