Changeset 517 for Dev/trunk/grunt-tasks/svn-ignore.js
- Timestamp:
- 03/14/14 16:11:32 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Dev/trunk/grunt-tasks/svn-ignore.js
r474 r517 6 6 module.exports = function(grunt) { 7 7 8 grunt.registerMultiTask('svn-ignore', 9 "Makes sure the specified source files are ignored in Subversion.", 10 function(){ 11 var done = this.async(); 8 grunt.registerMultiTask( 9 'svn-ignore', 10 "Makes sure the specified source files are ignored in Subversion.", 11 function(){ 12 var done = this.async(); 12 13 13 var tasks = _.chain(this.filesSrc)14 .groupBy(path.dirname)15 .map(function(files, dir) {16 return _.partial(updateSvnIgnore,17 dir,18 _.chain(files)19 .map(path.basename)20 .sortBy(_.identity)21 .value());22 })23 .value();14 var tasks = _.chain(this.filesSrc) 15 .groupBy(path.dirname) 16 .map(function(files, dir) { 17 return _.partial(updateSvnIgnore, 18 dir, 19 _.chain(files) 20 .map(path.basename) 21 .sortBy(_.identity) 22 .value()); 23 }) 24 .value(); 24 25 25 grunt.util.async.series(tasks,function(error, results){ 26 done(error); 26 grunt.util.async.series(tasks,function(error, results){ 27 done(error); 28 }); 27 29 }); 28 });29 30 30 grunt.registerMultiTask('svn-ignore-clean', 31 "Clean generated ignore sections in Subversion.", 32 function(){ 33 var done = this.async(); 31 grunt.registerMultiTask( 32 'svn-ignore-clean', 33 "Clean generated ignore sections in Subversion.", 34 function(){ 35 var done = this.async(); 34 36 35 var tasks = _.chain(this.filesSrc)36 .map(function(file) {37 return _.partial(clearSvnIgnore, file);38 })39 .value();37 var tasks = _.chain(this.filesSrc) 38 .map(function(file) { 39 return _.partial(clearSvnIgnore, file); 40 }) 41 .value(); 40 42 41 grunt.util.async.series(tasks,function(error, results){ 42 done(error); 43 grunt.util.async.series(tasks,function(error, results){ 44 done(error); 45 }); 43 46 }); 44 });45 47 46 48 function updateSvnIgnore(dir,files,callback) { … … 123 125 124 126 function readSvnIgnore(dir,callback) { 125 return svnCommand('svn', 126 ['propget', 'svn:ignore', dir], 127 callback); 127 return svn(['propget', 'svn:ignore', dir], 128 callback); 128 129 } 129 130 130 131 function writeSvnIgnore(dir,ignore,callback) { 131 return svnCommand('svn', 132 ['propset', 'svn:ignore', ignore, dir], 133 callback); 132 return svn(['propset', 'svn:ignore', ignore, dir], 133 callback); 134 134 } 135 135 136 136 function deleteSvnIgnore(dir,callback) { 137 return svnCommand('svn', 138 ['propdel', 'svn:ignore', dir], 139 callback); 137 return svn(['propdel', 'svn:ignore', dir], 138 callback); 140 139 } 141 140 142 function svn Command(cmd,args,callback) {141 function svn(args,callback) { 143 142 grunt.util.spawn({ 144 cmd: cmd,143 cmd: 'svn', 145 144 args: (args || []) 146 }, function(error, result , code) {145 }, function(error, result) { 147 146 if ( error ) { 148 147 callback(error); 149 return; 148 } else { 149 callback(null,result.stdout); 150 150 } 151 callback(null,result.stdout);152 151 }); 153 152 }
Note: See TracChangeset
for help on using the changeset viewer.