1. ignore-walk
Nested/recursive `.gitignore`/`.npmignore` parsing and filtering.
ignore-walk
Package: ignore-walk
Created by: npm
Last modified: Wed, 29 Nov 2023 17:46:17 GMT
Version: 6.0.4
License: ISC
Downloads: 39,231,511
Repository: https://github.com/npm/ignore-walk

Install

npm install ignore-walk
yarn add ignore-walk

ignore-walk

Nested/recursive .gitignore/.npmignore parsing and filtering.

Walk a directory creating a list of entries, parsing any .ignore
files met along the way to exclude files.

USAGE

 const walk = require('ignore-walk')

// All options are optional, defaults provided.

// this function returns a promise, but you can also pass a cb
// if you like that approach better.
walk({
  path: '...', // root dir to start in. defaults to process.cwd()
  ignoreFiles: [ '.gitignore' ], // list of filenames. defaults to ['.ignore']
  includeEmpty: true|false, // true to include empty dirs, default false
  follow: true|false // true to follow symlink dirs, default false
}, callback)

// to walk synchronously, do it this way:
const result = walk.sync({ path: '/wow/such/filepath' })

If you want to get at the underlying classes, they're at walk.Walker
and walk.WalkerSync.

OPTIONS

  • path The path to start in. Defaults to process.cwd()

  • ignoreFiles Filenames to treat as ignore files. The default is
    ['.ignore']. (This is where you'd put .gitignore or
    .npmignore or whatever.) If multiple ignore files are in a
    directory, then rules from each are applied in the order that the
    files are listed.

  • includeEmpty Set to true to include empty directories, assuming
    they are not excluded by any of the ignore rules. If not set, then
    this follows the standard git behavior of not including
    directories that are empty.

    Note: this will cause an empty directory to be included if it
    would contain an included entry, even if it would have otherwise
    been excluded itself.

    For example, given the rules * (ignore everything) and !/a/b/c
    (re-include the entry at /a/b/c), the directory /a/b will be
    included if it is empty.

  • follow Set to true to treat symbolically linked directories as
    directories, recursing into them. There is no handling for nested
    symlinks, so ELOOP errors can occur in some cases when using this
    option. Defaults to false.

Dependencies

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code