当我合并分支时,我经常想要得到分支之间所有文件差异的摘要。
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(-)
有没有办法做到这一点?
答案 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
显示提交或多次提交中的所有更改(每次提交分开)。