如何列出提交中的所有文件? [英] How do I list all of the files in a commit?

查看:17
本文介绍了如何列出提交中的所有文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找一个简单的Git命令,该命令提供格式良好的所有文件的列表,这些文件是散列(SHA-1)提供的提交的一部分,没有无关信息。

我已尝试:

git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d

虽然它列出了文件,但它还包含每个文件的不需要的差异信息。

是否有其他git命令只提供我需要的列表,以便我可以避免从git show输出中解析它?

推荐答案

首选方式(因为它是管道命令,应该是程序性的):

$ git diff-tree --no-commit-id --name-only -r bd61ad98
index.html
javascript/application.js
javascript/ie6.js

另一种方式(不太适用于脚本,因为它是瓷器命令;应该是面向用户的)

$ git show --pretty="" --name-only bd61ad98    
index.html
javascript/application.js
javascript/ie6.js

  • --no-commit-id取消提交ID输出。
  • --pretty参数指定空格式字符串以避免开头的重复。
  • 参数--name-only仅显示受影响的文件名(感谢Hank)。如果要查看每个文件(DM已修改、A已修改)的情况,请改用--name-status
  • -r参数用于递归到子树

这篇关于如何列出提交中的所有文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆