回答

收藏

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

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

我正在寻找一个简单的 Git 命令提供了哈希  (SHA-1) 提交的部分没有多余的信息。# x) I! h% r& L# M, h. O$ o; _/ m
我努力了:; O5 T% n/ @' T; T
git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d虽然列出了文件,但它还包含了每个文件不必要的差异信息。
( i5 F" X. |/ L) y6 U还有别的吗?git命令只提供我想要的列表,这样我就可以避免git show输出分析它?! `& t/ y4 c  q8 d9 |+ n
                                                               
3 F2 u9 I4 B! x* U/ F    解决方案:                                                                7 X0 D, q( M, t% }7 ^) a$ E8 _
                                                                首选方式(因为是一个管道命令;意味着程序化):
  c+ I: J, v/ K8 W/ E. v$ git diff-tree --no-commit-id --name-only -r bd61ad98index.htmljavascript/application.jsjavascript/ie6.js另一种方式(我不太喜欢脚本,因为它是一个瓷器命令;面向用户)
" B( b3 \' V$ g& Q$ git show --pretty="" --name-only bd61ad98    index.htmljavascript/application.jsjavascript/ie6.js--no-commit-id抑制提交 ID 输出。, m5 G3 K& j3 M7 ?6 @3 i0 w
该--pretty参数指定空格式字符串,避免开头杂乱无章。
2 E* z& ?, }5 Y- z3 Q9 u# G该--name-only参数仅显示受影响的文件名(谢谢 Hank)。--name-status如果您想查看每个文件发生了什么,请更改它(删除修改添加# u% N( {2 @6 j& U6 Y
-r参数是递归到子树
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则