git - Jenkins Git 分支选择与回退

标签 git github jenkins bitbucket jenkins-plugins

在我的项目中我有一个 GitFlow样式存储库。

如何让 Jenkins 执行以下操作:(XXXX=Release No)

  1. 构建 Release-XXXX 分支
  2. 如果发布分支不存在,构建主分支。

我知道我可以使用 git-chooser-alternative 将分支按优先顺序排列插件,但我不知道如何选择包含单词 Release- 的分支

最佳答案

您可以为此使用管道。

def doCheckout(cloneUrl,branches) {
 for (String branch : branches) {
  try {
   deleteDir()
   sh 'git config --global credential.helper cache'
   checkout([
    $class: 'GitSCM',
    branches: [[name: branch]],
    extensions: [
     [$class: 'CloneOption',
      noTags: false,
      reference: '',
      shallow: true,
      honorRefspec: true],
     [$class: 'WipeWorkspace'],
     [$class: 'CleanBeforeCheckout']
    ],
    submoduleCfg: [],
    userRemoteConfigs: [
     [ credentialsId: 'someCredentialId', url: cloneUrl]
    ]
   ])
   sh "git checkout ${branch}"
   return
  } catch (Throwable throwable) {
   //Try next...
  }
 }
 throw new RuntimeException("Could not find any of the ${branches} from ${cloneUrl}")
}

def branches = ['release','develop','master']
doCheckout(cloneUrl, branches)

关于git - Jenkins Git 分支选择与回退,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19508326/

相关文章:

Git rebase 从

java - Java中通过Jgit忽略文件或文件夹

github - 如何在 GitHub Pages 上托管 Sphinx 文档?

git - Jenkins 和 Stash 设置 ssh key

java - Jenkins/Maven : Could not resolve default JAVA_HOME path, 构建失败

git - Jenkins - (私有(private)子网)带有 Github 的 WebHook 不会触发自动构建

git - 带有 Git 命令错误处理的 Powershell - 自动中止外部程序的非零退出代码

linux - Bare Git repo 无法添加文件或提交文件

git - git 设置时出现问题

ruby-on-rails - 将Rails应用放在公共(public)git中,将私有(private)详细信息保密