如何在git commit中获取对哪些文件进行了哪些更改?

时间:2013-07-03 17:26:51

标签: git version-control commit

有没有办法获取有关哪些文件作为提交的一部分进行了哪些更改的信息?

我知道有一种方法可以获取有关所有提交的详细信息:git log -p

我的具体用例涉及获取有关一堆提交ID的更多详细信息。我已经有了提交ID,我知道我可以获得作为这些提交的一部分而被更改的文件列表。但是,如何才能获得仅在这些提交中进行的实际更改?

感谢。

3 个答案:

答案 0 :(得分:2)

你正在寻找git show $ID

吗?

答案 1 :(得分:1)

如果更改开始的修订版本为refa(不包括在内)且结束参考编号为refn,那么您可以:

git diff refa..refn

答案 2 :(得分:1)

如果您不喜欢git log -p <commit>,那就是它遍历树并显示父提交,您可以通过说git log -1 -p <commit>将其限制为单个提交。 git show <commit>也应该有效。如果你想显示没有显示日期/作者/等的提交标题所做的更改,你可以git log -p -1 --pretty=format: <commit>(这基本上只显示git diff输出,当然你也可以通过git diff <commit>~1 <commit>)。

如果你能更好地澄清你想要的东西,可能还有其他选择。