README.md in rfix-1.0.7 vs README.md in rfix-1.0.8.pre.108
- old
+ new
@@ -1,39 +1,92 @@
-# Rfix [![Build Status](https://travis-ci.org/oleander/rfix-rb.svg?branch=master)](https://travis-ci.org/oleander/rfix-rb) ![Gem](https://img.shields.io/gem/dt/rfix)
+# :bug: Rfix [![Build Status](https://travis-ci.org/oleander/rfix-rb.svg?branch=master)](https://travis-ci.org/oleander/rfix-rb) [![Gem](https://img.shields.io/gem/dt/rfix)](https://rubygems.org/gems/rfix)
-RuboCop CLI that only complains about your latest changes
+RuboCop CLI that only lints and auto-fixes code you committed by utilizing `git-log` and `git-diff`. Rfix CLI makes it possible to lint (`rfix lint`) and auto-fix (`rfix local|origin|branch`) code changes since a certain point in history. You can auto-fix code committed since creating the current branch (`rfix origin`) or since pushing to upstream (`rfix local`).
+Includes a RuboCop formatter with syntax highlighting and build in hyperlinks for offense documentation.
+
+Holds the same CLI arguments as RuboCop. Run `rfix --help` for a complete list or `rfix` for supported commands. Here are a few examples to get you started:
+
+- `rfix local` Auto-fixes commits not yet pushed to upstream
+- `rfix origin` Auto-fixes commits between `HEAD` and origin branch
+- `rfix lint` Lints commits and untracked files not yet pushed to upstream
+
+![Printscreen](resources/ps.png)
+
## Installation
``` shell
-$ gem install rfix
-$ rfix <local|branch|origin|info|all> [--dry] [--help]
+$ gem install rfix [--pre]
```
+## Help
+
+``` shell
+$ rfix branch "branch" # Fix changes made between HEAD and <branch>
+$ rfix origin # Fix changes made between HEAD and origin branch
+$ rfix local # Fix changes not yet pushed to upstream branch
+$ rfix info # Display runtime dependencies and their versions
+$ rfix all # Fix all files in this repository (not recommended)
+$ rfix lint # Shortcut for 'rfix local --dry --untracked'
+$ rfix # Displays this list of supported commands
+```
+
+### Arguments
+
+- `--dry` Turns off RuboCops autofix feature (read-only mode)
+- `--help` Displays RubyCops and Rfix supported arguments
+- `--list-files` List all files being passed to RubyCop
+- `--untracked` Include files not tracked by git
+- `--config` Configuration file, defaults to `.rubocop.yml`
+
## Development
-- `git clone https://github.com/oleander/rfix-rb`
-- `cd rfix-rb`
-- `bundle install`
-- `bundle exec rake setup`
-- `bundle exec rake local`
-- `bundle exec rake spec`
+### Setup
+1. Download repository
+ - `$ git clone https://github.com/oleander/rfix-rb`
+ - `$ cd rfix-rb`
+2. Downloads fixtures and run time dependencies
+ - `$ make dir fetch`
+ - `$ bundle install`
+
+### Install from repository
+
+``` shell
+$ bundle exec rake install
+```
+
+### Run tests
+
+``` shell
+$ bundle exec rake spec
+```
+
## Overcommit
+Add the following to your `.overcommit.yml`, then run `overcommit --install` and `overcommit --sign pre-commit`. Lints commits not yet pushed to your upstream branch whenever `git commit` is ran.
+
``` yaml
PreCommit:
RFix:
enabled: true
- command: ["rfix", "local", "--untracked", "--dry"]
- description: "Lint changes since last push using RuboCop"
+ command: ["rfix", "lint"]
+ description: "Lint unchanged commits using RuboCop"
parallelize: true
```
+### From scratch
+
+1. `gem install overcommit rfix`
+2. `curl https://raw.githubusercontent.com/oleander/rfix-rb/master/resouces/overcommit.yml > .overcommit.yml`
+3. `overcommit --install`
+4. `overcommit --sign pre-commit`
+
+Run `overcommit --run` to test the new hook.
+
## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/oleander/rfix.
-
## License
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).