2
0

GitVersion.yml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. # V1 0 This file configures GitVersion 6.x to work with Terminal.Gui's GitFlow branching strategy.
  2. #
  3. # Terminal.Gui v1 uses the GitFlow branching strategy.
  4. # https://gitversion.net/docs/learn/branching-strategies/gitflow/
  5. #
  6. # - We have two main branches: `v1_release` and `v1_develop`.
  7. # - `v1_release` is the main branch for V1 releases and matches the latest NuGet release package (e.g., 1.0.0);
  8. # prior to release, it uses pre-release labels (e.g., 1.0.0-prealpha.1).
  9. # - `v1_develop` is the development branch for V2 and always carries a pre-release label (e.g., 1.1.0-develop.1).
  10. # - Development happens on feature branches off `v1_develop`.
  11. # - For releases, we merge feature branches into `v1_develop`, then `v1_develop` into `v1_release`.
  12. # - The ./.github/workflows/publish.yml builds and publishes on pushes to `v1_develop` and `v1_release`.
  13. #
  14. # Branches
  15. # - v1_release: Main branch for V1 (historical)
  16. # - v1_develop: Develop branch for V1 (historical)
  17. #
  18. # Package Naming:
  19. # - from v1_develop: 1.1.0-develop.1 (minor version increments)
  20. # - from v1_release (pre-release): 1.0.0-prealpha.1 or 1.0.0-beta.1
  21. # - from v1_release (release): 1.0.0 (patch version increments)
  22. #
  23. mode: ContinuousDelivery # GitVersion 6.x uses Mainline mode for GitFlow, focusing on main branch releases
  24. # We prefix our tags with 'v' or 'V' (e.g., v1.0.0)
  25. tag-prefix: '[vV]'
  26. branches:
  27. # V1 Release Branch
  28. main:
  29. # Matches the v1_release branch
  30. regex: ^v1_release$
  31. # Increments patch version (x.y.z+1) on commits
  32. increment: Patch
  33. # Specifies v1_develop as the source branch
  34. source-branches: ['develop']
  35. # V1 Development Branch
  36. develop:
  37. # Matches the v1_develop branch
  38. regex: v1_develop
  39. # Adds 'develop' as pre-release label (e.g., 2.1.0-develop.1)
  40. label: develop
  41. # Increments minor version (x.y+1.z) on commits
  42. increment: Minor
  43. # No source branches specified as this is the root of development
  44. source-branches: []
  45. # Indicates this branch feeds into release branches
  46. tracks-release-branches: true
  47. # Pull Request Branches
  48. # Configures versioning for PRs (e.g., 2.0.0-pr.feature-123.1)
  49. pull-request:
  50. # Matches typical PR branch names
  51. regex: ^(pull|pull\-requests|pr)[/-]
  52. # Uses 'pr' prefix with branch name in the label (e.g., pr.feature-123)
  53. label: pr.{BranchName}
  54. # Inherits increment strategy from source branch
  55. increment: Inherit
  56. source-branches:
  57. - develop
  58. - main
  59. # High weight ensures PR versions sort after regular pre-releases
  60. pre-release-weight: 30000
  61. # Ignore specific commits if needed (currently empty)
  62. ignore:
  63. sha: []