Git如何从分支上的特定提交中获取更改的文件名

时间:2014-10-29 09:30:29

标签: git bitbucket git-log

请帮我解决这个问题。

我需要像bitbucket中的diff一样工作。

enter image description here

我需要知道如何使用git命令完成此任务。

提前致谢。

森。

2 个答案:

答案 0 :(得分:3)

如果要查看上次提交中更改的文件,可以使用git log --stat

git log --stat -1

示例输出

Author: Chris Maes <chris.maes@macq.eu>
Date:   Fri Oct 24 16:45:44 2014 +0200

    commit comment

 file1               | 7 +++++--
 file2               | 2 ++
 2 files changed, 7 insertions(+), 2 deletions(-)

现在你可以做同样的事情,如果你有你的提交的哈希:

git log --stat hash -1

选项:

  • - stat:show statistics
  • hash:显示所有日志到哈希
  • -1:仅显示最新日志

答案 1 :(得分:2)

如果你在一次改变中寻找统计数据,那么另一个答案是好的。

如果您想比较两个分支的提示,我认为这是您的真正目标,您可以使用与--stat相同的git diff选项以及.. syntax

  

要排除提交中可到达的提交,请使用前缀^表示法。例如。 ^r1 r2表示可以从r2到达提交,但排除可从r1到达的提交。

     

此设置操作经常出现,因此有一个简写。如果您有两个提交r1r2(根据上面的SPECIFYING REVISIONS中解释的语法命名),您可以请求从r2可以访问的提交,但不包括r1可以访问的提交{1}} ^r1 r2,可以写成r1..r2

所以

git diff --stat master..release1_TMA

将显示其他地方讨论的相同类型的每个文件统计信息,例如

ClaimCenter/modules/ant/INGCCBuild.xml                  | 7 ++++-
ClaimCenter/modules/ant/InstallDependencies.properties  | 14 +++
ClaimCenter/modules/ant/InstallDependencies.xml         | 19 +++

但它会显示masterrelease1_TMA之间的差异。