Schema URL

Type: object

GitVersion configuration schema

Properties

assembly-file-versioning-format string

Specifies the format of AssemblyFileVersion and overwrites the value of assembly-file-versioning-scheme.

assembly-file-versioning-scheme enum

The scheme to use when setting AssemblyFileVersion attribute. Can be 'MajorMinorPatchTag', 'MajorMinorPatch', 'MajorMinor', 'Major', 'None'.

Values: "MajorMinorPatchTag" "MajorMinorPatch" "MajorMinor" "Major" "None"
assembly-informational-format string

Specifies the format of AssemblyInformationalVersion. The default value is {InformationalVersion}.

assembly-versioning-format string

Specifies the format of AssemblyVersion and overwrites the value of assembly-versioning-scheme.

assembly-versioning-scheme enum

The scheme to use when setting AssemblyVersion attribute. Can be 'MajorMinorPatchTag', 'MajorMinorPatch', 'MajorMinor', 'Major', 'None'.

Values: "MajorMinorPatchTag" "MajorMinorPatch" "MajorMinor" "Major" "None"
branches Record<string, object>

The header for all the individual branch configuration.

build-metadata-padding integer | null
commit-date-format string

The format to use when calculating the commit date. Defaults to 'yyyy-MM-dd'.

format=date-timepattern='yyyy-MM-dd'
commit-message-incrementing enum
Values: "Enabled" "Disabled" "MergeMessageOnly"
commits-since-version-source-padding integer | null
continuous-delivery-fallback-tag string
ignore object

The header property for the ignore configuration.

2 nested properties
commits-before Nullable%6012
sha string[]

A sequence of SHAs to be excluded from the version calculations.

increment Nullable%601
legacy-semver-padding integer | null
major-version-bump-message string

The regex to match commit messages with to perform a major version increment. Default set to '+semver:\s?(breaking|major)'

format=regexpattern='\+semver:\s?(breaking|major)'
merge-message-formats Record<string, string>

Custom merge message formats to enable identification of merge messages that do not follow the built-in conventions.

minor-version-bump-message string

The regex to match commit messages with to perform a minor version increment. Default set to '+semver:\s?(feature|minor)'

format=regexpattern='\+semver:\s?(feature|minor)'
next-version string

Allows you to bump the next version explicitly. Useful for bumping main or a feature branch with breaking changes

no-bump-message string

Used to tell GitVersion not to increment when in Mainline development mode. . Default set to '+semver:\s?(none|skip)'

format=regexpattern='\+semver:\s?(none|skip)'
patch-version-bump-message string

The regex to match commit messages with to perform a patch version increment. Default set to '+semver:\s?(fix|patch)'

format=regexpattern='\+semver:\s?(fix|patch)'
tag-prefix string

A regex which is used to trim Git tags before processing. Defaults to [vV]

tag-pre-release-weight integer | null

The pre-release weight in case of tagged commits. Defaults to 60000.

update-build-number boolean | null

Whether to update the build number in the project file. Defaults to true.

Definitions

BranchConfig object
commit-message-incrementing enum

Sets whether it should be possible to increment the version with special syntax in the commit message. Can be 'Disabled', 'Enabled' or 'MergeMessageOnly'.

Values: "Enabled" "Disabled" "MergeMessageOnly"
increment Nullable%601
is-mainline boolean | null

When using Mainline mode, this indicates that this branch is a mainline. By default main and support/* are mainlines.

is-release-branch boolean | null

Indicates this branch config represents a release branch in GitFlow.

is-source-branch-for string[]

The branches that this branch is a source branch.

pre-release-weight integer | null

Provides a way to translate the PreReleaseLabel to a number.

prevent-increment-of-merged-branch-version boolean | null

Prevent increment of merged branch version.

regex string

The regex pattern to use to match this branch.

source-branches string[]

The source branches for this branch.

tag string

The label to use for this branch. Can be 'useBranchName' to extract the label from the branch name.

tag-number-pattern string

The regex pattern to use to extract the number from the branch name. Defaults to '/-[-/]'.

format=regexpattern=[/-](?<number>\d+)[-/]
track-merge-target boolean | null

Strategy which will look for tagged merge commits directly off the current branch.

tracks-release-branches boolean | null

Indicates this branch config represents develop in GitFlow.

Nullable`1 enum

The increment strategy for this branch. Can be 'Inherit', 'Patch', 'Minor', 'Major', 'None'.

Nullable`11 enum

The versioning mode for this branch. Can be 'ContinuousDelivery', 'ContinuousDeployment', 'Mainline'.

DateTimeOffset object | null
date string
format=date-time
date-time string
format=date-time
day integer
day-of-week enum
Values: "Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"
day-of-year integer
hour integer
local-date-time string
format=date-time
millisecond integer
minute integer
month integer
offset object
11 nested properties
days integer
hours integer
milliseconds integer
minutes integer
seconds integer
ticks integer
total-days number
total-hours number
total-milliseconds number
total-minutes number
total-seconds number
second integer
ticks integer
time-of-day object
11 nested properties
days integer
hours integer
milliseconds integer
minutes integer
seconds integer
ticks integer
total-days number
total-hours number
total-milliseconds number
total-minutes number
total-seconds number
utc-date-time string
format=date-time
utc-ticks integer
year integer
DateTime string
integer integer
integer1 integer
number number
TimeSpan object
days integer
hours integer
milliseconds integer
minutes integer
seconds integer
ticks integer
total-days number
total-hours number
total-milliseconds number
total-minutes number
total-seconds number
Nullable`12 object | null

Commits before this date will be ignored. Format: yyyy-MM-ddTHH:mm:ss.

date string
format=date-time
date-time string
format=date-time
day integer
day-of-week enum
Values: "Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"
day-of-year integer
hour integer
local-date-time string
format=date-time
millisecond integer
minute integer
month integer
offset object
11 nested properties
days integer
hours integer
milliseconds integer
minutes integer
seconds integer
ticks integer
total-days number
total-hours number
total-milliseconds number
total-minutes number
total-seconds number
second integer
ticks integer
time-of-day object
11 nested properties
days integer
hours integer
milliseconds integer
minutes integer
seconds integer
ticks integer
total-days number
total-hours number
total-milliseconds number
total-minutes number
total-seconds number
utc-date-time string
format=date-time
utc-ticks integer
year integer
array string[]

A sequence of SHAs to be excluded from the version calculations.