{"id":21823452,"url":"https://github.com/f2calv/gha-release-versioning","last_synced_at":"2026-04-01T19:55:39.342Z","repository":{"id":236208323,"uuid":"792135185","full_name":"f2calv/gha-release-versioning","owner":"f2calv","description":"GitHub Action for semantic release versioning.","archived":false,"fork":false,"pushed_at":"2025-11-10T15:21:25.000Z","size":35,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-10T17:16:55.307Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"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/f2calv.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2024-04-26T03:42:28.000Z","updated_at":"2025-11-10T15:21:08.000Z","dependencies_parsed_at":"2024-04-26T05:22:26.337Z","dependency_job_id":"71c519b5-f5e0-4ebc-8b3a-f470560f79e4","html_url":"https://github.com/f2calv/gha-release-versioning","commit_stats":null,"previous_names":["f2calv/gha-release-versioning"],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/f2calv/gha-release-versioning","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f2calv%2Fgha-release-versioning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f2calv%2Fgha-release-versioning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f2calv%2Fgha-release-versioning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f2calv%2Fgha-release-versioning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/f2calv","download_url":"https://codeload.github.com/f2calv/gha-release-versioning/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/f2calv%2Fgha-release-versioning/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28805332,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T05:43:52.625Z","status":"ssl_error","status_checked_at":"2026-01-27T05:43:48.957Z","response_time":168,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":[],"created_at":"2024-11-27T17:32:10.251Z","updated_at":"2026-04-01T19:55:39.319Z","avatar_url":"https://github.com/f2calv.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub Action: Release Versioning\n\nThis action calculates the semantic version of the repository using the [GitVersion](https://gitversion.net/) tool, and then creates a Git tag and GitHub release. Optionally you can pass in a pre-determined semantic version and that will be used instead.\n\n## Usage\n\n```yaml\njobs:\n  release:\n    runs-on: ubuntu-latest\n    permissions:\n      contents: write\n    outputs:\n      version: ${{ steps.release.outputs.version }}\n      fullSemVer: ${{ steps.release.outputs.fullSemVer }}\n      major: ${{ steps.release.outputs.major }}\n      minor: ${{ steps.release.outputs.minor }}\n      patch: ${{ steps.release.outputs.patch }}\n    steps:\n      - uses: actions/checkout@v6\n        with:\n          fetch-depth: 0   # required for GitVersion to read full history\n\n      - uses: f2calv/gha-release-versioning@v1\n        id: release\n        with:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n```\n\n\u003e **Note:** `fetch-depth: 0` is required so GitVersion can read the full commit history to calculate the version.\n\n## Inputs\n\n| Input | Required | Default | Description |\n| ----- | -------- | ------- | ----------- |\n| `GITHUB_TOKEN` | Yes | — | GitHub token for API access and creating releases. |\n| `semVer` | No | `''` | Pass in an externally generated semantic version. When empty, GitVersion is used. |\n| `tag-prefix` | No | `v` | Prefix applied to the version tag, e.g. `v1.0.1`. |\n| `move-major-tag` | No | `true` | When `true`, moves rolling major (e.g. `v1`) and minor (e.g. `v1.2`) tags to the new release commit. |\n| `tag-and-release` | No | `true` | When `true`, creates a Git tag and a GitHub release. |\n| `gv-config` | No | `GitVersion.yml` | Path to the GitVersion configuration file. |\n| `gv-source` | No | `actions` | GitVersion installation source: `actions`, `dotnet`, or `container`. |\n| `dotnet-version` | No | `10.0.x` | .NET SDK version to install when `gv-source` is `dotnet`. |\n\n## Outputs\n\n| Output | Description |\n| ------ | ----------- |\n| `version` | The calculated semantic version, e.g. `1.2.301`. |\n| `semVer` | **Deprecated** — use `version` instead. |\n| `fullSemVer` | The full semantic version including pre-release info, e.g. `1.2.301-feature-my-feature.12`. |\n| `major` | The major version component, e.g. `1`. |\n| `minor` | The minor version component, e.g. `2`. |\n| `patch` | The patch version component, e.g. `301`. |\n| `release-exists` | `true` if a GitHub Release already exists for this version, otherwise `false`. |\n\n## GitVersion configuration\n\nA `GitVersion.yml` file is required in the repository root when `gv-source` is used. The configuration schema changed between GitVersion v5 and v6 — the main difference is that branch pre-release labels are configured with `label:` in v6 (previously `tag:` in v5).\n\nThe action **auto-detects** the GitVersion version from the config file: if the config contains `label:` keys under `branches`, `6.x` is used; if it contains `tag:` keys, `5.x` is used. There is no need to specify the version manually.\n\n### GitVersion v5\n\n```yaml\nmode: MainLine\nbranches:\n  main:\n    regex: ^main$\n    tag: ''\n  feature:\n    regex: ^features?[/-]\n    tag: useBranchName\n```\n\n### GitVersion v6 (default)\n\n```yaml\nmode: ContinuousDeployment\nbranches:\n  main:\n    regex: ^main$\n    label: ''\n  feature:\n    regex: ^features?[/-]\n    label: useBranchName\n```\n\n\u003e **Note:** `tag:` in v5 branch config is a pre-release label setting and is not related to Git tags. In v6 this field was renamed to `label:` to avoid confusion. The `mode` value also changed: `MainLine` in v5 became `ContinuousDeployment` in v6 (both produce clean versions on the default branch without requiring a pre-existing tag).\n\n## `gv-source` options\n\n| Source | GitVersion v5 | GitVersion v6 | Notes |\n| ------ | ------------- | ------------- | ----- |\n| `actions` | ✅ via `gittools/actions@v3` | ✅ via `gittools/actions@v4` | Auto-selects the correct action version based on the detected spec. |\n| `dotnet` | ✅ | ✅ | Installs `GitVersion.Tool` at the correct major version. |\n| `container` | ✅ image tag `5.12.0` | ✅ image tag `latest` | Runs the official `gittools/gitversion` Docker image. |\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ff2calv%2Fgha-release-versioning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ff2calv%2Fgha-release-versioning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ff2calv%2Fgha-release-versioning/lists"}