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