A small extension to sbt-release, to support version tracking purely through Git tags, without the need for commits
to a version.sbt
file. Natively supports independently versioned multi-module projects.
- Add the plugin:
addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.7")
- Define your release process, including the relevant tasks:
releaseProcess := Seq[ReleaseStep]( checkSnapshotDependencies, releaseStepCommand(ExtraReleaseCommands.initialVcsChecksCommand), setVersionFromTags(releaseTagPrefix.value), runClean, tagRelease, publishArtifacts pushTagsOnly )
setVersionFromTags()
replacesinquireVersions
,setReleaseVersion
commitReleaseVersion
,commitNextVersion
, andsetNextVersion
should no longer be usedpushTagsOnly
replacespushChanges
Look at the code to go deeper!