gradle-git has been around since 2012 and has evolved quite a bit from the original release. In order to continue to evolve these features, this project is being broken up into multiple repositories. As such:
- gradle-git will no longer be enhanced
- gradle-git may make some fix releases, as issues are identified, presuming they don't break compatibility
feature | replacement | maturity | comments |
---|---|---|---|
org.ajoberstar.grgit |
grgit | stable | Grgit has been an independent project since 2013 and has been stable for quite a while. Version 2.0 removed some deprecated features, but otherwise is fully compatible with existing usage. It also integrates the org.ajoberstar.grgit plugin directly into the project. |
org.ajoberstar.github-pages |
gradle-git-publish | stable | org.ajoberstar.git-publish is a more robust version of the old plugin. It is functionally equivalent (or better), but does require porting configuration over as noted in the README. |
org.ajoberstar.release-* |
reckon | development | Reckon focuses solely on determining your project version (and assisting with tagging and pushing that tag). It will not pretend to be a full-featured release plugin. It also will not pretend to meet anyone's general version inference needs, instead providing an opinionated model of how to apply semantic versioning. There are still some details being worked out in how the algorithm will address some problems gradle-git had (such as parallel development). |
Git is immensely popular and being able to interact with it as part of a build process can be very valuable to provide a more powerful and consistent result.
gradle-git is a set of Gradle plugins:
org.ajoberstar.grgit
- provides aGrgit
instance, allowing interaction with the Git repository the Gradle project is contained inorg.ajoberstar.github-pages
- publishes files to thegh-pages
branch of a Github repositoryorg.ajoberstar.release-base
- general structure for inferring a project version and releasing itorg.ajoberstar.release-opinion
- opinionated defaults fororg.ajoberstar.release-base
See Grgit for details on the Git library used underneath, including configuration for authentication.
NOTE: gradle-git modules require Java 7 (or higher).
Please use the repo's issues for all questions and bug reports.
Non-breaking bug fixes are welcome via pull requests.
I am no longer accepting feature contributions. See the Project Status section above for details.
Thanks to all of the contributors.
Credit goes to Peter Ledbrook for the initial
idea for the org.ajoberstar.github-pages
plugin.
Thanks to Zafar Khaja for the very helpful java-semver library.