Renovate Bot 6cf805d29b
Some checks failed
renovate/stability-days Updates have met minimum release age requirement
CI / Check Dist (pull_request) Successful in 14s
CI / Dry-Run Prerelease (pull_request) Failing after 55s
CI / Test (pull_request) Failing after 1m6s
CI / Dry-Run (pull_request) Failing after 4m1s
Run TAS / run-tas (pull_request) Successful in 8m42s
chore(deps): update dependency conventional-commits-parser to v6
2026-03-10 11:02:00 +00:00
2025-08-17 22:52:19 +02:00
2025-09-05 18:44:13 +02:00
2025-08-17 22:52:19 +02:00
2025-08-17 22:52:19 +02:00
2025-08-17 20:20:08 +02:00
2025-08-17 22:52:19 +02:00

Conventional Semantic Git Tag Increment

A GitHub Action that automatically increments semantic version tags based on conventional commit messages.

Doesn't assume that you are using any special packaging software, etc. It just relies on Git having tags and commit messages.

Usage

Basic workflow

name: Auto-tag

on:
  push:
    branches: [main]

jobs:
  tag:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - uses: tbehrendt/conventional-semantic-git-tag-increment@v1
        id: tag
        with:
          token: ${{ secrets.GITHUB_TOKEN }}

      - name: Create and push tag
        run: |
          git tag ${{ steps.tag.outputs.new-tag }}
          git push origin ${{ steps.tag.outputs.new-tag }}

With custom last tag

- uses: tbehrendt/conventional-semantic-git-tag-increment@v1
  with:
    last-tag: "v2.1.0"
    token: ${{ secrets.GITHUB_TOKEN }}

With prerelease tags

- uses: tbehrendt/conventional-semantic-git-tag-increment@v1
  with:
    prerelease: "true"
    token: ${{ secrets.GITHUB_TOKEN }}

Examples

Commit Message Current Tag New Tag Reason
feat: add user authentication v1.0.0 v1.1.0 New feature
fix: resolve login bug v1.1.0 v1.1.1 Bug fix
feat!: change API response format v1.1.1 v2.0.0 Breaking change
docs: update README v2.0.0 v2.0.1 Documentation update

Prerelease Examples

Commit Message Current Tag New Tag (prerelease) Reason
feat: add user authentication v1.0.0 1.1.0-rc-abc123 New feature
fix: resolve login bug v1.1.0 1.1.1-rc-def456 Bug fix

Inputs

  • last-tag (optional): Starting tag to increment from. If not provided, uses the latest tag in the repository.
  • token (required): GitHub token for repository access. Use ${{ github.token }} for public repos or a PAT for private repos.
  • prerelease (optional): Whether to create a prerelease tag with -rc-<github.sha> suffix. Defaults to false.
  • max-tags (optional): Maximum number of tags to fetch when looking for the latest non-pre-release tag. Defaults to 50.

Outputs

  • new-tag: The incremented semantic version tag (e.g., 1.2.3 or 1.2.3-rc-abc123 for prerelease)
Description
A GitHub Action that automatically increments semantic version tags based on conventional commit messages.
Readme MIT 2 MiB
Languages
TypeScript 99.1%
JavaScript 0.9%