jenkinsci / jenkinsci/git-plugin

[JENKINS-38406] GIT_BRANCH wrongly set.

Open
#2,952 2 comments 0 reactions 0 assignees View on GitHub
component:git-plugin imported-jira-issue priority:major resolution:unresolved
Dominant language
Java
Stars
694
Forks
1.1k
Avg merge
1h 29m
Merged PRs (30d)
3

Description

I have a jenkins job that runs when code is pushed to `master` and `develop` branch. This job also picks up PRs. This job also has `sha1` as a build parameter to trigger builds manually.

The job picks up PRs and builds them. Same with pushes to `master` or `develop`. The issue is when The job is triggered manually. It seems to pickup a random branch. sometimes a PR, sometimes `origin/develop`. The GIT_BRANCH environment variable is overwritten with some other branch and not sha1.

*Job config*

````

build parameters: sha1 (default value: origin/) so technically, the job should fail as there is no branch called `origin/`

Branches to build -1 : origin/master

Branches to build - 2: origin/develop

Branches to build - 3: ${sha1}

Refspec: +refs/heads/*:refs/remotes/origin/* +refs/pull/*:refs/remotes/origin/pr/*


  • [√ ] Build when a change is pushed to GitHub

  • [√ ] GitHub Pull Request Builder

    ````

*Jenkins and plugin versions*

````

jenkins version: 2.7.1

Git client plugin: 2.0.0

Git plugin: 3.0.0

GitHub API Plugin: 1.77

GitHub plugin: 1.21.1

GitHub Pull Request Builder: 1.33.1

````

---
Originally reported by puneeth_n, imported from: GIT_BRANCH wrongly set.


  • status: Open
  • priority: Major
  • component(s): git-plugin
  • label(s): scm-api-tidy-scrub
  • resolution: Unresolved
  • votes: 6
  • watchers: 8
  • imported: 2025-12-02

Raw content of original issue

I have a jenkins job that runs when code is pushed to `master` and `develop` branch. This job also picks up PRs. This job also has `sha1` as a build parameter to trigger builds manually.

The job picks up PRs and builds them. Same with pushes to `master` or `develop`. The issue is when The job is triggered manually. It seems to pickup a random branch. sometimes a PR, sometimes `origin/develop`. The GIT_BRANCH environment variable is overwritten with some other branch and not sha1.

*Job config*
````
build parameters: sha1 (default value: origin/<branchName>) so technically, the job should fail as there is no branch called `origin/<branchName>`
Branches to build -1 : origin/master
Branches to build - 2: origin/develop
Branches to build - 3: ${sha1}
Refspec: +refs/heads/*:refs/remotes/origin/* +refs/pull/*:refs/remotes/origin/pr/*


  • [√ ] Build when a change is pushed to GitHub

  • [√ ] GitHub Pull Request Builder
    ````

*Jenkins and plugin versions*
````
jenkins version: 2.7.1

Git client plugin: 2.0.0
Git plugin: 3.0.0
GitHub API Plugin: 1.77
GitHub plugin: 1.21.1
GitHub Pull Request Builder: 1.33.1
````

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.