gitignore-to-glob

0.3.0 • Public • Published

gitignore-to-glob

Transforms .gitignore patterns to ones compatible with the glob package (used by Grunt & others)

Build Status Build status

Installation

To install the package and add it to your package.json, invoke:

npm install gitignore-to-glob --save-dev

Rationale

.gitignore uses a different format than the glob package used, among others, by Grunt. Sometimes it's desirable to exclude files excluded by .gitignore in a glob pattern so a transformation function is needed.

Usage

Once the package has been installed, it may be used via:

require('gitignore-to-glob')(pathToGitignore, dirsToCheck);

where pathToGitignore is '.gitignore' by default and dirsToCheck is an optional array of directories where we assume all files matched by the glob pattern exist. The parameter is optional but may be passed for performance reasons. The rationale is that .gitignore patterns not starting with / are treated as if a glob pattern started with **/ and that would be expensive as some directories like node_modules usually contain a lot of files so excluding them all manually would be slow.

Usage Examples

The most basic usage:

require('gitignore-to-glob')();

This will convert files from the main '.gitignore'.

require('gitignore-to-glob')('app/.gitignore', ['app', 'test']);

This will convert the 'app/.gitignore' file but will omit patterns outside directories app and test.

Supported Node.js versions

This project aims to support all Node.js LTS versions in the "active" phase (see LTS README for more details) as well as the latest stable Node.js.

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using npm test.

License

Copyright (c) 2014 Laboratorium EE. Licensed under the MIT license.

Readme

Keywords

Package Sidebar

Install

npm i gitignore-to-glob

Weekly Downloads

86,916

Version

0.3.0

License

MIT

Last publish

Collaborators

  • mgol