我怎样才能找到 username/details 新推送代码到 github 的人?我正在使用 jenkins 管道来构建和部署
How can i find username/details of people who newly pushed code to github? I am using jenkins pipeline to build and deploy
我已经在 jenkins 中创建了作业,以便在 github 中发生更改时触发构建。但我想知道如何获取更改配置电子邮件通知的用户的详细信息。
谁能帮我解决一下?
您可以使用 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}"
}
}
}
}
我已经在 jenkins 中创建了作业,以便在 github 中发生更改时触发构建。但我想知道如何获取更改配置电子邮件通知的用户的详细信息。
谁能帮我解决一下?
您可以使用 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}"
}
}
}
}