git - 如何在 Git 中显示 pull 请求的审阅者/批准者(使用 GitBash)

标签 git jenkins github

我目前正在尝试自动化在 Jenkins 中的作业构建结束时创建的日志文件。作业完成后 - 此日志文件将显示 jenkins 作业正在运行的存储库的 git 日志(Jenkins 作业是来自 GitHub 的管道脚本)。我希望能够记录 Jenkins 作业正在运行的代码的审阅者。最好,源代码应该是由其他人审查的 pull 请求的结果。这正是日志文件应该反射(reflect)的内容(谁提交了代码/谁审查了 pull 请求/代码是 pull 请求的一部分等)

当我试图找到代码的审阅者是谁时,我陷入了困境。我知道 Pull Request 功能本质上是 GitHub 的功能,但我想知道是否有办法在 GitBash 终端中显示这一点。

git log --show-signature只显示代码的提交者,而不显示代码的审阅者。

我期望类似的东西:

commit: askjhkghjfdgdu37237f8327gf

Author: dev <<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="385c5d4e78594b5c5e165b5755" rel="noreferrer noopener nofollow">[email protected]</a>>

Reviewer: reviewer <<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="780a1d0e111d0f1d0a38191c0b1e561b1715" rel="noreferrer noopener nofollow">[email protected]</a>>

Date: Fri Sep 2 14:08:45 2019 -0400

Update file.groovy

最佳答案

不,这不会存储在 Git 历史记录中。正如您所提到的, pull 请求特定于 GitHub,并且位于 Git 存储库之上的一层。除非您以某种方式自定义 GitHub 以自动添加此信息来 merge 提交(例如作为文本),否则它将不会在 Git 历史记录中可用。

但是,如果您不惜一切代价依赖此信息,您可以通过某种方式编写此脚本,例如curl 从 GitHub 中提取此信息。

根据您的用例,提交 merge/批准 PR 的人与审查 PR 的人相同,因此 merge 提交的作者/提交者可能与您要查找的内容足够接近。

关于git - 如何在 Git 中显示 pull 请求的审阅者/批准者(使用 GitBash),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57859646/

相关文章:

git - 跟踪子模块中的更改

git - 具有多个项目和 git 分支的 Jenkins

jenkins - Jenkins 中的访问文件参数

git - 意外删除的 .git 文件夹 - 可以恢复吗?

git - 解决 VS Code 中不显示的 merge 冲突工具栏

git - 如何修改和维护导入的 go 依赖?

python - 使用 nltk.data.load 加载english.pickle 失败

git - 如何将 GitHub wiki 存储为源代码的一部分

json - Git 与 JSON 文件冲突

Git 推送到 GitHub 失败 - 似乎正在尝试使用 HTTP?