2010-04-01 91 views

回答

23

你要找的选项是--name-status。像--name-only它实际上是一个git-diff选项; git-log接受这些来确定它将如何显示补丁。

git log -n 1 --pretty=oneline --name-status 

或等价(减去日志头):

git diff --name-status HEAD^ HEAD 

由于isbadawi所指出的,你也可以使用git-whatchanged。这是相当多的git-记录与特定的diff的输出:

git whatchanged -n 1 

你可能会喜欢的--name-status版本更好,虽然,因为它不会显示所有的blob哈希,只是人类可读的状态。

+0

这样做!现在我只需要写一个脚本来阅读该行,并选择A和D,然后我就完成了。谢谢。 – pocketfullofcheese 2010-04-02 14:56:38

+1

以_commit消息格式输出包含名为** .gitignore **的文件的**添加**的特定提交的示例,已更改文件的名称和状态_:'git log --name-status --diff -filter = A - follow .gitignore' – Eido95 2017-05-23 19:26:39

相关问题