code: function clone (widget, source, dest) {
    var conf = getConf(null, source);
    if (conf.buildType === BUILD_NONE) {
      $.util.log($.util.colors.red('请在项目或模块目录下执行clone！'));
      return false;
    }
    dest = dest ? dest : '';
    if (conf.buildType === BUILD_APP) {
      if (!source || !dest) {
        $.util.log($.util.colors.red('在项目目录下执行clone需要带上--from参数和--to参数，表名来源和目的地！'));
        return false;
      }
    } else if (conf.buildType === BUILD_MODULE) {
      if (!source) {
        $.util.log($.util.colors.red('没有指定--from 来源，将直接从本模块复制！'));
        source = conf.moduleConf.module;
      }
      if (!dest) {
        dest = conf.moduleConf.module;
      }
    }
    var clonePromise = taskList.clone($, conf.appConf, conf.moduleConf);
    clonePromise(conf.modulePath, conf.appPath, widget, source, dest)
      .then(function () {
  
      }).catch(function (e) {
        if (e) {
          console.log(e.plugin);
          if (e.stack) {
            console.log(e.stack);
          }
        }
      });
  }
docs: 拷贝