This Gradle plugin derives your project’s version directly from the state of the Git repository, turning tags and commits into consistent semantic versions. It reads the most recent tag, the number of commits since that tag, and whether the working tree is dirty, then composes a deterministic version string. Teams can enforce patterns (for example, treating non-tagged builds as snapshots) and keep CI builds reproducible without hardcoding versions in build.gradle.