【发布时间】:2011-02-20 06:28:27
【问题描述】:
实际上我正在尝试获取有关合并冲突的报告。我使用 'git blame' 来查看谁更改了哪一行,但我找不到分支和存储库名称信息。
有没有办法从 'git blame' 或 commit ids' 中找到文件的存储库名称、分支名称和作者姓名,这样每当发生合并冲突时,我都可以向接触过该文件的作者发送电子邮件文件/行来解决它。
【问题讨论】:
标签: git commit sha1 git-branch blame
实际上我正在尝试获取有关合并冲突的报告。我使用 'git blame' 来查看谁更改了哪一行,但我找不到分支和存储库名称信息。
有没有办法从 'git blame' 或 commit ids' 中找到文件的存储库名称、分支名称和作者姓名,这样每当发生合并冲突时,我都可以向接触过该文件的作者发送电子邮件文件/行来解决它。
【问题讨论】:
标签: git commit sha1 git-branch blame
git blame 应该只给你修订和作者,但是:
git branch --contains <commit> 是一个开始,您也无法轻松确定提交的分支(可以重命名、移动、删除分支...)。git log 结果,试图找到来自 ref/remotes 命名空间的提交的父级)。现在,如果您在存储库的顶层有一个正确的 .mailmap,那么您也将拥有正确的电子邮件地址。
在简单的形式中,文件中的每一行都包含作者的规范真实姓名、空格和提交中使用的电子邮件地址(由
<和>括起来)以映射到名称.例如:
Proper Name <commit@email.xx>
【讨论】: