我在使用 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 选项的文件夹结构是正确的...
提前感谢您的帮助!