Name | jira2branch JSON |
Version |
0.6.1
JSON |
| download |
home_page | None |
Summary | Takes a JIRA issue and creates a git branch |
upload_time | 2025-09-02 17:06:30 |
maintainer | None |
docs_url | None |
author | Tiago Pereira |
requires_python | <3.12,>=3.11 |
license | MIT |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# JIRA 2 Branch
Takes a JIRA issue and creates a git branch
```
Usage: jira2branch [OPTIONS] ISSUE_ID_OR_URL SOURCE_BRANCH
Simple program that takes a JIRA issue ID and creates a new local and
tracking remote branch
Options:
-s, --simple Basic naming strategy
-n, --name-only Generates the branch name and prints it, no actual
branch will be created (default is False)
-p, --push Push newly created branch to remote (default is False)
-t, --target PATH Target repository (default is current directory)
-r, --merge-request Create merge request. Requires --push. (default is
False)
-c, --confirm Request user confirmation (default is False)
--preview Preview MR Markdown in browser (default is False)
-d, --dry-run Dry run. Prints out the MR payload in JSON format but
does not invoke the API
--config Show config file location
--help Show this message and exit.
```
## Naming strategy
### Default naming strategy
Format: `{CONVENTIONAL_COMMIT_PREFIX}/{ISSUE_ID}_{ISSUE_TITLE}`
The [conventional commit](https://www.conventionalcommits.org/) prefix is
inferred from the type of JIRA card.
```console
$ jira2branch ISSUE-10306 master -n
BRANCH NAME: #############################################
feat/ISSUE-10306_implement_foo_function
##########################################################
MR TITLE: ###################################################
feat/ISSUE-10306: Implement foo function
#############################################################
```
### Basic naming strategy format
Format: `{ISSUE_ID}`
Example:
```console
$ jira2branch ISSUE-10306 master -s -n
BRANCH NAME:
ISSUE-10306
##########
MR TITLE: ##############################################
ISSUE-10306: Implement foo function
########################################################
```
## Requirements
Requires Python 3.11
### Dev env
```
pip install poetry
poetry install
pip install dist/jira2branch-[VERSION]-py3-none-any.whl
```
Afterwards, your command should be available:
```
$ jira2branch WT3-227 develop
fix/WT3-227_some-jira-issue
```
### Configuration
#### JIRA
JIRA credentials will be fetched from `jira2branch/config.toml` under your user config directory with the following format:
```toml
[jira-credentials]
url = ""
email = ""
username = ""
password = ""
token = ""
```
#### Required fields
`url` and `email` are required.
Use either `username` + `password` or `token` depending on how access is configured
#### GitLab integration
You can create merge requests (title and description) using this tool. Only
GitLab is supported for now and it requires the following setup step.
Once done providing `--merge-request` will launch your `$EDITOR` and let you
compose your merge request.
```ini
[gitlab-credentials]
url = ""
token = ""
```
#### Required fields
`token` is required
Set `url` if the GitLab instance you're using is self-hosted
#### Note
You can always retrieve the configuration file location by providing the
`--config` flag
## Usage
`jira2branch [JIRA_ISSUE_ID|JIRA_ISSUE_URL] [TARGET_BRANCH]`
### Examples
`jira2branch WT3-227 main`
`jira2branch https://company.atlassian.net/browse/WT3-227 main`
Raw data
{
"_id": null,
"home_page": null,
"name": "jira2branch",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.12,>=3.11",
"maintainer_email": null,
"keywords": null,
"author": "Tiago Pereira",
"author_email": "tiago@tiagoafpereira.net",
"download_url": "https://files.pythonhosted.org/packages/ca/60/34f3f33aaf70eadf9c7fac223eb6708c7879124f595568e7054feda226c1/jira2branch-0.6.1.tar.gz",
"platform": null,
"description": "# JIRA 2 Branch\n\nTakes a JIRA issue and creates a git branch\n\n```\nUsage: jira2branch [OPTIONS] ISSUE_ID_OR_URL SOURCE_BRANCH\n\n Simple program that takes a JIRA issue ID and creates a new local and\n tracking remote branch\n\nOptions:\n -s, --simple Basic naming strategy\n -n, --name-only Generates the branch name and prints it, no actual\n branch will be created (default is False)\n -p, --push Push newly created branch to remote (default is False)\n -t, --target PATH Target repository (default is current directory)\n -r, --merge-request Create merge request. Requires --push. (default is\n False)\n -c, --confirm Request user confirmation (default is False)\n --preview Preview MR Markdown in browser (default is False)\n -d, --dry-run Dry run. Prints out the MR payload in JSON format but\n does not invoke the API\n --config Show config file location\n --help Show this message and exit.\n \n```\n\n## Naming strategy\n\n### Default naming strategy\n\nFormat: `{CONVENTIONAL_COMMIT_PREFIX}/{ISSUE_ID}_{ISSUE_TITLE}`\n\nThe [conventional commit](https://www.conventionalcommits.org/) prefix is\ninferred from the type of JIRA card.\n\n```console\n$ jira2branch ISSUE-10306 master -n\n\nBRANCH NAME: #############################################\nfeat/ISSUE-10306_implement_foo_function\n##########################################################\n\nMR TITLE: ###################################################\nfeat/ISSUE-10306: Implement foo function\n#############################################################\n```\n\n### Basic naming strategy format\n\nFormat: `{ISSUE_ID}`\n\nExample:\n\n```console\n$ jira2branch ISSUE-10306 master -s -n\n\nBRANCH NAME: \nISSUE-10306\n##########\n\nMR TITLE: ##############################################\nISSUE-10306: Implement foo function\n########################################################\n```\n\n## Requirements\n\nRequires Python 3.11\n\n### Dev env\n\n```\npip install poetry\npoetry install\npip install dist/jira2branch-[VERSION]-py3-none-any.whl\n```\n\nAfterwards, your command should be available:\n\n```\n$ jira2branch WT3-227 develop\nfix/WT3-227_some-jira-issue\n```\n\n### Configuration\n\n#### JIRA\n\nJIRA credentials will be fetched from `jira2branch/config.toml` under your user config directory with the following format:\n\n```toml\n[jira-credentials]\n\nurl = \"\"\nemail = \"\"\nusername = \"\"\npassword = \"\"\ntoken = \"\"\n```\n\n#### Required fields\n\n`url` and `email` are required.\n\nUse either `username` + `password` or `token` depending on how access is configured\n\n#### GitLab integration\n\nYou can create merge requests (title and description) using this tool. Only\nGitLab is supported for now and it requires the following setup step.\n\nOnce done providing `--merge-request` will launch your `$EDITOR` and let you\ncompose your merge request.\n\n```ini\n[gitlab-credentials]\n\nurl = \"\"\ntoken = \"\"\n```\n\n#### Required fields\n\n`token` is required\n\nSet `url` if the GitLab instance you're using is self-hosted\n\n#### Note\n\nYou can always retrieve the configuration file location by providing the\n`--config` flag\n\n## Usage\n\n`jira2branch [JIRA_ISSUE_ID|JIRA_ISSUE_URL] [TARGET_BRANCH]`\n\n### Examples\n\n`jira2branch WT3-227 main`\n\n`jira2branch https://company.atlassian.net/browse/WT3-227 main`\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Takes a JIRA issue and creates a git branch",
"version": "0.6.1",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "553c8d41f06a58a25d87f776aee8c133977a97351da85467d5ebd761eb147f70",
"md5": "ed9117fad3fc2ab254ed0c14d1c2c693",
"sha256": "97da76968743aeae039b5ddfcaa11c450400c3f36e0c81551c98a0489b3d717b"
},
"downloads": -1,
"filename": "jira2branch-0.6.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ed9117fad3fc2ab254ed0c14d1c2c693",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.12,>=3.11",
"size": 11151,
"upload_time": "2025-09-02T17:06:29",
"upload_time_iso_8601": "2025-09-02T17:06:29.617422Z",
"url": "https://files.pythonhosted.org/packages/55/3c/8d41f06a58a25d87f776aee8c133977a97351da85467d5ebd761eb147f70/jira2branch-0.6.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ca6034f3f33aaf70eadf9c7fac223eb6708c7879124f595568e7054feda226c1",
"md5": "0082c91312d7075e4ff52c5bfe635728",
"sha256": "0f5f52291d3a7a0c92557cbc31c742753488bd043ac6b1ab8ad522e73d97d1af"
},
"downloads": -1,
"filename": "jira2branch-0.6.1.tar.gz",
"has_sig": false,
"md5_digest": "0082c91312d7075e4ff52c5bfe635728",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.12,>=3.11",
"size": 10923,
"upload_time": "2025-09-02T17:06:30",
"upload_time_iso_8601": "2025-09-02T17:06:30.547480Z",
"url": "https://files.pythonhosted.org/packages/ca/60/34f3f33aaf70eadf9c7fac223eb6708c7879124f595568e7054feda226c1/jira2branch-0.6.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-02 17:06:30",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "jira2branch"
}