git diff可以包含最新作者和修订日期吗?

时间:2015-02-10 20:08:42

标签: git git-diff

当我合并分支时,我经常想要得到分支之间所有文件差异的摘要。

git diff --stat -r branch1..branch2对此非常有用,但我希望从最新提交的作者和日期中获得该文件。输出看起来像这样:

ChangeColumns.cls                   | Author1 |  2/10/2015 | 95 ++++++++--------------
GiftApprovalController.cls          | Author2 |  2/11/2015 |  2 +-
MassRelationshipCreation.cls        | Author3 |  2/10/2015 |  2 +-
MultiselectedPicklist.cls           | Author4 |  2/08/2015 | 17 ++--
Paginator.cls                       | Author1 |  2/09/2015 | 11 ++-
PipelineManager.cls                 | Author4 |  2/10/2015 |  7 +-
TestSetupUtils.cls                  | Author4 |  2/08/2015 | 13 ++-
PipelineManager.page                | Author2 |  2/07/2015 |  5 +-
TestCoverageJsonData.resource       | Author1 |  2/10/2015 | 10 ++-
9 files changed, 78 insertions(+), 84 deletions(-)

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

虽然不完全,但git log应该让你更接近你的期望,

git log branch1..branch2 --pretty=format:"%h%x09%an%x09%ad%x09%s"

这只会显示branch2提交的差异,但branch1却没有。您必须撤消它才能获得branch1中的提交,而不是branch2中的提交。

添加--stat--name-only以获取文件名

git log branch1..branch2 --pretty=format:"%h%x09%an%x09%ad%x09%s" --stat

答案 1 :(得分:0)

git diff无法做到这一点。您可以尝试以下方法之一:

  • git blame $branch $file可以显示谁在文件中写了一行。
  • git show $commits显示提交或多次提交中的所有更改(每次提交分开)。