1.0.0 • Published 10 years ago

gulp-gitshasuffix v1.0.0

Weekly downloads
301
License
-
Repository
github
Last release
10 years ago

gulp-gitshasuffix

NPM version Build Status Dependency Status

gitshasuffix plugin for gulp

Usage

A plugin for Gulp to suffix files with latest commit sha.

E.g. Use instead of having timestamps on compiled files to avoid caching (versioning).

Whereas gulp-rev sets a hash based on content, this uses the sha hash from the latest git commit.

First, install gulp-gitshasuffix as a development dependency:

npm install --save-dev gulp-gitshasuffix

Then, add it to your gulpfile.js:

var gitshasuffix = require("gulp-gitshasuffix");

var files = gulp.src("./src/*.ext")
	.pipe(gitshasuffix({
    length: 6,
    separator: "-"
  }))

files.on('data', function (file){
  console.log("Modified file:", file);
});

Full usage example:

var gitshasuffix = require("gulp-gitshasuffix");

gulp.task('moveFiles'. function () {
  gulp.src("./src/*.ext")
     .pipe(gitshasuffix())
     .pipe(gulp.dest('./'));
});

API

gitshasuffix(options)

options.length

Type: Integer
Default: 6

Length of the sha to show.

options.separator

Type: String
Default: "-"

Separator before the suffix.

options.folder

Type: Boolean
Default: "false"

If the sha-substring should be as a folder instead of suffix. E.g.

New path:  /Code/gulp-gitshasuffix/test/fixtures/c03b75/a.txt

Examples

To see all examples run from root:

$ gulp --gulpfile examples/gulpfile.js --tasks
[gulp] Using file /Users/example/gulp-gitshasuffix/examples/gulpfile.js
[gulp] Working directory changed to /Users/example/gulp-gitshasuffix/examples
[gulp] Tasks for /Users/example/gulp-gitshasuffix/examples/gulpfile.js
[gulp] ├── default
[gulp] ├── folder
[gulp] └── folderPrefix

Run example:

$ gulp --gulpfile examples/gulpfile.js
[gulp] Using file /Users/example/gulp-gitshasuffix/examples/gulpfile.js
[gulp] Working directory changed to /Users/example/gulp-gitshasuffix/examples
[gulp] Running 'default'...
[gulp] Finished 'default' in 4.43 ms
New path:  /Users/example/gulp-gitshasuffix/test/fixtures/a-eaa51c.txt
New path:  /Users/example/gulp-gitshasuffix/test/fixtures/b-eaa51c.txt
New path:  /Users/example/gulp-gitshasuffix/test/fixtures/c-eaa51c.txt

Changelog

0.2.0:

  • Adds possibility to have sha as subfolder instead of suffix

0.1.0:

  • Changes to using options object instead of two parameters on input.

0.0.4:

  • No longer throws unjust error on streamed contents.

License

MIT License

1.0.0

10 years ago

0.2.0

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago

0.0.3

11 years ago

0.0.2

11 years ago

0.0.1

11 years ago

0.0.0-1

11 years ago