繁体   English   中英

如何查看上次或特定提交中更改的文件列表?

[英]How can I see the list of files changed in last or a particular commit?

我总是尝试用测试覆盖我的所有代码。 但是有时候,即使没有涵盖所有代码,我也会进行太多更改并提交。 这些时候,我需要检查最后更改的文件或特定的提交,以查看是否被覆盖。 了解一种列出(通过控制台)最后一次提交中更改的文件的方法将很有用。 上一次提交或特定的提交。 现在,我使用SourceTree进行此操作,但我不喜欢从控制台传递到sourcetree,再一次传递到sourcetree到控制台。

有人能帮我吗?

如果只想更改文件名,请尝试...

git show --pretty="format:" --name-only

它将显示您当前所在分支的最后一次提交中更改的所有文件。

如果您不想less输入,请使用...

git diff-tree --no-commit-id --name-only -r HEAD

git diff --name-onlygit diff --name-status是执行此操作的两种标准方法:您可以给它们任何单个提交,以将当前工作树与该提交进行比较,或任意一对提交进行比较二。

您还可以在git show添加diff选项,因此git show --name-only将显示日志消息,然后显示文件列表; git show --name-status添加状态字母。 这对于合并提交来说稍有不同,因为git show默认使用“组合差异”(请参阅git diff文档 ,大约一半,关于组合差异;请注意,使用-mgit show将产生多个单独的差异)。 (正如alex所指出的,您可以使用--pretty=format:<directives>更改或--pretty=format:<directives>标题信息。)

我自己喜欢一个非常古老的命令git whatchanged (这是git log的变体; git log --raw做同样的事情)。 我已经看到git whatchanged可能消失的提示,但至少git log --raw应该坚持下去。 git diff --raw使用相同的输出格式; 再次,请参阅git diff文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM