git 如何在Jenkins中手动触发的管道中获取分支名称或提交消息?

y3bcpkx1  于 2023-04-19  发布在  Git
关注(0)|答案(1)|浏览(144)

我在Jenkins中有一个自由式项目,有时是手动触发的,我想使用提交哈希来获取分支名称或提交消息。
我已经找到了这个例子,但我得到一个错误,当我尝试使用它。错误“expecting ')',found ':'“

sh(returnStdout: true, script: 'git for-each-ref --format='%(objectname) %(refname:short)' refs/remotes/origin --contains 29c2b3672b | awk "/a/ {print \$2}"').trim()

注意:当我在控制台中使用这个git命令时,它可以正常工作。

2admgd59

2admgd591#

--format中需要转义单引号
这将工作:

sh(returnStdout: true, script: "git for-each-ref --format=\"%(objectname) %(refname:short)\" refs/remotes/origin --contains 29c2b3672b | awk '/a/ {print $2}'").trim()

相关问题