Gitea Issue → Branch Action
Create a Git branch automatically from a Gitea issue, then attach that branch back to the issue via the Gitea REST API.
What it does
- Reads issue data from the workflow event.
- Maps issue labels → Git Flow prefix (
feature,bugfix,hotfix). - Creates a branch named
<prefix>/us-<ISSUE_NUMBER>fromorigin/develop(configurable). - Pushes the branch to the remote repository.
- Updates the issue so its “linked branch” points to the one it just created.
Environment variables
| Variable name | Required | Example value | Purpose |
|---|---|---|---|
GITEA_URL |
* | https://git.example.com |
Base URL of the Gitea instance |
GITEA_TOKEN |
* | ghp_xxx… |
Personal access token with repo scope |
REPO_OWNER |
* | acme |
Repository owner (user or org) |
REPO_NAME |
* | widgets |
Repository name |
ISSUE_NUMBER |
* | 42 |
Issue number to work from |
ISSUE_TITLE |
* | Add Dark Mode |
Issue title (used for logging only) |
ISSUE_LABELS |
– | bug, ui |
Comma-separated list of labels |
BASE_REF |
– | main |
Base branch/commit SHA (default develop) |
Label → prefix mapping
| Label | Prefix |
|---|---|
enhancement |
feature |
bug |
hotfix |
invalid |
bugfix |
| anything else | feature |
Quick start (Gitea Actions)
Exactly the same YAML—act_runner builds the Dockerfile automatically:
- uses: mandresyrabenja/gitea-issue-branch@v1
env:
GITEA_URL: https://git.example.com
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
REPO_OWNER: acme
REPO_NAME: widgets
ISSUE_NUMBER: ${{ gitea.event.issue.number }}
ISSUE_TITLE: ${{ gitea.event.issue.title }}
ISSUE_LABELS: ${{ join(gitea.event.issue.labels.*.name, ',') }}
Branch-naming rules
<prefix>/us-<ISSUE_NUMBER>
prefix= feature, bugfix, or hotfix (based on label table above)- Example:
feature/us-123,hotfix/us-7
Local development
# build and run the container locally
docker build -t gitea-issue-branch-action .
docker run --rm \
-e GITEA_URL=https://git.example.com \
-e GITEA_TOKEN=xxx \
-e REPO_OWNER=acme \
-e REPO_NAME=widgets \
-e ISSUE_NUMBER=42 \
-e ISSUE_TITLE="Example" \
-e ISSUE_LABELS="enhancement" \
gitea-issue-branch-action
Or use act to execute the full workflow.
📄 License
Distributed under the MIT License—see LICENSE for details.
Feel free to open issues or pull requests to enhance the action!
Description
Languages
Go
91.3%
Dockerfile
8.7%