Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
AJ ONeal
committed
Jul 26, 2012
1 parent
77b9c31
commit 3ce4059
Showing
13 changed files
with
156 additions
and
135 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
[submodule "fs-extra"] | ||
path = fs-extra | ||
url = git://github.com/jprichardson/node-fs-extra.git | ||
[submodule "wrench"] | ||
path = wrench | ||
url = git://github.com/ryanmcgrath/wrench-js.git |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,138 +1,13 @@ | ||
fs.extra | ||
=== | ||
A temporary holding space for fs-extra, fs.extra, wrench, and utile until we figure out how to merge them together. | ||
|
||
Adds `copy`, `copyRecursive`, `mkdirp`, `move`, `walk`, and `rmrf` to Node.JS' `fs`. | ||
Included methods: | ||
|
||
Install with `npm install -S fs.extra` | ||
* rmraf | ||
* mkdirp | ||
* walk | ||
* copy (recursive) | ||
* delete (recursive) | ||
* remove (recursive) | ||
* exists (shim) | ||
|
||
// this will have all of the normal fs methods | ||
var fs = require('fs.extra'); | ||
|
||
fs.copy | ||
=== | ||
|
||
Creates an `fs.readStream` and `fs.writeStream` and uses `util.pump` to efficiently copy. | ||
|
||
fs.copy('foo.txt', 'bar.txt', function (err) { | ||
if (err) { | ||
throw err; | ||
} | ||
|
||
console.log("Copied 'foo.txt' to 'bar.txt'); | ||
}); | ||
|
||
fs.copyRecursive | ||
=== | ||
|
||
Basically a local `rsync`, uses `fs.copy` to recursively copy files and folders (with correct permissions). | ||
|
||
fs.copyRecursive('./foo', './bar', function (err) { | ||
if (err) { | ||
throw err; | ||
} | ||
|
||
console.log("Copied './foo' to './bar'); | ||
}); | ||
|
||
fs.mkdirRecursive | ||
=== | ||
|
||
Included from <https://github.com/substack/node-mkdirp> | ||
|
||
// fs.mkdirp(path, mode=(0777 & (~process.umask())), cb); | ||
|
||
fs.mkdirp('/tmp/foo/bar/baz', function (err) { | ||
if (err) { | ||
console.error(err); | ||
} else { | ||
console.log('pow!') | ||
} | ||
}); | ||
|
||
fs.mkdirRecursiveSync | ||
=== | ||
|
||
Included from <https://github.com/substack/node-mkdirp> | ||
|
||
// fs.mkdirpSync(path, mode=(0777 & (~process.umask()))); | ||
|
||
try { | ||
fs.mkdirpSync('/tmp/foo/bar/baz'); | ||
} catch(e) { | ||
throw e; | ||
} | ||
|
||
fs.move | ||
=== | ||
|
||
Attempts `fs.rename`, then tries `fs.copy` + `fs.unlink` before failing. | ||
|
||
fs.move('foo.txt', 'bar.txt', function (err) { | ||
if (err) { | ||
throw err; | ||
} | ||
|
||
console.log("Moved 'foo.txt' to 'bar.txt'); | ||
}); | ||
|
||
fs.rmRecursive | ||
=== | ||
|
||
Included from <https://github.com/jprichardson/node-fs-extra> | ||
|
||
Recursively deletes a directory (like `rm -rf`) | ||
|
||
// fs.rmrf(dir, callback); | ||
|
||
fs.rmrf('/choose/me/carefully/', function (err) { | ||
if (err) { | ||
console.error(err); | ||
} | ||
}); | ||
|
||
fs.rmRecursiveSync | ||
=== | ||
|
||
Included from <https://github.com/jprichardson/node-fs-extra> | ||
|
||
Recursively deletes a directory (like `rm -rf`) | ||
|
||
// fs.rmrfSync(dir); | ||
|
||
fs.rmrfSync('/choose/me/carefully/'); | ||
|
||
fs.walk | ||
=== | ||
|
||
See <https://github.com/coolaj86/node-walk> | ||
|
||
var walker = fs.walk(dir) | ||
; | ||
|
||
// file, files, directory, directories | ||
walker.on("file", function (root, stat, next) { | ||
var filepath = path.join(root, stat.name) | ||
; | ||
|
||
console.log(filepath); | ||
}); | ||
|
||
Aliases and Backwards Compatibility | ||
=== | ||
|
||
For the sake of backwards compatability, you can call the recursive functions with their names as such | ||
|
||
fs.remove <- fs.rmRecursive <- fs.rmrf | ||
fs.removeSync <- fs.rmRecursiveSync <- fs.rmrfSync | ||
fs.mkdirRecursive <- fs.mkdirp | ||
fs.mkdirRecursiveSync <- fs.mkdirpSync | ||
|
||
License | ||
=== | ||
|
||
Copyright AJ ONeal 2011-2012 | ||
|
||
This project is available under the MIT and Apache v2 licenses. | ||
|
||
* http://www.opensource.org/licenses/mit-license.php | ||
* http://www.apache.org/licenses/LICENSE-2.0.html | ||
Some of these are duplicated, we'll figure it out eventually. |
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,138 @@ | ||
fs.extra | ||
=== | ||
|
||
Adds `copy`, `copyRecursive`, `mkdirp`, `move`, `walk`, and `rmrf` to Node.JS' `fs`. | ||
|
||
Install with `npm install -S fs.extra` | ||
|
||
// this will have all of the normal fs methods | ||
var fs = require('fs.extra'); | ||
|
||
fs.copy | ||
=== | ||
|
||
Creates an `fs.readStream` and `fs.writeStream` and uses `util.pump` to efficiently copy. | ||
|
||
fs.copy('foo.txt', 'bar.txt', function (err) { | ||
if (err) { | ||
throw err; | ||
} | ||
|
||
console.log("Copied 'foo.txt' to 'bar.txt'); | ||
}); | ||
|
||
fs.copyRecursive | ||
=== | ||
|
||
Basically a local `rsync`, uses `fs.copy` to recursively copy files and folders (with correct permissions). | ||
|
||
fs.copyRecursive('./foo', './bar', function (err) { | ||
if (err) { | ||
throw err; | ||
} | ||
|
||
console.log("Copied './foo' to './bar'); | ||
}); | ||
|
||
fs.mkdirRecursive | ||
=== | ||
|
||
Included from <https://github.com/substack/node-mkdirp> | ||
|
||
// fs.mkdirp(path, mode=(0777 & (~process.umask())), cb); | ||
|
||
fs.mkdirp('/tmp/foo/bar/baz', function (err) { | ||
if (err) { | ||
console.error(err); | ||
} else { | ||
console.log('pow!') | ||
} | ||
}); | ||
|
||
fs.mkdirRecursiveSync | ||
=== | ||
|
||
Included from <https://github.com/substack/node-mkdirp> | ||
|
||
// fs.mkdirpSync(path, mode=(0777 & (~process.umask()))); | ||
|
||
try { | ||
fs.mkdirpSync('/tmp/foo/bar/baz'); | ||
} catch(e) { | ||
throw e; | ||
} | ||
|
||
fs.move | ||
=== | ||
|
||
Attempts `fs.rename`, then tries `fs.copy` + `fs.unlink` before failing. | ||
|
||
fs.move('foo.txt', 'bar.txt', function (err) { | ||
if (err) { | ||
throw err; | ||
} | ||
|
||
console.log("Moved 'foo.txt' to 'bar.txt'); | ||
}); | ||
|
||
fs.rmRecursive | ||
=== | ||
|
||
Included from <https://github.com/jprichardson/node-fs-extra> | ||
|
||
Recursively deletes a directory (like `rm -rf`) | ||
|
||
// fs.rmrf(dir, callback); | ||
|
||
fs.rmrf('/choose/me/carefully/', function (err) { | ||
if (err) { | ||
console.error(err); | ||
} | ||
}); | ||
|
||
fs.rmRecursiveSync | ||
=== | ||
|
||
Included from <https://github.com/jprichardson/node-fs-extra> | ||
|
||
Recursively deletes a directory (like `rm -rf`) | ||
|
||
// fs.rmrfSync(dir); | ||
|
||
fs.rmrfSync('/choose/me/carefully/'); | ||
|
||
fs.walk | ||
=== | ||
|
||
See <https://github.com/coolaj86/node-walk> | ||
|
||
var walker = fs.walk(dir) | ||
; | ||
|
||
// file, files, directory, directories | ||
walker.on("file", function (root, stat, next) { | ||
var filepath = path.join(root, stat.name) | ||
; | ||
|
||
console.log(filepath); | ||
}); | ||
|
||
Aliases and Backwards Compatibility | ||
=== | ||
|
||
For the sake of backwards compatability, you can call the recursive functions with their names as such | ||
|
||
fs.remove <- fs.rmRecursive <- fs.rmrf | ||
fs.removeSync <- fs.rmRecursiveSync <- fs.rmrfSync | ||
fs.mkdirRecursive <- fs.mkdirp | ||
fs.mkdirRecursiveSync <- fs.mkdirpSync | ||
|
||
License | ||
=== | ||
|
||
Copyright AJ ONeal 2011-2012 | ||
|
||
This project is available under the MIT and Apache v2 licenses. | ||
|
||
* http://www.opensource.org/licenses/mit-license.php | ||
* http://www.apache.org/licenses/LICENSE-2.0.html |
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.