我有一个pipleline版本,它遍历其他存储库以检查更新。我的詹金斯管道脚本中有这个:(作为通过其他存储库的循环的一部分)
checkout([
$class: 'GitSCM', branches: [[name: '*/master']],
userRemoteConfigs: [[url: 'git@gitlab.me.com:me/myRepo.git',credentialsId:'my-key']]
])
代码中是否有方法可以判断是否有任何更新?通常,当我执行“ git pull”时,会收到一条消息,提示“已经更新”。
基本上,如果存储库中没有更改,我不想继续执行脚本。我该怎么办?
答案 0 :(得分:1)
checkout
应该返回由git插件设置的值的映射。 https://wiki.jenkins.io/display/JENKINS/Git+Plugin
所以我相信您可以这样做:
def map = checkout ...
if (map.GIT_COMMIT == map.GIT_PREVIOUS_COMMIT) {
// no changes
}