cristianoliveira/java-checkstyle

View on GitHub
README.md

Summary

Maintainability
Test Coverage
## Java - Pre-Commit Checkstyle
[![Gem Version](https://badge.fury.io/rb/java-checkstyle.svg)](https://badge.fury.io/rb/java-checkstyle)
[![Build Status](https://travis-ci.org/cristianoliveira/java-checkstyle.svg?branch=master)](https://travis-ci.org/cristianoliveira/java-checkstyle)
[![Code Climate](https://codeclimate.com/github/cristianoliveira/java-checkstyle/badges/gpa.svg)](https://codeclimate.com/github/cristianoliveira/java-checkstyle)
[![Test Coverage](https://codeclimate.com/github/cristianoliveira/java-checkstyle/badges/coverage.svg)](https://codeclimate.com/github/cristianoliveira/java-checkstyle/coverage)

Useful git pre-commit hook for linting Java code.

It uses as default [The Google Style Guide](https://google.github.io/styleguide/javaguide.html)
and the famous [Checkstyle](http://checkstyle.sourceforge.net/) linter as a plugin for [pre-commit](https://github.com/jish/pre-commit).

## Demo

![My awesome change has been catch. Oh boy!](https://raw.githubusercontent.com/cristianoliveira/java-checkstyle/master/readmedemo.png)
[Don't you know who is Leeroy Jenkins?](https://www.youtube.com/watch?v=mLyOj_QD4a4)

## Installation

First install the gems.
#### Pre-Commit Checkstyle

    gem install pre-commit

#### Java Checkstyle Plugin

    gem install java-checkstyle

##### (optional) If you use RVM
Take a look here [Install with RVM](https://github.com/jish/pre-commit#rvm)

### Configuring
Use the pre-commit command to generate a stub pre-commit hook.
Inside folder of your git repo:

```bash
pre-commit install
```

It will create a .git/hooks/pre-commit script which will check your git config and run checks that are enabled.

#### Enabling checks

``` bash
pre-commit enable git checks checkstyle
```

### Result
Every time you try to commit some java code with style errors it will validate
for you ensuring that your code will be always awesome.

---
#### Detailed version to install.
Still don't work? Try the detailed version [here](https://github.com/cristianoliveira/java-checkstyle/blob/master/DETAILED_TUTORIAL.md)

---

## Checkstyle Guide

It uses as default [The Google Style Guide](https://google.github.io/styleguide/javaguide.html).

## Tests
Running tests with rspec

Make sure you have been executed:
```bash
bundle install
```
Then run:

```bash
rspec
```

## Contributing

1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request

#### Codeclimate
Before push, make sure you have been executed rubocop
``` bash
bundle exec rake ci
```

*Pull request should have Unit Tests*

## Authors:
 - Allen Madsen (Original Version 0.0.1)
 - Alex Rocha
 - Cristian Oliveira