{"id":13990196,"url":"https://github.com/alexfu/androidautoversion","last_synced_at":"2026-04-04T13:38:39.447Z","repository":{"id":69908981,"uuid":"52478513","full_name":"alexfu/androidautoversion","owner":"alexfu","description":"An automatic versioning system for your Android apps","archived":false,"fork":false,"pushed_at":"2020-07-27T08:00:20.000Z","size":143,"stargazers_count":99,"open_issues_count":2,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-07-22T12:48:45.870Z","etag":null,"topics":["android","gradle-plugin","versioning"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","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/alexfu.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-02-24T22:19:02.000Z","updated_at":"2025-06-27T04:56:12.000Z","dependencies_parsed_at":"2023-03-30T15:36:39.491Z","dependency_job_id":null,"html_url":"https://github.com/alexfu/androidautoversion","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/alexfu/androidautoversion","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexfu%2Fandroidautoversion","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexfu%2Fandroidautoversion/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexfu%2Fandroidautoversion/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexfu%2Fandroidautoversion/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexfu","download_url":"https://codeload.github.com/alexfu/androidautoversion/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexfu%2Fandroidautoversion/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31402276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["android","gradle-plugin","versioning"],"created_at":"2024-08-09T13:02:26.826Z","updated_at":"2026-04-04T13:38:39.411Z","avatar_url":"https://github.com/alexfu.png","language":"Kotlin","funding_links":[],"categories":["Kotlin"],"sub_categories":[],"readme":"# AndroidAutoVersion\nThis is a Gradle plugin, for Android developers, that automates app versioning.\n\n```\nAndroidAutoVersion tasks\n------------------------\nbumpMajor - Increases major version by 1, zeroes out minor and patch version\nbumpMinor - Increases minor version by 1 and zeroes out patch version\nbumpPatch - Increases patch version by 1\nversionMajor - Executes bumpMajor and commits the changes to git\nversionMinor - Executes bumpMinor and commits the changes to git\nversionPatch - Executes bumpPatch and commits the changes to git\n```\n\n# Features\n\n- Update app version from CLI\n- Automatically commit version update to git \n- Automatically creates git tag\n\n# Requirements\n\n- Android Gradle Plugin 3.0+\n- Gradle 4.0+\n- Git\n\n# Installation\n\n## Step 1\nInclude the following in your top-level `build.gradle` file:\n\n```groovy\nbuildscript {\n  repositories {\n    maven { url 'https://jitpack.io' }\n  }\n  dependencies {\n    classpath 'com.github.alexfu:androidautoversion:$latest_version'\n  }\n}\n```\n\nChange `$latest_version` to the latest release version found [here](https://github.com/alexfu/androidautoversion/releases).\n\n## Step 2\nInclude the following in your app-level `build.gradle` file:\n\n```groovy\napply plugin: 'com.github.alexfu.androidautoversion'\n```\n\n## Step 3\nReplace `versionCode` and `versionName`:\n\n```groovy\n  defaultConfig {\n    versionName androidAutoVersion.versionName\n    versionCode androidAutoVersion.versionCode\n  }\n```\n\n# Usage\nWhen building your project for the first time with this plugin, you should notice a new file added to your project: `[module name]/version`. This is called a version file. You should check this file into version control (i.e. git) since this file will contain the current version information.\n\nIf you're adding AndroidAutoVersion to an already existing project you need to populate the version file's `major`, `minor`, `patch`, and `buildNumber` fields with what was in the `versionName` and `versionCode` fields.\n\nFor example, a project with the following `app/build.gradle` file:\n\n```groovy\n  defaultConfig {\n    versionName \"2.0.5\"\n    versionCode 9\n  }\n```\n\nShould update the version file to look like so:\n\n```json\n{\"major\":2,\"minor\":0,\"patch\":5,\"buildNumber\":9}\n```\n\nEvery time you want to make a release, decide if it's a major, minor, or a patch. If you're not sure, check out the rules outlined [here](http://semver.org/) to make your decision. Then, once you've decided, run one of the following gradle tasks:\n\n- `./gradlew bumpPatch`\n- `./gradlew bumpMinor`\n- `./gradlew bumpMajor`\n\nRunning one of these will update the version, but it will be up to you to commit any changes to version control. \n\nIf you use `git` (which you should), the plugin also has tasks that will execute the corresponding bump task, commit the version update, and create the necessary version tag.\n\n- `./gradlew versionPatch`\n- `./gradlew versionMinor`\n- `./gradlew versionMajor`\n\n## Example\n\nSee this repo for an example / demo of this plugin: https://github.com/alexfu/androidautoversiondemo\n\n# Tips\n\n## Alpha/Beta\nIf you have alpha/beta versions of your app and want to signify that in your version, i.e. `1.2.3.alpha`, then you can use the `versionNameSuffix` property in your alpha/beta product flavors. For example:\n\n```gradle\nandroid {\n    productFlavors {\n        alpha {\n            versionNameSuffix \".alpha\"\n        }\n\n        beta {\n            versionNameSuffix \".beta\"\n        }\n    }\n}\n```\n\n## Automate release workflow\nBecause this plugin allows you to update your app version from the command line, you can completely automate your entire release workflow with a simple script.\n\n```bash\n$ ./gradlew clean versionPatch assembleRelease\n```\n\n# Migrating from v1\nIf you're updating this plugin from version 1, read the [migration guide](https://github.com/alexfu/androidautoversion/wiki/Migration-Guide).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexfu%2Fandroidautoversion","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexfu%2Fandroidautoversion","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexfu%2Fandroidautoversion/lists"}