grunt-ssh给出 - 错误:上传时没有这样的文件

时间:2015-05-05 09:18:53

标签: javascript node.js ssh gruntjs grunt-ssh

我在使用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选项的文件夹结构是正确的......

先谢谢你们的帮助!

1 个答案:

答案 0 :(得分:-1)

Meybe是因为directoryPermissions。你应该尝试这个:

directoryPermissions: parseInt('755', 8)