Grunt plugin for automating resource versioning based on the MD5 hash of referenced files (works on CSS, HTML, SOYs)
Getting Started
Install this grunt plugin next to your project's gruntfile with: npm install grunt-rev-md5
Then add this line to your project's grunt.js
gruntfile:
grunt.loadNpmTasks('grunt-rev-md5');
Then specify your config:
grunt.initConfig({
revmd5: {
dist: {
src: ['./static/*.html', './static/*.css', './static/*.soy'],
dest: './dist/static/',
relativePath: './',
safe: true
}
}
});
Notes about path location
There are two types of path resolution that this task do: relative and absolute.
- Relative. Imagine that you're referencing the file
image1.png
from styles.css
which is
stored on /static/home/css
in this way:
background: url('../image1.png')
In this case our grunt task will go to css path and combine its path (the css) with the relative
path resulting in `/static/home/image1.png'. This looks as the most comprehensive behavior in
this case.
- Absolute. Imagine that you're referencing the file
image2.png
from styles.css
and you've
set the relativePath
to be ./public
background: url('/static/images/image2.png')
In this case our grunt task will go to the relativePath
and combine it with the resource path
resulting in `./public/static/images/image2.png'.
NOTE: We consider paths starting with . (or ..) as relative, and with / absolute. We're using
the same aproach as the *NIX file-system.
Release History