Add overview to documentation

This commit is contained in:
Paul Hatcherian 2020-11-25 15:30:00 -05:00
parent c47459a3b9
commit 06e32738a3
4 changed files with 489 additions and 0 deletions

130
minor.drawio.svg Normal file
View file

@ -0,0 +1,130 @@
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="304px" height="271px" viewBox="-0.5 -0.5 304 271" content="&lt;mxfile host=&quot;9c90bc84-0eec-4321-8fe4-32d91483c5f7&quot; modified=&quot;2020-11-25T20:01:29.946Z&quot; agent=&quot;5.0 (Macintosh; Intel Mac OS X 10_16_0) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.51.1 Chrome/83.0.4103.122 Electron/9.3.3 Safari/537.36&quot; etag=&quot;Cw-oCKPmlkFx43s0Dnl2&quot; version=&quot;13.6.5&quot;&gt;&lt;diagram id=&quot;gI28yuYEcBMMNC8PbDnz&quot; name=&quot;Page-1&quot;&gt;5ZjbjpswEIafJlJ70RWGkMPlJk23KzWt1PRw7YID7hoGGefUp+8YTAhx0kTaHBrlBtm/x+D5/AMDLW+YLJ8kzeIxhEy0XCdctrz3LdftkDYetbAqhbbTK4VI8rCUSC1M+B9mRMeoMx6yvBGoAITiWVMMIE1ZoBoalRIWzbApiOZVMxoxS5gEVNjqTx6quFR7vlPrHxmP4urKxDEjCa2CjZDHNITFhuSNWt5QAqiylSyHTGh2FZdy3oc9o+uFSZaqYyaYjZhTMTO5mXWpVZUsCzF30wWpYoggpWJUqwMJszRk+owO9uqYTwAZigTF30ypldlIOlOAUqwSYUbtVZtEcpjJwKzDrExRGTET5ZWSXuHGNJPpE4OEKbnCAMkEVXze3D1qTBCt42pO2DCodmNzj8AmBNpR41nEXLFJRotEFnhDNJOneVZ6dMqXGuJ+GnMmFVv+M9NqtGP8ZW4wzzP9RW3XSoo3nFppr2HTuR1Lebal/GtZyrsxS7n+5SzVvx1L+baleteylH9jliLdy1mqd2Ns+pdDQ4jF5huNIp3Zo5bJg/NALFqYl2piyZWEFzYEARKVFFKNcsqF2JKo4FGKXcGm+gyaEcda69HICQ9DsW8Xmjf1Cbi7zvab07fAr8u5TfLuKcjbdUVBG7WBcy/EXd8m3j0XcPuti8AR+T0BJ90LArc/OBC4WwC/m2dK/4K87RrgOckED7hC9QeTOYc0PwP4AHExeXX0Hjns9fa52B/xJYTf/5luBjMpVgNJgxddNR4qOGpMZU9h3Qga7jvSO5Vnu1vgHLsAcXeAWwN+FbmuRW4ISVJ4dszyvPg9g7VIR2hYvyS2IlXkXSq8Er5nIVUM/e28GT9//vL1bRWBK+D1rP/2sWPt145d3buF/mHrn6qSwW79z6oY2/jx543+Ag==&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 125 240 L 125 196.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 125 191.12 L 128.5 198.12 L 125 196.37 L 121.5 198.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="125" cy="255" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 125 160 L 125 116.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 125 111.12 L 128.5 118.12 L 125 116.37 L 121.5 118.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="125" cy="175" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 125 80 L 125 36.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 125 31.12 L 128.5 38.12 L 125 36.37 L 121.5 38.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="125" cy="95" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<ellipse cx="125" cy="15" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<rect x="150" y="245" width="100" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 98px; height: 1px; padding-top: 255px; margin-left: 152px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Tagged: v1.0.1
</div>
</div>
</div>
</foreignObject>
<text x="152" y="259" fill="#000000" font-family="Helvetica" font-size="12px">
Tagged: v1.0.1
</text>
</switch>
</g>
<rect x="150" y="165" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 175px; margin-left: 152px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+0
</div>
</div>
</div>
</foreignObject>
<text x="152" y="179" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+0
</text>
</switch>
</g>
<rect x="150" y="85" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 95px; margin-left: 152px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.1.0+0
</div>
</div>
</div>
</foreignObject>
<text x="152" y="99" fill="#000000" font-family="Helvetica" font-size="12px">
v1.1.0+0
</text>
</switch>
</g>
<rect x="150" y="5" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 15px; margin-left: 152px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.2.0+1
</div>
</div>
</div>
</foreignObject>
<text x="152" y="19" fill="#000000" font-family="Helvetica" font-size="12px">
v1.2.0+1
</text>
</switch>
</g>
<rect x="260" y="85" width="40" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 38px; height: 1px; padding-top: 95px; margin-left: 261px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Implicit Versions
</div>
</div>
</div>
</foreignObject>
<text x="280" y="99" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
Implic...
</text>
</switch>
</g>
<path d="M 240 10 L 235 10 Q 230 10 230 20 L 230 87.5 Q 230 97.5 225 97.5 L 222.5 97.5 Q 220 97.5 225 97.5 L 227.5 97.5 Q 230 97.5 230 107.5 L 230 175 Q 230 185 235 185 L 240 185" fill="none" stroke="#000000" stroke-miterlimit="10" transform="rotate(-180,230,97.5)" pointer-events="all"/>
<rect x="0" y="85" width="100" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 98px; height: 1px; padding-top: 95px; margin-left: 2px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Commit Message:
<br/>
<i>
Updates (MINOR)
</i>
</div>
</div>
</div>
</foreignObject>
<text x="2" y="99" fill="#000000" font-family="Helvetica" font-size="12px">
Commit Message:...
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://desk.draw.io/support/solutions/articles/16000042487" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

View file

@ -13,6 +13,51 @@ commit messages are inspected to determine the type of version change the next
version represents. Including the term `(MAJOR)` or `(MINOR)` in the commit
message alters the type of change the next version will represent.
# Background
Automatic versioning during a build presents a chicken-and-egg problem--we
want the version to increase by a single value between each release, but we
usually do not know at build time whether a new build will be released or not.
Generally a build is tagged as part of a release step after passing testing and
other quality controls, so if we want to use the version number in the build
itself, especially for a build triggered by a commit, we cannot rely on having
a proper tag for the build. Most CI systems offer a "build number", but this
does not correspond to our semantic version and relies on the state of the CI
tool. It is with this in mind that this tool was developed with the following
goals:
- Allow the version to be injected into the build
- Derive the version only from the git repository itself
- Do not require the version to be maintained by hand
- Resolve the version deterministically for a given commit (see caveats below)
- Provide an easy mechanism for incrementing major and minor versions by developers
The solution here is to calculate the _implicit_ next version based on the most
recently tagged version and the commit messages. This is in essence, what this
tool does. An additional value called the "increment" tracks the number of commits
since the last version change, allowing preview tags to be created.
![Commits Graph](versioning.drawio.svg?raw=true)
## Major and Minor Versions
The commit messages for the span of commits from the last tag are checked for the
presence of the designated terms (`(MAJOR)` or `(MINOR)` by default), if a term
is encountered that commit is treated as the start of a major or minor version
instead of the default patch level. As with normal commits the implied version
will only increment by one value since the last tag regardless of how many major
or minor commits are encountered. Major commits override minor commits, so a set
of commits containing both will result in a major version increment.
![Commits Graph](minor.drawio.svg?raw=true)
## A Caveat Regarding Tags
Please note that if a tag is assigned to an older commit, the commits that come
after it will be given the new new version, for example:
![Commits Graph](tagging.drawio.svg?raw=true)
# Usage
<!-- start usage -->

205
tagging.drawio.svg Normal file
View file

@ -0,0 +1,205 @@
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="391px" height="293px" viewBox="-0.5 -0.5 391 293" content="&lt;mxfile host=&quot;870b5583-737c-498f-a409-5e2781da980d&quot; modified=&quot;2020-11-25T19:56:13.928Z&quot; agent=&quot;5.0 (Macintosh; Intel Mac OS X 10_16_0) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.51.1 Chrome/83.0.4103.122 Electron/9.3.3 Safari/537.36&quot; etag=&quot;x34-_x1tVSG7WgSbPJOA&quot; version=&quot;13.6.5&quot;&gt;&lt;diagram id=&quot;gI28yuYEcBMMNC8PbDnz&quot; name=&quot;Page-1&quot;&gt;5Vpdb5swFP01PLbCEPLxmKZdN6mTJnXanl1wwJuDkXGapL9+drhAiEmKWkLC8hKZg218j8+FcyGWO1usHwVOou88IMxy7GBtufeW4wzRQP1qYJMBA3ucAaGgQQahEnimbwRAG9AlDUha6Sg5Z5ImVdDncUx8WcGwEHxV7TbnrHrVBIfEAJ59zEz0Nw1klKFjzy7xr4SGUX5lZMOZBc47A5BGOOCrHch9sNyZ4FxmrcV6RpjmLuclG/flwNliYYLEsskA2IhXzJYQG6xLbvJgSaBih0MuZMRDHmP2UKJ3gi/jgOgZbXVU9nniPFEgUuAfIuUGNhIvJVdQJBcMzpqrhkBSvhQ+rANWJrEICfRyM0ivcGcYRPpI+IJIsVEdBGFY0tfq7mEQQVj0K3lSDaCqnjanAW2MKTlqelYRleQ5wdtAViohqsHjNMk0OqdrTeJhNl6JkGR9NNL87BD0BQnmunC8KuWaQ9GOUnPsM9wM+yMp15SUdy5JuT2TlON1J6lJfyTlmZIan0tSXs8khUbdSWrcM24m3VGDkMHNTxyGOrKphtGtfYsMtlRcskpLKgX/S2accaGQmMeayjllbA/CjIaxOmRkrmfQHFHltaYAL2gQsEO7UE3qFnh37P0np2cQX9i5XeadNpg3fcWWbYXd2dfCuOOZjI9ORbj51C0IvxqJo1GHhJsFR0G4eQf+TwmfdMj3JbnxPQf0rpdCI8swU2hST3Xr5im/+CkdgiGhGkoOqmqAzlfjoSb26WJlNTFl1ZknR01qmUuSVZd1Xn7H66WsijeRu7JyOpKVY3r2y5ZVl7VezkVvyOmw2Kt579SrYu9zvHtnLPZq3r33othrlfEui72aN9Nbwt1rIrzD2qPmHZtxa7nkmq9V3uuK7NPdWhqYzDTCiW7OGVlP9TdRFTeJA2je+wynKfU/ZoxMVnai9mqCzrHGvgiu8INTdeGy0B7vkT72qlNkfg1GlXwaE7mTdybKTJ4x0XZjirCbffcxPa/KEgVMk4RRJck6A/yEXwjb8yUgc19tBRHH9C9ISt/wy3Y+rfZER7GNy7uzvPtj+ocP6jDYKsS6qwDnQIUOMyk7YU9QK9t9kw+BXbrJa/Z8Cj6fp+TTG9TAWl9FMtmD27bSyZyqxYQy3f63hUoln+oV/SIipTy2nCHTD4kXoVqhbs0iHIck7V26ucefQ6dMN8fYxY8knDos/++SdS//NOQ+/AM=&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 15 262 L 15 218.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 15 213.12 L 18.5 220.12 L 15 218.37 L 11.5 220.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="15" cy="277" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 15 182 L 15 138.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 15 133.12 L 18.5 140.12 L 15 138.37 L 11.5 140.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="15" cy="197" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 15 102 L 15 58.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 15 53.12 L 18.5 60.12 L 15 58.37 L 11.5 60.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="15" cy="117" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<ellipse cx="15" cy="37" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<rect x="40" y="267" width="100" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 98px; height: 1px; padding-top: 277px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Tagged: v1.0.1
</div>
</div>
</div>
</foreignObject>
<text x="42" y="281" fill="#000000" font-family="Helvetica" font-size="12px">
Tagged: v1.0.1
</text>
</switch>
</g>
<rect x="40" y="187" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 197px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+0
</div>
</div>
</div>
</foreignObject>
<text x="42" y="201" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+0
</text>
</switch>
</g>
<rect x="40" y="107" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 117px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+1
</div>
</div>
</div>
</foreignObject>
<text x="42" y="121" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+1
</text>
</switch>
</g>
<rect x="40" y="27" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 37px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+2
</div>
</div>
</div>
</foreignObject>
<text x="42" y="41" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+2
</text>
</switch>
</g>
<path d="M 265 262 L 265 218.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 265 213.12 L 268.5 220.12 L 265 218.37 L 261.5 220.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="265" cy="277" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 265 182 L 265 138.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 265 133.12 L 268.5 140.12 L 265 138.37 L 261.5 140.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="265" cy="197" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 265 102 L 265 58.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 265 53.12 L 268.5 60.12 L 265 58.37 L 261.5 60.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="265" cy="117" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<ellipse cx="265" cy="37" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<rect x="290" y="267" width="100" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 98px; height: 1px; padding-top: 277px; margin-left: 292px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Tagged: v1.0.1
</div>
</div>
</div>
</foreignObject>
<text x="292" y="281" fill="#000000" font-family="Helvetica" font-size="12px">
Tagged: v1.0.1
</text>
</switch>
</g>
<rect x="290" y="187" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 197px; margin-left: 292px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+0
</div>
</div>
</div>
</foreignObject>
<text x="292" y="201" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+0
</text>
</switch>
</g>
<rect x="290" y="27" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 37px; margin-left: 292px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.3+0
</div>
</div>
</div>
</foreignObject>
<text x="292" y="41" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.3+0
</text>
</switch>
</g>
<rect x="290" y="107" width="100" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 98px; height: 1px; padding-top: 117px; margin-left: 292px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Tagged: v1.0.2
</div>
</div>
</div>
</foreignObject>
<text x="292" y="121" fill="#000000" font-family="Helvetica" font-size="12px">
Tagged: v1.0.2
</text>
</switch>
</g>
<path d="M 120.5 122 L 120.5 112 L 210.5 112 L 210.5 101.5 L 229.5 117 L 210.5 132.5 L 210.5 122 Z" fill="none" stroke="#000000" stroke-linejoin="round" stroke-miterlimit="10" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 101px; margin-left: 161px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; background-color: #ffffff; white-space: nowrap; ">
Tag Applied
</div>
</div>
</div>
</foreignObject>
<text x="161" y="104" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
Tag Applied
</text>
</switch>
</g>
<path d="M 120.5 41.5 L 120.5 31.5 L 210.5 31.5 L 210.5 21 L 229.5 36.5 L 210.5 52 L 210.5 41.5 Z" fill="none" stroke="#000000" stroke-linejoin="round" stroke-miterlimit="10" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 13px; margin-left: 161px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; background-color: #ffffff; white-space: nowrap; ">
Implicit Version
<br/>
Changes
</div>
</div>
</div>
</foreignObject>
<text x="161" y="16" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
Implicit Version...
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://desk.draw.io/support/solutions/articles/16000042487" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

109
versioning.drawio.svg Normal file
View file

@ -0,0 +1,109 @@
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="194px" height="271px" viewBox="-0.5 -0.5 194 271" content="&lt;mxfile host=&quot;0a9c6f9a-c69b-46b3-a4d1-52050d73bab5&quot; modified=&quot;2020-11-25T19:59:33.137Z&quot; agent=&quot;5.0 (Macintosh; Intel Mac OS X 10_16_0) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.51.1 Chrome/83.0.4103.122 Electron/9.3.3 Safari/537.36&quot; etag=&quot;TQf222kSkN1aWq7tiU3-&quot; version=&quot;13.6.5&quot;&gt;&lt;diagram id=&quot;gI28yuYEcBMMNC8PbDnz&quot; name=&quot;Page-1&quot;&gt;5Zhdk5owFIZ/jZfdIUT8uFyt3XamvbLTXmfgCOkGDhOCH/31TSSAmHXXThXH7o2TvDlAzpM3csKAztPtk2R58g0jEAPfi7YD+nHg+yMy1L9G2FXC0JtUQix5VEmkFZb8N1jRs2rJIyg6gQpRKJ53xRCzDELV0ZiUuOmGrVB0n5qzGBxhGTLhqj95pJJKnQReq38GHif1k4lnR1JWB1uhSFiEmwOJLgZ0LhFV1Uq3cxCGXc2luu7TidFmYhIydc4FdiHWTJQ2NzsvtauThUjnbrsoVYIxZkwsWnUmscwiMHf0dK+N+YqYa5Fo8RcotbMLyUqFWkpUKuyoO2ubSIGlDO087MwUkzHYKFpJZoYHl9lMnwBTUHKnAyQIpvi6u3rMmiBu4lpOumFRvYzNPwObENqOBs8m4QqWOdsnstEbops8K/LKoyu+NRBP01iDVLB9NdN6dGT9ZTcYpba/ae1aS8mBU2vtX9iM7sdS1LVUcCtL0TuzlB/0Z6np/VgqcC01uZWlgjuzFBn3Z6nJnbGZ9oeGEIfNdxbHJrNHI5MH74E4tHReqoulUBKfYY4CpVYyzAzKFRfiSGKCx5nuCliZOxhGXNdaj1ZOeRSJU6vQ3dQX4O57x2/OwAHflHOH5P1LkHfrij1trc2890LcD1zi42sBd9+6DfB3Y3Ey7hG4e+BogLv/wP8p8GmPvN0a4EuaCx5ypdUfIAuOWXEF8KHGBfLm6Cl52+vDa7E/4ySkz/+5aYalFLuZZOGzqRrfKjhaTFVP6boRDdwPZHIpz46PwHluAeK/AK4B/BfkdLf94rEfO/hsRBd/AA==&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 15 240 L 15 196.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 15 191.12 L 18.5 198.12 L 15 196.37 L 11.5 198.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="15" cy="255" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 15 160 L 15 116.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 15 111.12 L 18.5 118.12 L 15 116.37 L 11.5 118.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="15" cy="175" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<path d="M 15 80 L 15 36.37" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 15 31.12 L 18.5 38.12 L 15 36.37 L 11.5 38.12 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/>
<ellipse cx="15" cy="95" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<ellipse cx="15" cy="15" rx="15" ry="15" fill="#ffffff" stroke="#000000" pointer-events="all"/>
<rect x="40" y="245" width="100" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 98px; height: 1px; padding-top: 255px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Tagged: v1.0.1
</div>
</div>
</div>
</foreignObject>
<text x="42" y="259" fill="#000000" font-family="Helvetica" font-size="12px">
Tagged: v1.0.1
</text>
</switch>
</g>
<rect x="40" y="165" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 175px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+0
</div>
</div>
</div>
</foreignObject>
<text x="42" y="179" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+0
</text>
</switch>
</g>
<rect x="40" y="85" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 95px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+1
</div>
</div>
</div>
</foreignObject>
<text x="42" y="99" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+1
</text>
</switch>
</g>
<rect x="40" y="5" width="70" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 68px; height: 1px; padding-top: 15px; margin-left: 42px;">
<div style="box-sizing: border-box; font-size: 0; text-align: left; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
v1.0.2+2
</div>
</div>
</div>
</foreignObject>
<text x="42" y="19" fill="#000000" font-family="Helvetica" font-size="12px">
v1.0.2+2
</text>
</switch>
</g>
<rect x="150" y="85" width="40" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 38px; height: 1px; padding-top: 95px; margin-left: 151px;">
<div style="box-sizing: border-box; font-size: 0; text-align: center; ">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: #000000; line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
Implicit Versions
</div>
</div>
</div>
</foreignObject>
<text x="170" y="99" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
Implic...
</text>
</switch>
</g>
<path d="M 130 10 L 125 10 Q 120 10 120 20 L 120 87.5 Q 120 97.5 115 97.5 L 112.5 97.5 Q 110 97.5 115 97.5 L 117.5 97.5 Q 120 97.5 120 107.5 L 120 175 Q 120 185 125 185 L 130 185" fill="none" stroke="#000000" stroke-miterlimit="10" transform="rotate(-180,120,97.5)" pointer-events="all"/>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://desk.draw.io/support/solutions/articles/16000042487" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>

After

Width:  |  Height:  |  Size: 9.3 KiB