>
>
> It's the difference between:
>   "I'm trying to build something that the user wants to call 1.0.0. As
> part of that process I'll check whether it conflicts with what is currently
> 1.0.0, and if it does I'll fail, not actually creating the artefact at all,
> and suggest that they change the version numbers appropriately."
>

In maven you always build snapshots unless doing a full release. If you use
a non SNAPSHOT version in the code on master then you are doing it wrong.

So what you say in maven terms is I build 1.0.0-SNAPSHOT and want it to
fail if it conflicts with the current 1.0.0-SNAPSHOT. This is inherently
fragile as the current snapshot is transient and might even be different
between developers.

So it is much better to compare the current code with the last release and
fail if it is incompatible. This is exactly what the baselining does. After
the fail you then once increase the package version and get your build
working again. Future changes in this package will then not fail the build
until you do a release which moves the baseline again.

Christian


Open Source Architect
http://www.talend.com
<https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.talend.com>

Reply via email to