Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-27018

Provide either 'branch' or 'tag' in git step


    • Icon: Improvement Improvement
    • Resolution: Won't Fix
    • Icon: Minor Minor
    • pipeline
    • None


      the 'git' step is one of the most important steps implemented for workflow.

      However, there are many cases where I need to checkout the particular git tag, instead of the branch.

      currently I have to do something like:

      checkout scm: [$class: 'GitSCM', 
            userRemoteConfigs: [[url: 'git@github.com:MYCOMPANY/cd-workflow.git']], 
            branches: [[name: 'refs/tags/workflow-1.0']]], changelog: false, poll: false

      the main reason is I want to keep versioned workflow scripts on my repo and load a specific version of it. But I have also several other use cases when I need a tag from the git repository.

      The notation above is actually too long and overcomplicated. Instead, I would expect to use the code like:

      git url: 'git@github.com:MYCOMPANY/cd-workflow.git', tag: 'workflow-1.0', changelog: false, poll: false

      which is much shorter and similar to a typical git usage.

      By other words, the step might support either 'branch' or 'tag' parameter. In some rare cases it would be nice also to have possibility to checkout a particular commit.

      Would it be possible to add such a feature?

            jglick Jesse Glick
            ykryshchuk Yuriy Kryshchuk
            0 Vote for this issue
            4 Start watching this issue