gulp-git-status-filter v1.0.8
gulp-git-status-filter
Filter files by git status
Getting started
ES2015, NODE 5+
To install gulp-git-status-filter from npm, run:
npm install gulp-git-status-filter --saveUse the library:
const gulpGitStatusFilter = require('gulp-git-status-filter');
const filter = gulpGitStatusFilter(options);const gulpGitStatusFilter = require('gulp-git-status-filter');
const filterOnlyNewUnTrackedUnStagedFiles = gulpGitStatusFilter({ type: [ 'N' ] });
gulp.task('lint', () => {
return gulp.src('**/*')
.pipe(filterOnlyNewUnTrackedUnStagedFiles)
.pipe(gulpESLint())
.pipe(filterOnlyNewUnTrackedUnStagedFiles.restore)
.pipe(doSomething())
});
// do something helpfulOptions
options.enabled
Type Boolean, Default true
If options.enabled eq false - filter disabled, all files will pass through
options.repoPath
Type String, Default undefined
Absolute path to repository
options.passthough
Type Boolean, Default true
When set to true filtered files are restored with a PassThrough stream, otherwise, when set to false, filtered files are restored as a Readable stream.
When the stream is Readable it ends by itself, but when PassThrough, you are responsible of ending the stream.
options.restore
Type Boolean, Default false
Restore filtered files
options.type
Type Array|String, Default [ 'A', 'M', 'D', 'AM', 'MM', 'AD', 'MD', 'N' ]
Each file has the following properties:
| type | index | working tree |
|---|---|---|
A | added | - |
M | modified | - |
D | deleted | - |
AM | added | modified |
MM | modified | modified |
AD | staged | deleted |
MD | modified | deleted |
N - new files without tracking and staging
options.tracked
Type Array|Boolean, Default [ true, false ]
options.staged
Type Array|Boolean, Default [ true, false ]
Enjoy!
Support
If you have any problems, you cached a bug, or you have any suggestion - please find an existing issue or create new
Contributing
If you want to develop this library do not be shy - Do that! How to contribute open-source projects