Coder Social home page Coder Social logo

tobit800 / maven-git-commit-id-plugin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from git-commit-id/git-commit-id-maven-plugin

0.0 0.0 0.0 2.72 MB

Maven plugin which includes build-time git repository information into an POJO / *.properties). Make your apps tell you which version exactly they were built from! Priceless in large distributed deployments... :-)

Home Page: http://kto.so

License: GNU Lesser General Public License v3.0

Java 65.15% Shell 34.82% Roff 0.03%

maven-git-commit-id-plugin's Introduction

maven git commit id plugin

Join the chat at https://gitter.im/git-commit-id/maven-git-commit-id-plugin Build Status Coverage Status Maven Central

git-commit-id-plugin is a plugin quite similar to https://fisheye.codehaus.org/browse/mojo/tags/buildnumber-maven-plugin-1.0-beta-4 for example but as buildnumber at the time when I started this plugin only supported CVS and SVN, something had to be done. I had to quickly develop an git version of such a plugin. For those who don't know the previous plugins, it basically helps you to help you with the following tasks and answer related questions

  • Which version had the bug? Is that deployed already?
  • Make your distributed deployment aware of versions
  • Validate if properties are set as expected

If you are more interested in the different use-cases, feel free to read about them in more detail.

Quicklinks (all relevant documentation)

Getting the plugin

The plugin is available from Maven Central (see here), so you don't have to configure any additional repositories to use this plugin.

A detailed description of using the plugin is available in the Using the plugin section. All you need to do in the basic setup is to include that plugin definition in your pom.xml. For more advanced users we also prepared a guide to provide a brief overview of the moreadvanced configurations... read on!

Versions

The current version is 2.2.6 (changelist).

You can check the available versions by visiting search.maven.org, though using the newest is obviously the best choice.

Plugin compatibility with Java

Plugin Version Required Java Version
2.1.X Java 1.6
2.2.X Java 1.7
3.0.0 Java 1.8

Plugin compatibility with maven

Even though this plugin tries to be compatible with every Maven version there are some known limitations with specific versions. Here is a list that tries to outline the current state of the art:

Maven Version Plugin Version Notes
Maven 3.1.0 (and below) up to 2.1.13
Maven 3.1.1 (and onwards) any
Maven 3.0 (and onwards) from 2.2.4 With Maven 3.0.X SLF4J fails to load class "org.slf4j.impl.StaticLoggerBinder".
Maven 3.3.1 any plugin version 2.1.14 doesn't work
Maven 3.3.3 any plugin version 2.1.14 doesn't work

Starting with Maven 3.1.1 any plugin version is currently compatible. Only known exception is for Maven 3.3.1 and Maven 3.3.3 where the plugin version 2.1.14 is not working properly.

Getting SNAPSHOT versions of the plugin

If you really want to use snapshots, here's the repository they are deployed to. But I highly recommend using only stable versions, from maven central... :-)

<pluginRepositories>
    <pluginRepository>
        <id>sonatype-snapshots</id>
        <name>Sonatype Snapshots</name>
        <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
    </pluginRepository>
</pluginRepositories>

If you just would like to see what the plugin can do, you can clone the repository and run

mvn clean install -Dmaven.test.skip=true && mvn clean package -Pdemo -Dmaven.test.skip=true

Maintainers

This project is currently maintained thanks to: @ktoso (founder), @TheSnoozer

Notable contributions

I'd like to give a big thanks to some of these folks, for their suggestions and / or pull requests that helped make this plugin as popular as it is today:

  • @mostr - for bugfixes and a framework to do integration testing,
  • @fredcooke - for consistent feedback and suggestions,
  • @MrOnion - for a small yet fast bugfix,
  • @cardil and @TheSnoozer - for helping with getting the native git support shipped,
  • all the other contributors (as of writing 50) which can be on the contributors tab - thanks guys,
  • ... many others - thank you for your contributions,
  • ... you! - for using the plugin :-)

Notable happy users

  • neo4j – graph database
  • foundationdb – another open source database
  • Spring Boot – yes, the upstream Spring project is using us
  • Akamai, Sabre, EasyDITA, and many many others,
  • many others I don't know of.

License

GNU LGPL v3

I'm releasing this plugin under the **GNU Lesser General Public License 3.0**.

You're free to use it as you wish, the full license text is attached in the LICENSE file.

The best way to ask for features / improvements is via the Issues section on github - it's better than email because I won't loose when I have a "million emails inbox" day, and maybe someone else has some idea or would like to upvote your issue.

That's all folks! Happy hacking!

maven-git-commit-id-plugin's People

Contributors

abatkin avatar autayeu avatar bitdeli-chef avatar bsodzik avatar candrews avatar cbuschka avatar coladict avatar cousnouf avatar deadmoose avatar deisner avatar f-lopes avatar frankbregulla1111 avatar fredcooke avatar georglundesgaard avatar hazendaz avatar hgschmie avatar j256 avatar jonevn avatar katox avatar ktoso avatar maiergre avatar mkordas avatar mkrivan avatar mostr avatar mronion avatar nielsbasjes avatar secustor avatar sergey-podolsky avatar thesnoozer avatar vlatombe avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.