我在使用grunt-ssh插件时遇到问题。到目前为止,我已经编写了一个测试代码来检查功能,然后再在真实环境中使用它。这是我的gruntfile:
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
secret: grunt.file.readJSON('secret.json'),
sftp: {
test: {
files: {
"./": "Data/**/*.css"
},
options: {
path: 'TEST/',
host: '<%= secret.host %>',
username: '<%= secret.username %>',
privateKey: "<%= grunt.file.read(secret.key) %>"//,
//createDirectories: true
}
}
}
});
grunt.loadNpmTasks('grunt-ssh');
// Default task(s).
grunt.registerTask('default', ['sftp:test']);
};
secret.json是直截了当的,所以我不会在这里发布。
我的问题是,为什么grunt会给我一个如下所示的错误:
Connection :: connect
copying Data/test1/test.css to TEST/Data/test1/test.css
>> Error: No such file
Connection :: end
Copied
Connection :: close
SFTP :: session end
如果我取消注释createDirectories选项,gruntfile会在正确的位置添加正确的文件夹,但不会复制任何文件。所以我认为权限是正确的。
它是否与我的操作系统有关,是Windows,我上传到Unix服务器?带有createDirectories选项的文件夹结构是正确的......
先谢谢你们的帮助!
答案 0 :(得分:-1)
Meybe是因为directoryPermissions。你应该尝试这个:
directoryPermissions: parseInt('755', 8)