diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index 32dd9fd..7110687 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "gitversion.tool": { - "version": "5.12.0", + "version": "6.6.0", "commands": [ "dotnet-gitversion" ] diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index 6c78c77..4cc3af0 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -23,11 +23,11 @@ jobs: runs-on: windows-latest steps: - - uses: actions/checkout@v6.0.0 + - uses: actions/checkout@v6 with: fetch-depth: 0 - name: Setup .NET - uses: actions/setup-dotnet@v5.0.0 + uses: actions/setup-dotnet@v5 with: dotnet-version: 10.0.x - name: Install GitVersion diff --git a/GitVersion.yml b/GitVersion.yml index 27f681d..9c2afcc 100644 --- a/GitVersion.yml +++ b/GitVersion.yml @@ -1,5 +1,59 @@ +# GitVersion configuration for GitFlow workflow +# Uses semantic versioning with GitFlow branch conventions + mode: ContinuousDeployment -branches: {} + +# Branch-specific configuration +branches: + main: + # Main branch produces stable releases without pre-release labels + label: '' + increment: Patch + prevent-increment: + of-merged-branch: true + + develop: + # Develop branch produces alpha pre-releases + mode: ContinuousDelivery + label: alpha + increment: Minor + tracks-release-branches: true + + release: + # Release branches produce beta pre-releases + mode: ContinuousDelivery + label: beta + increment: None + prevent-increment: + of-merged-branch: true + + feature: + # Feature branches use the branch name as label + mode: ContinuousDelivery + label: '{BranchName}' + increment: Inherit + + hotfix: + # Hotfix branches produce beta pre-releases + mode: ContinuousDelivery + label: beta + increment: Patch + + support: + # Support branches behave like main branches + label: '' + increment: Patch + prevent-increment: + of-merged-branch: true + +# Commit message patterns for version bumping +major-version-bump-message: '\+semver:\s?(breaking|major)' +minor-version-bump-message: '\+semver:\s?(feature|minor)' +patch-version-bump-message: '\+semver:\s?(fix|patch)' +no-bump-message: '\+semver:\s?(none|skip)' + +# Ignore configuration ignore: sha: [] + merge-message-formats: {}