{"id":21284479,"url":"https://github.com/nasdaq/semver-git","last_synced_at":"2026-02-26T18:18:19.250Z","repository":{"id":30039638,"uuid":"33588717","full_name":"Nasdaq/semver-git","owner":"Nasdaq","description":"Gradle plugin that combines git tags and semantic versioning, and sets the gradle version property accordingly. ","archived":false,"fork":false,"pushed_at":"2023-02-01T11:57:31.000Z","size":184,"stargazers_count":45,"open_issues_count":12,"forks_count":15,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-06T03:11:06.986Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nasdaq.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-08T06:24:14.000Z","updated_at":"2024-09-12T11:51:55.000Z","dependencies_parsed_at":"2023-02-17T05:15:17.894Z","dependency_job_id":null,"html_url":"https://github.com/Nasdaq/semver-git","commit_stats":null,"previous_names":["cinnober/semver-git"],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/Nasdaq/semver-git","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nasdaq%2Fsemver-git","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nasdaq%2Fsemver-git/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nasdaq%2Fsemver-git/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nasdaq%2Fsemver-git/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nasdaq","download_url":"https://codeload.github.com/Nasdaq/semver-git/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nasdaq%2Fsemver-git/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264795386,"owners_count":23665227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-21T11:16:09.313Z","updated_at":"2026-02-26T18:18:19.170Z","avatar_url":"https://github.com/Nasdaq.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# semver-git #\n[![Build Status](https://travis-ci.org/cinnober/semver-git.svg?branch=master)](https://travis-ci.org/cinnober/semver-git)\n\nThe gradle plugin 'semver-git' sets the `project.version` based on _annotated_ git tags.\nVersion numbers must follow [Semantic Versioning 2.0.0](http://semver.org/spec/v2.0.0.html), with the syntax _major.minor.patch_.\n\n## Usage ##\n\nIn your `build.gradle` file:\n\n    plugins {\n        id \"com.cinnober.gradle.semver-git\" version \"2.2.0\" apply false\n    }\n    // optionally: ext.nextVersion = \"major\", \"minor\" (default), \"patch\" or e.g. \"3.0.0-rc2\"\n    // optionally: ext.snapshotSuffix = \"SNAPSHOT\" (default) or a pattern, e.g. \"\u003ccount\u003e.g\u003csha\u003e\u003cdirty\u003e-SNAPSHOT\"\n    // optionally: ext.dirtyMarker = \"-dirty\" (default) replaces \u003cdirty\u003e in snapshotSuffix\n    // optionally: ext.gitDescribeArgs = '--match *[0-9].[0-9]*.[0-9]*' (default) or other arguments for git describe.\n    // optionally: ext.semverPrefix = 'v' if your tags are named like v3.0.0\n    apply plugin: 'com.cinnober.gradle.semver-git'\n    \nNote: Use `apply false` combined with a manual apply if you want to change `nextVersion` and `snapshotSuffix`.\n\nThen everything should just work. To create a release, create an\nannotated git tag, e.g.:\n\n    git tag -a 1.0.0 -m \"New release\"\n    git push --tags\n\nWhen standing on an annotated tag commit, then version is simply the\nsame as the tag (1.0.0 in this example).  After a few commits `git\ndescribe` will show something like `1.0.0-5-g5242341` in which case\nthe version is the snapshot of the next version. In this example the\nnext version is minor, and the version will be `1.1.0-SNAPSHOT`.\n\nThe snapshot suffix pattern can contain `\u003ccount\u003e` and `\u003csha\u003e` which\nwill be replaced with the commit count (`5`) and the commit sha\n(`5242341`) respectively.\nFor example the snapshot suffix `\u003ccount\u003e.g\u003csha\u003e` will generate the\nversion `1.1.0-5.g5242341`, i.e. a non-snapshot pre-release.\nFor example the snapshot suffix pattern is `\u003ccount\u003e.g\u003csha\u003e-SNAPSHOT`\nwhich will generate the version `1.1.0-5.g5242341-SNAPSHOT`, which is\na unique snapshot version.\n\n### Release ###\n\nVersions are stored as annotated tags in git. [Semantic versioning](http://semver.org) is used.\n\nTo create a new release, e.g. 1.2.3:\n\n    git tag -a 1.2.3 -m \"New release\"\n    git push --tags\n\nIf changes are made after version 1.2.3 then the version number be '1.3.0-SNAPSHOT' (default a minor change).\n\nTo upload the archives to the Maven Central (through the OSSRH), run:\n\n    gradle clean build uploadArchives\n\nTo upload the plugin to the Gradle Plugin Portal, run:\n\n    gradle clean build publishPlugins\n\nNote that credentials are required for uploads. They should be placed in e.g. your\n~/.gradle/gradle.properties for `uploadArchives`.\nSee [gradle.properties](gradle.properties) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasdaq%2Fsemver-git","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnasdaq%2Fsemver-git","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasdaq%2Fsemver-git/lists"}