mirror of
https://github.com/titanscouting/tra-analysis.git
synced 2025-02-20 16:35:48 +00:00
75 lines
2.4 KiB
Markdown
75 lines
2.4 KiB
Markdown
|
# gentle-fs [](https://npm.im/gentle-fs) [](https://npm.im/gentle-fs) [](https://travis-ci.org/npm/gentle-fs) [](https://ci.appveyor.com/project/npm/gentle-fs) [](https://coveralls.io/github/npm/gentle-fs?branch=latest)
|
||
|
|
||
|
[`gentle-fs`](https://github.com/npm/gentle-fs) is a standalone library for
|
||
|
"gently" remove or link directories.
|
||
|
|
||
|
## Install
|
||
|
|
||
|
`$ npm install gentle-fs`
|
||
|
|
||
|
## Table of Contents
|
||
|
|
||
|
* [Example](#example)
|
||
|
* [Features](#features)
|
||
|
* [Contributing](#contributing)
|
||
|
* [API](#api)
|
||
|
* [`rm`](#rm)
|
||
|
* [`link`](#link)
|
||
|
* [`linkIfExists`](#linkIfExists)
|
||
|
|
||
|
### Example
|
||
|
|
||
|
```javascript
|
||
|
// todo
|
||
|
```
|
||
|
|
||
|
### Features
|
||
|
|
||
|
* Performs filesystem operations "gently". Please see details in the API specs below
|
||
|
for a more precise definition of "gently".
|
||
|
|
||
|
### Contributing
|
||
|
|
||
|
The npm team enthusiastically welcomes contributions and project participation!
|
||
|
There's a bunch of things you can do if you want to contribute! The [Contributor
|
||
|
Guide](CONTRIBUTING.md) has all the information you need for everything from
|
||
|
reporting bugs to contributing entire new features. Please don't hesitate to
|
||
|
jump in if you'd like to, or even ask us questions if something isn't clear.
|
||
|
|
||
|
### API
|
||
|
|
||
|
#### <a name="rm"></a> `> rm(target, opts, cb)`
|
||
|
|
||
|
Will delete all directories between `target` and `opts.base`, as long as they are empty.
|
||
|
That is, if `target` is `/a/b/c/d/e` and `base` is `/a/b`, but `/a/b/c` has other files
|
||
|
besides the `d` directory inside of it, `/a/b/c` will remain.
|
||
|
|
||
|
##### Example
|
||
|
|
||
|
```javascript
|
||
|
rm(target, opts, cb)
|
||
|
```
|
||
|
|
||
|
#### <a name="link"></a> `> link(from, to, opts, cb)`
|
||
|
|
||
|
If `from` is a real directory, and `from` is not the same directory as `to`, will
|
||
|
symlink `from` to `to`, while also gently [`rm`](#rm)ing the `to` directory,
|
||
|
and then call the callback. Otherwise, will call callback with an `Error`.
|
||
|
|
||
|
##### Example
|
||
|
|
||
|
```javascript
|
||
|
link(from, to, opts, cb)
|
||
|
```
|
||
|
|
||
|
#### <a name="linkIfExists"></a> `> linkIfExists(from, to, opts, cb)`
|
||
|
|
||
|
Performs the same operation as [`link`](#link), except does nothing when `from` is the
|
||
|
same as `to`, and calls the callback.
|
||
|
|
||
|
##### Example
|
||
|
|
||
|
```javascript
|
||
|
linkIfExists(from, to, opts, cb)
|
||
|
```
|