我有两个问题 1.尝试解析git commit消息,但是egrep作为单独的命令执行。返回结果始终不正确。有效消息可以是“ a-1”
stage('test') {
steps {
script {
def result = sh(script: "git log -1 --pretty=%B | egrep '(([a-zA-Z ]+-\\d+[, \t\n]*)+)(.*)'", returnStatus: true)
if (result == 0) {
echo "continuous building..."
} else {
echo "Incorrect commit message prefix. Aborting"
exit 1
}
}
}
}
运行结果。此处显示处理器已将'|'分开分成两个命令并分别执行。我怎样才能使它成为一体?
[Microscope_PR-2-I4FUBH4BH2EXP7UKWZIUYPCCCB] Running shell script
+ git log -1 --pretty=%B
+ egrep '(([a-zA-Z ]+-\d+[, \t\n]*)+)(.*)'
此外,在git push之前可能有多次提交。如何检查所有提交而不是仅最后提交? “ git log -1”,仅返回最后一个提交,而不是在git push之前返回所有提交。 例子是
>git commit -a -m "test1"
>git commit -a -m "test2"
>git commit -a -m "test3"
>git push origin HEAD
希望使用git log
或其他命令来获取
test1
test2
test3