sails.js资产版本控制
我正在使用sails.js资产链接器。
我正在通过在其中附加一个资产版本来版本化我的资产,如下所示:
assetfile.js?=<%= assetVersion %>
不幸的是,这是行不通的,因为js文件名正在被链接器取代!
sails.js链接器是否支持这个工作? 还是我自己离开了咕噜文件?
如果你从一个git仓库托pipe,你可以使用git commit sha来识别版本。
我在其中一个项目中使用了这种方法,它包括将以下内容作为rename.js
添加到tasks/config
var git = require('git-rev') module.exports = function(grunt) { git.short(function(hash) { var files = { '.tmp/public/min/production.' + hash + '.min.js': '.tmp/public/min/production.min.js', '.tmp/public/min/production.' + hash + '.min.css': '.tmp/public/min/production.min.css' } grunt.config.set('rename', { dist: { files: files } }) }) grunt.loadNpmTasks('grunt-rename') };
然后在链接器任务之前的tasks/register/prod.js
添加重命名任务。
基于@ CaseyWebb的解决scheme,我们扩展了我们的sails应用程序,以解决带有时间戳的版本问题。 这里还有一个非常详细的博客条目: http : //naya.com.np/@developer.naya/post/391862c0520b5b5632e99e812749a85b