From 88774f05aab598303508d1777863662b80df03ab Mon Sep 17 00:00:00 2001 From: Damien Coraboeuf Date: Fri, 6 Feb 2015 19:37:43 +0100 Subject: [PATCH] #19 Documentation --- README.md | 56 +++++++++++++++++++++++++++++++++++++- doc/release-tags-none.png | Bin 0 -> 17908 bytes doc/release-tags.png | Bin 0 -> 19834 bytes 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 doc/release-tags-none.png create mode 100644 doc/release-tags.png diff --git a/README.md b/README.md index 8c0fde0..97a3fe7 100644 --- a/README.md +++ b/README.md @@ -220,6 +220,61 @@ versioning { } ``` +### Snapshots on release branches + +Sometimes, you do not want to have the `display` version for a _release_ branch being the next tag if you are already on a tag. + +By default, the `versioning` plug-in will behave correctly if you tag only as the very end of your delivery pipeline, +when the project is actually delivered. But if you want to tag upfront, you probably need to indicate that your `display` version +is a _snapshot_ or similar (see issue [#19|https://github.com/nemerosa/versioning/issues/19] for the discussion). + +In such a case, you can specify a `snapshot` release mode: + +```groovy +versioning { + releaseMode = 'snapshot' +} +``` + +In this case, if the `HEAD` is not _exactly_ associated with a tag, the `-SNAPSHOT` string will be appended to the `display` version. For example, if there is a previous tag `2.1.0`, then the `display` version will be `2.1.1-SNAPSHOT`. But if the `HEAD` is exactly on the `2.1.0` tag, then the `display` version is also `2.1.0`. + +You can customise the `-SNAPSHOT` suffix used the `snapshot` property: + +```groovy +versioning { + releaseMode = 'snapshot' + snapshot = '.DEV' +} +``` + +Note that the default `releaseMode` is `tag`, where the next tag is always used as a `display` version. + +You can also customise completely the computation of the `display` version for a release by setting the `releaseMode` to a `Closure`: + +```groovy +versioning { + releaseMode = { nextTag, lastTag, currentTag, extension -> + "${nextTag}" + } +} +``` + +The meaning of the parameters is illustrated by the diagrams below: + +![Release tags](doc/release-tags.png) + +* `nextTag` = `2.1.2` - computed +* `lastTag` = `2.1.1` - last tag from the `HEAD` +* `currentTag` = `2.1.1` - exact tag for the `HEAD` + +![Release tags](doc/release-tags-none.png) + +* `nextTag` = `2.1.1` - computed +* `lastTag` = `2.1.0` - last tag from the `HEAD` +* `currentTag` = none - exact tag for the `HEAD` + +The `extension` parameter is the content of the `versioning` configuration object. + ## Subversion support Subversion is supported starting from version `1.1.0` of the Versioning plug-in. In order to enable your working copy @@ -263,4 +318,3 @@ The tests rely on the local creation of Git and Subversion repositories, and suc shell commands and processes manipulation. Unless mentioned otherwise, _using_ the Versioning plug-in on Windows should be OK. - diff --git a/doc/release-tags-none.png b/doc/release-tags-none.png new file mode 100644 index 0000000000000000000000000000000000000000..e625fe855ce9bed4d5f5612f8a90e455c20a51d7 GIT binary patch literal 17908 zcmd>mg@%MG>^}FLd-|Mv@AE?cp%y6-BM}xB7U}(a>W{Io01lYzDnfkBHx7SY zI_4j)lZvhi7FJ~<@r4Z@rp<15@3AfxRuB&sR>U(btTW85h&3!MKM^dfb!#jvxwlwY zbY58vj})-5uuWW^8bgeAAIRBxf`x4CJ#8I?0>NIGC$O*-0_8B5U&g(QSTIF*Rl+1V9*>>cGEt84yy9Me+d zbcR5@1us~S% z)m5GbVsB*=ynVVnd6hfaI})r#mn4)I^%AZM95zNy6nv$%i$i<9$Q7-nmzKI`t7Dsp zclbk(>RmwrXH;GRJDl&{4vUIhAFcmt_?-CuU=E8@n#F{VV_oh>gX|7;$SizFwwioL z)|baxjH1XCfGwd_s9tM;YA{8y0aTvejjk)S=VS+9K1#RSlyfkBhydH>wj!yixw*Mr zny{~Vcz|vF)0uXDCgF-w!-bUiv;dK@q5l5#=FCosUPcjpY?I;PQ0Af=BBTaeo z@=8-#lI&;1`E+8|#ra}M-%cwbB=Aif3Zc^}P8lmleZ`9d$EoB7hL>j`eM0Xqn_U#* zVh%TWf6)P{m~8Fo)y^`23sp@>>THc_r(5J#q6D@ZYv|zoJA2bD>oJpZjx^z2%XO6R&$t5^S<)_-v|620 z+^u#Y=D6x0T-R3-QB|hTa{DdBBfM0ep&C$NkG|8!8k8K*Z0IO?MU*U$hnY!OLRsz2 zl&)^)<@M)=-9LFmLxUb5Rwiqpw-zn(TCsQ(J79EKyto?Z#(#r~6$X`yjm&4P>1H!8 zXM7$D4e27c8q4~QQx949KlI&Qobqy*88d5X5?f~3uU!TUOSP8TRW47rpc-0As#*}b zg&Lqg7+%~5siZ4kzTSPer$pS@Q)eLJIZv@8mBqgyxVl$&xKa|x{A0yUlgn?Y%}DG@C`+j|4?K#`8_=a?6woh zGxH=vL#4ikw%!zjOOeRp`Bh`r|Ce+OIQ%=s)ITa$1Q&Z7e1t&0Dp`HUwZF=&-ZXa5 zhAR&6=w1Hg5%#ccJv($6D+wldLnXDIJ>AoQRjsET
T2~;O`#Z@1*whZGVmScDM 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 E08oh5y8r+H literal 0 HcmV?d00001 diff --git a/doc/release-tags.png b/doc/release-tags.png new file mode 100644 index 0000000000000000000000000000000000000000..2a8a8b85aa06fc01177989c3666693fdef6e2f67 GIT binary patch literal 19834 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 K^!Z`Wg#Q2;rl^qs literal 0 HcmV?d00001