Skip to content

Latest commit

 

History

History
64 lines (45 loc) · 1.72 KB

README.md

File metadata and controls

64 lines (45 loc) · 1.72 KB

git-exec-and-restage

npm Travis CI Codecov semantic-release

Safely amend Git commits after applying auto-fixing tools

git-exec-and-restage executes a command for you on a set of files. This command may modify the files (imagine a linter in auto-fix mode, like prettier --write or eslint --fix). If the files were fully staged before the command ran, the changes will be automatically added to the Git index; if they were partially changed the Git index will remain untouched.

Table of Contents

Install

npm install git-exec-and-restage

Usage

Manually e.g. with prettier:

git-exec-and-restage prettier --write -- file1.js file2.js

Automatically e.g. with lint-staged:

package.json

{
  "scripts": {
    "precommit": "lint-staged"
  },
  "lint-staged": {
    "*.js": ["git-exec-and-restage eslint --fix --"]
  }
}

Contribute

PRs welcome.

Acknowledgements

This package owes a great deal to Matthew Chase Whittemore's staged-git-files.

License

MIT © Moti Zilberman