{"id":16198784,"url":"https://github.com/jamescdavis/jbranch","last_synced_at":"2026-04-30T15:31:50.673Z","repository":{"id":132973602,"uuid":"118968690","full_name":"jamescdavis/jbranch","owner":"jamescdavis","description":"Create local git branches based on a JIRA issue","archived":false,"fork":false,"pushed_at":"2018-02-02T18:21:13.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-07T17:41:18.390Z","etag":null,"topics":["git","jira","python"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jamescdavis.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-25T21:16:32.000Z","updated_at":"2018-01-26T21:20:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"d7c7d9b5-dd2a-4625-9b0a-2edd6598c2cd","html_url":"https://github.com/jamescdavis/jbranch","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/jamescdavis/jbranch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamescdavis%2Fjbranch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamescdavis%2Fjbranch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamescdavis%2Fjbranch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamescdavis%2Fjbranch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jamescdavis","download_url":"https://codeload.github.com/jamescdavis/jbranch/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamescdavis%2Fjbranch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32469344,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","jira","python"],"created_at":"2024-10-10T09:14:55.645Z","updated_at":"2026-04-30T15:31:50.652Z","avatar_url":"https://github.com/jamescdavis.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# jbranch\n\nCreate local git branches based on a JIRA issue\n\nLatest version: **0.1.0**\nsee [CHANGELOG.md](CHANGELOG.md) for changes from previous versions\n\n## Description\n\nThis script will query a JIRA server for the given issue key and create a git branch based on the issue type, key, and summary in the form of:\n\n`issuetype/ISSUE-1_issue_summary`\n\nIt will also optionally trigger an issue transition in JIRA, e.g. \"Start Progress\".\n\nAlso included is an optional shell wrapper function that will prompt for your JIRA password and export it to an environment variable so you don't have to enter it every time within the same shell session.\n\n## Installation\n\n`pip install -r requirements.txt`\n\n### Shell wrapper function installation\n\nIn your .profile (or equivalent):\n\n`export JBRANCH_PATH=\"/path/to/jbranch`\n`source \"$JBRANCH_PATH/jbranch.sh\"`\n\n## Usage\n\n`python jbranch.py ISSUE-1`\n\n### With shell wrapper function\n\n`jbranch ISSUE-1`\n\nForce re-prompt for password:\n\n`jbranch -p ISSUE-1`\n\n## Options\n\nThere are a number of environment variables that can be set to control how jbranch functions.\n\n`JBRANCH_JIRA_URL` - the full url to the JIRA server\n\n- example: `JBRANCH_JIRA_URL=\"https://my_jira.atlassian.net\"`\n\n`JBRANCH_JIRA_USERNAME` - the JIRA username with which to authenticate\n\n- example: `JBRANCH_JIRA_USERNAME=\"me@mydomain.net\"`\n\n`JBRANCH_JIRA_PASSWORD` - the JIRA password with which to authenticate\n\n- example: `JBRANCH_JIRA_PASSWORD=\"mysupersecret\"`\n\n  Please use common sense and don't set this in your .profile\n\n`JBRANCH_TRANSITION` - an optional JIRA transition to trigger on the issue\n\n- example: `JBRANCH_TRANSITION=\"Start Progress\"`\n\n`JBRANCH_ALLOW_EDIT` - allow editing of the branch name before creation\n\n- example: `JBRANCH_ALLOW_EDIT=1`\n\n`JBRANCH_NO_COLOR` - don't use colors in output\n\n- example: `JBRANCH_NO_COLOR=1`\n\n`JBRANCH_LC_SUMMARY` - lowercase the JIRA issue summary in the branch name\n\n- example: `JBRANCH_LC_SUMMARY=1`\n\n`JBRANCH_LC_FIRST` - lowercase only the first letter of the JIRA issue summary in the branch name\n\n- example: `JBRANCH_LC_FIRST=1`\n\n`JBRANCH_NO_PREFIX` - disable branch name prefixing\n\n- example: `JBRANCH_NO_PREFIX=1`\n\n`JBRANCH_NO_SWITCH` - don't switch to the branch after it is created\n\n- example: `JBRANCH_NO_SWITCH=1`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamescdavis%2Fjbranch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjamescdavis%2Fjbranch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamescdavis%2Fjbranch/lists"}