GitVersion.exe /updateassemblyinfo
will recursively search for all
AssemblyInfo.cs
or AssemblyInfo.vb
files in the git repo and update them.
It will update the following assembly attributes:
AssemblyVersion
will be set to theAssemblySemVer
variable.AssemblyFileVersion
will be set to theMajorMinorPatch
variable with an appended.0
.AssemblyInformationalVersion
will be set to theInformationalVersion
variable.
Note that contrary to when using the MSBuild Task the
attributes must already exist in the AssemblyInfo.cs
or AssemblyInfo.vb
files prior to calling GitVersion.
By adding /updateassemblyinfo <filenames>
the name of AssemblyInfo file to
update can be set. This switch can accept multiple files with the path to the
file specified relative to the working directory.
GitVersion can generate an assembly info source file for you if it does not
already exist. Use the /ensureassemblyinfo
switch alongside
/updateassemblyinfo <filename>
, if the filename specified does not exist it
will be generated based on a known template that adds:
AssemblyVersion
will be set to theAssemblySemVer
variable.AssemblyFileVersion
will be set to theMajorMinorPatch
variable with an appended.0
.AssemblyInformationalVersion
will be set to theInformationalVersion
variable.
This can be done for *.cs, *.vb and *.fs files.
When requesting that GitVersion generate an assembly info file you are limited
to only specifying a single <filename>
within the /updateassemblyinfo
switch, this is to prevent the creation of multiple assembly info files with the
same assembly version attributes. If this occurs your build will fail.
Example: When AssemblyInfo.cs does not exist
GitVersion.exe /updateassemblyinfo AssemblyInfo.cs /ensureassemblyinfo
A file is generated that contains version attributes (AssemblyVersion
,
AssemblyFileVersion
, AssemblyInformationalVersion
)
Example: When AssemblyInfo.cs already exists
GitVersion.exe /updateassemblyinfo AssemblyInfo.cs /ensureassemblyinfo
All known attributes (AssemblyVersion
, AssemblyFileVersion
,
AssemblyInformationalVersion
) will be updated
Example: When AssemblyInfo.cs and AssemblyVersionInfo.cs do not exist
GitVersion.exe /updateassemblyinfo AssemblyInfo.cs AssemblyVersionInfo.cs /ensureassemblyinfo
Will result in command line argument error
Example: When AssemblyInfo.cs and AssemblyVersionInfo.cs already exist
GitVersion.exe /updateassemblyinfo AssemblyInfo.cs AssemblyVersionInfo.cs
Will iterate through each file and update known attributes (AssemblyVersion
,
AssemblyFileVersion
, AssemblyInformationalVersion
).
Example: How to override configuration option 'tag-prefix' to use prefix 'custom'
GitVersion.exe /output json /overrideconfig tag-prefix=custom
Writing version metadata in WiX format
To support integration with WiX projects, use GitVersion.exe /updatewixversionfile
. All the variables are written to
GitVersion_WixVersion.wxi
under the current working directory and can be
referenced in the WiX project files.