首页 > 解决方案 > 我如何找到新推送代码到 github 的人的用户名/详细信息?我正在使用 jenkins 管道来构建和部署

问题描述

我在 jenkins 中创建了工作,以便在 github 中发生更改时触发构建。但我想知道如何获取更改配置电子邮件通知的用户的详细信息。

任何人都可以帮我解决问题吗?

标签: jenkinsgithubjenkins-pipelinejenkins-blueocean

解决方案


您可以使用 git show 命令使用以下命令获取作者 ID 和电子邮件。将此分配给一个变量并在管道中的任何位置使用它。

获取作者 ID:git show -s --pretty=%an 获取作者电子邮件:git show -s --pretty=%ae

管道脚本可以如下编写。

pipeline {
    agent any
    options {
        timestamps()
    }
    stages {
        stage('Test Stage') {
            steps {
                checkout changelog: true, poll: false, scm: [$class: 'GitSCM', branches: [[name: '*/Sample_branch']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'TestCredentials', url: '']]]
                script {
                     Author_ID=sh(script: "git show -s --pretty=%an", returnStdout: true).trim()
                     Author_Name=sh(script: "git show -s --pretty=%ae", returnStdout: true).trim()
                }
                echo "${Author_ID} and ${Author_Name}"
            }
        }
    }
}

推荐阅读