Skip to main content

Repository

All GIT repositories are organized as follows

project
│ README.md
│ LICENSE
│ Directory.Build.props
│ projectname.sln

└───devops-build

└───assets

└───src

└───test
file/folderDescriptionMandatory
README.mdReadme file in markdown syntaxNo
LICENSEText of license the software component is licensed withYes
Directory.Build.propsUsed by MSBuild to define common variables and settings for projectsif source code repo
Projectname.slnSolution file if this project is either standallone or groups up serviceNo
devops-buildScripts/definition files for build systemsif build need
assetsDifferent assets needed for build/deployment (e. g. image for nuget packages)No
srcsource code root directoryif source code repo
testtest code root directoryif source code repo

Versioning

Major and Minor version numbers are defined at the build process.

Because different technologies are used we try to use the same versioning scheme everywhere but with slight differences.

Symbols

This symbols are used in this document.

SymbolDescriptionMin LengthMax LengthSample
YYCurrent year2222 (for year 2022)
MMCurrent month2209 (for month September)
DDCurrent day of month129 (for 9th day of month), 18 (for 18th day of month)
xxxRevision number33Count of builds on this day

.NET

Internal assemblies

Scheme: Major.Minor.Build.Revision

Build: YYMM (YY=year and MM=month) Revision: DDxxx (DD=day of month and xxx=counter of builds of this day). No leading zeros for DD.

Public assemblies (external referencable)

Scheme: Major.Minor.Build.Revision

For AssemblyVersion: We use Semantic Versioning for versioning of assemblies.

For AssemblyFileVersion: AssemblyFileVersion contains version including Build and Revision (see Internal assemblies)

Node

Scheme: Major.Minor.Patch

Patch = YYMM-DDxxx YY= 2-digit year